diff options
Diffstat (limited to 'webclient/app-controller.js')
-rw-r--r-- | webclient/app-controller.js | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/webclient/app-controller.js b/webclient/app-controller.js new file mode 100644 index 0000000000..e7601cc213 --- /dev/null +++ b/webclient/app-controller.js @@ -0,0 +1,46 @@ +/* + * Main controller + */ + +'use strict'; + +angular.module('MatrixWebClientController', ['matrixService']) +.controller('MatrixWebClientController', ['$scope', '$location', '$rootScope', 'matrixService', + function($scope, $location, $rootScope, matrixService) { + + // Check current URL to avoid to display the logout button on the login page + $scope.location = $location.path(); + + // Update the location state when the ng location changed + $rootScope.$on('$routeChangeSuccess', function (event, current, previous) { + $scope.location = $location.path(); + }); + + + // Manage the display of the current config + $scope.config; + + // Toggles the config display + $scope.showConfig = function() { + if ($scope.config) { + $scope.config = undefined; + } + else { + $scope.config = matrixService.config(); + } + }; + + + // Logs the user out + $scope.logout = function() { + // Clean permanent data + matrixService.setConfig({}); + matrixService.saveConfig(); + + // And go to the login page + $location.path("login"); + }; + +}]); + + \ No newline at end of file |