summaryrefslogtreecommitdiffstats
path: root/ecomp-sdk/epsdk-app-overlay
diff options
context:
space:
mode:
authorChristopher Lott (cl778h) <clott@research.att.com>2017-09-25 15:52:24 -0400
committerChristopher Lott (cl778h) <clott@research.att.com>2017-09-25 15:53:55 -0400
commit3a2b5c60384feb490e878020bdb9c01f514d7856 (patch)
tree840d02d1090640b08aa481f52d3385ad92552991 /ecomp-sdk/epsdk-app-overlay
parent65c475eb72271f674f5ec4502fa67fd972344543 (diff)
Sonar Scans and Role Centralization; clean nl
PORTAL-21: centralized user role management PORTAL-72: Address Sonar Scan code issues for ONAP - mostly on raptor PORTAL-86: ONAP - Remove internal att.com usages from tests and otherfiles PORTAL-90: Add debug statements to demo app's class; no functional change Issue: PORTAL-21 PORTAL-72 PORTAL-86 PORTAL-90 Change-Id: I72a6c812009f51446330bf42bab6d3338d053805 Signed-off-by: Christopher Lott (cl778h) <clott@research.att.com>
Diffstat (limited to 'ecomp-sdk/epsdk-app-overlay')
-rw-r--r--ecomp-sdk/epsdk-app-overlay/README.md2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz/ebz_header.jsp1
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz_template_report_embedded.jsp1
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/webrtc/collaboration.jsp1
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/admin-controller.js16
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-profile/self-profile-controller.js10
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-workflows/workflowApp.js5
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-services/modalService.js57
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-view-models/ds2-admin/modals/role-functions-modal.html2
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/network/net_map.js6
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/header.html162
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/left_menu.html27
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/reportdashboard-page/src/report-dashboard.html19
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/webrtc/RTCMultiConnection.js25
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/global.css178
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/workflows/workflows.css10
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusionapp/drools/view-models/droolsSinglePage.html72
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/fusion/sample/html/data/worddata.csv128
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/js/search.js830
19 files changed, 154 insertions, 1398 deletions
diff --git a/ecomp-sdk/epsdk-app-overlay/README.md b/ecomp-sdk/epsdk-app-overlay/README.md
index c6a1012f..5f03cb9f 100644
--- a/ecomp-sdk/epsdk-app-overlay/README.md
+++ b/ecomp-sdk/epsdk-app-overlay/README.md
@@ -22,6 +22,8 @@ Version 1.4.0
- PORTAL-42 Use OParent as parent POM
- PORTAL-72 Address Sonar Scan code issues
- PORTAL-90 Use approved ONAP license text
+- Portal-86 Remove application specific usages from tests and other files
+
* Put new entries here *
Version 1.3.0, 28 August 2017
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz/ebz_header.jsp b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz/ebz_header.jsp
index 0c94add3..a1128ede 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz/ebz_header.jsp
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz/ebz_header.jsp
@@ -57,7 +57,6 @@
<script src="app/fusion/scripts/modalService.js"></script>
<script src="static/js/jquery.mask.min.js" type="text/javascript"></script>
<script src="static/js/jquery-ui.js" type="text/javascript"></script>
-<script src="app/fusion/external/ebz/sandbox/att-abs-tpls.js" type="text/javascript"></script>
<script src="static/fusion/js/att_angular_gridster/ui-gridster-tpls.js"></script>
<script src="static/fusion/js/att_angular_gridster/angular-gridster.js"></script>
<script src= "app/fusion/external/ebz/angular_js/checklist-model.js"></script>
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz_template_report_embedded.jsp b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz_template_report_embedded.jsp
index e4d2d1ef..159932ca 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz_template_report_embedded.jsp
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz_template_report_embedded.jsp
@@ -49,7 +49,6 @@
<script src="static/js/modalService.js"></script>
<script src="static/js/jquery.mask.min.js" type="text/javascript"></script>
<script src="static/js/jquery-ui.js" type="text/javascript"></script>
-<script src="app/fusion/external/ebz/sandbox/att-abs-tpls.js" type="text/javascript"></script>
<script src="static/fusion/js/att_angular_gridster/ui-gridster-tpls.js"></script>
<script src="static/fusion/js/att_angular_gridster/angular-gridster.js"></script>
<script src= "app/fusion/external/ebz/angular_js/checklist-model.js"></script>
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/webrtc/collaboration.jsp b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/webrtc/collaboration.jsp
index f99712ea..f392ed56 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/webrtc/collaboration.jsp
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/webrtc/collaboration.jsp
@@ -166,7 +166,6 @@
<%@ include file="/WEB-INF/fusion/jsp/popup_modal.html" %>
<script src="app/fusion/scripts/modalService.js"></script>
- <script src="app/fusion/external/ebz/sandbox/att-abs-tpls.js" type="text/javascript"></script>
<script src="app/fusion/scripts/att_angular_gridster/ui-gridster-tpls.js"></script>
<script src="app/fusion/scripts/att_angular_gridster/angular-gridster.js"></script>
<script src= "app/fusion/external/ebz/angular_js/checklist-model.js"></script>
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/admin-controller.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/admin-controller.js
index 0c6105c8..0d95e72a 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/admin-controller.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/admin-controller.js
@@ -704,7 +704,7 @@ appDS2.controller('adminController', function($scope, $http,AdminService, $modal
},function(error){
console.log("roleControllerDS2 failed: " + error);
- reloadPageOnce();
+ // reloadPageOnce();
}).finally(function() {
$scope.showLoader=false; // Always execute this on both error and success
});
@@ -727,7 +727,13 @@ appDS2.controller('adminController', function($scope, $http,AdminService, $modal
})
$scope.roleFnInit();
-
+ $scope.updateRoleFunction = function(){
+ $scope.role.roleFunctions=[];
+ for(var i=0;i<$scope.ociavailableRoleFunctions.length;i++){
+ if($scope.ociavailableRoleFunctions[i].selected)
+ $scope.role.roleFunctions.push($scope.ociavailableRoleFunctions[i]);
+ }
+ }
$scope.saveRole = function() {
var errorMsg;
$scope.showLoader=true;
@@ -841,6 +847,9 @@ appDS2.controller('adminController', function($scope, $http,AdminService, $modal
}
}
});
+ modalInstance.result.finally(function () {
+ $scope.updateRoleFunction();
+ });
}
$scope.addNewChildRoleFunctionModalPopup = function(data, role,info) {
@@ -860,6 +869,9 @@ appDS2.controller('adminController', function($scope, $http,AdminService, $modal
}
}
});
+ modalInstance.result.finally(function () {
+ alert();
+ });
}
// remove role function associated to a role on Role Edit page
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-profile/self-profile-controller.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-profile/self-profile-controller.js
index efe2b749..2c005365 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-profile/self-profile-controller.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-profile/self-profile-controller.js
@@ -25,8 +25,7 @@ appDS2.controller('selfProfileController', function($scope, $http, $modal, $rout
$scope.pageType=2;
}
- $scope.sbcid=$scope.profile.sbcid;
- $scope.managerAttuid=$scope.profile.managerAttuid;
+
/***********************************************************functions***********************************************/
$scope.getProfileDetail = function(profileIdParam){
@@ -42,8 +41,7 @@ appDS2.controller('selfProfileController', function($scope, $http, $modal, $rout
$scope.ociTimeZones=JSON.parse($scope.data.timeZones);
$scope.ociCountries=JSON.parse($scope.data.countries);
stateList=JSON.parse($scope.data.stateList);
- $scope.sbcid=$scope.profile.sbcid;
- $scope.managerAttuid=$scope.profile.managerAttuid;
+
if($scope.ociavailableRoles)
$.each($scope.ociavailableRoles, function(i, a){
@@ -100,9 +98,7 @@ appDS2.controller('selfProfileController', function($scope, $http, $modal, $rout
$scope.ociTimeZones=JSON.parse($scope.data.timeZones);
$scope.ociCountries=JSON.parse($scope.data.countries);
stateList=JSON.parse($scope.data.stateList);
- $scope.sbcid=$scope.profile.sbcid;
- $scope.managerAttuid=$scope.profile.managerAttuid;
-
+
if($scope.ociavailableRoles)
$.each($scope.ociavailableRoles, function(i, a){
var availableRole = a;
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-workflows/workflowApp.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-workflows/workflowApp.js
index a3496785..2ae2b1b3 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-workflows/workflowApp.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-workflows/workflowApp.js
@@ -1,5 +1,6 @@
-angular.module('att.abs.helper', []);
+/*angular.module('att.abs.helper', []);
angular.module('quantum', []);
//angular.module('ui.bootstrap', []);
appDS2=angular.module("workflowApp", ["ngRoute", 'ngMessages', 'ngCookies', 'b2b.att.tpls', 'ddh.att.tpls','ddh.att.dropdowns', 'ddh.att.switches', 'b2b.att.footer', 'b2b.att.header','gridster','ui.bootstrap']);
-
+*/
+var appDS2=angular.module("workflowApp", ["ngRoute", 'ngMessages','ngCookies','modalServices', 'ngCookies', 'b2b.att','gridster','ui.bootstrap','ui.bootstrap.modal']); \ No newline at end of file
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-services/modalService.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-services/modalService.js
deleted file mode 100644
index cb85ffce..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-services/modalService.js
+++ /dev/null
@@ -1,57 +0,0 @@
-
-angular.module("template/modalsAndAlerts/window2.html", []).run(["$templateCache", function($templateCache) {
- $templateCache.put("template/modalsAndAlerts/window.html",
- "<div class=\"modalwrapper active {{windowClass}}\" ng-class=\"{'modal-landscape': isModalLandscape}\" role=\"dialog\" tabindex=\"-1\" aria-labelledby=\"{{title}}\" aria-describedby=\"{{content}}\">\n" +
- " <div class=\"modal fade {{sizeClass}}\">sdfdsfsfd</div>\n" +
- "</div>");
- }]);
-
-angular.module('ddh.att.modalsAndAlerts')
-
-.controller('modalsAndAlertsController', function ($scope, $modal, $log) {
- $scope.name='eeee';
- $scope.items = ['item1', 'item2', 'item3'];
- $scope.dt = new Date("March 10, 2014 00:00:00");
- $scope.helperText = "The date you selected is $date. Double tap to open calendar. Select a date to close the calendar.";
- $scope.open = function (event) {
- var modalInstance = $modal.open({
- templateUrl: 'template/modalsAndAlerts/modal-demo.html',
- controller: ModalInstanceCtrl,
- sizeClass: 'modal-long-adjust',
- resolve: {
- items: function () {
- return $scope.items;
- }
- }
- });
-
- modalInstance.result.then(function (selectedItem) {
- $scope.selected = selectedItem;
- event.target.focus();
- }, function () {
- $log.info('Modal dismissed at: ' + new Date());
- event.target.focus();
- });
- };
- $scope.ok = function () {
- //add the ok functionality
- console.log("ok");
- };
- $scope.cancel = function () {
- //add the cancel functionality
- console.log("cancel");
- };
-})
-
-var ModalInstanceCtrl = function ($scope, $modalInstance, items) {
- $scope.items = items;
- $scope.selected = {
- item: $scope.items[0]
- };
- $scope.ok = function () {
- $modalInstance.close($scope.selected.item);
- };
- $scope.cancel = function () {
- $modalInstance.dismiss('cancel');
- };
-};
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-view-models/ds2-admin/modals/role-functions-modal.html b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-view-models/ds2-admin/modals/role-functions-modal.html
index 48044da2..1ecf192b 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-view-models/ds2-admin/modals/role-functions-modal.html
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-view-models/ds2-admin/modals/role-functions-modal.html
@@ -18,7 +18,7 @@
<tr>
<td>
<label class="btn-switch-label" tabindex="0" role="option">
- <input ng-click="activateRoleConfirmPopUp(roleFunction.selected,roleFunction);" type="checkbox" b2b-switches ng-model="roleFunction.selected" size-class="modal-small modal-alert">
+ <input type="checkbox" b2b-switches ng-model="roleFunction.selected" size-class="modal-small modal-alert">
</label>
</td>
<td>{{roleFunction.name}}</td>
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/network/net_map.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/network/net_map.js
index 49599503..421e511f 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/network/net_map.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/network/net_map.js
@@ -243,7 +243,7 @@ plotHeader = function(attributes,cssType){
plotElement = function(element) {
if(element.left){
- if(!element.id.startsWith("com.att.trinity.ue")){
+ if(!element.id.startsWith("ue")){
left = element.left ;
var thisColor = element.bgColor;
var thisElement = new joint.shapes.basic.newRect({
@@ -325,7 +325,7 @@ plotElementIcon = function(element) {
left = element.left ;
uetop = element.top;
- if(element.id.startsWith("com.att.trinity.ue")) {
+ if(element.id.startsWith("ue")) {
uetop = element.top - 30;
} else {
uetop = element.top ;
@@ -368,7 +368,7 @@ plotElementIcon = function(element) {
});
}
- if(element.id.startsWith("com.att.trinity.ue")){
+ if(element.id.startsWith("ue")){
thisElement.attr({
rect: {fill: 'white', style:{'pointer-events':'none'}},
image: { style:{'pointer-events':'none'}}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/header.html b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/header.html
deleted file mode 100644
index e7616d94..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/header.html
+++ /dev/null
@@ -1,162 +0,0 @@
-<div style="position: relative; z-index: 999;">
- <div class="headerContainer" id="headerContainer" ng-show="{{showHeader}}">
- <div style="position: relative; z-index: 999;">
- <div class="headerContainer" id="headerContainer">
- <div id="megaMenuContainer" class="megaMenuContainer" style="margin-top: 0; overflow: visible;">
- <!--for mega Menu-->
- <!-- Mega Menu parent-tab directive with three models menu-items, active-sub-menu, active-menu -->
- <div id="topMenu" class="top-megamenu" ng-mouseleave="activeClickSubMenu.x.active=false; activeClickMenu.x.active=false" >
- <div style="float:left;width:100%;"parent-tab menu-items="megaMenuDataObject" active-sub-menu='activeClickSubMenu.x' active-menu='activeClickMenu.x'>
- <div parentmenu-tabs mega-menu="true" menu-items="megaMenuDataObject" style="height:55px;">
- <div style="float:left">
- <li class="megamenu__item" style="line-height:55px;" ng-click="returnToPortal()">
-
- <strong style="font-weight: 400 !important; font-family: clearview_att_bold !important; font-size: 18px;" >ECOMP Portal</strong>
- </li>
- <div menu-tabs mega-menu="true" tab-name="item.text" menu-item="item"
- active-menu="activeClickMenu.x"
- ng-repeat="item in megaMenuDataObject"
- style="font-size: 18px;"
- ng-mousedown="loadFavorites()">
- <div parentmenu-tabs sub-menu="true" ng-show="activeClickMenu.x.active && item.active"
- menu-items="activeClickMenu.x.children">
-
- <!-- Second level menu -->
- <div menu-tabs sub-menu="true" tab-name="subItem.text"
- tab-url="subItem.url" menu-item="subItem"
- ng-repeat="subItem in activeClickMenu.x.children | orderBy : 'column'" active-menu="activeClickSubMenu.x"
- sub-item-active="{{subItem.active}}" style="float:left;" aria-label="{{subItem.text}}"
- ng-mouseenter="submenuLevelAction(subItem.text,subItem.column)"
- ng-mouseleave="submenuLevelAction(subItem.text,subItem.column)"
- ng-click="submenuLevelAction(subItem.text,subItem.column)" >
- <i ng-if="subItem.text=='Favorites'" id="favorite-star"
- class="icon-star favorites-icon-active">
- </i>
- </div>
- <div class="sub__menu" ng-mouseleave="activeClickSubMenu.x.active=false" >
- <ul ng-show="activeClickSubMenu.x.active" role="menubar" class="columns">
- <!-- Third level menu -->
- <div menu-tabs
- menu-item="subItem"
- class="columns-div"
- ng-repeat="subItem in activeClickSubMenu.x.children | orderBy : 'column'"
- ng-show="activeClickSubMenu.x.active">
-
- <i id="favorite-selector-third-level"
- ng-show="isUrlFavorite(subItem.menuId)==false"
- class="icon-star favorites-icon-inactive"
- ng-if="subItem.url.length > 1">
- </i>
- <i id="favorite-selector-third-level"
- ng-show="isUrlFavorite(subItem.menuId)"
- class="icon-star favorites-icon-active"
- ng-if="subItem.url.length > 1">
- </i>
- <span class="title" aria-label="{{subItem.text}}"
- ng-click="goToUrl(subItem)">{{subItem.text}}</span>
- <!-- Fourth level menus -->
- <div att-links-list="">
- <i id="favorite-selector-fourth-level"
- class="icon-star favorites-icon-inactive"
- ng-show="isUrlFavorite(tabValue.menuId)==false"
- ng-if="tabValue.url.length > 1">
-
- </i>
- <i id="favorite-selector-fourth-level"
- class="icon-star favorites-icon-active"
- ng-show="isUrlFavorite(tabValue.menuId)"
- ng-if="tabValue.url.length > 1">
-
- </i>
- <span role="menuitem" att-links-list-item=""
- ng-repeat="tabValue in subItem.children"
- ng-click="goToUrl(tabValue)"
- att-accessibility-click="13,32"
- ng-class="{'disabled': tabValue.disabled}">{{tabValue.text}}</span>
- </div>
- <hr ng-show="!$last"/>
- </div>
- </ul>
- <!-- Favorites level menu -->
- <div class="favorites-window" ng-show='favoritesWindow' ng-mouseleave="hideFavoritesWindow()">
- <div id="favorites-menu-items" ng-show="showFavorites">
- <div ng-repeat="subItem in favoritesMenuItems"
- att-links-list=""
- style='display: inline'>
- <i id="favorite-selector-favorites-list"
- class="icon-star favorites-icon-active"
- >
- </i>
- <a id="favorites-list" aria-label="{{subItem.text}}"
- ng-click="goToUrl(subItem)"
- style="margin-left: 3px; margin-right: 20px; text-decoration: none; color: #666666;">
- {{subItem.text}}
- </a>
- </div>
- <div>
- <br>
- <p style='font-weight: 400; font-family: clearview_att_bold !important;
- font-size: 18px; text-align: center; background-color: lightgray;
- width: 400px; margin-left: 25%; margin-right: 25%;'>
- Manage favorites on ECOMP Portal.
- </p>
- </div>
- </div>
- <!-- Favorites when empty -->
- <div id="favorites-empty" ng-show="emptyFavorites" class="favorites-window-empty">
- <div>
- <img src="app/fusion/external/ebz/images/no_favorites_star.png">
- <p class='favoritesLargeText'>No Favorites</p>
- <p class='favoritesNormalText'>Manage favorites on ECOMP Portal.</p>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div >
- <li class="megamenu__item" style="line-height:55px;" ng-if="loadMenufail">
- <strong style="font-weight: 400 !important; font-family: clearview_att_bold !important; font-size: 18px;" >Unable to load menus</strong>
- </li>
- <div style="float:right">
- <li id="bcLoginSnippet" class="megamenu__item" style="width: 140px;" >
- <div popover="loginSnippet.html" aria-label="Login Snippet"
- referby="loginSnippet" att-accessibility-click="13,32" popover-style="\" popover-placement="below" style="width: 200px;">
- <div class="icon-user-small login-snippet-icon"></div>
- <div class="login-snippet-text" style="display: inline-block; font-size:12px; margin-left:5px;overflow: hidden; max-height: 31px; overflow: hidden; max-height: 31px; max-width:120px; padding-top: 0px; margin-top: 0px; white-space: nowrap;">{{userFirstName}}</div>
- </div>
- </li>
- </div>
- </div>
- </div>
- </div>
- <div style="clear: both"></div>
- </div>
- </div>
- </div>
- </div>
- </div>
-</div>
-<script type="text/ng-template" id="loginSnippet.html">
- <div style="line-height: normal; right: 167px; min-height: 200px; height: auto; width: auto; " ng-controller="loginSnippetCtrl" >
- <div id="reg-header-snippet">
- <div class="reg-profilePicture" style="min-height: 215px; width: auto; " id="reg-profile-links">
- <div id="reg-profileImage">
- <div style="clear: both; height: 80px; position: relative; width: 80px;">
- <span style=" background-position: -1px -1px; height: 81px;left: 0;position: absolute;top: 0;width: 81px;">&nbsp;</span>
- </div>
- </div>
- <div id="reg-logout-div">
- <a class="reg-logout-btn" href="logout.htm">Log Out</a>
- </div>
- </div>
- <div tabindex="0" class="reg-profileDetails" id="reg-profiledetails-id">
- <ul class="reg-Details-table" style="list-style: none;">
- <li><div class="reg-userName-table"><div id="reg-userName-table-row"><div id="reg-userName-table-cell"><h3 class="att-global-fonts" style="font-size:18px !important;" id="reg-userName">{{userProfile.fullName}}&nbsp;</h3><span class="visuallyhidden">.</span></div></div></div></li>
- <li><div class="reg-userEmail-label"><span class="reg-userEmail-label-spn">EMAIL<span class="visuallyhidden">:</span></span></div></li>
- <li><div class="reg-userEmail-value"><span class="reg-userEmail-value-spn">{{userProfile.email}}<span class="visuallyhidden">.</span></span></div></li>
- </ul>
- </div>
- </div>
- </div>
-</script>
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/left_menu.html b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/left_menu.html
deleted file mode 100644
index ad4e5d91..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/left_menu.html
+++ /dev/null
@@ -1,27 +0,0 @@
- <div class="license-notification">
- <a href="javascript:void(0)" style="background-color:#bbb;" class="button button--small" tooltip="Please contact ECOMP Portal team to get the license" tooltip-placement="below" tooltip-style="light" tooltip-popup-delay="500" >
- <span style="">{{app_name_full}}</span>
- </a>
-</div>
-<div ng-cloak>
- <span ng-style="adjustHLeftMenu('burgerIcon')" style="z-index:998; position:fixed; left:0%; font-size:35px; margin-left:10px;text-decoration:none;">
- <a ng-click="toggleDrawer();isOpen = !isOpen" href="javascript:void(0);" class="arrow-icon-left" >
- <span class="icon-hamburger"></span></a>
- <span ng-init="isOpen = true" ng-show="isOpen" style="font-size:16px; position:relative; top:-8px; left:-15px;">&nbsp&nbsp&nbsp {{app_name}}</span>
- </span>
- <div att-drawer drawer-slide="left" drawer-custom-top="{{drawer_custom_top}}px" drawer-size="200px" drawer-open="drawerOpen" drawer-custom-height="100%" >
- <div ng-style="adjustHLeftMenu('leftMenu')">
- <div class="attDrawer" style="z-index:998">
- <div class="appLeftMenuAccordDiv">
- <accordion close-others="true" css="att-accordion--no-box">
- <accordion-group ng-repeat="parent in leftMenuItems" heading="{{parent.parentLabel}}" parent-link="{{parent.parentAction}}" image-source="{{parent.parentImageSrc}}" child-length="{{parent.childItemList.length}}" is-open="parent.open">
- <div ng-repeat="subMenu in parent.childItemList" style="font-size:12px; margin-left:10px;">
- <a href="{{subMenu.action}}" style="font-size:12px; color:#666666;" >{{subMenu.label}}</a>
- </div>
- </accordion-group>
- </accordion>
- </div>
- </div>
- </div>
- </div>
-</div> \ No newline at end of file
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/reportdashboard-page/src/report-dashboard.html b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/reportdashboard-page/src/report-dashboard.html
index 8fecfb7b..ecdccb62 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/reportdashboard-page/src/report-dashboard.html
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/reportdashboard-page/src/report-dashboard.html
@@ -109,25 +109,6 @@
<script src="app/fusion/scripts/modalService.js"></script>
<script src="app/fusion/scripts/view-models/reportdashboard-page/src/app/report_whitelist.js"></script>
<!-- Controller js -->
-<!-- <script src="app/fusion/scripts/controllers/fn_menu_add_popup_controller.js"></script>
- <script src="app/fusion/scripts/controllers/admin_menu_edit.js"></script>
- <script src="app/fusion/scripts/controllers/profile-search-controller.js"></script>
- <script src="app/fusion/scripts/controllers/profile-controller.js"></script>
- <script src="app/fusion/scripts/controllers/post-search-controller.js"></script>
- <script src="app/fusion/scripts/controllers/role-list-controller.js"></script>
- <script src="app/fusion/scripts/controllers/role-function-list-controller.js"></script>
- <script src="app/fusion/scripts/controllers/rolefunctionpopupController.js"></script>
- <script src="app/fusion/scripts/controllers/modelpopupController.js"></script>
- <script src="app/fusion/scripts/controllers/jcs-admin-controller.js"></script>
- <script src="app/fusion/scripts/controllers/broadcast-list-controller.js"></script>
- <script src="app/fusion/scripts/controllers/broadcast-controller.js"></script>
- <script src="app/fusion/scripts/controllers/usage-list-controller.js"></script>
- <script src="app/fusion/scripts/controllers/collaborate-list-controller.js"></script>
- <script src="app/fusion/scripts/controllers/role-controller.js"></script>
- <script src="app/fusion/scripts/controllers/rolepopupmodelController.js"></script>-->
- <!-- Header and Footer -->
- <!-- <script src="app/fusion/external/ebz/js/attHeaderSnippet.js"></script>
- <script src="app/fusion/external/ebz/js/attHeader.js"></script> -->
<link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/ebz_header/header.css">
<link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/ebz_header/footer.css" >
<script src="app/fusion/scripts/directives/footer.js"></script>
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/webrtc/RTCMultiConnection.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/webrtc/RTCMultiConnection.js
index 3ce348b6..daf64413 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/webrtc/RTCMultiConnection.js
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/webrtc/RTCMultiConnection.js
@@ -5574,8 +5574,7 @@
hark: 'https://cdn.webrtc-experiment.com/hark.js',
firebase: 'https://cdn.webrtc-experiment.com/firebase.js',
firebaseio: 'https://webrtc-signaling.firebaseio.com/',
-
- muted: 'static/fusion/images/ATT_Labs_Logo.png',
+
getConnectionStats: 'https://cdn.webrtc-experiment.com/getConnectionStats.js',
FileBufferReader: 'https://cdn.webrtc-experiment.com/FileBufferReader.js'
@@ -5995,29 +5994,7 @@
username: 'ambient'
});
- /* CHANGED: Fusion: These are non-att servers for testing purposes
-
- iceServers.push({
- url: 'stun:stun.l.google.com:19302'
- });
-
- iceServers.push({
- url: 'stun:stun.anyfirewall.com:3478'
- });
-
- iceServers.push({
- url: 'turn:turn.bistri.com:80',
- credential: 'homeo',
- username: 'homeo'
- });
-
- iceServers.push({
- url: 'turn:turn.anyfirewall.com:443?transport=tcp',
- credential: 'webrtc',
- username: 'webrtc'
- });
- */
// CUSTOM CODE //
connection.iceServers = iceServers;
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/global.css b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/global.css
deleted file mode 100644
index 25d1c578..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/global.css
+++ /dev/null
@@ -1,178 +0,0 @@
-body{
- margin: 0;
- padding: 0;
- padding-bottom: 0 !important;
- min-width: 980px;
-}
-label {
- display: inline-block;
- margin-bottom: 5px;
- font-weight: 700;
-}
-.footer-columns label {
- color: #009fdb;
- font-size: 18px;
-}
-
-.b2b-header-tabs .header__item.profile .profile-info{
- border: 1px solid #d3d3d3;
- max-width:400px;
- width:300px;
- padding: 20px;
- pointer-events: auto;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- font-size: 16px;
- -webkit-transition: opacity .2s ease-out;
- -moz-transition: opacity .2s ease-out;
- transition: opacity .2s ease-out;
- background: #fff;
- border-radius: 5px;
- box-shadow: 0 5px 6px 0 rgba(0,0,0,.25);
- color: #333;
- line-height: 20px;
- position: absolute;
- left:-123px;
- top:38px;
- display:none;
-}
-.b2b-header-tabs .header__item.profile .profile-info.open{
- display:block;
-}
-.b2b-header-tabs .header__item.profile .profile-info label{
- font-family:Omnes-ATT-W02;
- display:block;
- margin-top:20px;
- font-size: 16px;
-}
-.b2b-header-tabs .header__item.profile .profile-info span{
- font-family:Omnes_ATTW02Medium;
- display:block;
-}
-
-.b2b-header-tabs .selectWrap button.awd-select{
- height:36px;
- line-height:31px;
- font-size:1rem;
- display:inline-block;
-}
-/* @font-face {
- font-family: atticons;
- src: url(../fonts/atticons.eot?#iefix) format("embedded-opentype"), url(../fonts/atticons.woff) format("woff"), url(../fonts/atticons.ttf) format("truetype"), url(../fonts/atticons.svg#atticons) format("svg");
- font-weight: normal;
- font-style: normal;
-} */
-[class*=" icon-"], [class^=icon-] {
- font-family: atticons;
- speak: none;
- font-style: normal;
- font-weight: 400;
- font-variant: normal;
- text-transform: none;
- line-height: 40px;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
-}
-
-.icon-user-small {
- display: inline-block;
- vertical-align: middle;
- width: 20px;
- font-size: 56px;
- margin-right: 16px;
- float: left;
-}
-.icon-user-small:before {
- content: "\e60b";
-}
-.icon-local-search {
- content: "\e685";
-}
-.header-container {
- width: 100%;
- float: left;
-}
-.menu-container {
- width: 250px;
- float: left;
-}
-.content-container {
- float: left;
- min-height: 650px;
- width: calc(100% - 250px);
-}
-.footer-container {
- float:left;
- width: 100%;
-}
-.profile-info {
- font-size: 16px;
- color: #333;
- line-height: 20px;
-}
-h6 {
- font-weight: bold;
- font-size: 1.125em;
- line-height: 1.3333333333;
-}
-
-.icon-primary-accordion-plus, .icon-primary-accordion-minus {
- float: right;
- line-height: 20px;
-}
-.left-menu-collapsed {
- width: 0px !important;
-}
-.menu-icon {
- float: left;
- line-height: 20px;
- width: 25px;
- height: 20px;
- margin-top: -10px;
-}
-.b2b-footer-wrapper {
- width: 100%;
- background-color: #222;
- height: 88px;
-}
-.icon-primary-right {
- margin-left: -11px;
-}
-@media (max-width: 768px) {
- .divider-bottom-footer .footerLogo {
- margin: 10px 0 0 0px;
- }
- .b2b-header-tabs .header__items {
- width: 700px;
- }
-}
-@media screen and (min-device-width: 769px) and (max-width: 1200px) {
- .b2b-header-tabs .header__items {
- width: 700px;
- }
-}
-@media screen and (max-width: 1100px) {
- .b2b-header-tabs .header__item.profile {
- float: right;
- }
-}
-@media screen and (min-width: 768px) and (max-width: 1105px) {
- table th, table td{
- padding: 19px 10px;
- }
-}
-.icon-spinner {
- animation: spinner 1s linear infinite;
- background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2036%2036%22%3E%0A%20%20%3Cpath%20fill%3D%22%230569AE%22%20d%3D%22M18%2036c-2.7%200-4.8-.6-6.2-1C8%2033.6%205.4%2031.1%204%2029.3%202.7%2027.6.9%2024.7.3%2020.8c-.3-2.1-.5-5.4.9-9.1C3%206.8%206.4%204.1%208.3%202.8%2011.8.5%2015.4%200%2017.8%200l.1%204.3c-1.8%200-4.6.4-7.3%202.2-1.4.9-4%203-5.4%206.7-1%202.8-.9%205.3-.7%206.9.5%203%201.8%205.1%202.9%206.4%201.1%201.4%203%203.2%206%204.3%201.5.5%204.6%201.3%208.3.3%203-.8%205-2.5%206.2-3.7%201.4-1.4%202.4-3.2%203.1-5%20.4-1.3.9-3.3.6-5.8-.5-4.2-2.8-7.1-4.2-8.5L30.5%205c1.8%201.8%204.8%205.6%205.4%2011.1.3%203.2-.3%205.9-.9%207.6-.8%202.4-2.2%204.8-4%206.7-1.5%201.6-4.2%203.8-8.1%204.9-1.8.5-3.4.7-4.9.7z%22%2F%3E%0A%20%20%3Cpath%20fill%3D%22%23FFF%22%20d%3D%22M17.8%202.2c1.8%200%204.9.3%208.2%202.2%201.2.7%202.2%201.5%203%202.3%22%2F%3E%0A%20%20%3Cpath%20fill%3D%22%23F2F2F3%22%20d%3D%22M27.5%208.1c-.8-.8-1.7-1.4-2.6-1.9-2.1-1.2-4.5-1.9-7.1-1.9V0c3.3%200%206.5.9%209.3%202.4%201.2.8%202.3%201.6%203.4%202.6l-3%203.1z%22%2F%3E%0A%3C%2Fsvg%3E");
- height: 50px;
- width: 50px;
-}
-.loader-container {
- position: fixed;
- top: calc(50vh - 25px);
- left: calc(50vw - 25px);
-}
-.loader-container i {
- float: left;
-} \ No newline at end of file
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/workflows/workflows.css b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/workflows/workflows.css
index 2a740ec5..0995a992 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/workflows/workflows.css
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/workflows/workflows.css
@@ -15,16 +15,6 @@
background-color:white;
}
-.scrolling-table #att-scroll-table-content{
- height:200px;
- position: absolute !important;
- width:700px;
- padding-left: 0px;
- padding-top: 0px;
- padding-bottom: 0px;
- padding-right:5px;
-}
-
.workflow-popup-body{
position: relative;
padding: 30px;
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusionapp/drools/view-models/droolsSinglePage.html b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusionapp/drools/view-models/droolsSinglePage.html
deleted file mode 100644
index a1d0a5ba..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusionapp/drools/view-models/droolsSinglePage.html
+++ /dev/null
@@ -1,72 +0,0 @@
-<!DOCTYPE html>
-<html>
- <head>
- <meta http-equiv="X-UA-Compatible" content="IE=edge" />
- <meta http-equiv="cache-control" content="max-age=0" />
- <meta http-equiv="cache-control" content="no-cache" />
- <meta http-equiv="expires" content="0" />
- <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
- <meta http-equiv="pragma" content="no-cache" />
- <!-- CSS -->
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/fn-ebz.css" >
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/demo.css" >
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/base.css" >
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/btn.css" >
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/dtpk.css" >
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/frms.css" >
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/sldr.css" >
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/style.css" >
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/tbs.css" >
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/ebz_header/portal_ebz_header.css">
- <link rel="stylesheet" type="text/css" href="static/fusion/css/jquery-ui.css">
- <!-- Basic AngularJS -->
- <script src= "app/fusion/external/ebz/angular_js/angular.js"></script>
- <script src= "app/fusion/external/ebz/angular_js/angular-sanitize.js"></script>
- <script src= "app/fusion/external/ebz/angular_js/angular-route.min.js"></script>
- <script src= "app/fusion/external/ebz/angular_js/app.js"></script>
- <script src= "app/fusion/external/ebz/angular_js/gestures.js"></script>
- <script src= "app/fusion/external/ebz/sandbox/att-abs-tpls.js" type="text/javascript"></script>
- <script src="app/fusion/external/angular-ui/ui-bootstrap-tpls-1.1.2.min.js"></script>
- <script src= "app/fusion/external/ebz/angular_js/angular-cookies.js"></script>
- <!-- jQuery -->
- <script src="static/js/jquery-1.10.2.js"></script>
- <script src="static/js/jquery.mask.min.js" type="text/javascript"></script>
- <script src="static/js/jquery-ui.js" type="text/javascript"></script>
- <!-- AngularJS Gridster -->
- <script src="static/fusion/js/att_angular_gridster/ui-gridster-tpls.js"></script>
- <script src="static/fusion/js/att_angular_gridster/angular-gridster.js"></script>
- <!-- AngularJS Config -->
- <script src= "app/fusion/external/ebz/angular_js/app.js"></script>
- <script src= "app/fusion/external/ebz/angular_js/checklist-model.js"></script>
- <!-- Utility -->
- <script src="app/fusion/scripts/modalService.js"></script>
- <!-- Controller js -->
- <script src="app/fusion/scripts/controllers/rolefunctionpopupController.js"></script>
- <script src="app/fusion/scripts/controllers/modelpopupController.js"></script>
- <script src="app/fusionapp/drools/controller/droolsController.js"></script>
- <script src="app/fusionapp/drools/controller/drools-list-controller.js"></script>
- <script src="app/fusionapp/drools/controller/drools-view-controller.js"></script>
- <!-- Header and Footer -->
- <script src="app/fusion/external/ebz/js/attHeaderSnippet.js"></script>
- <script src="app/fusion/external/ebz/js/attHeader.js"></script>
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/ebz_header/header.css">
- <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/ebz_header/footer.css" >
- <script src="app/fusion/scripts/directives/footer.js"></script>
- <script src="app/fusion/external/ebz/js/footer.js"></script>
- <script src="app/fusion/scripts/directives/header.js"></script>
- <script src="app/fusion/scripts/directives/leftMenu.js"></script>
- <script src="app/fusion/scripts/services/leftMenuService.js"></script>
-
- <!-- Services -->
- <script src="app/fusionapp/drools/services/droolsService.js"></script>
- <script src="app/fusion/scripts/services/userInfoService.js"></script>
- </head>
- <body class="appBody" ng-app="abs">
- <div ng-include src="'app/fusion/scripts/view-models/profile-page/popup_modal_rolefunction.html'"></div>
- <div ng-include src="'app/fusion/scripts/view-models/profile-page/popup_modal.html'"></div>
- <div q-header></div>
- <div q-menu class="appLeftMenu"></div>
- <div id="rightContentAdmin" ng-view style="min-height: 450px;margin-top:-50px;margin-left:210px;margin-right:10px;"></div>
- <div q-footer class="appFooter"></div>
- </body>
-</html> \ No newline at end of file
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/fusion/sample/html/data/worddata.csv b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/fusion/sample/html/data/worddata.csv
index 762cb423..13f0d020 100644
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/fusion/sample/html/data/worddata.csv
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/fusion/sample/html/data/worddata.csv
@@ -1 +1,127 @@
-text,frequency service,98 portal,70 management,70 virtual,56 design,56 VNF,56 studio,42 operations,42 inventory,42 POLO,42 D2.0,42 ASDC,42 router,28 restart,28 process,28 platform,28 manage,28 loop,28 licensing,28 license,28 integrated,28 flow-through,28 enable,28 data,28 controller,28 control,28 configure,28 component,28 common,28 asset,28 application,28 ECOMP,28 workflow,14 waterfall,14 visual,14 view,14 vCTS,14 utilization,14 user,14 usage,14 troubleshoot,14 transformation,14 track,14 topolgies,14 topics,14 time,14 tickets,14 thresholds,14 templates,14 structures,14 standards-based,14 software,14 reuse,14 repository,14 reports,14 release,14 recipes,14 real-time,14 provisioning,14 properties,14 project-based,14 processes,14 physical,14 oversight,14 openl-loop,14 network,14 monitor,14 modeling,14 model-driven,14 model,14 message,14 maximize,14 manually,14 machine,14 layer,14 interact,14 instances,14 initiate,14 increase,14 imported,14 impacts,14 host,14 function,14 feeds,14 features,14 faults,14 extended,14 engines,14 engine,14 dynamic,14 document-driven,14 determine,14 dashboard,14 current,14 creation,14 created,14 create,14 configuration,14 composer,14 components,14 collective,14 certification,14 bus,14 basis,14 available,14 automation,14 automated,14 associated,14 assignment,14 appropriate,14 against,14 aervice,14 adminstrators,14 activation,14 action,14 VMs,14 VM,14 VLAN,14 SDN,14 SDK,14 SBG,14 SAM,14 RUBY,14 Policy,14 PODS,14 Ops,14 GFP,14 F5FW,14 DMaaP,14 DCAE,14 DBC,14 CPADS,14 AT&T,14 APP-C,14 AOTS-TM,14 ALTS,14 A&AI,14
+text,frequency
+service,98
+portal,70
+management,70
+virtual,56
+design,56
+studio,42
+operations,42
+inventory,42
+router,28
+restart,28
+process,28
+platform,28
+manage,28
+loop,28
+licensing,28
+license,28
+integrated,28
+flow-through,28
+enable,28
+data,28
+controller,28
+control,28
+configure,28
+component,28
+common,28
+asset,28
+application,28
+ECOMP,28
+workflow,14
+waterfall,14
+visual,14
+view,14
+workflow,14
+waterfall,14
+visual,14
+view,14
+utilization,14
+user,14
+usage,14
+troubleshoot,14
+transformation,14
+track,14
+topolgies,14
+topics,14
+time,14
+tickets,14
+thresholds,14
+templates,14
+structures,14
+standards-based,14
+software,14
+reuse,14
+repository,14
+reports,14
+release,14
+recipes,14
+real-time,14
+provisioning,14
+properties,14
+project-based,14
+processes,14
+physical,14
+oversight,14
+openl-loop,14
+network,14
+monitor,14
+modeling,14
+model-driven,14
+model,14
+message,14
+maximize,14
+manually,14
+machine,14
+layer,14
+interact,14
+instances,14
+initiate,14
+increase,14
+imported,14
+impacts,14
+host,14
+function,14
+feeds,14
+features,14
+faults,14
+extended,14
+engines,14
+engine,14
+dynamic,14
+document-driven,14
+determine,14
+dashboard,14
+current,14
+creation,14
+created,14
+create,14
+configuration,14
+composer,14
+components,14
+collective,14
+certification,14
+bus,14
+basis,14
+available,14
+automation,14
+automated,14
+associated,14
+assignment,14
+appropriate,14
+against,14
+aervice,14
+adminstrators,14
+activation,14
+action,14
+VMs,14
+VM,14
+VLAN,14
+SDK,14
+SBG,14
+SAM,14
+RUBY,14
+Policy,14
+PODS,14
+Ops,14
+GFP,14
+F5FW,14
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/js/search.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/js/search.js
deleted file mode 100644
index c7b7ba65..00000000
--- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/js/search.js
+++ /dev/null
@@ -1,830 +0,0 @@
-
-// var app=angular.module("abs", ["att.abs"]);
-
-
- app.directive('afterRender', [ function() {
- var def = {
- restrict : 'A',
- terminal : true,
- transclude : false,
- link : function(scope, element, attrs) {
- if (attrs) { scope.$eval(attrs.afterRender) }
- scope.$emit('onAfterRender')
- }
- };
- return def;
- }]);
-
- app.directive("search", function() {
- return {
- // replace custom element with html5 markup
- template: '<div >'
- //+ '<c:set var="zeroidx" value="0" />'
- + '<div ng-repeat="a in optionsSizeArray track by $index"> '
- + '<div id="{{sId}}{{a}}" > '
- + ' <div class="form-field form-field__glued pull-left size-onefourth" style=" width:25%;" >'
- + ' <div att-search="options" ng-model="valueOptions[a]" placeholder="Select"></div> '
- + ' </div> '
- + ' <div class="form-field form-field__glued pull-left size-onefourth" style=" width:25%;"> '
- + ' <div att-search="operators" ng-model="compareOptions[a]" placeholder="Select"></div> '
- + ' </div> '
- + ' <div class="form-field form-field__glued pull-left size-onefourth" style=" width:25%;">'
- + ' <input ng-model="searchValue[a]" type="text" placeholder="What are you looking for?" style=" border-radius:0px 5px 5px 0px" > '
- + ' </div> '
- + ' <div class="form-field form-field__glued pull-left size-onefourth" style=" width:25%; padding-left:5px;"> '
- + ' <button ng-click="remove(sId,a)" class="myzkBtn" >-</button>'
- + ' <button ng-if="$index==0" ng-click="addSearch(sId,a,optionsSizeArray)" class="myzkBtn" >+</button> '
- + ' <button ng-if="$index==0" ng-click="updateparent({filter: { valueOptions: valueOptions, compareOptions: compareOptions, searchValue : searchValue } })" class="myzkBtn" style="background-image:url(static/ebz/images/searchIcon.png); background-repeat: no-repeat; background-position: center;">&nbsp;</button>'
- + ' </div>'
- + ' </div> '
- + '</div>'
- + '</div> ' ,
- replace: true,
- // restrict usage to element only since we use attributes for APIs
- restrict: 'EA',
- require: 'ngModel',
- // new isolate scope
- scope: {
- mSearch : '=ngModel'
- ,updateparent: '&'
- ,jsonForOption : '='
- ,jsonForOperator : '='
- ,searchId : '='
- },
- link: function(scope, iElement, iAttrs){
- scope.optionsSizeArray = [];
- scope.sId = '';
- //scope.options = JSON.parse(JSON.stringify(iAttrs.jsonForOption));
- //scope.operators = JSON.parse(iAttrs.operators);
-
- scope.$watch("jsonForOption", function(newval, oldval) {
- scope.options = JSON.parse(JSON.stringify(oldval));
- console.log('1');
- scope.evalRepeatIndex(scope.options.length);
- console.log('2');
-
- });
-
- scope.evalRepeatIndex = function(size){
- for(index = 0; index < size; index++) {
- scope.optionsSizeArray.push(index);
- }
- };
-
- scope.$watch("jsonForOperator", function(newval, oldval) {
- scope.operators = JSON.parse(JSON.stringify(oldval));
-
- });
-
- if(getParameterByName("search")!=null && getParameterByName("search")!=''){
- if((getParameterByName("location")!=null && getParameterByName("location")!='')){
- scope.searchValue[0]=JSON.parse(JSON.stringify(getParameterByName("location")));
- scope.valueOptions[0]={index:0,value:'Location Name',title:"Location Name",alias:'Location Name'};
- scope.compareOptions[0]={index:1,value:'Contains',title:"Contains",alias:'Contains'};
- }else if((getParameterByName("userLastName")!=null && getParameterByName("userLastName")!='')){
- scope.searchValue[0]=JSON.parse(JSON.stringify(getParameterByName("userLastName")));
- scope.valueOptions[0]= {index: 0, value: 'Last Name', title: 'Last Name', alias:'Last Name'};
- scope.compareOptions[0]={index:1,value:'Contains',title:"Contains",alias:'Contains'};
- }
- }
- scope.$watch("searchId", function(newval, oldval) {
- scope.sId = oldval;
- scope.hideDiv();
- });
-
- scope.showHide = function(div){
- if(div != 0){
- $("#s1").css('display', 'none');
- }
- return true;
- };
-
-
- scope.hideDiv = function(){
- console.log('3');
- console.log(scope.optionsSizeArray);
-
-
- for (i = 1; i < scope.optionsSizeArray.length; i++) {
- var element = "#"+scope.sId+i;
- $(element).css('display', 'none');
- }
-
- console.log('4');
-
- };
-
-
- $(function() {
- scope.hideDiv();
- });
-
- },
-
- controller: function ($scope) {
-
- $scope.addSearch = function(searchId, index, optionsLength){
- console.log('5');
-
- for(var i = 0; i<=optionsLength.length ;i++){
- var element = "#"+searchId+i;
- if($(element).css('display') == 'none'){
- $(element).css('display', 'inline');
- break;
- }
- };
- console.log('6');
-
- };
-
- $scope.remove = function(searchId, index){
- var remove = "#"+searchId+index;
- if(index!=0)
- $(remove).css("display", "none");
- var v ={
- index: 0,
- value: '',
- title: 'Select',
- alias:''
- };
- $scope.valueOptions[index]=v;
- $scope.compareOptions[index]=v;
- $scope.searchValue[index]="";
- };
-
- $scope.search = function() {
- var data = {
- valueOptions : $scope.valueOptions,
- compareOptions : $scope.compareOptions,
- searchValue : $scope.searchValue
- };
- };
-
- var data = {
- valueOptions : $scope.valueOptions,
- compareOptions : $scope.compareOptions,
- searchValue : $scope.searchValue
- };
-
- $scope.mSearch = data;
- $scope.valueOptions=[];
- $scope.compareOptions=[];
- $scope.searchValue=[];
- }
- }
-
- });
-
- app.directive('phoneNumberMask', [function(){
- return {
- restrict: 'A',
- require: '?ngModel',
- scope: {
- ngModel : '='
- },
- link: function(scope, el, attrs){
- scope.$watch(attrs.phoneNumberMask, function(newValue, oldValue) {
-
- if(scope.ngModel)
- scope.ngModel= scope.ngModel.replace(/(\+1)?(\d{3})(\d{3})(\d{4})/, '$2.$3.$4');
- $(el).mask("999.999.9999");
- });
- scope.$watch("ngModel", function() {
- var current = $(el).val();
- if(scope.ngModel && /^(\+1)?\d{3,}$/.test(scope.ngModel))
- scope.ngModel= scope.ngModel.replace(/(\+1)?(\d{3})(\d{3})(\d{4})/, '$2.$3.$4');
-
- });
- },
- };
- }]);
-
- app.directive('allowOnlyNumber', [function(){
- return {
- require: 'ngModel',
- link: function(scope, element, attrs, modelCtrl) {
- modelCtrl.$parsers.push(function (inputValue) {
- if (inputValue == undefined) return '';
- var transformedInput = inputValue.replace(/[^0-9]/g, '');
- if (transformedInput!=inputValue) {
- modelCtrl.$setViewValue(transformedInput);
- modelCtrl.$render();
- }
-
- return transformedInput;
- });
- }
- };
- }]);
-
- app.directive('showProcessing', function(){
- return {
- restrict: 'A',
- link: function(scope, elem, attrs) {
- elem.bind('click', function() {
- $(".overlayed").css("display","inline");
- $(".loadingId").css("display","inline");
- });
- }
- }
- });
-
-app.directive("searchCriteria", function() {
- return {
- // replace custom element with html5 markup
- template: '<div >'
- + '<div ng-repeat="a in searchCriterion track by $index" ng-show="isShown[$index]"> '
- + ' <div class="form-field form-field__glued form-field__square size-onefourth left_round_border">'
- + ' <div att-search="availableOptions[$index]" ng-model="valueOptions[$index]"></div> '
- + ' </div> '
- + ' <div class="form-field form-field__glued form-field__square size-onefourth"> '
- + ' <div att-search="availableOperators[$index]" ng-model="compareOptions[$index]" > </div> '
- + ' </div> '
- + ' <div class="form-field form-field__glued form-field__square size-onefourth right_round_border">'
- + ' <input ng-show="!availableValues[$index] || availableValues[$index].length===0" ng-model="searchValue[$index]" type="text" placeholder="What are you looking for?" class="fn-ebz-text" style="width:100%;" > '
- + ' <div ng-show="availableValues[$index] && availableValues[$index].length!==0" att-search="availableValues[$index]" ng-model="searchValue[$index]"></div> '
- + ' </div> '
- + ' <div class="form-field form-field__glued form-field__square size-onefourth" style=" padding-left:5px;" > '
- + ' <button ng-show="$index!=0" ng-click="removeSearchCriteria($index)" class="myzkBtn">-</button>'
- + ' <button ng-show="$index==0" ng-click="addSearchCriteria($index)" class="myzkBtn">+</button> '
- + ' <button ng-show="$index==0" ng-click="search()" class="myzkBtn" style="background-image:url(static/ebz/images/searchIcon.png); background-repeat: no-repeat; background-position: center;">&nbsp;</button>'
- + ' </div>'
- + ' </div> '
- + '</div> ' ,
- replace: true,
- // restrict usage to element only since we use attributes for APIs
- restrict: 'EA',
- require: 'ngModel',
- // new isolate scope
- scope: {
- mSearch : '=ngModel',
- updateparent: '&'
- ,options : '=jsonForOption'
- ,operators : '=jsonForOperator'
- },
-
- controller: function ($scope) {
- $scope.isShown = [true];
- $scope.searchCriterion = [];
- $scope.valueOptions=[];
- $scope.compareOptions=[];
- $scope.searchValue=[];
- $scope.availableOperators=[];
- $scope.availableValues=[];
- $scope.availableOptions = [];
- //init
- $scope.insertEmptyOption = function(arr){
- var hasEmpty = false;
- $.each(arr, function(i, a){
- if(a.value ===''){
- hasEmpty = true;
- }
- });
- if(!hasEmpty){
- $.each(arr, function(i, a){
- a.index +=1;
- });
- arr.unshift({index: 0, value: '', title: 'Select', alias:'Select'});
- }
- };
- $scope.findFirstOption = function(arr){
-
- };
- $scope.insertEmptyOption($scope.options);
- $scope.insertEmptyOption($scope.operators);
-
- for(var i = 0, l= $scope.options.length; i<l; i++) {
- var option= $scope.options[i];
- var n = option.maxOccurs;
- if(option.value!==''){
- if(n && Number(n)===n && n%1===0){ //maxOccurs is specified
- for(var j=0; j<n; j++){
- $scope.searchCriterion.push("");
- $scope.availableOperators.push($scope.operators);
- var valueArr = [];
- $scope.availableValues.push(valueArr);
- $scope.availableOptions.push($scope.options);
- $scope.isShown.push(false);
- }
- }else{
- $scope.searchCriterion.push("");
- $scope.availableOperators.push($scope.operators);
- var valueArr = [];
- $scope.availableValues.push(valueArr);
- $scope.availableOptions.push($scope.options);
- $scope.isShown.push(false);
- }
- }
- }
- $scope.isShown.pop();
-
- $scope.updateAvailableOptions = function(index, isFirst){
- var selectedOptions = [];//{value:'name', occurs: }
- if($scope.options && $scope.options.length > 0){
- $.each($scope.valueOptions, function(i, a){
- if(a){
- var v = a.value;
- if(v){
- var s= $.grep(selectedOptions, function(e){ return e.value === v });
-
- if(s.length ===1){
- s[0].occurs += 1;
- }else{
- selectedOptions.push({value: v, occurs:1});
- }
- }
- var o= $.grep($scope.options, function(e){ return e.value === v });
- if(o.length ===1){
- if("operators" in o[0]){
- $scope.availableOperators[i]=o[0].operators;
- $scope.insertEmptyOption($scope.availableOperators[i]);
- }else{
- $scope.availableOperators[i]=$scope.operators;
- }
- if("values" in o[0]){
- $scope.availableValues[i]=o[0].values;
- }else{
- $scope.availableValues[i]=[];
- }
- }
- }
- });
- for(var j = 0 , l = $scope.availableOptions.length; j<l ; j++){
- var newOptions = [];
- var aoi = 0;
- $.each($scope.options, function(i, a){
- var s= $.grep(selectedOptions, function(e){ return e.value === a.value });
- var maxOccurs = "maxOccurs" in a ? a.maxOccurs :1;
- if(s.length > 0 && s[0].occurs >= maxOccurs && ($scope.valueOptions[j] && $scope.valueOptions[j].value !== s[0].value)){// reach limit
- }else{
- newOptions.push({index: aoi, value: a.value, title: a.title, alias:a.alias});
- aoi += 1;
- }
- });
- $scope.availableOptions[j] = newOptions;
- if(isFirst){
- if($scope.availableValues[j].length>0)
- $scope.searchValue[j]= $scope.availableValues[j][0];
- else
- $scope.searchValue[j]="";
-
- $scope.compareOptions[j]= $scope.availableOperators[j][0];
- }
- };
-
- }
- if(typeof index !== 'undefined' && !isFirst){
- if($scope.availableValues[index].length>0)
- $scope.searchValue[index]= $scope.availableValues[index][0];
- else
- $scope.searchValue[index]="";
- }
- };
-
- $scope.updateAvailableOptions(undefined, true);
- $.each($scope.availableOptions, function(j, a){
- $scope.valueOptions[j]= a[0];
- });
- $scope.addSearchCriteria = function(index){
- for(var i = 0 , l =$scope.isShown.length; i<l; i++ ){
- if(!$scope.isShown[i]){
- $scope.isShown[i]= true;
- break;
- }
-
- }
- };
-
- $scope.removeSearchCriteria = function(index){
- $scope.isShown[index]= false;
-
-
- $scope.valueOptions[index]=$scope.availableOptions[index][0];
- $scope.compareOptions[index]=$scope.availableOperators[index][0];
- $scope.searchValue[index]="";
- };
- $scope.search = function() {
- //remove empty criteria
- var vo =[];
- var co =[];
- var sv =[];
- for(var i = 0 , l=$scope.valueOptions.length; i<l ; i++){
- if($scope.valueOptions[i].value==='' || $scope.compareOptions[i].value==='' ||(typeof $scope.searchValue[i] ==='string' && $scope.searchValue[i] ==='') || $scope.searchValue[i].value === ''){
- }else{
- vo.push($scope.valueOptions[i]);
- co.push($scope.compareOptions[i]);
- sv.push($scope.searchValue[i]);
- }
- }
- $scope.updateparent({filter: { valueOptions: vo, compareOptions: co, searchValue :sv } });
- };
-
- $scope.$watchCollection("valueOptions", function(collection, oldValue ){
- if(collection) {
- var index;
- for(var i = 0 , l =collection.length; i<l; i++ ){
- if(!oldValue[i] || oldValue[i].value!=collection[i].value){
- index = i;
- break;
- }
-
- }
- $scope.updateAvailableOptions(index);
- }
- }, true);
-
- }
- }
-
- });
-
- app.directive("selectUser", function() {
- return {
- // replace custom element with html5 markup
- template: '<div> '
- + '<table style="width:660px; margin-left:-12px;" >'
- + '<thead>'
- + ' <tr >'
- + ' <th style="width:325px;">{{availableTitle}}</th> '
- + ' <th style="width:10px;"></th> '
- + ' <th style="width:325px;">{{userTitle}}</th> '
- + '</tr>'
- + '</thead>'
- + '<tbody>'
- + '<tr>'
- + ' <td style="width:325px;">'
- + ' <div class="ebz-listbox">'
- + ' <label ng-repeat="canditateId in canditateIds track by canditateId.ociUserId" style="display:block;"> '
- + ' <input type="checkbox" style="margin-top: 10px;" ng-model="canditateId.available" att-checkbox ng-change="checkCanditate($index)"/> {{canditateId.firstName}} {{canditateId.lastName}}({{canditateId.phone}})<br/>'
- + ' </label>'
- + ' </div>'
- + '</td>'
- + '<td valign="middle" width="10px">'
- + ' <img src="static/images/rightarrow_g.png" id="removeBtn" ng-click="chooseSelected()" ng-hide="oneMax && chosenIds.length==1"/>'
- + ' <img src="static/images/leftarrow_g.png" id="chooseBtn" ng-click="removeSelected()" ng-show="oneMax && chosenIds.length==1"/>'
- + ' <br/><br/> '
- + ' <img src="static/images/leftarrow_g.png" id="chooseBtn" ng-click="removeSelected()" ng-hide="oneMax"/>'
- + ' <br/><br/>'
- + ' <img id="chooseAllBtn" src="static/images/rightrightarrow_g.png" ng-click="chooseAll()" ng-hide="oneMax"/>'
- + ' <br/><br/>'
- + ' <img style="cursor:pointer" id="removeAllBtn" src="static/images/leftleftarrow_g.png" ng-click="removeAll()" ng-hide="oneMax"/>'
- + '</td>'
- + '<td style="width:325px;">'
- + ' <div class="ebz-listbox" >'
- + ' <label ng-repeat="chosenId in chosenIds" style="display:block;">'
- + ' <input type="checkbox" style=" margin-top :10px;" att-checkbox ng-model="chosenId.available"/> {{chosenId.firstName}} {{chosenId.lastName}}({{chosenId.phone}})<br/>'
- + ' </label>'
- + ' </div>'
- + '</td> '
- + ' </tr>'
- + '</tbody>'
- + '</table>'
- + '</div>',
- replace: true,
- // restrict usage to element only since we use attributes for APIs
- restrict: 'EA',
- // new isolate scope
- scope: {
- chosenIds : '=assignedUsers'
- ,availableUsers : '='
- ,userTitle : '='
- ,availableTitle : '='
- ,oneMax : '=?'
- },
- link: function(scope, iElement, attrs){
-
- scope.$watch("userTitle", function(newval, oldval) {
- scope.userTitle = newval;
- });
- scope.$watch("availableTitle", function(newval, oldval) {
- scope.availableTitle = newval;
- });
-
- scope.$watch("availableUsers", function(newval, oldval) {
- scope.availableUsers = newval;
- scope.canditateIds= scope.getArrayRemoved(scope.availableUsers, scope.chosenIds);
- });
-
- },
-
- controller: function ($scope) {
- $scope.getArrayRemoved = function(from, removed){
- var retArray = (from)? from:[];
- if(retArray && retArray.length >0 && removed){
- for(var i = 0, l = removed.length; i<l; i++ ){
- retArray = $.grep(retArray, function(e){ return e.ociUserId !== removed[i].ociUserId; });
- };
- }
- return retArray;
- };
- $scope.canditateIds= $scope.getArrayRemoved($scope.availableUsers, $scope.chosenIds);
- $scope.chooseAll = function() {
-
- var dataFromTableData = $scope.canditateIds;
- for (var i = dataFromTableData.length - 1; i >= 0; i--){
- if(!$scope.chosenIds)
- $scope.chosenIds=[];
- $scope.chosenIds.push(dataFromTableData[i]);
- $scope.canditateIds.splice(i,1);
-
- }
- var dataFromChoosonTable = $scope.chosenIds;
- for (var i = dataFromChoosonTable.length - 1; i >= 0; i--){
- if(dataFromChoosonTable[i].available){
- $scope.chosenIds[i].available=false;
- }
- }
- };
-
- $scope.removeAll = function() {
- var dataFromTableData = $scope.chosenIds;
- for (var i = dataFromTableData.length - 1; i >= 0; i--){
- $scope.canditateIds.push(dataFromTableData[i]);
- $scope.chosenIds.splice(i,1);
-
- }
- var dataFromChoosonTable = $scope.canditateIds;
- for (var i = dataFromChoosonTable.length - 1; i >= 0; i--){
- if(dataFromChoosonTable[i].available){
- $scope.canditateIds[i].available=false;
- }
- }
- };
-
- $scope.chooseSelected = function() {
-
- var dataFromTableData = $scope.canditateIds;
-
- for (var i = dataFromTableData.length - 1; i >= 0; i--){
-
- if(dataFromTableData[i].available){
- if(!$scope.chosenIds)
- $scope.chosenIds=[];
- $scope.chosenIds.push(dataFromTableData[i]);
- $scope.canditateIds.splice(i,1);
-
- }
- }
- var dataFromChoosonTable = $scope.chosenIds;
- for (var i = dataFromChoosonTable.length - 1; i >= 0; i--){
- if(dataFromChoosonTable[i].available){
- $scope.chosenIds[i].available=false;
- }
- }
- };
- $scope.removeSelected = function() {
-
- var dataFromTableData = $scope.chosenIds;
-
- for (var i = dataFromTableData.length - 1; i >= 0; i--){
- if(dataFromTableData[i].available){
- $scope.canditateIds.push(dataFromTableData[i]);
- $scope.chosenIds.splice(i,1);
-
- }
- } ;
- var dataFromChoosonTable = $scope.canditateIds;
- for (var i = dataFromChoosonTable.length - 1; i >= 0; i--){
- if(dataFromChoosonTable[i].available){
- $scope.canditateIds[i].available=false;
- }
- }
- };
- $scope.checkCanditate = function(index) {
- if($scope.oneMax){
- for (var i = $scope.canditateIds.length - 1; i >= 0; i--){
- if(i != index)
- $scope.canditateIds[i].available=false;
- }
- }
- };
-
-
- }
- }
- });
- app.directive("selectString", function() {
- return {
- // replace custom element with html5 markup
- template: '<div> '
- + '<table style="width:660px;">'
- + '<thead>'
- + ' <tr >'
- + ' <th style="width:325px;">{{availableTitle}}</th> '
- + ' <th style="width:10px;"></th> '
- + ' <th style="width:325px;">{{assignedTitle}}</th> '
- + '</tr>'
- + '</thead>'
- + '<tbody>'
- + '<tr>'
- + ' <td style="width:325px;">'
- + ' <div class="ebz-listbox">'
- + ' <label ng-repeat="canditateId in canditateIds track by $index" style="display:block;"> '
- + ' <input type="checkbox" style="margin-top: 10px;" ng-model="canditateId.available" att-checkbox /> {{canditateId}}<br/>'
- + ' </label>'
- + ' </div>'
- + '</td>'
- + '<td valign="middle" width="10px">'
- + ' <img src="static/images/rightarrow_g.png" id="removeBtn" ng-click="chooseSelected()" />'
- + ' <br/><br/> '
- + ' <img src="static/images/leftarrow_g.png" id="chooseBtn" ng-click="removeSelected()" />'
- + ' <br/><br/>'
- + ' <img id="chooseAllBtn" src="static/images/rightrightarrow_g.png" ng-click="chooseAll()" />'
- + ' <br/><br/>'
- + ' <img style="cursor:pointer" id="removeAllBtn" src="static/images/leftleftarrow_g.png" ng-click="removeAll()" />'
- + '</td>'
- + '<td style="width:325px;">'
- + ' <div class="ebz-listbox" >'
- + ' <label ng-repeat="chosenId in chosenIds" style="display:block;">'
- + ' <input type="checkbox" style=" margin-top :10px;" att-checkbox ng-model="chosenId.available"/> {{chosenId}}<br/>'
- + ' </label>'
- + ' </div>'
- + '</td> '
- + ' </tr>'
- + '</tbody>'
- + '</table>'
- + '</div>',
- replace: true,
- // restrict usage to element only since we use attributes for APIs
- restrict: 'EA',
- // new isolate scope
- scope: {
- chosenIds : '=assignedOptions'
- ,availableOptions : '='
- ,availableTitle : '@'
- ,assignedTitle : '@'
- },
- link: function(scope, iElement, attrs){
- scope.$watch("availableOptions", function(newval, oldval) {
- scope.availableOptions = newval;
- scope.canditateIds= scope.getArrayRemoved(scope.availableOptions, scope.chosenIds);
- });
-
- },
-
- controller: function ($scope) {
- $scope.getArrayRemoved = function(from, removed){
- var retArray = (from)? from:[];
- if(retArray && retArray.length >0 && removed){
- for(var i = 0, l = removed.length; i<l; i++ ){
- retArray = $.grep(retArray, function(e){ return e !== removed[i]; });
- };
- }
- return retArray;
- };
-
- $scope.canditateIds= $scope.getArrayRemoved($scope.availableOptions, $scope.chosenIds);
- $scope.chooseAll = function() {
-
- var dataFromTableData = $scope.canditateIds;
- for (var i = dataFromTableData.length - 1; i >= 0; i--){
- if(!$scope.chosenIds)
- $scope.chosenIds=[];
- $scope.chosenIds.push(dataFromTableData[i]);
- $scope.canditateIds.splice(i,1);
-
- }
- };
-
- $scope.removeAll = function() {
- var dataFromTableData = $scope.chosenIds;
- for (var i = dataFromTableData.length - 1; i >= 0; i--){
- $scope.canditateIds.push(dataFromTableData[i]);
- $scope.chosenIds.splice(i,1);
-
- }
- };
-
- $scope.chooseSelected = function() {
-
- var dataFromTableData = $scope.canditateIds;
-
- for (var i = dataFromTableData.length - 1; i >= 0; i--){
-
- if(dataFromTableData[i].available){
- if(!$scope.chosenIds)
- $scope.chosenIds=[];
- $scope.chosenIds.push(dataFromTableData[i]);
- $scope.canditateIds.splice(i,1);
-
- }
- }
- };
- $scope.removeSelected = function() {
-
- var dataFromTableData = $scope.chosenIds;
-
- for (var i = dataFromTableData.length - 1; i >= 0; i--){
- if(dataFromTableData[i].available){
- $scope.canditateIds.push(dataFromTableData[i]);
- $scope.chosenIds.splice(i,1);
-
- }
- } ;
- };
-
- }
- }
- });
- function getParameterByName(name) {
- name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
- var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
- results = regex.exec(location.search);
- return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
- };
-
- app.directive("time", function() {
- return {
- // replace custom element with html5 markup
- template: '<div style="height:80px; display:inline-block;"> '
- + ' <input type="text" class="fn-ebz-text" ng-model="timeStr" placeholder="HH:MM" style="width:70px" ng-change="parseValue()"/>'
- + ' <div class="form-field" att-select="ampmOptions" ng-model="ampm" style="width:70px" ng-change="parseValue()"></div>'
- + ' </div>',
- replace: true,
- // restrict usage to element only since we use attributes for APIs
- restrict: 'EA',
- // new isolate scope
- scope: {
- value : '='
- ,validTime : '=?'
- },
- link: function(scope, iElement, attrs){
- },
-
- controller: function ($scope) {
- $scope.timeStr='';
- $scope.ampm=null;
- var am ={index: 0, value: 'AM', title: 'AM', alias:'Name2'};
- var pm = {index: 1, value: 'PM', title: 'PM', alias:'Name'};
- $scope.ampmOptions=[
- am,
- pm,
- ]
- $scope.parseTimeStr= function(str){
- if(str){
- try{
- var date;
- if(/^(\d*):(\d*)$/.test(str)){
- var hh = Number(str.match(/^(\d+)/)[1]);
- var mm = Number(str.match(/:(\d+)/)[1]);
- date = new Date(1970, 0, 1, hh, mm, 0);
- }else{
- date = new Date(str);
- }
- var hours = date.getHours();
- var minutes = date.getMinutes();
- var ampm = hours >= 12 ?pm : am;
- hours = hours % 12;
- hours = hours ? hours : 12; // the hour '0' should be '12'
- minutes = minutes < 10 ? '0'+minutes : minutes;
- hours = hours < 10 ? '0'+hours : hours;
- var strTime = hours + ':' + minutes ;
-
-
- $scope.timeStr =strTime;
- $scope.ampm = ampm;
- if (typeof $scope.validTime != 'undefined'){
- $scope.validTime=true;
- }
- }catch(err){
- if (typeof $scope.validTime != 'undefined'){
- $scope.validTime=false;
- }
- }
- }else{
- $scope.timeStr = "12:00";
- $scope.ampm =am;
- }
- };
- $scope.parseTimeStr($scope.value);
- $scope.parseValue = function(){
- try{
- var date;
- var hh = Number($scope.timeStr.match(/^(\d+)/)[1]);
- var mm = Number($scope.timeStr.match(/:(\d+)/)[1]);
-
- if(hh<=12 && hh>0 && mm>=0 && mm<=59){
-
- if($scope.ampm.value=='PM'&& hh<12) hh = hh+12;
- if($scope.ampm.value=='AM'&& hh==12) hh = hh-12;
- mm = mm < 10 ? '0'+mm : mm;
- hh = hh < 10 ? '0'+hh : hh;
- $scope.value= hh+":"+mm;
- if (typeof $scope.validTime != 'undefined'){
- $scope.validTime=true;
- }
- }else{
- if (typeof $scope.validTime != 'undefined'){
- $scope.validTime=false;
- }
- }
-
- }catch(err){
- if (typeof $scope.validTime != 'undefined'){
- $scope.validTime=false;
- }
- }
- };
- }
- }
- }); \ No newline at end of file