summary refs log tree commit diff
path: root/webclient/app-controller.js
diff options
context:
space:
mode:
authormatrix.org <matrix@matrix.org>2014-08-12 15:10:52 +0100
committermatrix.org <matrix@matrix.org>2014-08-12 15:10:52 +0100
commit4f475c7697722e946e39e42f38f3dd03a95d8765 (patch)
tree076d96d3809fb836c7245fd9f7960e7b75888a77 /webclient/app-controller.js
downloadsynapse-4f475c7697722e946e39e42f38f3dd03a95d8765.tar.xz
Reference Matrix Home Server
Diffstat (limited to 'webclient/app-controller.js')
-rw-r--r--webclient/app-controller.js46
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