From a6fd63637d30c7b4fa63cc3053ce433f6e2e3e0d Mon Sep 17 00:00:00 2001 From: CunYu Date: Fri, 18 Jun 2021 10:50:19 +0800 Subject: [PATCH] fix: login bug --- html/src/app.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/html/src/app.js b/html/src/app.js index 794793e2..5fc5d445 100644 --- a/html/src/app.js +++ b/html/src/app.js @@ -5160,6 +5160,34 @@ speechSynthesis.getVoices(); this.loginForm.loading = false; throw err; }).then((args) => { + if (this.loginForm.saveCredentials && this.enablePrimaryPassword) { + $app.$prompt( + 'Please enter your Primary Password.', + 'Primary Password Required', + { + inputType: "password", + inputPattern: /[\s\S]{1,32}/ + }, + ).then(({ value }) => { + let saveCredential = this.loginForm.savedCredentials[Object.keys(this.loginForm.savedCredentials)[0]]; + security.decrypt(saveCredential.loginParmas.password, value).then(_ => { + security.encrypt(this.loginForm.password, value).then(pwd => { + API.login({ + username: this.loginForm.username, + password: this.loginForm.password, + saveCredentials: this.loginForm.saveCredentials, + cipher: pwd + }).finally(() => { + this.loginForm.username = ''; + this.loginForm.password = ''; + }); + }) + }) + }).finally(() => { + this.loginForm.loading = false; + }); + return args + } API.login({ username: this.loginForm.username, password: this.loginForm.password,