65 lines
2.1 KiB
JavaScript
65 lines
2.1 KiB
JavaScript
// 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.
|
|
|
|
var angApp = require('./app/init')
|
|
|
|
require('./app/services/credentials-service')
|
|
require('./app/services/settings-service')
|
|
require('./app/services/system-service')
|
|
require('./app/services/app-state-service')
|
|
require('./app/services/xmpp-helper-service')
|
|
require('./app/services/desktop-service')
|
|
require('./app/controllers/settings-controller')
|
|
require('./app/controllers/login-controller')
|
|
require('./app/controllers/default-controller')
|
|
require('./app/controllers/about-controller')
|
|
require('./app/controllers/footer-controller')
|
|
|
|
angApp.controller('AppController', function ($scope, $timeout, DesktopService, SettingsService, AppStateService) {
|
|
|
|
const { ipcRenderer } = require('electron')
|
|
|
|
// Menu force logout event
|
|
ipcRenderer.on('force-logout-event', () => {
|
|
DesktopService.logout()
|
|
let event = new CustomEvent("converse-force-logout") // Dispatch to the plugin
|
|
document.dispatchEvent(event)
|
|
})
|
|
|
|
// Menu settings event
|
|
ipcRenderer.on('preferences-event', () => {
|
|
AppStateService.set(AppStateService.APP_STATE_SETTINGS)
|
|
})
|
|
|
|
// Menu about event
|
|
ipcRenderer.on('about-page-event', () => {
|
|
AppStateService.set(AppStateService.APP_STATE_ABOUT)
|
|
})
|
|
|
|
// Menu about event
|
|
ipcRenderer.on('open-unread-chat', () => {
|
|
let event = new CustomEvent('conversejs-open-chat', {detail: DesktopService.chatToOpen})
|
|
document.dispatchEvent(event)
|
|
})
|
|
|
|
AppStateService.set(AppStateService.APP_STATE_DEFAULT)
|
|
|
|
$scope.$on('app:state:changed', (event, data) => {
|
|
// @see https://docs.angularjs.org/error/$rootScope/inprog
|
|
$timeout(() => {
|
|
$scope.state = data
|
|
console.log('Switch to the "' + $scope.state +'" state')
|
|
}, 0)
|
|
})
|
|
|
|
$scope.$on('app:restart', (event, data) => {
|
|
ipcRenderer.send('app-restart')
|
|
})
|
|
|
|
SettingsService.initDefaults()
|
|
|
|
DesktopService.getCredentialsAndLogin()
|
|
|
|
})
|