Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //'use strict';
- angular.module('tt.ui.controls.menu', [
- 'tt.services.pathService',
- 'tt.services.shoppingCart',
- 'tt.utils.locale',
- '$strap.directives'
- ])
- .directive('mainmenu', function() {
- return {
- require: ['^navbar'],
- restrict: 'E',
- transclude: true,
- scope: false,
- templateUrl: 'tt/ui/controls/menu/mainmenu.tpl.html',
- replace: true
- };
- })
- .directive('menuItem', ['pathService', function(pathService) {
- return {
- require: ['^mainmenu'],
- restrict: 'E',
- transclude: true,
- scope: {name: '@', title: '@'},
- templateUrl: 'tt/ui/controls/menu/menuitem.tpl.html',
- controller: ['$scope', '$element', '$attrs', function($scope, $element, $attrs) {
- var url = $scope.name, title = $scope.title;
- this.getUrl = function(name) {
- return url + '/' + name;
- };
- this.getName = function() {
- return url;
- };
- this.getTitle = function() {
- return title;
- };
- pathService.addParentTree($scope.name, $scope.title);
- }],
- replace: true
- };
- }])
- .directive('submenu', ['pathService', function(pathService) {
- var linkFn = function($scope, element, $attrs, $controller) {
- var $ctrl = $controller[0];
- $scope.url = $ctrl.getUrl($scope.name);
- $scope.menu = $ctrl.getName();
- pathService.addChildTree($scope.menu, $scope.name, $scope.title);
- };
- linkFn.$inject = ['$scope', '$element', 'attrs', 'menuItem'];
- return {
- require: ['^menuItem'],
- restrict: 'E',
- transclude: true,
- scope: { name: '@', title: '@', type: '@', icon: '@' },
- templateUrl: 'tt/ui/controls/menu/submenu.tpl.html',
- controller: ['$scope', '$element', '$attrs', function($scope, $element, $attrs) {
- $scope.url = '';
- $scope.menu = '';
- }],
- link: linkFn,
- replace: true
- };
- }]);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement