Unify login process
This commit is contained in:
parent
7a675ce06b
commit
d10cb58268
|
@ -7,9 +7,9 @@ angApp.controller('LoginController', function($scope, ChimeVerseService, Credent
|
||||||
$scope.credentials.login,
|
$scope.credentials.login,
|
||||||
$scope.credentials.password
|
$scope.credentials.password
|
||||||
)
|
)
|
||||||
ChimeVerseService.initConverse($scope.credentials.bosh, $scope.credentials.login, $scope.credentials.password)
|
ChimeVerseService.getCredentialsAndLogin()
|
||||||
$scope.accountForm.$setPristine()
|
$scope.accountForm.$setPristine()
|
||||||
$scope.accountForm.$setUntouched()
|
$scope.accountForm.$setUntouched()
|
||||||
$scope.credentials = {}
|
$scope.credentials = {}
|
||||||
}
|
}
|
||||||
});
|
})
|
|
@ -1,6 +1,8 @@
|
||||||
let angApp = require(__dirname + '/../init')
|
let angApp = require(__dirname + '/../init')
|
||||||
|
|
||||||
angApp.factory('ChimeVerseService', ($window, CredentialsServise, SystemService, AppStateService, SettingsService) => {
|
const chimeversePlugin = require(__dirname +'/../../libs/converse.js/3rdparty/chimeverse-plugin')
|
||||||
|
|
||||||
|
angApp.factory('ChimeVerseService', ($window, $timeout, CredentialsServise, SystemService, AppStateService, SettingsService) => {
|
||||||
|
|
||||||
let chimeverseService = {}
|
let chimeverseService = {}
|
||||||
|
|
||||||
|
@ -26,38 +28,51 @@ angApp.factory('ChimeVerseService', ($window, CredentialsServise, SystemService,
|
||||||
|
|
||||||
chimeverseService.initConverse = (bosh, login, password) => {
|
chimeverseService.initConverse = (bosh, login, password) => {
|
||||||
AppStateService.set(AppStateService.APP_STATE_DEFAULT) // Always set to default state before init
|
AppStateService.set(AppStateService.APP_STATE_DEFAULT) // Always set to default state before init
|
||||||
|
chimeversePlugin.register(login)
|
||||||
let lang = navigator.language
|
let lang = navigator.language
|
||||||
let allowBookmarks = SettingsService.get('allowBookmarks')
|
let allowBookmarks = SettingsService.get('allowBookmarks')
|
||||||
converse.initialize({
|
$timeout(() => {
|
||||||
allow_bookmarks: allowBookmarks,
|
converse.initialize({
|
||||||
bosh_service_url: bosh,
|
allow_bookmarks: allowBookmarks,
|
||||||
view_mode: 'embedded',
|
bosh_service_url: bosh,
|
||||||
jid: login + '/chimeverse',
|
view_mode: 'embedded',
|
||||||
password: password,
|
jid: login + '/chimeverse',
|
||||||
auto_login: true,
|
password: password,
|
||||||
whitelisted_plugins: ['chimeVerse'],
|
auto_login: true,
|
||||||
i18n: lang,
|
whitelisted_plugins: ['chimeVerse'],
|
||||||
priority: 50,
|
i18n: lang,
|
||||||
// debug: true,
|
priority: 50,
|
||||||
auto_reconnect: true
|
// debug: true,
|
||||||
|
auto_reconnect: true
|
||||||
|
})
|
||||||
|
}, 50)
|
||||||
|
}
|
||||||
|
|
||||||
|
chimeverseService.getCredentialsAndLogin = () => {
|
||||||
|
let credentials = CredentialsServise.getCredentials()
|
||||||
|
credentials.then((result) => {
|
||||||
|
chimeverseService.initConverse(result.bosh, result.login, result.password)
|
||||||
|
}, (error) => {
|
||||||
|
AppStateService.set(AppStateService.APP_STATE_LOGIN)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
chimeverseService.chatToOpen = null
|
chimeverseService.chatToOpen = null
|
||||||
|
|
||||||
$window.document.addEventListener('conversejs-logout', function (e) {
|
$window.document.addEventListener('conversejs-logout', function (e) {
|
||||||
chimeverseService.logout()
|
chimeverseService.logout()
|
||||||
});
|
})
|
||||||
|
|
||||||
$window.document.addEventListener('conversejs-unread', function (e) {
|
$window.document.addEventListener('conversejs-unread', function (e) {
|
||||||
let sender = e.detail
|
let sender = e.detail
|
||||||
chimeverseService.chatToOpen = sender
|
chimeverseService.chatToOpen = sender
|
||||||
chimeverseService._notifyMessage()
|
chimeverseService._notifyMessage()
|
||||||
});
|
})
|
||||||
|
|
||||||
$window.document.addEventListener('conversejs-no-unread', function (e) {
|
$window.document.addEventListener('conversejs-no-unread', function (e) {
|
||||||
chimeverseService._hideNotifyMessage()
|
chimeverseService._hideNotifyMessage()
|
||||||
});
|
})
|
||||||
|
|
||||||
return chimeverseService
|
return chimeverseService
|
||||||
|
|
||||||
|
|
14
index.html
14
index.html
|
@ -17,7 +17,7 @@
|
||||||
<div class="main-background"></div>
|
<div class="main-background"></div>
|
||||||
<div class="main-window" ng-controller="AppController" ng-cloak>
|
<div class="main-window" ng-controller="AppController" ng-cloak>
|
||||||
<div ng-show="state == 'default'">
|
<div ng-show="state == 'default'">
|
||||||
<ng-include src="'./app/views/default/page.html'" onload="getCredentialsAndLogin()"></ng-include>
|
<ng-include src="'./app/views/default/page.html'"></ng-include>
|
||||||
</div>
|
</div>
|
||||||
<div ng-show="state == 'login'">
|
<div ng-show="state == 'login'">
|
||||||
<ng-include src="'./app/views/login/page.html'"></ng-include>
|
<ng-include src="'./app/views/login/page.html'"></ng-include>
|
||||||
|
@ -52,14 +52,14 @@
|
||||||
</script>
|
</script>
|
||||||
<script>
|
<script>
|
||||||
function loadJs(url) {
|
function loadJs(url) {
|
||||||
var script = document.createElement('script');
|
var script = document.createElement('script')
|
||||||
script.src = url;
|
script.src = url
|
||||||
script.setAttribute('async', 'true');
|
script.setAttribute('async', 'true')
|
||||||
document.documentElement.firstChild.appendChild(script);
|
document.documentElement.firstChild.appendChild(script)
|
||||||
}
|
}
|
||||||
setTimeout(function () {
|
setTimeout(function () {
|
||||||
loadJs("./node_modules/github-buttons/dist/buttons.min.js");
|
loadJs("./node_modules/github-buttons/dist/buttons.min.js")
|
||||||
}, 500);
|
}, 500)
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
15
renderer.js
15
renderer.js
|
@ -13,9 +13,8 @@ require('./app/controllers/settings-controller')
|
||||||
require('./app/controllers/login-controller')
|
require('./app/controllers/login-controller')
|
||||||
require('./app/controllers/default-controller')
|
require('./app/controllers/default-controller')
|
||||||
require('./app/controllers/about-controller')
|
require('./app/controllers/about-controller')
|
||||||
const chimeversePlugin = require('./libs/converse.js/3rdparty/chimeverse-plugin')
|
|
||||||
|
|
||||||
angApp.controller('AppController', function ($scope, $timeout, ChimeVerseService, CredentialsServise, SettingsService, AppStateService) {
|
angApp.controller('AppController', function ($scope, $timeout, ChimeVerseService, SettingsService, AppStateService) {
|
||||||
|
|
||||||
const { ipcRenderer } = require('electron')
|
const { ipcRenderer } = require('electron')
|
||||||
|
|
||||||
|
@ -42,7 +41,7 @@ angApp.controller('AppController', function ($scope, $timeout, ChimeVerseService
|
||||||
document.dispatchEvent(event)
|
document.dispatchEvent(event)
|
||||||
})
|
})
|
||||||
|
|
||||||
$scope.state = AppStateService.APP_STATE_DEFAULT
|
AppStateService.set(AppStateService.APP_STATE_DEFAULT)
|
||||||
|
|
||||||
$scope.$on('app:state:changed', (event, data) => {
|
$scope.$on('app:state:changed', (event, data) => {
|
||||||
// @see https://docs.angularjs.org/error/$rootScope/inprog
|
// @see https://docs.angularjs.org/error/$rootScope/inprog
|
||||||
|
@ -54,14 +53,6 @@ angApp.controller('AppController', function ($scope, $timeout, ChimeVerseService
|
||||||
|
|
||||||
SettingsService.initDefaults()
|
SettingsService.initDefaults()
|
||||||
|
|
||||||
$scope.getCredentialsAndLogin = () => {
|
ChimeVerseService.getCredentialsAndLogin()
|
||||||
let credentials = CredentialsServise.getCredentials()
|
|
||||||
credentials.then((result) => {
|
|
||||||
ChimeVerseService.initConverse(result.bosh, result.login, result.password)
|
|
||||||
chimeversePlugin.register(result.login)
|
|
||||||
}, (error) => {
|
|
||||||
AppStateService.set(AppStateService.APP_STATE_LOGIN)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in New Issue