1 <md-dialog class="inboundroute-dialog" aria-label="New Interval">
2 <form name="intervalForm" 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>
25 <md-input-container class="md-block">
26 <label translate="TOOLS.NAME">Name</label>
27 <input ng-model="vm.interval.name" type="text" name="name" placeholder="{{'TOOLS.NAME' | translate}}" md-autofocus required>
28 <div ng-messages="intervalForm.name.$error" ng-show="intervalForm.name.$touched" role="alert">
29 <div ng-message="required">
30 <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>
35 <md-input-container class="md-block">
36 <label translate="TOOLS.TYPE">Type</label>
37 <md-select ng-model="vm.type">
38 <md-option ng-value="type" ng-repeat='type in vm.types'>{{ type | ucfirst }}</md-option>
42 <md-input-container class="md-block" ng-if="vm.type === 'list'">
43 <label translate="TOOLS.INTERVALS">Intervals</label>
44 <md-select ng-model="vm.interval.IntervalId">
45 <md-option ng-value="interval.id" ng-repeat="interval in vm.intervals.rows">{{ interval.name }}</md-option>
49 <!-- TIMERANGE START -->
50 <label ng-if="vm.type === 'custom'" translate="TOOLS.TIME_RANGE">Time Range</label>
51 <div layout=row ng-if="vm.type === 'custom'">
52 <div class="md-block" flex>
53 <mdp-time-picker name="timeRangeFrom" mdp-placeholder="FROM" ng-model="vm.timeRangeFrom" mdp-format="HH:mm" mdp-auto-switch="true">
54 <div ng-messages="intervalForm.timeRangeFrom.$error" ng-show="intervalForm.timeRangeFrom.$touched" role="alert">
55 <div ng-message="format">
56 <span translate="TOOLS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>
61 <div class="md-block" flex>
62 <mdp-time-picker name="timeRangeTo" mdp-placeholder="TO" ng-model="vm.timeRangeTo" mdp-format="HH:mm" mdp-auto-switch="true">
63 <div ng-messages="intervalForm.timeRangeTo.$error" ng-show="intervalForm.timeRangeTo.$touched" role="alert">
64 <div ng-message="format">
65 <span translate="TOOLS.ERRORS.TIME_RANGE_TO_INVALID">Time Range To field is invalid</span>
71 <!-- TIMERANGE END -->
73 <!-- DAYSOFWEEK START -->
74 <label ng-if="vm.type === 'custom'" translate="TOOLS.WEEK_DAYS">Time Range</label>
75 <div layout=row ng-if="vm.type === 'custom'">
76 <md-input-container flex class="md-block">
77 <label translate="TOOLS.FROM">From</label>
78 <md-select ng-model="vm.dayOfWeekFrom">
79 <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>
80 <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>
84 <md-input-container flex class="md-block" ng-if="vm.dayOfWeekFrom">
85 <label translate="TOOLS.TO">To</label>
86 <md-select ng-model="vm.dayOfWeekTo">
87 <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>
91 <!-- DAYSOFWEEK END -->
93 <!-- MONTHDAY START -->
94 <label ng-if="vm.type === 'custom'" translate="TOOLS.MONTH_DAYS">Time Range</label>
95 <div layout=row ng-if="vm.type === 'custom'">
96 <md-input-container flex layout="column" class="md-block">
97 <label translate="TOOLS.FROM">From</label>
98 <md-select ng-model="vm.monthDayFrom">
99 <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>
100 <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>
102 </md-input-container>
104 <md-input-container flex layout="column" class="md-block" ng-if="vm.monthDayFrom">
105 <label translate="TOOLS.TO">To</label>
106 <md-select ng-model="vm.monthDayTo">
107 <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>
109 </md-input-container>
111 <!-- MONTHDAY END -->
114 <label ng-if="vm.type === 'custom'" translate="TOOLS.MONTHS">Time Range</label>
115 <div layout=row ng-if="vm.type === 'custom'">
116 <md-input-container flex layout="column" class="md-block">
117 <label translate="TOOLS.FROM">From</label>
118 <md-select ng-model="vm.monthFrom">
119 <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>
120 <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>
123 </md-input-container>
125 <md-input-container flex layout="column" class="md-block" ng-if="vm.monthFrom">
126 <label translate="TOOLS.TO">To</label>
127 <md-select ng-model="vm.monthTo">
128 <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>
130 </md-input-container>
134 <div class="error-list">
135 <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">
137 <span class="message">{{error.message}}</span>
138 <span class="type">({{error.type}})</span>
140 <md-button class="md-icon-button">
141 <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>
147 <md-dialog-actions layout="row" layout-align="space-between center">
148 <div layout="row" layout-align="start center">
149 <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">
153 <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">