Skip to content
Snippets Groups Projects
app-controller.js 1.22 KiB
Newer Older
  • Learn to ignore specific revisions
  • matrix.org's avatar
    matrix.org committed
    /*
     * 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");
        };    
                              
    }]);