summary refs log tree commit diff
path: root/webclient/app-controller.js
diff options
context:
space:
mode:
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