1 <md-dialog class="ivrCampaign-dialog" aria-label="New IvrCampaign">
2 <form name="ivrCampaignForm" 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="MOTIONDIALER.NAME">Name</label>
26 <input type="text" name="name" ng-model="vm.ivrCampaign.name" ng-pattern="/^[A-Za-z0-9\.\_]+$/i" required autofocus ng-disabled="!vm.newIvrCampaign">
27 <div ng-messages="ivrCampaignForm.name.$error" ng-show="ivrCampaignForm.name.$touched" role="alert">
28 <div ng-message="required">
29 <span translate="MOTIONDIALER.ERRORS.NAME_REQUIRED">Name field is required</span>
31 <div ng-message="pattern">
32 <span translate="MOTIONDIALER.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: '/^[A-Za-z0-9\.\_]+$/i' }">Name must be valid pattern </span>
36 <md-input-container class="md-block">
37 <md-switch ng-model="vm.ivrCampaign.active" aria-label="Active"><span translate="MOTIONDIALER.ACTIVE">Active</span></md-switch>
39 <md-input-container class="md-block">
40 <label translate="MOTIONDIALER.TRUNK">Trunk</label>
41 <md-select ng-model="vm.ivrCampaign.TrunkId" required>
42 <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>
44 <div ng-messages="ivrCampaignForm.TrunkId.$error" ng-show="ivrCampaignForm.TrunkId.$touched" role="alert">
45 <div ng-message="required">
46 <span translate="MOTIONDIALER.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>
50 <md-input-container class="md-block">
51 <label translate="MOTIONDIALER.INTERVAL">Interval</label>
52 <md-select ng-model="vm.ivrCampaign.IntervalId" required>
53 <md-option ng-value="IntervalId.id" ng-repeat="IntervalId in vm.interval">{{ IntervalId.name }}</md-option>
55 <div ng-messages="ivrCampaignForm.IntervalId.$error" ng-show="ivrCampaignForm.IntervalId.$touched" role="alert">
56 <div ng-message="required">
57 <span translate="MOTIONDIALER.ERRORS.INTERVAL_REQUIRED">Interval field is required</span>
61 <md-input-container class="md-block">
62 <label translate="MOTIONDIALER.CALLYSQUAREPROJECT">CallySquareProject</label>
63 <md-select ng-model="vm.ivrCampaign.SquareProjectId" required>
64 <md-option ng-value="SquareProjectId.id" ng-repeat="SquareProjectId in vm.projects">{{ SquareProjectId.name }}</md-option>
66 <div ng-messages="ivrCampaignForm.SquareProjectId.$error" ng-show="ivrCampaignForm.SquareProjectId.$touched" role="alert">
67 <div ng-message="required">
68 <span translate="MOTIONDIALER.ERRORS.CALLYSQUAREPROJECT_REQUIRED">CallySquareProject field is required</span>
72 <md-input-container class="md-block">
73 <label translate="MOTIONDIALER.CONCURRENTCALLS">ConcurrentCalls</label>
74 <input type="number" name="limitCalls" ng-model="vm.ivrCampaign.limitCalls" min="1" max="200" required>
75 <div class="hint"><span translate="MOTIONDIALER.HELP.CONCURRENTCALLS"></span></div>
76 <div ng-messages="ivrCampaignForm.limitCalls.$error" ng-show="ivrCampaignForm.limitCalls.$touched" role="alert">
77 <div ng-message="required">
78 <span translate="MOTIONDIALER.ERRORS.CONCURRENTCALLS_REQUIRED">ConcurrentCalls field is required</span>
82 <md-input-container class="md-block">
83 <label translate="MOTIONDIALER.DESCRIPTION">Description</label>
84 <input type="text" name="description" ng-model="vm.ivrCampaign.description">
85 <div ng-messages="ivrCampaignForm.description.$error" ng-show="ivrCampaignForm.description.$touched" role="alert">
86 <div ng-message="required">
87 <span translate="MOTIONDIALER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>
92 <div class="error-list">
93 <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">
95 <span class="message">{{error.message}}</span>
96 <span class="type">({{error.type}})</span>
98 <md-button class="md-icon-button">
99 <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>
105 <md-dialog-actions layout="row" layout-align="space-between center">
106 <div layout="row" layout-align="start center">
107 <md-button type="submit" ng-if="!vm.newIvrCampaign" ng-click="vm.saveIvrCampaign()" class="send-button md-accent md-raised" ng-disabled="ivrCampaignForm.$invalid || ivrCampaignForm.$pristine" aria-label="SAVE" translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">
111 <md-button type="submit" ng-if="vm.newIvrCampaign" ng-click="vm.addNewIvrCampaign()" class="send-button md-accent md-raised" ng-disabled="ivrCampaignForm.$invalid" aria-label="ADD" translate="MOTIONDIALER.ADD_IVRCAMPAIGN" translate-attr-aria-label="MOTIONDIALER.ADD_IVRCAMPAIGN">
116 <md-button class="md-icon-button" ng-if="!vm.newIvrCampaign" ng-click="vm.deleteIvrCampaign($event)" aria-label="DELETE" translate translate-attr-aria-label="MOTIONDIALER.DELETE">
117 <md-icon md-font-icon="icon-delete"></md-icon>
118 <md-tooltip><span translate="MOTIONDIALER.DELETE">DELETE</span></md-tooltip>