39 lines
1.2 KiB
JavaScript
39 lines
1.2 KiB
JavaScript
(function () {
|
|
global.dashModule
|
|
.controller('customersCtrl', ['$scope', customersController])
|
|
.directive('customers', [customersDirective]);
|
|
|
|
function customersDirective() {
|
|
return {
|
|
restrict: 'E',
|
|
templateUrl: 'customers/html/customersTemplate'
|
|
};
|
|
}
|
|
|
|
function customersController($scope) {
|
|
$scope.isSubmoduleVisible = isSubmoduleVisible;
|
|
$scope.setSubModule = setSubModule;
|
|
$scope.subModule = global.getParameterByName('subModule') || 'customersView';
|
|
addUrlListener();
|
|
|
|
function addUrlListener() {
|
|
window.addEventListener('popstate', function (e) {
|
|
$scope.$evalAsync($scope => {
|
|
$scope.subModule = e.state ? e.state.subModule : 'customersView';
|
|
});
|
|
}, false);
|
|
}
|
|
|
|
function setSubModule($event) {
|
|
$scope.subModule = $event.currentTarget.attributes.subModule.value;
|
|
history.pushState({
|
|
subModule: $scope.subModule
|
|
}, null, '?subModule=' + $scope.subModule);
|
|
}
|
|
|
|
function isSubmoduleVisible(subModule) {
|
|
return subModule === $scope.subModule;
|
|
}
|
|
}
|
|
})();
|