[PORTAL-16 PORTAL-18] Widget ms; staging
[portal.git] / ecomp-portal-FE-common / client / app / views / dashboard / dashboard.tpl.html
1 <!--
2   ================================================================================
3   ECOMP Portal
4   ================================================================================
5   Copyright (C) 2017 AT&T Intellectual Property
6   ================================================================================
7   Licensed under the Apache License, Version 2.0 (the "License");
8   you may not use this file except in compliance with the License.
9   You may obtain a copy of the License at
10   
11        http://www.apache.org/licenses/LICENSE-2.0
12   
13   Unless required by applicable law or agreed to in writing, software
14   distributed under the License is distributed on an "AS IS" BASIS,
15   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   See the License for the specific language governing permissions and
17   limitations under the License.
18   ================================================================================
19   -->
20 <div class="w-ecomp-dashboard-home" id="widgets">
21         <div class="dashboard-home-container" id="page-content">
22                 <div align="center" id="errorInfo"
23                         style="display: none; font-size: 12px; margin-left: 5px">
24                         <span style="color: red">You don't have a user account in that
25                                 application. Please ask the system administrator. </span>
26                 </div>
27                 <div class="portals-list" style="margin-bottom: 0px;">
28                         <div>
29                                 <div class="simulateGridHeader">
30                                         <span class="simulateGridHeaderTitle">Applications <span
31                                                 class="dashboardSortHeader">Sort by:</span>
32                                                 
33                                                 <div id="dashboard-dropdown">
34                                                 <select id="sort-by-{{selectedSortType.value}}" name="dropdown1" b2b-dropdown  ng-model="selectedSortType.value" ng-change="selectedSortTypeChanged(selectedSortType.value)">  
35                                         <option b2b-dropdown-list option-repeat="d in sort_options" value="{{d.value}}">{{d.title}}</option>
36                                                 </select>
37                                                 </div>
38                                                 </span>
39                                                 
40                                 </div>
41                                 <div class="dashboard-boarder">
42                                         <div class="gridster-container override_background">
43                                                 <div ng-if="appsViewData.length==0">
44                                                         <div class="app-error-block">
45                                                                 <i class="icon-information full-linear-icon-information"
46                                                                         style="margin-left: 50%; font-size: 90px; color: black"></i> <br>
47                                                                 <div class="activity-error-msg1">
48                                                                         You do not have access to any application or function in ECOMP
49                                                                         Portal.
50                                                                         <div ng-include src="'app/views/dashboard/dashboard-extension.tpl.html'"></div>
51                                                                 </div>
52                                                         </div>
53                                                 </div>
54
55                                                 <div ng-if="appsViewData.length>0" id="page-content"
56                                                         class="content" gridster="dashboard.gridsterAppOpts">
57                                                         <ul>
58                                                                 <li gridster-item="item" ng-repeat="item in appsViewData">
59                                                                         <div class="gridster-box" ng-if="item.addRemoveApps == null">
60                                                                                 <div class="gridster-box-header">
61                                                                                         <i id="gridster-{{item.headerText.split(' ').join('-')}}-icon" class="icon-content-gridguide"></i>
62                                                                                         <h3 style="cursor: context-menu">{{item.headerText |
63                                                                                                 elipsis: 14}}</h3>
64                                                                                 </div>
65                                                                                 <div class="gridster-box-content"
66                                                                                 id="gridster-{{item.headerText.split(' ').join('-')}}-icon-link"
67                                                                                         ng-style="{'cursor':'pointer',
68                                                                                         'background-image': 'url('+(item.imageLink)+')',
69                                                                                         'background-color':'white',
70                                                                                         'background-repeat': 'no-repeat',
71                                                                                         'background-size': '170px 130px'}"
72                                                                                         ng-click="dashboard.goToPortal(item);dashboard.auditLog(item)"
73                                                                                         ng-hide="users.isLoadingTable && !users.getUserAppsIsDone">
74                                                                                 </div>
75                                                                         </div>
76                                                                         <div class="gridster-box" ng-if="item.addRemoveApps">
77                                                                                 <div class="gridster-box-header" style="cursor: pointer;"
78                                                                                         ng-click="dashboard.goToCatalog()">
79                                                                                         <i class="icon-content-gridguide"></i>
80                                                                                         <h3>Select applications...</h3>
81
82                                                                                 </div>
83                                                                                 <div class="gridster-box-content"
84                                                                                 id="gridster-personalize"
85                                                                                         ng-style="{'cursor':'pointer',
86                                                                                 'order': item.order, 
87                                                                                 'text-align': 'center',
88                                                                                 'background-color':'white',
89                                                                                 'background-repeat': 'no-repeat',
90                                                                                 'background-size': '170px 130px',
91                                                                                 'padding': '4px',
92                                                                                 'opacity': '1'}"
93                                                                                         ng-click="dashboard.goToCatalog()" class="gridsterContent">
94                                                                                         <label id="add-icon-label"  style="font-size: 12px;">Click
95                                                                                                 here to personalize <br> this applications page
96                                                                                         </label> <i  id="add-icon" class="icon-controls-add-maximize"
97                                                                                                 style="font-size: 80px; color: #067ab4"></i>
98                                                                                 </div>
99                                                                         </div>
100                                                                 </li>
101                                                         </ul>
102                                                 </div>
103
104                                         </div>
105
106                                 </div>
107                         </div>
108
109                         <br> <br>
110
111
112                         <div 
113                                 ng-show=dashboard.isCommError>Failed to communicate with the
114                                 widget microservice.</div>
115                         
116                         <div id="widget-boarder" class="content" gridster="dashboard.gridsterWidgetOpts">
117                                 <ul>
118                                         <li gridster-item="widget" ng-repeat="widget in widgetsViewData">
119                                                 <div class="box">
120                                                         <div class="box-header">
121                                                         <i id="widget-gridster-{{widget.headerText.split(' ').join('-')}}-icon" style="cursor:move;" class="icon-content-gridguide"></i>
122                                                                 <h3>{{ widget.headerText}}</h3>
123                                                                 <div class="box-header-btns pull-right"
124                                                                         ng-if="isAdminPortalAdmin == true" class="ng-scope">
125                                                                                 <a id="widgetHeaderBtns"
126                                                                                         class="widgetHeaderBtn widgetHeaderBtnPosition singleBtnBorder"
127                                                                                         ng-class="singleBtnBorder" alt="Settings"
128                                                                                         ng-mousedown="showImpResOption=!showImpResOption"
129                                                                                         ng-mouseleave="showImpResOption=false" title="Settings"
130                                                                                         ddh-accessibility-click="13,32" tabindex="0"><span
131                                                                                         style="color: #888;"><img
132                                                                                         ng-src="assets/images/generic.png"
133                                                                                         style="margin-bottom: 3px; margin-left: 3px;" alt="..."
134                                                                                         aria-label="Tap or Click to move"
135                                                                                         src="assets/images/generic.png"></span></a>
136
137                                                                                 <ul class="optionsMenu"
138                                                                                         style="display: block"
139                                                                                         ng-show="showImpResOption"
140                                                                                         ng-mouseenter="showImpResOption=true"
141                                                                                         ng-mouseleave="showImpResOption=false">
142                                                                                         <!-- ngIf: widget.duplicateAllowed -->
143                                                                                         <li ng-show="widget.widgetIdentifier != ''"
144                                                                                                 ng-click="editWidgetModalPopup(importResData, widget.widgetIdentifier);">
145                                                                                                 <a id="edit-widget-popup" class="optionsMenuLink" href="javascript:void(0)"
146                                                                                                 ddh-accessibility-click="13,32">Edit</a>
147                                                                                         </li>
148                                                                                         
149                                                                                         <li
150                                                                                                 ng-click="editWidgetParameters(widget.widgetid);">
151                                                                                                 <a id="parameters-widget-popup" class="optionsMenuLink" href="javascript:void(0)"
152                                                                                                 ddh-accessibility-click="13,32">Parameters</a>
153                                                                                         </li>
154                                                                                         
155                                                                                         <!-- end ngIf: widget.duplicateAllowed  -->
156                                                                                 </ul>
157
158                                                                 </div>
159                                                         </div>
160                                                         <div class="box-content">
161                                                         <div  dyn-attr="widget.attrb"></div>
162                                                         </div>
163                                                 </div>
164                                         </li>
165                                 </ul>
166                         </div>
167                         <div></div>
168                         <div class="gridster-container override_background">
169                                 <div id="dashboardAddWidgetPreference"
170                                         ng-style="{'cursor':'pointer'}"
171                                         ng-click="dashboard.goToWidgetCatLog()">
172                                         <i class="icon-controls-add-maximize"></i> Add Widget
173                                 </div>
174                                 &nbsp;
175                                 <div id="dashboardDefaultPreference" ng-style="{'cursor':'pointer'}"
176                                         ng-click="restoreSortSelected()">
177                                         <i class="icon-arrows-replay-restart"></i> Reset Widget Layout
178                                 </div>
179                         </div>
180                 </div>
181
182         </div>
183 </div>