260 lines
11 KiB
HTML
260 lines
11 KiB
HTML
<div class="edit-ticket-dates">
|
|
<div class="ticket-date__form_invalid"
|
|
ng-if="(dateForm.scheduledStartDate.$invalid && dateForm.scheduledStartDate.$dirty)||
|
|
(dateForm.scheduledEndDate.$invalid && dateForm.scheduledEndDate.$dirty) ||
|
|
(dateForm.actualStartDate.$invalid && dateForm.actualStartDate.$dirty) ||
|
|
(dateForm.actualEndDate.$invalid && dateForm.actualEndDate.$dirty)">
|
|
<i class="icon-exclamation_triangle"></i>
|
|
<span ng-if="dateForm.scheduledStartDate.$invalid && dateForm.scheduledStartDate.$dirty">{{'create.ticket.invalid.scheduled-start-date'|i18n}}</span>
|
|
<span ng-if="dateForm.scheduledEndDate.$invalid && dateForm.scheduledEndDate.$dirty">{{'create.ticket.invalid.scheduled-end-date'|i18n}}</span>
|
|
<span ng-if="dateForm.actualStartDate.$invalid && dateForm.actualStartDate.$dirty">{{'create.ticket.invalid.actual-start-date'|i18n}}</span>
|
|
<span ng-if="dateForm.actualEndDate.$invalid && dateForm.actualEndDate.$dirty">{{'create.ticket.invalid.actual-end-date'|i18n}}</span>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-5">
|
|
<div class="row">
|
|
<div class="row activity__dates_header">
|
|
<div class="col-xs-11 ticket__name" id="scheduledStart" class="label__text" ng-class="{'required__label' : (isFieldRequired('scheduledStartDate') && !makeScheduleDatesOptional)}"
|
|
data-required="{{'common.label.required.bracketed' | i18n}}">
|
|
{{ 'create.ticket.scheduled.date' | i18n }}
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-6" >
|
|
<div class="activity-edit__date">
|
|
<label>
|
|
<input type="text"
|
|
potentially-required-field
|
|
field-name="scheduledStartDate"
|
|
entity="ticket"
|
|
class="form-control"
|
|
name="scheduledStartDate"
|
|
placeholder="{{'common.aria.labels.scheduleStart' | i18n}}"
|
|
title="{{'common.label.date' | i18n}}"
|
|
datepicker-popup="mediumDate"
|
|
ng-model="ticket.scheduledStartDate"
|
|
is-open="ticket.scheduledStartDatePicker.open"
|
|
show-button-bar="false"
|
|
ng-click="ticket.scheduledStartDatePicker.open = true"
|
|
ng-enter="ticket.scheduledStartDatePicker.open = true"
|
|
datepicker-options="datePickerOptions"
|
|
ng-disabled="validator.scheduledStartDateDisabled(ticket, true, ignoreAccessMapping)"
|
|
ng-change="updateDateTime('scheduled')"
|
|
aria-label="{{'common.aria.labels.scheduleStart' | i18n}} {{'common.aria.labels.dateField' | i18n}}"
|
|
/>
|
|
<i class="icon-calendar release-edit__date-icon"></i>
|
|
</label>
|
|
</div>
|
|
|
|
</div>
|
|
<div class="col-md-6" >
|
|
<div class="activity-edit__date">
|
|
<label>
|
|
<input type="text"
|
|
potentially-required-field
|
|
field-name="scheduledEndDate"
|
|
entity="ticket"
|
|
class="form-control"
|
|
name="scheduledEndDate"
|
|
placeholder="{{'common.aria.labels.scheduleEnd' | i18n}}"
|
|
title="{{'common.label.date' | i18n}}"
|
|
datepicker-popup="mediumDate"
|
|
ng-model="ticket.scheduledEndDate"
|
|
is-open="ticket.scheduledEndDatePicker.open"
|
|
show-button-bar="false"
|
|
ng-click="ticket.scheduledEndDatePicker.open = true"
|
|
ng-enter="ticket.scheduledEndDatePicker.open = true"
|
|
datepicker-options="datePickerOptions"
|
|
ng-disabled="validator.scheduledEndDateDisabled(ticket, true, ignoreAccessMapping)"
|
|
ng-change="updateDateTime('scheduled')"
|
|
aria-label="{{'common.aria.labels.scheduleEnd' | i18n}} {{'common.aria.labels.dateField' | i18n}}"
|
|
/>
|
|
<i class="icon-calendar release-edit__date-icon"></i>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-6" >
|
|
|
|
<div class="activity-edit__time">
|
|
<label>
|
|
<div class="dropdown timepicker">
|
|
<div class="dropdown-toggle">
|
|
<input class="form-control custom-field__time-input create-change-wizard__time_disabled"
|
|
type="text" value="{{ ticket.scheduledStartDate | date: 'shortTime' }}"
|
|
ng-disabled="validator.scheduledStartTimeDisabled(ticket, true, ignoreAccessMapping)"
|
|
title="{{'common.label.time' | i18n}}" aria-labelledby="scheduledStart"
|
|
placeholder="{{'create.change.wizard.dates.selectTime' | i18n}}" readonly="readonly"/>
|
|
<i class="icon-clock_o release-edit__time-icon"></i>
|
|
</div>
|
|
<div class="dropdown-menu" prevent-click-event ng-if="ticket.scheduledStartDate">
|
|
<timepicker ng-model="ticket.scheduledStartDate"
|
|
ng-change="updateDateTime('scheduled')"
|
|
show-meridian="showMeridian"
|
|
default-hours="12"
|
|
default-minutes="0">
|
|
</timepicker>
|
|
</div>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
<div class="col-md-6" >
|
|
<div class="activity-edit__time">
|
|
<label>
|
|
<div class="dropdown timepicker">
|
|
<div class="dropdown-toggle">
|
|
<input class="form-control custom-field__time-input create-change-wizard__time_disabled"
|
|
type="text" value="{{ ticket.scheduledEndDate | date: 'shortTime' }}"
|
|
ng-disabled="validator.scheduledEndTimeDisabled(ticket, true, ignoreAccessMapping)"
|
|
title="{{'common.label.time' | i18n}}" aria-labelledby="scheduledEndDate"
|
|
placeholder="{{'create.change.wizard.dates.selectTime' | i18n}}" readonly="readonly"/>
|
|
<i class="icon-clock_o release-edit__time-icon"></i>
|
|
</div>
|
|
<div class="dropdown-menu" prevent-click-event ng-if="ticket.scheduledEndDate">
|
|
<timepicker ng-model="ticket.scheduledEndDate"
|
|
ng-change="updateDateTime('scheduled')"
|
|
show-meridian="showMeridian"
|
|
default-hours="12"
|
|
default-minutes="0">
|
|
</timepicker>
|
|
</div>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-5" >
|
|
<div class="row">
|
|
<div class="row activity__dates_header ">
|
|
<div id="actualStart" class="col-xs-11 ticket__name" ng-class="{'required__label' : (isFieldRequired('actualStartDate') && !makeActualDatesOptional)}"
|
|
data-required="{{'common.label.required.bracketed' | i18n}}">
|
|
{{ 'create.ticket.actual.date' | i18n }}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-md-6" >
|
|
<div class="activity-edit__date">
|
|
<label>
|
|
<input type="text"
|
|
potentially-required-field
|
|
field-name="actualStartDate"
|
|
entity="ticket"
|
|
class="form-control"
|
|
name="actualStartDate"
|
|
placeholder="{{'common.aria.labels.actualStart' | i18n}}"
|
|
title="{{'common.label.date' | i18n}}"
|
|
datepicker-popup="mediumDate"
|
|
ng-model="ticket.actualStartDate"
|
|
is-open="ticket.actualStartDatePicker.open"
|
|
show-button-bar="false"
|
|
ng-click="ticket.actualStartDatePicker.open = true"
|
|
ng-enter="ticket.actualStartDatePicker.open = true"
|
|
datepicker-options="datePickerOptions"
|
|
ng-disabled="validator.actualStartDateDisabled(ticket, true, ignoreAccessMapping)"
|
|
ng-change="updateDateTime('actual')"
|
|
aria-label="{{'common.aria.labels.actualStartDate' | i18n}} {{'common.aria.labels.dateField' | i18n}}"
|
|
/>
|
|
<i class="icon-calendar release-edit__date-icon"></i>
|
|
</label>
|
|
</div>
|
|
|
|
</div>
|
|
<div class="col-md-6" >
|
|
<div class="activity-edit__date">
|
|
<label>
|
|
<input type="text"
|
|
potentially-required-field
|
|
field-name="actualEndDate"
|
|
entity="ticket"
|
|
class="form-control"
|
|
name="actualEndDate"
|
|
placeholder="{{'common.aria.labels.actualEnd' | i18n}}"
|
|
title="{{'common.label.date' | i18n}}"
|
|
datepicker-popup="mediumDate"
|
|
ng-model="ticket.actualEndDate"
|
|
is-open="ticket.actualEndDatePicker.open"
|
|
show-button-bar="false"
|
|
ng-click="ticket.actualEndDatePicker.open = true"
|
|
ng-enter="ticket.aactualEndDatePicker.open = true"
|
|
datepicker-options="datePickerOptions"
|
|
ng-disabled="validator.actualEndDateDisabled(ticket, true, ignoreAccessMapping)"
|
|
ng-change="updateDateTime('actual')"
|
|
aria-label="{{'common.aria.labels.actualEndDate' | i18n}} {{'common.aria.labels.dateField' | i18n}}"
|
|
/>
|
|
<i class="icon-calendar release-edit__date-icon"></i>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
|
|
|
|
|
|
<div class="col-md-6" >
|
|
|
|
<div class="activity-edit__time">
|
|
<label>
|
|
<div class="dropdown timepicker">
|
|
<div class="dropdown-toggle">
|
|
<input class="form-control custom-field__time-input create-change-wizard__time_disabled"
|
|
type="text" value="{{ ticket.actualStartDate | date: 'shortTime' }}"
|
|
ng-disabled="validator.actualStartTimeDisabled(ticket, true, ignoreAccessMapping)"
|
|
title="{{'common.label.time' | i18n}}" aria-labelledby="actualStartDate"
|
|
placeholder="{{'create.change.wizard.dates.selectTime' | i18n}}" readonly="readonly"/>
|
|
<i class="icon-clock_o release-edit__time-icon"></i>
|
|
</div>
|
|
<div class="dropdown-menu" prevent-click-event ng-if="ticket.actualStartDate">
|
|
<timepicker ng-model="ticket.actualStartDate"
|
|
ng-change="updateDateTime('scheduled')"
|
|
show-meridian="showMeridian"
|
|
default-hours="12"
|
|
default-minutes="0">
|
|
</timepicker>
|
|
</div>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
<div class="col-md-6" >
|
|
<div class="activity-edit__time">
|
|
<label>
|
|
<div class="dropdown timepicker">
|
|
<div class="dropdown-toggle">
|
|
<input class="form-control custom-field__time-input create-change-wizard__time_disabled"
|
|
type="text" value="{{ ticket.actualEndDate | date: 'shortTime' }}"
|
|
ng-disabled="validator.actualEndTimeDisabled(ticket, true, ignoreAccessMapping)"
|
|
title="{{'common.label.time' | i18n}}" aria-labelledby="actualEndDate"
|
|
placeholder="{{'create.change.wizard.dates.selectTime' | i18n}}" readonly="readonly"/>
|
|
<i class="icon-clock_o release-edit__time-icon"></i>
|
|
</div>
|
|
<div class="dropdown-menu" prevent-click-event ng-if="ticket.actualEndDate">
|
|
<timepicker ng-model="ticket.actualEndDate"
|
|
ng-change="updateDateTime('scheduled')"
|
|
show-meridian="showMeridian"
|
|
default-hours="12"
|
|
default-minutes="0">
|
|
</timepicker>
|
|
</div>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div> |