summaryrefslogtreecommitdiffstats
path: root/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-directives/ds2LeftMenu.js
diff options
context:
space:
mode:
Diffstat (limited to 'ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-directives/ds2LeftMenu.js')
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-directives/ds2LeftMenu.js89
1 files changed, 89 insertions, 0 deletions
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-directives/ds2LeftMenu.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-directives/ds2LeftMenu.js
new file mode 100644
index 00000000..8174c586
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-directives/ds2LeftMenu.js
@@ -0,0 +1,89 @@
+appDS2.directive('ds2Menu', function () {
+ return {
+ restrict: 'A', //This means that it will be used as an attribute and NOT as an element. I don't like creating custom HTML elements
+ replace: false,
+ templateUrl: "app/fusion/scripts/DS2-view-models/ds2Left_menu.html",
+ controller: ['$scope','$filter','$http','$timeout','$cookies','LeftMenuServiceDS2', function ($scope, $filter, $http, $timeout, $cookies, LeftMenuServiceDS2) {
+ $scope.menuData = [];
+ $scope.leftChildData = [];
+ $scope.leftParentData = [];
+ $scope.leftMenuItems = [];
+ $scope.app_name = "";
+ $scope.app_name_full = "";
+ LeftMenuServiceDS2.getLeftMenu().then(function(response){
+ var j = response;
+ if (j && j !== "null" && j !== "undefined"){
+ $scope.leftParentData = JSON.parse(j.data);
+ $scope.leftChildData = JSON.parse(j.data2);
+ } else {
+ console.log("ds2Menu::controller: unexpected getLeftMenu response");
+ return;
+ }
+ var leftParentList = $scope.leftParentData;
+ var leftChildItemList = $scope.leftChildData;
+ for (var i = 0; i < leftParentList.length; i++) {
+ var parentItem = {};
+ parentItem.name = leftParentList[i].label;
+ parentItem.imageSrc = leftParentList[i].imageSrc;
+ // Add link to items with no subitems
+ if (leftChildItemList[i].length == 0)
+ parentItem.href = leftParentList[i].action;
+ parentItem.menuItems = [];
+ for (var j = 0; j < leftChildItemList[i].length; j++) {
+ if (leftChildItemList[i][j].label != null && leftChildItemList[i][j].label.length > 0) {
+ var childItem = {};
+ childItem.name = leftChildItemList[i][j].label;
+ childItem.href = leftChildItemList[i][j].action;
+ parentItem.menuItems.push(childItem)
+ }
+ }
+ $scope.menuData.push(parentItem);
+ }
+ },function(error){
+ console.log("ds2Menu::controller: getLeftMenu failed", error);
+ });
+
+ LeftMenuServiceDS2.getAppName().then(function(response){
+ var j = response;
+ try {
+ if (j && j !== "null" && j!== "undefined"){
+ $scope.app_name_full = j.data;
+ var processed_app_name = j.data;
+ var n = processed_app_name.length;
+ if (n > 15) {
+ n = 15;
+ }
+ $scope.app_name = processed_app_name.substr(0, n);
+ } else {
+ throw "Get app_name respsone is not an object/is empty";
+ }
+ } catch (e) {
+ console.log("error happened while trying to get app name "+e);
+ return;
+ }
+ },function(error){
+ console.log("error happened while calling getAppName "+error);
+ });
+
+ $scope.adjustHeader=function() {
+ $scope.showHeader = ($cookies.show_app_header == undefined ? true : $cookies.show_app_header);
+ if ($scope.showHeader == true) {
+ $scope.drawer_margin_top = 50;
+ $scope.drawer_custom_top = 54;
+ $scope.toggle_drawer_top = 55;
+ }
+ else {
+ $scope.drawer_margin_top = 40;
+ $scope.drawer_custom_top = 0;
+ $scope.toggle_drawer_top = 10;
+ }
+ }; // adjustHeader
+
+
+ $scope.adjustHeader();
+ $scope.drawerOpen = true;
+
+
+ }]
+ }
+}); \ No newline at end of file