692669681df7519605ddec3f9363613d67b9893f
[motion-next.git] /
1 <md-toolbar class="md-table-toolbar md-default table-header">
2   <div class="md-toolbar-tools" layout="row" layout-align="center center">
3     <span class="md-subhead" translate="DASHBOARDS.ABANDONEDQUEUECALLS"
4       >ABANDONED QUEUE CALLS</span
5     >
6     <ms-search-bar
7       on-search="vm.query.filter = query"
8       on-collapse="vm.query.filter = undefined"
9       debounce="300"
10     >
11     </ms-search-bar>
12     <div flex></div>
13
14     <ms-quick-filter
15       filters="vm.quickFilters"
16       query="vm.query"
17       search="vm.getAbandonedCalls()"
18     ></ms-quick-filter>
19
20     <md-button
21       class="md-icon-button"
22       ng-click="vm.refresh && vm.refreshAbandonedCalls($event)"
23       aria-label="Reload"
24       translate
25       translate-attr-label="DASHBOARDS.RELOAD"
26     >
27       <md-icon md-font-icon="icon-reload"></md-icon>
28       <md-tooltip ng-if="vm.showTooltip" md-visible="vm.showTooltip"
29         >{{'DASHBOARDS.CLICKRELOAD' | translate}}
30       </md-tooltip>
31     </md-button>
32   </div>
33 </md-toolbar>
34 <md-table-container>
35   <table md-table md-progress="vm.promise">
36     <thead
37       md-head
38       md-order="vm.query.sort"
39       md-on-reorder="vm.getAbandonedCalls"
40     >
41       <tr md-row>
42         <th md-column md-order-by="id">ID</th>
43         <th md-column md-order-by="calleridname">
44           {{'DASHBOARDS.FULLNAME' | translate}}
45         </th>
46         <th md-column md-order-by="calleridnum">
47           {{'DASHBOARDS.PHONE' | translate}}
48         </th>
49         <th md-column md-order-by="queue">
50           {{'DASHBOARDS.QUEUE' | translate}}
51         </th>
52         <th md-column md-order-by="queuecallerabandonAt">
53           {{'DASHBOARDS.ABANDONAT' | translate}}
54         </th>
55         <th md-column md-order-by="queuecallerexitAt">
56           {{'DASHBOARDS.QUEUECALLEREXITAT' | translate}}
57         </th>
58         <th md-column md-order-by="queuecallerexitreason">
59           {{'DASHBOARDS.QUEUECALLEREXITREASON' | translate}}
60         </th>
61         <th md-column md-order-by="lastAssignedTo">
62           {{'DASHBOARDS.LASTASSIGNEDTO' | translate}}
63         </th>
64         <th md-column md-order-by="disposition">
65           {{'DASHBOARDS.DISPOSITION' | translate}}
66         </th>
67         <th md-column md-order-by="disposition">
68           {{'DASHBOARDS.SECOND_LEVEL_DISPOSITION' | translate}}
69         </th>
70         <th md-column md-order-by="disposition">
71           {{'DASHBOARDS.THIRD_LEVEL_DISPOSITION' | translate}}
72         </th>
73         <th md-column width="10px"></th>
74       </tr>
75     </thead>
76     <tbody md-body>
77       <tr md-row ng-hide="vm.abandonedCalls.rows.length">
78         <td md-cell colspan="12">
79           <div layout="row" layout-align="center center">
80             <span translate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>
81           </div>
82         </td>
83       </tr>
84       <tr md-row ng-repeat="call in vm.abandonedCalls.rows">
85         <td md-cell class="id">{{call.id}}</td>
86         <td md-cell class="firstName">{{call.calleridname}}</td>
87         <td md-cell class="list">{{call.calleridnum}}</td>
88         <td md-cell class="list">{{vm.queuesMap[call.queue]}}</td>
89         <td md-cell class="list">
90           {{call.queuecallerabandonAt ? (call.queuecallerabandonAt | formatdate)
91           : undefined }}
92         </td>
93         <td md-cell class="list">
94           {{call.queuecallerexitAt ? (call.queuecallerexitAt | formatdate) :
95           undefined }}
96         </td>
97         <td md-cell class="list">{{call.queuecallerexitreason}}</td>
98         <td md-cell class="list">{{call.lastAssignedTo}}</td>
99         <td md-cell class="list">{{ call.disposition }}</td>
100         <td md-cell class="list">{{ call.secondDisposition }}</td>
101         <td md-cell class="list">{{ call.thirdDisposition }}</td>
102         <td md-cell class="actions">
103           <md-menu>
104             <md-button
105               class="md-icon-button"
106               aria-label="More"
107               translate
108               translate-attr-aria-label="DASHBOARDS.MORE"
109               ng-click="$mdOpenMenu($event)"
110             >
111               <md-icon md-font-icon="icon-dots-vertical"></md-icon>
112             </md-button>
113             <md-menu-content width="2">
114               <md-menu-item ng-if="vm.crudPermissions.canEdit">
115                 <md-menu>
116                   <md-button
117                     ng-click="$mdMenu.open()"
118                     class="text-capitalize"
119                     translate="DASHBOARDS.ASSIGNTO"
120                     >Assigned to</md-button
121                   >
122                   <md-menu-content>
123                     <md-menu-item ng-if="call.lastAssignedTo">
124                       <md-button ng-click="vm.assignTo(call)"
125                         ><em translate="DASHBOARDS.NONE">Not Assigned</em>
126                       </md-button>
127                     </md-menu-item>
128                     <md-menu-item
129                       ng-if="vm.agents.rows.length"
130                       ng-repeat="agent in vm.agents.rows"
131                     >
132                       <md-button ng-click="vm.assignTo(call,agent)"
133                         >{{agent.name}}</md-button
134                       >
135                     </md-menu-item>
136                   </md-menu-content>
137                 </md-menu>
138               </md-menu-item>
139               <md-menu-item>
140                 <md-button
141                   ng-click="vm.dispose(call)"
142                   class="text-capitalize"
143                   translate="DASHBOARDS.DISPOSE"
144                   >Dispose
145                 </md-button>
146               </md-menu-item>
147             </md-menu-content>
148           </md-menu>
149         </td>
150       </tr>
151     </tbody>
152   </table>
153 </md-table-container>
154
155 <md-table-pagination
156   md-limit="vm.query.limit"
157   md-limit-options="[10, 15, 20, 50, 100, 250]"
158   md-page="vm.query.page"
159   md-total="{{vm.abandonedCalls.count}}"
160   md-on-paginate="vm.getAbandonedCalls"
161   md-page-select
162 ></md-table-pagination>