1 <md-dialog class="metric-dialog" aria-label="New Metric">
2 <form name="metricForm" class="md-inline-form" novalidate>
3 <md-toolbar class="md-accent md-hue-2">
4 <div class="md-toolbar-tools" layout="row" layout-align="space-between center">
5 <span class="title">{{ vm.title | translate }}</span>
6 <md-button class="md-icon-button" ng-click="vm.closeDialog()">
7 <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>
12 <md-dialog-content ms-scroll>
13 <div class="error-list">
14 <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">
16 <span class="message">{{error.message}}</span>
17 <span class="type">({{error.type}})</span>
19 <md-button class="md-icon-button">
20 <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>
24 <md-input-container class="md-block">
25 <label translate="ANALYTICS.NAME">Name</label>
26 <input type="text" name="name" ng-model="vm.metric.name" required md-autofocus>
27 <div ng-messages="metricForm.name.$error" ng-show="metricForm.name.$touched" role="alert">
28 <div ng-message="required">
29 <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>
33 <md-input-container class="md-block">
34 <label translate="ANALYTICS.TABLE">Table</label>
35 <md-select ng-model="vm.metric.table" required>
36 <md-option ng-value="'report_agent'">Agent Report</md-option>
37 <md-option ng-value="'report_call'">Call Report</md-option>
38 <md-option ng-value="'chat_messages'">Chat Messages</md-option>
39 <md-option ng-value="'chat_rooms'">Chat Rooms</md-option>
40 <md-option ng-value="'report_chat_session'">Chat Session Report</md-option>
41 <md-option ng-value="'cm_contacts'">Contacts</md-option>
42 <md-option ng-value="'report_square'">CSquare Report</md-option>
43 <md-option ng-value="'report_square_details'">CSquare Details Report</md-option>
44 <md-option ng-value="'fax_messages'">Fax Messages</md-option>
45 <md-option ng-value="'fax_rooms'">Fax Rooms</md-option>
46 <md-option ng-value="'report_fax_session'">Fax Session Report</md-option>
47 <md-option ng-value="'report_integration'">Integration Report</md-option>
48 <md-option ng-value="'mail_messages'">Mail Messages</md-option>
49 <md-option ng-value="'mail_rooms'">Mail Rooms</md-option>
50 <md-option ng-value="'report_mail_session'">Mail Session Report</md-option>
51 <md-option ng-value="'report_member'">Member Report</md-option>
52 <md-option ng-value="'openchannel_messages'">Open Channel Messages</md-option>
53 <md-option ng-value="'openchannel_rooms'">Open Channel Rooms</md-option>
54 <md-option ng-value="'report_openchannel_session'">Open Channel Session Report</md-option>
55 <md-option ng-value="'report_queue'">Queue Report</md-option>
56 <md-option ng-value="'sms_messages'">Sms Messages</md-option>
57 <md-option ng-value="'sms_rooms'">Sms Rooms</md-option>
58 <md-option ng-value="'report_sms_session'">Sms Session Report</md-option>
59 <md-option ng-value="'users'">Users</md-option>
60 <md-option ng-value="'voice_recordings'">Voice Recordings</md-option>
62 <div ng-messages="metricForm.table.$error" ng-show="metricForm.table.$touched" role="alert">
63 <div ng-message="required">
64 <span translate="ANALYTICS.ERRORS.TABLE_REQUIRED">Table field is required</span>
68 <md-input-container class="md-block">
69 <label translate="ANALYTICS.METRIC">Metric</label>
70 <input type="text" name="metric" ng-model="vm.metric.metric" required>
71 <div ng-messages="metricForm.metric.$error" ng-show="metricForm.metric.$touched" role="alert">
72 <div ng-message="required">
73 <span translate="ANALYTICS.ERRORS.METRIC_REQUIRED">Metric field is required</span>
77 <md-input-container class="md-block">
78 <label translate="ANALYTICS.DESCRIPTION">Description</label>
79 <input type="text" name="description" ng-model="vm.metric.description">
80 <div ng-messages="metricForm.description.$error" ng-show="metricForm.description.$touched" role="alert">
81 <div ng-message="required">
82 <span translate="ANALYTICS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>
87 <div class="error-list">
88 <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">
90 <span class="message">{{error.message}}</span>
91 <span class="type">({{error.type}})</span>
93 <md-button class="md-icon-button">
94 <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>
100 <md-dialog-actions layout="row" layout-align="space-between center">
101 <div layout="row" layout-align="start center">
102 <md-button type="submit" ng-if="!vm.newMetric" ng-click="vm.saveMetric()" class="send-button md-accent md-raised" ng-disabled="metricForm.$invalid || metricForm.$pristine" aria-label="SAVE" translate="ANALYTICS.SAVE" translate-attr-aria-label="ANALYTICS.SAVE">
106 <md-button type="submit" ng-if="vm.newMetric" ng-click="vm.addNewMetric()" class="send-button md-accent md-raised" ng-disabled="metricForm.$invalid" aria-label="ADD" translate="ANALYTICS.ADD_METRIC" translate-attr-aria-label="ANALYTICS.ADD_METRIC">
111 <md-button class="md-icon-button" ng-if="!vm.newMetric" ng-click="vm.deleteMetric($event)" aria-label="DELETE" translate translate-attr-aria-label="ANALYTICS.DELETE">
112 <md-icon md-font-icon="icon-delete"></md-icon>
113 <md-tooltip><span translate="ANALYTICS.DELETE">DELETE</span></md-tooltip>