Fix login process.

This commit is contained in:
Keith Maika 2022-01-05 14:44:36 -05:00
parent e2ae88894b
commit 6809e9fccf
No known key found for this signature in database
GPG Key ID: F71740E8722C75F1
5 changed files with 12 additions and 10 deletions

View File

@ -12,8 +12,9 @@ angApp.controller('LoginController', function($scope, DesktopService, Credential
CredentialsService.addCredentials($scope.credentials.connectionManager, CredentialsService.addCredentials($scope.credentials.connectionManager,
$scope.credentials.login, $scope.credentials.login,
$scope.credentials.password $scope.credentials.password
) ).then(()=>{
DesktopService.getCredentialsAndLogin() DesktopService.getCredentialsAndLogin()
});
$scope.accountForm.$setPristine() $scope.accountForm.$setPristine()
$scope.accountForm.$setUntouched() $scope.accountForm.$setUntouched()
$scope.credentials = {} $scope.credentials = {}

View File

@ -9,7 +9,7 @@ angApp.factory('CredentialsService', () => {
if (credentials.login) { if (credentials.login) {
credentials.connectionManager = api.electronSettings.getSync('connectionManager') credentials.connectionManager = api.electronSettings.getSync('connectionManager')
credentials.xmppService = credentials.login.split('@').pop() credentials.xmppService = credentials.login.split('@').pop()
let password = keytar.getPassword(credentials.xmppService, credentials.login) let password = api.keytar.getPassword(credentials.xmppService, credentials.login)
password.then((result) => { password.then((result) => {
credentials.password = result credentials.password = result
resolve(credentials) resolve(credentials)
@ -25,12 +25,12 @@ angApp.factory('CredentialsService', () => {
let xmppService = login.split('@').pop() let xmppService = login.split('@').pop()
api.electronSettings.setSync('connectionManager', connectionManager) api.electronSettings.setSync('connectionManager', connectionManager)
api.electronSettings.setSync('login', login) api.electronSettings.setSync('login', login)
keytar.setPassword(xmppService, login, password) return api.keytar.setPassword(xmppService, login, password)
} }
credentialsService.removeCredentials = (login) => { credentialsService.removeCredentials = (login) => {
let xmppService = login.split('@').pop() let xmppService = login.split('@').pop()
keytar.deletePassword(xmppService, login) let passwordDelete = api.keytar.deletePassword(xmppService, login)
let promise = new Promise((resolve, reject) => { let promise = new Promise((resolve, reject) => {
passwordDelete.then((result) => { passwordDelete.then((result) => {
api.electronSettings.unsetSync('login') api.electronSettings.unsetSync('login')

View File

@ -1,5 +1,5 @@
const angApp = (await import('../init.js')).default; const angApp = (await import('../init.js')).default;
const desktopPlugin = (await import('../../libs/converse.js/converse-desktop/desktop-plugin.js')).desktopPlugin; const desktopPlugin = (await import('../../libs/converse.js/converse-desktop/desktop-plugin.js')).default;
angApp.factory('DesktopService', ( angApp.factory('DesktopService', (
$window, $timeout, CredentialsService, SystemService, AppStateService, $window, $timeout, CredentialsService, SystemService, AppStateService,

View File

@ -135,8 +135,6 @@ function createWindow() {
case 'unsetSync': case 'unsetSync':
electronSettings.unsetSync(...args); electronSettings.unsetSync(...args);
} }
return event.returnValue;
}) })
ipcMain.on('tray-service', (event, method) => { ipcMain.on('tray-service', (event, method) => {

View File

@ -1,4 +1,6 @@
const {ipcRenderer, contextBridge} = require('electron'); const {ipcRenderer, contextBridge} = require('electron');
const keytar = require('keytar');
contextBridge.exposeInMainWorld('api', { contextBridge.exposeInMainWorld('api', {
send(channel, ...data) { send(channel, ...data) {
return ipcRenderer.send(channel, ...data); return ipcRenderer.send(channel, ...data);
@ -33,5 +35,6 @@ contextBridge.exposeInMainWorld('api', {
hideEnvelope() { hideEnvelope() {
ipcRenderer.send('tray-service', 'hideEnvelope') ipcRenderer.send('tray-service', 'hideEnvelope')
} }
} },
}); keytar: keytar
});