3 class="md-table-toolbar md-default table-header"
4 ng-class="{{ 'vm.sectionColor' }} + '-bg'"
5 ng-disabled="vm.searchInProgress"
7 <div class="md-toolbar-tools">
8 <span class="md-subhead" translate="DASHBOARDS.FAX_INTERACTIONS"
12 on-search="vm.getFaxInteractions()"
17 display-on="vm.isSearchBarVisible"
18 ng-disabled="vm.query.search"
24 filters="vm.quickFilters"
26 search="vm.getFaxInteractions()"
27 ng-disabled="vm.query.search"
31 class="md-icon-button advanced-search"
32 ng-class="{ 'md-fab md-mini white-bg': vm.query.search }"
33 aria-label="Advanced search"
35 translate-attr-aria-label="DASHBOARDS.ADVANCED_SEARCH"
36 ng-click="vm.openAdvancedSearch()"
39 md-font-icon="{{ vm.query.search ? 'icon-filter' : 'icon-filter-outline' }}"
40 ng-class="{ '{{ vm.sectionColor }}-fg blink': vm.query.search }"
42 <md-tooltip>{{'DASHBOARDS.ADVANCED_SEARCH' | translate}}</md-tooltip>
45 class="md-icon-button reload-list"
48 translate-attr-aria-label="APP.RELOAD"
49 ng-click="vm.getFaxInteractions()"
51 <md-icon md-font-icon="icon-reload"></md-icon>
52 <md-tooltip>{{'DASHBOARDS.RELOAD' | translate}}</md-tooltip>
55 <md-menu ng-if="vm.faxAccounts.rows && vm.faxAccounts.rows.length">
57 class="md-icon-button create-new"
60 translate-attr-aria-label="APP.MORE"
61 ng-click="$mdMenu.open($event)"
63 <md-icon md-font-icon="icon-plus"></md-icon>
65 <md-menu-content width="3">
66 <md-menu-item ng-repeat="faxAccount in vm.faxAccounts.rows">
69 ng-click="vm.composeFaxInteraction($event, faxAccount)"
71 {{ faxAccount.name }} ({{ faxAccount.key }})</md-button
78 <md-table-container class="interactions-list">
79 <table md-table md-progress="vm.promise">
82 md-order="vm.query.sort"
83 md-on-reorder="vm.getFaxInteractions"
86 <th class="id-header" md-column md-order-by="id">
87 {{'DASHBOARDS.ID' | translate}}
89 <th md-column class="no-padding width-5">
90 <md-icon md-font-icon="icon-eye" class="s16"></md-icon>
92 <th md-column class="no-padding width-5"></th>
93 <th md-column class="no-padding width-5"></th>
94 <th md-column md-order-by="contactName">
95 {{'DASHBOARDS.CONTACT' | translate}}
97 <th md-column md-order-by="createdAt">
98 {{'DASHBOARDS.STARTEDAT' | translate}}
100 <th md-column md-order-by="lastMsgAt">
101 {{'DASHBOARDS.LAST_MESSAGE' | translate}}
103 <th md-column md-order-by="closed">
104 {{'DASHBOARDS.STATUS' | translate}}
106 <th md-column>{{'DASHBOARDS.AGENT' | translate}}</th>
107 <th md-column>{{'DASHBOARDS.ACCOUNT' | translate}}</th>
108 <th md-column>{{'DASHBOARDS.TAGS' | translate}}</th>
113 <tr md-row ng-hide="vm.faxInteractions.rows.length">
114 <td md-cell colspan="13">
115 <div layout="row" layout-align="center center">
116 <span translate="DASHBOARDS.NO_AVAILABLE_INTERACTION"
117 >No Available Interaction</span
124 ng-repeat="interaction in vm.faxInteractions.rows"
125 ng-class="{'text-bold text-italic': interaction.unreadMessages > 0}"
128 ng-click="vm.showFaxInteraction($event, interaction)"
132 <div layout="row" layout-align="start center">
133 <span class="font-size-10">{{interaction.id}}</span>
137 <div ng-if="!interaction.closed && interaction.Users.length">
138 <md-icon md-font-icon="icon-eye" class="s16"></md-icon>
140 <span ng-repeat="u in interaction.Users"
141 >{{ (u.id == vm.user.id) ? 'DASHBOARDS.ME' : u.fullname |
142 translate }}<span ng-if="!$last">, </span></span
147 <td md-cell class="width-5 no-padding">
149 ng-if="!interaction.closed && interaction.unreadMessages > 0"
151 layout-align="start center"
154 class="badge white-fg"
155 ng-class="{{ 'vm.sectionColor' }} + '-bg'"
157 >{{interaction.unreadMessages}}</span
161 <td md-cell class="width-5 no-padding">
163 ng-if="interaction.attach"
165 layout-align="start center"
167 <md-icon md-font-icon="icon-paperclip" class="s16"></md-icon>
170 <td ng-click="vm.showFaxInteraction($event, interaction)" md-cell>
171 <div layout="column" layout-align="start start">
173 class="font-size-12 text-truncate contact-text"
174 ng-class="{'no-margin-bottom' : interaction.contactInfo}"
178 >{{ interaction.contactName }}</span
181 ng-if="interaction.contactInfo"
182 class="font-size-12 text-truncate contact-text no-margin-top"
186 >{{ interaction.contactInfo }}</span
190 <td ng-click="vm.showFaxInteraction($event, interaction)" md-cell>
191 <span class="font-size-10 text-truncate"
192 >{{interaction.createdAt | formatdate }}</span
195 <td ng-click="vm.showFaxInteraction($event, interaction)" md-cell>
196 <div layout="row" ng-if="interaction.lastMsgAt">
199 md-font-icon="{{interaction.lastMsgDirection == 'in' ? 'icon-arrow-down-bold blue-grey-800-fg' : 'icon-arrow-up-bold blue-grey-300-fg'}}"
203 <div layout="column" layout-align="center center">
204 <span class="font-size-10 text-truncate"
205 >{{interaction.lastMsgAt | formatdate }}</span
209 <span ng-if="!interaction.lastMsgAt">No messages</span>
211 <td ng-click="vm.showFaxInteraction($event, interaction)" md-cell>
212 <span ng-if="interaction.closed" class="red-fg font-size-12"
213 >{{ 'APP.CLOSED' | translate}}
214 <span ng-if="interaction.disposition"
215 >- {{ interaction.thirdDisposition ||
216 interaction.secondDisposition || interaction.disposition
220 <md-tooltip class="multiline" ng-if="interaction.closed">
221 <div layout="column">
222 <div layout="column">
223 <span>{{ 'DASHBOARDS.CLOSED_AT' | translate}}:</span>
224 <span class="text-bold"
225 >{{ interaction.closedAt | formatdate }}</span
228 <div ng-if="interaction.disposition" layout="column">
229 <span>{{ 'DASHBOARDS.DISPOSITION' | translate}}:</span>
230 <span class="text-bold">{{ interaction.disposition }}</span>
232 <div ng-if="interaction.secondDisposition" layout="column">
234 >{{ 'DASHBOARDS.SECOND_LEVEL_DISPOSITION' |
237 <span class="text-bold"
238 >{{ interaction.secondDisposition }}</span
241 <div ng-if="interaction.thirdDisposition" layout="column">
243 >{{ 'DASHBOARDS.THIRD_LEVEL_DISPOSITION' |
246 <span class="text-bold"
247 >{{ interaction.thirdDisposition }}</span
252 <span ng-if="!interaction.closed" class="green-fg font-size-12"
253 ><span translate="APP.OPENED"></span
254 ><span ng-if="interaction.substatus">
255 - {{interaction.substatus}}</span
260 ng-click="vm.showFaxInteraction($event, interaction)"
264 <span class="font-size-12 text-truncate width-80"
265 >{{ vm.getAgentLabel(interaction) }}</span
269 ng-click="vm.showFaxInteraction($event, interaction)"
273 {{ vm.getFaxAccountLabel(interaction) }}
276 <div ng-if="interaction.Tags.length">
277 <div layout="column" layout-align="center center">
278 <md-tooltip md-direction="left" layout="row">
279 <span ng-repeat="tag in interaction.Tags"
280 >{{tag.name}}<span ng-if="!$last">, </span></span
284 md-font-icon="icon-tag"
285 ng-style="{'color': interaction.Tags.length == 1 && interaction.Tags[0].color }"
291 <td md-cell class="actions actions-padding">
294 class="md-icon-button"
297 translate-attr-aria-label="APP.MORE"
298 ng-click="$mdMenu.open($event)"
300 <md-icon md-font-icon="icon-dots-vertical"></md-icon>
302 <md-menu-content width="2">
305 ng-click="vm.showFaxInteraction($event, interaction)"
306 translate="DASHBOARDS.SHOW"
313 ng-click="vm.downloadFaxInteraction($event, interaction)"
314 translate="APP.DOWNLOAD"
319 <md-menu-item ng-if="!interaction.closed">
321 ng-click="vm.disposeInteraction($event, interaction)"
322 translate="DASHBOARDS.CLOSE_AND_DISPOSE"
333 </md-table-container>
335 md-label="{page: '{{'DASHBOARDS.PAGE' | translate}}:', rowsPerPage: '{{'DASHBOARDS.ROWSPERPAGE' | translate}}:', of: '{{'DASHBOARDS.OF' | translate}}'}"
336 md-limit="vm.query.limit"
337 md-limit-options="[10, 15, 20, 50, 100, 250]"
338 md-page="vm.query.page"
339 md-total="{{vm.faxInteractions.count}}"
340 md-on-paginate="vm.getFaxInteractions"
342 ></md-table-pagination>