Example #1
0
    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()
Example #2
0
 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
Example #3
0
 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')
Example #4
0
    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)
Example #5
0
 def testAndColorizeString(theString, widget):
     isOk = isNonEmptyString(theString)
     colorizeWidget(widget, "green" if isOk else "red")
     return isOk
Example #6
0
    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()