def check_for_updates(self):
     if self.checkBox_UpdateCheck.isChecked():
         print("check for updates")
         update_key = self.updateKey.displayText()
         if len(update_key) == 50:
             data = QUrlQuery()
             data.addQueryItem("update_key", update_key)
             data.addQueryItem("product", "OnAirScreen")
             data.addQueryItem("current_version", versionString)
             data.addQueryItem("distribution", distributionString)
             data.addQueryItem("mac", self.get_mac())
             data.addQueryItem(
                 "include_beta",
                 f'{self.checkBox_IncludeBetaVersions.isChecked()}')
             req = QtNetwork.QNetworkRequest(QUrl(update_url))
             req.setHeader(QtNetwork.QNetworkRequest.ContentTypeHeader,
                           "application/x-www-form-urlencoded")
             self.nam_update_check = QtNetwork.QNetworkAccessManager()
             self.nam_update_check.finished.connect(
                 self.handle_update_check_response)
             self.nam_update_check.post(
                 req,
                 data.toString(QUrl.FullyEncoded).encode("UTF-8"))
         else:
             print("error, update key in wrong format")
             self.error_dialog = QErrorMessage()
             self.error_dialog.setWindowTitle("Update Check Error")
             self.error_dialog.showMessage(
                 'Update key is in the wrong format!', 'UpdateKeyError')
    def __dataRequest(self, page, client_id, client_secret, date_from, date_to, polygon):
        if not self.isAuthorized():
            self.authRequest(client_id, client_secret, page, date_from, date_to, polygon)
            return

        print("page=", page)
        # print("accessTokenExpires=", self.__accessTokenExpires.toString(Qt.ISODate))

        date_format = "yyyy-MM-ddThh:mm"
        url = QUrl(THERMAL_ANOMALY_URL)
        url_query = QUrlQuery()
        if polygon is not None:
            url_query.addQueryItem("polygon", polygon)
        if date_from is not None:
            url_query.addQueryItem("shooting", "ge" + date_from.toString(date_format))
        if date_to is not None:
            url_query.addQueryItem("shooting", "le" + date_to.toString(date_format))
        # _take=1000&_skip=0&_lastUpdated=ge2020-04-08T00%3A00%3A00
        url_query.addQueryItem("_take", str(TAKE))
        url_query.addQueryItem("_skip", str(page * TAKE).zfill(1))
        # url.setQuery(url_query)

        print(url_query.queryItems())

        request = QtNetwork.QNetworkRequest()
        request.setRawHeader(b'Authorization', ('Bearer ' + self.__accessToken).encode())
        request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json".encode())
        request.setUrl(url)
        # print("request: ", url)

        self.dataReply = self.__manager.post(request, url_query.toString(QUrl.FullyEncoded).encode())
        self.dataReply.finished.connect(lambda dr=self.dataReply: self.__data_request_finished(dr, client_id, client_secret, date_from, date_to, polygon))
Beispiel #3
0
def _render_header(title, mode, phrase, filters):
    r = []
    r.append(ADV_HEADER)
    r.append("<h1>{0}</h1>".format(title))
    r.append('<ul class="nav">\n')

    modes = [(name, spec) for (name, spec) in MODE_DICT.items()]
    modes.sort(key=itemgetter(0))

    for (name, spec) in modes:
        q = QUrlQuery()
        if phrase:
            q.addQueryItem("phrase", phrase)
        if filters:
            q.addQueryItem("filters", filters)
        q.addQueryItem("mode", name)
        href = QUrl("search:///?" + q.toString())
        if name != mode:
            r.append(
                '<li><a href="{href}">{title}</a></li>\n'.format(
                    href=href.toString(), title=spec["title"]
                )
            )
        else:
            r.append(
                '<li><span class="sel">{title}<span></li>\n'.format(title=spec["title"])
            )

    r.append("</ul>\n")
    return "".join(r)
    def authRequest(self, client_id, client_secret, page=None, date_from=None, date_to=None, polygon=None):
        # print("Authorization...")
        self.authorizationStarted.emit()
        url = QUrl(AUTH_URL)
        url_query = QUrlQuery()
        url_query.addQueryItem("grant_type", "client_credentials")
        url_query.addQueryItem("scope", "read:Resources:hotspots")
        url_query.addQueryItem("client_id", client_id)
        url_query.addQueryItem("client_secret", client_secret)
        url.setQuery(url_query)

        request = QtNetwork.QNetworkRequest()
        request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json".encode())
        request.setUrl(url)
        self.__authReply = self.__manager.post(request, url_query.toString(QUrl.FullyEncoded).encode())
        self.__authReply.finished.connect(lambda: self.__auth_request_finished(client_id, client_secret, page, date_from, date_to, polygon))