Built motion from commit a9fb64cc6defd8fb3a5cc199221f878e91c0e969. Version 3.0.0...
[motion-next.git] / public / src / js / modules / main / apps / chat / views / chatQueues / chatQueues.html / chatQueues.html
1 <div
2   id="chatQueues"
3   class="page-layout simple left-sidenav inner-sidenav motion-list"
4 >
5   <!-- HEADER -->
6   <div
7     class="header md-accent-bg"
8     layout="row"
9     layout-align="space-between center"
10   >
11     <!-- APP TITLE -->
12     <div layout="row" layout-align="start center">
13       <div class="logo" layout="row" layout-align="start center">
14         <span class="logo-icon">
15           <md-icon md-font-icon="icon-hangouts" class="s24"></md-icon>
16         </span>
17         <span class="logo-text" translate="CHAT.CHATQUEUES">ChatQueues</span>
18       </div>
19     </div>
20     <!-- / APP TITLE -->
21
22     <div layout="row">
23       <!-- SEARCH -->
24       <div
25         class="search-input-wrapper"
26         layout="row"
27         layout-align="start center"
28       >
29         <label for="search">
30           <md-icon md-font-icon="icon-magnify"></md-icon>
31         </label>
32         <md-input-container md-no-float class="m-0">
33           <input
34             id="search"
35             placeholder="Search for anyone"
36             type="text"
37             ng-model="vm.query.filter"
38             ng-model-options="{ debounce: 1000 }"
39             translate
40             translate-attr-placeholder="CHAT.SEARCH_FOR_ANYONE"
41           />
42         </md-input-container>
43       </div>
44       <!-- / SEARCH -->
45     </div>
46   </div>
47   <!-- / HEADER -->
48
49   <!-- SELECTED BAR -->
50   <div
51     ng-show="vm.selectedChatQueues.length > 0"
52     class="selected-bar header animate-slide-down md-accent-bg"
53     layout="row"
54     layout-align="start center"
55   >
56     <div class="close-button-wrapper" ng-click="vm.selectedChatQueues =[]">
57       <md-button layout="row" layout-align="start center">
58         <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>
59         <span translate="CHAT.BACK">Back</span>
60       </md-button>
61     </div>
62
63     <div flex layout="row" layout-align="space-between center">
64       <div>
65         <span class="selected-chatQueues-count">
66           <span>{{vm.selectedChatQueues.length}}</span>
67           <span translate="CHAT.SELECTED">selected</span>
68         </span>
69
70         <md-menu class="select-menu" ng-if="!vm.currentThread">
71           <md-button
72             class="md-icon-button"
73             ng-click="$mdMenu.open($event)"
74             aria-label="multi select toggle"
75             translate
76             translate-attr-aria-label="CHAT.MULTI_SELECT_TOGGLE"
77           >
78             <md-icon md-font-icon="icon-menu-down"></md-icon>
79           </md-button>
80           <md-menu-content width="3">
81             <md-menu-item>
82               <md-button
83                 ng-click="vm.selectAllChatQueues()"
84                 translate="CHAT.SELECT_ALL"
85               >
86                 Select all
87               </md-button>
88             </md-menu-item>
89             <md-menu-item>
90               <md-button
91                 ng-click="vm.deselectChatQueues()"
92                 translate="CHAT.SELECT_NONE"
93               >
94                 Select none
95               </md-button>
96             </md-menu-item>
97           </md-menu-content>
98         </md-menu>
99       </div>
100
101       <div class="multi-select-actions">
102         <button
103           class="md-icon-button"
104           ng-csv="vm.exportSelectedChatQueues"
105           csv-label="true"
106           filename="chatQueues.csv"
107         >
108           <md-icon md-font-icon="icon-file-excel"></md-icon>
109         </button>
110         <md-button
111           class="md-icon-button"
112           ng-if="vm.crudPermissions.canDelete"
113           ng-click="vm.deleteSelectedChatQueues($event)"
114           aria-label="delete selected"
115           translate
116           translate-attr-label="CHAT.DELETE_SELECTED"
117         >
118           <md-icon md-font-icon="icon-delete"></md-icon>
119         </md-button>
120       </div>
121     </div>
122   </div>
123   <!-- / SELECTED BAR -->
124
125   <!-- CONTENT -->
126   <div class="content" md-background-bg layout="row" layout-align="start start">
127     <!-- MAIN -->
128     <div class="main scrollable" ms-scroll>
129       <!-- CHATQUEUE TABLE -->
130       <md-card>
131         <md-table-container>
132           <table
133             md-table
134             md-row-select
135             multiple
136             ng-model="vm.selectedChatQueues"
137             md-progress="vm.promise"
138           >
139             <thead
140               md-head
141               md-order="vm.query.sort"
142               md-on-reorder="vm.getChatQueues"
143             >
144               <tr md-row>
145                 <th
146                   md-column
147                   ng-if="vm.table == 'users' || vm.table == 'agents'"
148                   width="20px"
149                 ></th>
150                 <th md-column md-order-by="id">{{ 'CHAT.ID' | translate }}</th>
151                 <th md-column md-order-by="name">
152                   {{ 'CHAT.NAME' | translate }}
153                 </th>
154                 <th md-column md-order-by="strategy">
155                   {{ 'CHAT.STRATEGY' | translate }}
156                 </th>
157                 <th md-column width="10px"></th>
158               </tr>
159             </thead>
160             <tbody md-body>
161               <tr md-row ng-hide="vm.chatQueues.rows.length">
162                 <td md-cell colspan="4">
163                   <div layout="row" layout-align="center center">
164                     <span translate="CHAT.NO_AVAILABLE_INFO"
165                       >No Available Info</span
166                     >
167                   </div>
168                 </td>
169               </tr>
170               <tr
171                 md-row
172                 md-select="chatQueue"
173                 md-select-id="id"
174                 ng-repeat="chatQueue in vm.chatQueues.rows"
175               >
176                 <td md-cell ng-if="chatQueue.userpic">
177                   <img
178                     class="avatar"
179                     alt="{{chatQueue.name}}"
180                     ng-src="api/users/{{chatQueue.id}}/avatar"
181                   />
182                 </td>
183                 <td
184                   md-cell
185                   ng-if="!chatQueue.userpic && (vm.table == 'users' || vm.table == 'agents')"
186                 >
187                   <img
188                     class="avatar"
189                     alt="{{chatQueue.name}}"
190                     ng-src="assets/images/avatars/profile.png"
191                   />
192                 </td>
193                 <td
194                   ng-click="vm.crudPermissions.readOnly || (vm.crudPermissions.canDelete && !vm.crudPermissions.canEdit) ? vm.editstate(chatQueue, ev) : vm.createOrEditChatQueue($event, chatQueue)"
195                   md-cell
196                   class="id"
197                 >
198                   {{chatQueue.id}}
199                 </td>
200                 <td
201                   ng-click="vm.crudPermissions.readOnly || (vm.crudPermissions.canDelete && !vm.crudPermissions.canEdit) ? vm.editstate(chatQueue, ev) : vm.createOrEditChatQueue($event, chatQueue)"
202                   md-cell
203                   class="name"
204                 >
205                   {{chatQueue.name}}
206                 </td>
207                 <td
208                   ng-click="vm.crudPermissions.readOnly || (vm.crudPermissions.canDelete && !vm.crudPermissions.canEdit) ? vm.editstate(chatQueue, ev) : vm.createOrEditChatQueue($event, chatQueue)"
209                   md-cell
210                   class="strategy"
211                 >
212                   {{ vm.arraystrategy[chatQueue.strategy].option }}
213                 </td>
214
215                 <td md-cell class="actions">
216                   <md-menu>
217                     <md-button
218                       class="md-icon-button"
219                       aria-label="More"
220                       translate
221                       translate-attr-aria-label="CHAT.MORE"
222                       ng-click="$mdMenu.open($event)"
223                     >
224                       <md-icon md-font-icon="icon-dots-vertical"></md-icon>
225                     </md-button>
226
227                     <md-menu-content width="3">
228                       <!-- SUBACTIONS -->
229
230                       <!-- ACTIONS -->
231
232                       <md-menu-item ng-if="vm.crudPermissions.canEdit">
233                         <md-button
234                           ng-click="vm.editstate(chatQueue, $event    )"
235                           translate="CHAT.EDIT_CHATQUEUE"
236                         >
237                           Edit ChatQueue
238                         </md-button>
239                       </md-menu-item>
240
241                       <!-- SUBACTIONS -->
242
243                       <!-- ACTIONS -->
244
245                       <md-menu-item>
246                         <md-button
247                           ng-click="vm.teamadddialog(chatQueue, $event    )"
248                           translate="CHAT.TEAMADD_CHATQUEUE"
249                         >
250                           teamadd ChatQueue
251                         </md-button>
252                       </md-menu-item>
253
254                       <!-- SUBACTIONS -->
255
256                       <!-- ACTIONS -->
257
258                       <md-menu-item>
259                         <md-button
260                           ng-click="vm.agentadddialog(chatQueue, $event    )"
261                           translate="CHAT.AGENTADD_CHATQUEUE"
262                         >
263                           agentadd ChatQueue
264                         </md-button>
265                       </md-menu-item>
266
267                       <!-- SUBACTIONS -->
268
269                       <!-- ACTIONS -->
270
271                       <md-menu-item ng-if="vm.crudPermissions.canDelete">
272                         <md-button
273                           ng-click="vm.deleteconfirm(chatQueue, $event    )"
274                           translate="CHAT.DELETE_CHATQUEUE"
275                         >
276                           Delete ChatQueue
277                         </md-button>
278                       </md-menu-item>
279
280                       <!-- SUBACTIONS -->
281
282                       <!-- ACTIONS -->
283
284                       <md-menu-item>
285                         <md-button
286                           ng-click="vm.gotorealtimegoto(chatQueue, $event    )"
287                           translate="CHAT.GOTOREALTIME_CHATQUEUE"
288                         >
289                           goToRealtime ChatQueue
290                         </md-button>
291                       </md-menu-item>
292                     </md-menu-content>
293                   </md-menu>
294                 </td>
295               </tr>
296             </tbody>
297           </table>
298         </md-table-container>
299
300         <md-table-pagination
301           md-label="{page: '{{'CHAT.PAGE' | translate}}:', rowsPerPage: '{{'CHAT.ROWSPERPAGE' | translate}}:', of: '{{'CHAT.OF' | translate}}'}"
302           md-limit="vm.query.limit"
303           md-limit-options="[10, 15, 20, 50, 100, 250]"
304           md-page="vm.query.page"
305           md-total="{{vm.chatQueues.count}}"
306           md-on-paginate="vm.getChatQueues"
307           md-page-select
308         ></md-table-pagination>
309       </md-card>
310       <!-- / CHATQUEUE TABLE -->
311       <!-- NO RESULTS -->
312
313       <!-- / NO RESULTS -->
314     </div>
315     <!-- / MAIN -->
316   </div>
317   <!-- / CONTENT -->
318
319   <!-- ADD CHATQUEUE BUTTON -->
320   <md-button
321     ng-if="vm.crudPermissions.canEdit"
322     class="md-fab md-accent add-item-button"
323     id="add-chatQueue-button"
324     ng-click="vm.createOrEditChatQueue($event)"
325     aria-label="add chatQueue"
326     translate
327     translate-attr-aria-label="CHAT.ADD_CHATQUEUE"
328   >
329     <md-icon md-font-icon="icon-plus"></md-icon>
330   </md-button>
331   <!-- / ADD CHATQUEUE BUTTON -->
332 </div>