def validate(self): localName = self.getCurrentProjectLocalName() validated = True if (not isNonEmptyString(localName) or self.__isNewProject() and self.manager.isALocalProject(localName)): colorizeWidget(self.__configDialog.projectLocalNameLineEdit, "red") validated = False else: removeEffect(self.__configDialog.projectLocalNameLineEdit) if not isNonEmptyString(self.getCurrentProjectObsName()): colorizeWidget(self.__configDialog.projectObsNameLineEdit, "red") validated = False else: removeEffect(self.__configDialog.projectObsNameLineEdit) if not isNonEmptyString(self.getCurrentTarget()): colorizeWidget(self.__configDialog.projectTargetComboBox, "red") validated = False else: removeEffect(self.__configDialog.projectTargetComboBox) if not isNonEmptyString(self.getCurrentArch()): colorizeWidget(self.__configDialog.projectArchitectureComboBox, "red") validated = False else: removeEffect(self.__configDialog.projectArchitectureComboBox) if validated: self.__configDialog.accept()
def testAndColorizeUrl(url, widget): color = u"red" isOk = False try: if not isNonEmptyString(url): color = u"red" elif self.manager.testUrl(url): isOk = True color = u"green" elif self.manager.testHost(url): color = u"orange" else: color = u"red" finally: colorizeWidget(widget, color) return isOk
def __loadTargetPossibilities(self): ''' Load the target possibilities into the target ComboBox, according to the current server and project. May take some time, so you should run it asynchronously. ''' self.__configDialog.projectArchitectureComboBox.clear() self.__configDialog.projectTargetComboBox.clear() if len(self.getCurrentServerAlias()) > 0 and len( self.getCurrentProjectObsName()) > 0: try: targets = self.manager.getObsProjectParameter( self.getCurrentServerAlias(), self.getCurrentProjectObsName(), parameter="repository") self.__configDialog.projectTargetComboBox.addItems(targets) removeEffect(self.__configDialog.projectObsNameLineEdit) except BaseException: colorizeWidget(self.__configDialog.projectObsNameLineEdit, 'red')
def on_checkButton_clicked(self): urlColor = "green" aliasColor = "green" alias = self.getRepoAlias() url = self.getRepoUrl() scd = self.__configDialog resultUrl = self.manager.testUrl(url) if not resultUrl: if self.manager.testHost(url): urlColor = "orange" else: urlColor = "red" else: url, alias = self.manager.testRepo(url, alias) if url != None: scd.repoUrlLineEdit.setText(url) if alias != None: scd.repoAliasLineEdit.setText(alias) if (url is not None) and (not len(url) < 1): resultUrl = self.manager.testRepositoryUrl(url) if not resultUrl: urlColor = "orange" else: urlColor = "red" resultUrl = False currentRepos = self.manager.getChRootRepositories(self.__projectAlias) resultAlias = not (alias is None or len(alias) < 1 or (alias in currentRepos and alias != self.__oldRepoAlias)) if not resultAlias: aliasColor = "red" colorizeWidget(scd.repoUrlLineEdit, urlColor) colorizeWidget(scd.repoAliasLineEdit, aliasColor) scd.repoConfigButtonBox.button(QDialogButtonBox.Ok).setEnabled( resultUrl and resultAlias)
def testAndColorizeString(theString, widget): isOk = isNonEmptyString(theString) colorizeWidget(widget, "green" if isOk else "red") return isOk
def on_checkConnectionButton_clicked(self): def testAndColorizeUrl(url, widget): color = u"red" isOk = False try: if not isNonEmptyString(url): color = u"red" elif self.manager.testUrl(url): isOk = True color = u"green" elif self.manager.testHost(url): color = u"orange" else: color = u"red" finally: colorizeWidget(widget, color) return isOk def testAndColorizeString(theString, widget): isOk = isNonEmptyString(theString) colorizeWidget(widget, "green" if isOk else "red") return isOk web = self.getWebIfaceUrl() api = self.getApiUrl() repo = self.getRepoUrl() user = self.getUser() password = self.getPass() alias = self.getAlias() scd = self.__srvConfDialog userPassOk = testAndColorizeString(user, scd.usernameLineEdit) userPassOk = testAndColorizeString(password, scd.passwordLineEdit) and userPassOk allOk = userPassOk allOk = testAndColorizeUrl(web, scd.serverWebUrlLineEdit) and allOk allOk = testAndColorizeUrl(repo, scd.serverRepoLineEdit) and allOk if userPassOk: apiRes = self.manager.testApi(api, user, password) if apiRes == 1: colorizeWidget(scd.usernameLineEdit, "red") colorizeWidget(scd.passwordLineEdit, "red") allOk = False elif apiRes == 2: colorizeWidget(scd.serverApiLineEdit, "red") colorizeWidget(scd.usernameLineEdit, "orange") colorizeWidget(scd.passwordLineEdit, "orange") allOk = False else: colorizeWidget(scd.serverApiLineEdit, "green") colorizeWidget(scd.usernameLineEdit, "green") colorizeWidget(scd.passwordLineEdit, "green") srvList = self.manager.getObsServerList() if (isNonEmptyString(alias) and (alias == self.__serverAlias or self.getAlias() not in srvList)): colorizeWidget(scd.serverAliasLineEdit, "green") else: allOk = False colorizeWidget(scd.serverAliasLineEdit, "red") scd.obsServerConfigButtonBox.button(QDialogButtonBox.Ok).setEnabled(allOk) if not allOk: self.gui.showLogWindow()