98 if not self.__loaded: |
98 if not self.__loaded: |
99 self.__load() |
99 self.__load() |
100 |
100 |
101 key = self.__createKey(url, realm) |
101 key = self.__createKey(url, realm) |
102 self.__logins[key] = ( |
102 self.__logins[key] = ( |
103 username, |
103 username, |
104 Utilities.crypto.pwConvert(password, encode=True) |
104 Utilities.crypto.pwConvert(password, encode=True) |
105 ) |
105 ) |
106 self.changed.emit() |
106 self.changed.emit() |
107 |
107 |
108 def __createKey(self, url, realm): |
108 def __createKey(self, url, realm): |
164 if reader.error() != QXmlStreamReader.NoError: |
164 if reader.error() != QXmlStreamReader.NoError: |
165 E5MessageBox.warning( |
165 E5MessageBox.warning( |
166 None, |
166 None, |
167 self.trUtf8("Loading login data"), |
167 self.trUtf8("Loading login data"), |
168 self.trUtf8("""Error when loading login data on""" |
168 self.trUtf8("""Error when loading login data on""" |
169 """ line {0}, column {1}:\n{2}""")\ |
169 """ line {0}, column {1}:\n{2}""") |
170 .format(reader.lineNumber(), |
170 .format(reader.lineNumber(), |
171 reader.columnNumber(), |
171 reader.columnNumber(), |
172 reader.errorString())) |
172 reader.errorString())) |
173 |
173 |
174 self.__loaded = True |
174 self.__loaded = True |
191 E5MessageBox.critical( |
191 E5MessageBox.critical( |
192 None, |
192 None, |
193 self.trUtf8("Loading login data"), |
193 self.trUtf8("Loading login data"), |
194 self.trUtf8("""<p>Login data could not be loaded """ |
194 self.trUtf8("""<p>Login data could not be loaded """ |
195 """from <b>{0}</b></p>""" |
195 """from <b>{0}</b></p>""" |
196 """<p>Reason: {1}</p>""")\ |
196 """<p>Reason: {1}</p>""") |
197 .format(loginFile, str(err))) |
197 .format(loginFile, str(err))) |
198 return |
198 return |
199 |
199 |
200 data = [] |
200 data = [] |
201 section = 0 # 0 = login data, 1 = forms data, |
201 section = 0 # 0 = login data, 1 = forms data, |
217 None, |
217 None, |
218 self.trUtf8("Loading login data"), |
218 self.trUtf8("Loading login data"), |
219 self.trUtf8( |
219 self.trUtf8( |
220 """<p>Login data could not be loaded """ |
220 """<p>Login data could not be loaded """ |
221 """from <b>{0}</b></p>""" |
221 """from <b>{0}</b></p>""" |
222 """<p>Reason: Wrong input format</p>""")\ |
222 """<p>Reason: Wrong input format</p>""") |
223 .format(loginFile)) |
223 .format(loginFile)) |
224 return |
224 return |
225 self.__logins[data[0]] = (data[1], data[2]) |
225 self.__logins[data[0]] = (data[1], data[2]) |
226 data = [] |
226 data = [] |
227 |
227 |
353 if navType != QWebPage.NavigationTypeFormSubmitted: |
353 if navType != QWebPage.NavigationTypeFormSubmitted: |
354 return |
354 return |
355 |
355 |
356 # determine the QWebPage |
356 # determine the QWebPage |
357 webPage = request.attribute(QNetworkRequest.User + 100) |
357 webPage = request.attribute(QNetworkRequest.User + 100) |
358 if webPage is None: |
358 if webPage is None: |
359 return |
359 return |
360 |
360 |
361 # determine the requests content type |
361 # determine the requests content type |
362 contentTypeHeader = request.rawHeader("Content-Type") |
362 contentTypeHeader = request.rawHeader("Content-Type") |
363 if contentTypeHeader.isEmpty(): |
363 if contentTypeHeader.isEmpty(): |
464 lst = webPage.mainFrame().evaluateJavaScript(parseForms_js) |
464 lst = webPage.mainFrame().evaluateJavaScript(parseForms_js) |
465 for map in lst: |
465 for map in lst: |
466 formHasPasswords = False |
466 formHasPasswords = False |
467 formName = map["name"] |
467 formName = map["name"] |
468 formIndex = map["index"] |
468 formIndex = map["index"] |
469 if type(formIndex) == type(0.0) and formIndex.is_integer(): |
469 if isinstance(formIndex, float) and formIndex.is_integer(): |
470 formIndex = int(formIndex) |
470 formIndex = int(formIndex) |
471 elements = map["elements"] |
471 elements = map["elements"] |
472 formElements = set() |
472 formElements = set() |
473 formElementTypes = {} |
473 formElementTypes = {} |
474 deadElements = set() |
474 deadElements = set() |