def validatePage(self): if not self.isComplete(): return False alias = self.field(u"projectAlias") if self.manager.isALocalProject(alias): colorizeWidget(self.ui_WizardPage.aliasLineEdit, u"red") return False retVal = self.callWithInfiniteProgress( self.manager.addProject, u"Adding project %s..." % alias, self.wizard().getSelectedServerAlias(), self.wizard().getSelectedProject(), self.wizard().getSelectedTarget(), self.wizard().getSelectedArch(), projectLocalName=alias) # If we get an exception, None is returned if retVal is None: return False self.gui.refresh() self.gui.setCurrentProject(alias) if self.field(u"CreateChroot"): self.callWithInfiniteProgress(self.manager.createChRoot, u"Creating chroot...", alias) return True
def validatePage(self): if not self.isComplete(): return False alias = self.ui_WizardPage.aliasLineEdit.text() if self.manager.isALocalProject(alias): colorizeWidget(self.ui_WizardPage.aliasLineEdit, u"red") return False self.setField(u"projectAlias", alias) retVal = self.callWithInfiniteProgress( self.manager.addGbsProject, u"Adding project %s..." % alias, self.wizard().getProjectConfPath(), self.wizard().getGbsAddedRepo(), self.wizard().getSelectedGbsArch(), alias, self.wizard().autoAddProjectRepo()) # If we get an exception, None is returned if retVal is None: return False self.gui.refresh() self.gui.setCurrentProject(alias) if self.field(u"CreateGbsChroot"): self.callWithInfiniteProgress(self.manager.createChRoot, u"Creating chroot...", alias) return True
def checkAlias(self): """ Check if alias is non-empty, and in case user is adding a new server, that the alias does not already exist. Colorizes widget in green and returns True in case of success, colorizes widget in red and returns False otherwise. """ alias = self.field(u"serverAlias") srvList = self.manager.getObsServerList() if isNonEmptyString(alias) and (self.wizard().isModifyingServer or alias not in srvList): colorizeWidget(self.ui_WizardPage.aliasLineEdit, u"green") return True else: colorizeWidget(self.ui_WizardPage.aliasLineEdit, u"red") return False
def testAndColorizeUrl(url, widget): # Green -> OK # Orange -> Host OK but wrong URL # Red -> Wrong host color = u"red" isOk = False try: if not isNonEmptyString(url): color = u"red" elif self._friendlyTestUrl(url): isOk = True color = u"green" elif self._friendlyTestHost(url): color = u"orange" else: color = u"red" except BaseException as e: print e finally: colorizeWidget(widget, color) return isOk
def testAndColorizeString(theString, widget): isOk = isNonEmptyString(theString) colorizeWidget(widget, u"green" if isOk else u"red") return isOk
def doValidatePage(self): def testAndColorizeUrl(url, widget): # Green -> OK # Orange -> Host OK but wrong URL # Red -> Wrong host color = u"red" isOk = False try: if not isNonEmptyString(url): color = u"red" elif self._friendlyTestUrl(url): isOk = True color = u"green" elif self._friendlyTestHost(url): color = u"orange" else: color = u"red" except BaseException as e: print e finally: colorizeWidget(widget, color) return isOk def testAndColorizeString(theString, widget): isOk = isNonEmptyString(theString) colorizeWidget(widget, u"green" if isOk else u"red") return isOk web = self.field(u"webUrl") api = self.field(u"apiUrl") repo = self.field(u"repoUrl") user = self.field(u"username") password = self.field(u"password") userPassOk = testAndColorizeString(user, self.ui_WizardPage.usernameLineEdit) userPassOk = testAndColorizeString( password, self.ui_WizardPage.passwordLineEdit) and userPassOk allOk = userPassOk allOk = testAndColorizeUrl(web, self.ui_WizardPage.webUrlLineEdit) and allOk allOk = testAndColorizeUrl( repo, self.ui_WizardPage.repoUrlLineEdit) and allOk if userPassOk: apiRes = self._friendlyTestApi(api, user, password) if apiRes == 1: colorizeWidget(self.ui_WizardPage.apiUrlLineEdit, u"green") colorizeWidget(self.ui_WizardPage.usernameLineEdit, u"red") colorizeWidget(self.ui_WizardPage.passwordLineEdit, u"red") allOk = False elif apiRes == 2: colorizeWidget(self.ui_WizardPage.apiUrlLineEdit, u"red") colorizeWidget(self.ui_WizardPage.usernameLineEdit, u"orange") colorizeWidget(self.ui_WizardPage.passwordLineEdit, u"orange") allOk = False else: colorizeWidget(self.ui_WizardPage.apiUrlLineEdit, u"green") colorizeWidget(self.ui_WizardPage.usernameLineEdit, u"green") colorizeWidget(self.ui_WizardPage.passwordLineEdit, u"green") self.isOk = allOk if not allOk: self.gui.showLogWindow()