2019-04-22 23:10:11 +00:00
|
|
|
// This file is required by the index.html file and will
|
|
|
|
// be executed in the renderer process for that window.
|
|
|
|
// All of the Node.js APIs are available in this process.
|
2019-04-25 00:35:36 +00:00
|
|
|
|
2020-05-09 15:07:42 +00:00
|
|
|
var angApp = require('./app/init')
|
2019-04-26 00:30:50 +00:00
|
|
|
|
2020-05-11 18:26:51 +00:00
|
|
|
require('./app/services/credentials-service')
|
2020-05-12 15:06:16 +00:00
|
|
|
require('./app/services/settings-service')
|
2020-05-09 15:07:42 +00:00
|
|
|
require('./app/services/system-service')
|
|
|
|
require('./app/services/app-state-service')
|
|
|
|
require('./app/services/chimeverse-service')
|
|
|
|
require('./app/controllers/settings-controller')
|
|
|
|
require('./app/controllers/login-controller')
|
|
|
|
require('./app/controllers/default-controller')
|
2020-05-11 19:39:11 +00:00
|
|
|
require('./app/controllers/about-controller')
|
2020-05-09 15:07:42 +00:00
|
|
|
const chimeversePlugin = require('./libs/converse.js/3rdparty/chimeverse-plugin')
|
|
|
|
chimeversePlugin.register()
|
2019-04-26 00:30:50 +00:00
|
|
|
|
2020-05-12 15:06:16 +00:00
|
|
|
angApp.controller('AppController', function ($scope, $timeout, ChimeVerseService, CredentialsServise, SettingsService, AppStateService) {
|
2019-04-26 00:30:50 +00:00
|
|
|
|
2020-05-09 15:07:42 +00:00
|
|
|
//const { remote, ipcRenderer } = require('electron')
|
2019-08-13 22:05:09 +00:00
|
|
|
const { ipcRenderer } = require('electron')
|
2019-04-27 23:04:31 +00:00
|
|
|
|
2020-05-11 19:39:11 +00:00
|
|
|
// Menu force logout event
|
2019-04-27 23:04:31 +00:00
|
|
|
ipcRenderer.on('force-logout-event', () => {
|
2020-05-09 21:06:57 +00:00
|
|
|
ChimeVerseService.logout()
|
2020-05-09 15:07:42 +00:00
|
|
|
let event = new CustomEvent("converse-force-logout") // Dispatch to the plugin
|
|
|
|
document.dispatchEvent(event)
|
|
|
|
//remote.getCurrentWindow().reload()
|
2019-04-27 23:04:31 +00:00
|
|
|
})
|
2020-05-11 19:39:11 +00:00
|
|
|
// Menu settings event
|
2020-05-11 18:26:51 +00:00
|
|
|
ipcRenderer.on('preferences-event', () => {
|
|
|
|
AppStateService.set(AppStateService.APP_STATE_SETTINGS)
|
|
|
|
})
|
2020-05-11 19:39:11 +00:00
|
|
|
// Menu about event
|
|
|
|
ipcRenderer.on('about-page-event', () => {
|
|
|
|
AppStateService.set(AppStateService.APP_STATE_ABOUT)
|
|
|
|
})
|
2020-05-11 18:26:51 +00:00
|
|
|
|
2020-05-09 15:07:42 +00:00
|
|
|
$scope.state = AppStateService.APP_STATE_DEFAULT
|
|
|
|
|
|
|
|
$scope.$on('app:state:changed', (event, data) => {
|
|
|
|
// @see https://docs.angularjs.org/error/$rootScope/inprog
|
|
|
|
$timeout(() => {
|
|
|
|
$scope.state = data
|
2020-05-09 21:06:57 +00:00
|
|
|
console.log('Switch to the "' + $scope.state +'" state')
|
2020-05-09 15:07:42 +00:00
|
|
|
}, 0)
|
|
|
|
});
|
2019-04-25 00:35:36 +00:00
|
|
|
|
2020-05-12 15:06:16 +00:00
|
|
|
SettingsService.initDefaults()
|
|
|
|
|
2019-04-26 00:30:50 +00:00
|
|
|
$scope.getCredentialsAndLogin = () => {
|
2020-05-11 18:26:51 +00:00
|
|
|
let credentials = CredentialsServise.getCredentials()
|
2019-04-26 00:30:50 +00:00
|
|
|
credentials.then((result) => {
|
|
|
|
ChimeVerseService.initConverse(result.bosh, result.login, result.password)
|
|
|
|
}, (error) => {
|
2020-05-09 15:07:42 +00:00
|
|
|
AppStateService.set(AppStateService.APP_STATE_LOGIN)
|
2019-04-26 00:30:50 +00:00
|
|
|
})
|
2019-04-25 00:35:36 +00:00
|
|
|
}
|
2019-04-26 00:30:50 +00:00
|
|
|
|
|
|
|
})
|