summaryrefslogtreecommitdiffstats
path: root/ecomp-portal-FE/client/app/views/sidebar
diff options
context:
space:
mode:
authortalasila <talasila@research.att.com>2017-02-07 15:03:57 -0500
committertalasila <talasila@research.att.com>2017-02-07 15:05:15 -0500
commit4ad39a5c96dd99acf819ce189b13fec946d7506b (patch)
treea1449286441947cc3d07a45227fa0d6f978e1a7d /ecomp-portal-FE/client/app/views/sidebar
parent5500448cbd1f374d0ac743ee2fd636fe2d3c0027 (diff)
Initial OpenECOMP Portal commit
Change-Id: I804b80e0830c092e307da1599bd9fbb5c3e2da77 Signed-off-by: talasila <talasila@research.att.com>
Diffstat (limited to 'ecomp-portal-FE/client/app/views/sidebar')
-rw-r--r--ecomp-portal-FE/client/app/views/sidebar/sidebar.controller.js143
-rw-r--r--ecomp-portal-FE/client/app/views/sidebar/sidebar.less37
-rw-r--r--ecomp-portal-FE/client/app/views/sidebar/sidebar.tpl.html20
3 files changed, 200 insertions, 0 deletions
diff --git a/ecomp-portal-FE/client/app/views/sidebar/sidebar.controller.js b/ecomp-portal-FE/client/app/views/sidebar/sidebar.controller.js
new file mode 100644
index 00000000..76d5301c
--- /dev/null
+++ b/ecomp-portal-FE/client/app/views/sidebar/sidebar.controller.js
@@ -0,0 +1,143 @@
+/*-
+ * ================================================================================
+ * eCOMP Portal
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ================================================================================
+ */
+'use strict';
+(function () {
+ class SidebarCtrl {
+ constructor(userProfileService, $log, $rootScope) {
+ this.$log = $log;
+ this.userProfileService = userProfileService;
+ this.$rootScope = $rootScope;
+ $rootScope.isAdminPortalAdmin = false;
+
+ //if (bowser.msie || bowser.msedge)
+ // $log.debug('SidebarCtrl::init: Browser is: Internet Explorer or Edge');
+ // else
+ // $log.debug('SidebarCtrl::init: Browser is: ' + bowser.name + ': ' + bowser.version);
+
+ userProfileService.getUserProfile()
+ .then(profile=> {
+ // $log.debug('SidebarCtrl::getUserProfile: profile.roles.indexOf(superAdmin) = ' + profile.roles.indexOf('superAdmin'));
+ // $log.debug('SidebarCtrl::getUserProfile: profile.roles.indexOf(admin) = ' + profile.roles.indexOf('admin'));
+ if (profile.roles.indexOf('superAdmin') > -1) {
+ $rootScope.isAdminPortalAdmin = true;
+ // this.$log.debug('SidebarCtrl::getUserProfile: user has the superAdmin role');
+ this.sidebarModel = {
+ label: 'ECOMP portal',
+ navItems: [
+ {
+ name: 'Home',
+ state: 'root.applicationsHome',
+ imageSrc : 'ion-home'
+ }, {
+ name: 'Application Catalog',
+ state: 'root.appCatalog',
+ imageSrc : 'ion-grid'
+ }, {
+ name: 'Widgets',
+ state: 'root.widgetsHome',
+ imageSrc : 'ion-android-apps'
+ }, {
+ name: 'Admins',
+ state: 'root.admins',
+ imageSrc : 'ion-android-star'
+ }, {
+ name: 'Users',
+ state: 'root.users',
+ imageSrc : 'ion-person'
+ },{
+ name: 'Portal Admins',
+ state: 'root.portalAdmins',
+ imageSrc : 'ion-gear-a'
+ }, {
+ name: 'Application Onboarding',
+ state: 'root.applications',
+ imageSrc : 'ion-ios-upload-outline'
+ }, {
+ name: 'Widget Onboarding',
+ state: 'root.widgets',
+ imageSrc : 'ion-ios-upload-outline'
+ },{
+ name: 'Edit Functional Menu',
+ state: 'root.functionalMenu',
+ imageSrc : 'ion-compose'
+ }
+ ]
+ };
+ }
+ else if (profile.roles.indexOf('admin') > -1) {
+ // this.$log.debug('SidebarCtrl::getUserProfile: user has the admin role');
+ this.sidebarModel = {
+ label: 'ECOMP portal',
+ navItems: [
+ {
+ name: 'Home',
+ state: 'root.applicationsHome',
+ imageSrc : 'ion-home'
+ }, {
+ name: 'Application Catalog',
+ state: 'root.appCatalog',
+ imageSrc : 'ion-grid'
+ }, {
+ name: 'Widgets',
+ state: 'root.widgetsHome',
+ imageSrc : 'ion-grid'
+ }, {
+ name: 'Users',
+ state: 'root.users',
+ imageSrc : 'ion-person'
+ }, {
+ name: 'Widget Onboarding',
+ state: 'root.widgets',
+ imageSrc : 'ion-grid'
+ }
+ ]
+ };
+ }
+ else {
+ $rootScope.isAdminPortalAdmin = false;
+ // this.$log.debug('SidebarCtrl::getUserProfile: user is not superAdmin nor admin');
+ this.sidebarModel = {
+ label: 'ECOMP portal',
+ navItems: [
+ {
+ name: 'Home',
+ state: 'root.applicationsHome',
+ imageSrc : 'ion-home'
+ }, {
+ name: 'Application Catalog',
+ state: 'root.appCatalog',
+ imageSrc : 'ion-grid'
+ }, {
+ name: 'Widgets',
+ state: 'root.widgetsHome',
+ imageSrc : 'ion-grid'
+ }
+ ]
+ };
+ }
+ }).catch(err=> {
+ $log.error('SidebarCtrl: failed to get user profile: ' + err);
+ });
+
+ }
+ }
+ SidebarCtrl.$inject = ['userProfileService', '$log', '$rootScope'];
+ angular.module('ecompApp').controller('SidebarCtrl', SidebarCtrl);
+})();
diff --git a/ecomp-portal-FE/client/app/views/sidebar/sidebar.less b/ecomp-portal-FE/client/app/views/sidebar/sidebar.less
new file mode 100644
index 00000000..97650fed
--- /dev/null
+++ b/ecomp-portal-FE/client/app/views/sidebar/sidebar.less
@@ -0,0 +1,37 @@
+/*-
+ * ================================================================================
+ * eCOMP Portal
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ================================================================================
+ */
+ .w-ecomp-sidebar {
+ position: relative;
+ left: 0;
+ right: 0;
+ top: 5px;
+ padding-left: 0;
+}
+
+ @media screen and (-webkit-min-device-pixel-ratio:0)
+{
+ .w-ecomp-sidebar {
+ position: relative;
+ left: 0;
+ right: 0;
+ top: -5px;
+ padding-left: 0;
+ }
+} \ No newline at end of file
diff --git a/ecomp-portal-FE/client/app/views/sidebar/sidebar.tpl.html b/ecomp-portal-FE/client/app/views/sidebar/sidebar.tpl.html
new file mode 100644
index 00000000..a5cbf8ff
--- /dev/null
+++ b/ecomp-portal-FE/client/app/views/sidebar/sidebar.tpl.html
@@ -0,0 +1,20 @@
+<!--
+ ================================================================================
+ eCOMP Portal
+ ================================================================================
+ Copyright (C) 2017 AT&T Intellectual Property
+ ================================================================================
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ ================================================================================
+ -->
+<left-menu id="sidebar.sidebarModel" sidebar-model="sidebar.sidebarModel" class="w-ecomp-sidebar"></left-menu>