502 lines
23 KiB
HTML
502 lines
23 KiB
HTML
<div ux-id="release-basic-details" ng-show="state.selectedWizardTab==tabIds.wizard.basics">
|
|
<form name="{{tabIds.wizard.basics}}">
|
|
<div ux-id="summary" class="col-sm-8 create-release-wizard__summary-section">
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="summary"
|
|
entity="draftTicket">
|
|
{{ 'create.release.wizard.basicDetails.summary' | i18n }}
|
|
</span>
|
|
<div class="create-release-wizard__item">
|
|
<input type="text"
|
|
potentially-required-field
|
|
field-name="summary"
|
|
entity="draftTicket"
|
|
title="{{ 'create.release.wizard.basicDetails.summary' | i18n }}"
|
|
class="custom-input"
|
|
name="summary"
|
|
ng-model="draftTicket.summary"
|
|
placeholder="{{ 'create.release.wizard.basicDetails.summary.placeholder' | i18n }}"
|
|
maxlength="100"
|
|
tabindex = "0"
|
|
auto-focus/>
|
|
<character-limit-message ux-id="summary-limit" field="draftTicket.summary" limit="100"></character-limit-message>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
<div class="col-sm-8 create-release-wizard__description-section">
|
|
<div ux-id="description" class="create-release-wizard__item">
|
|
<edit-summary
|
|
label="{{'create.release.wizard.basicDetails.description' | i18n}}"
|
|
is-desc-required="false"
|
|
ticket="draftTicket"
|
|
context="'create'"
|
|
textplaceholder="'create.release.wizard.basicDetails.description.placeholder' | i18n"
|
|
attachment="false">
|
|
</edit-summary>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-12 create-ticket__section-separator"></div>
|
|
|
|
<div class="row full-width create-release-wizard__section">
|
|
<div class="col-sm-8">
|
|
<div class="row create-ticket__section">
|
|
<div ux-id="impact-dropdown" class="col-sm-4">
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="impact"
|
|
entity="draftTicket">
|
|
{{'create.release.wizard.basicDetails.impact' | i18n }}
|
|
</span>
|
|
|
|
<div class="create-release-wizard__item">
|
|
<selection selection-items="releaseMetadata.impacts"
|
|
selected-item="draftTicket.impact"
|
|
selection-callback="updatePriority()"
|
|
title-text="{{'create.release.wizard.basicDetails.impact' | i18n | uppercase}}"
|
|
label="label"
|
|
value="label"
|
|
aria-required="true"
|
|
field-name="impact"
|
|
entity="draftTicket"
|
|
update-selected-item="true">
|
|
</selection>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
<div ux-id="urgency-dropdown" class="col-sm-4">
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="urgency"
|
|
entity="draftTicket">
|
|
{{'create.release.wizard.basicDetails.urgency' | i18n }}
|
|
</span>
|
|
|
|
<div class="create-release-wizard__item">
|
|
<selection selection-items="releaseMetadata.urgencies"
|
|
selected-item="draftTicket.urgency"
|
|
selection-callback="updatePriority()"
|
|
title-text="{{'create.release.wizard.basicDetails.urgency' | i18n | uppercase}}"
|
|
label="label"
|
|
value="label"
|
|
aria-required="true"
|
|
field-name="urgency"
|
|
entity="draftTicket"
|
|
update-selected-item="true">
|
|
</selection>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
<div ux-id="priority-dropdown" class="col-sm-4">
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="priority"
|
|
entity="draftTicket">
|
|
{{'create.release.wizard.basicDetails.priority' | i18n }}
|
|
</span>
|
|
|
|
<div class="create-release-wizard__item">
|
|
<selection selection-items="releaseMetadata.priorities"
|
|
selected-item="draftTicket.priority"
|
|
title-text="{{'create.release.wizard.basicDetails.priority' | i18n | uppercase}}"
|
|
label="label"
|
|
value="label"
|
|
aria-required="true"
|
|
field-name="priority"
|
|
entity="draftTicket"
|
|
update-selected-item="true">
|
|
</selection>
|
|
</div>
|
|
<input type="hidden" ng-model="draftTicket.priority" ng-required="true">
|
|
</label>
|
|
</div>
|
|
</div>
|
|
<div class="row create-ticket__section">
|
|
<div ux-id="releasetype-dropdown" class="col-sm-4">
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="releaseType"
|
|
entity="draftTicket">
|
|
{{'create.release.wizard.basicDetails.releaseType' | i18n }}
|
|
</span>
|
|
|
|
<div class="create-release-wizard__item">
|
|
<selection selection-items="releaseMetadata.types"
|
|
selected-item="draftTicket.releaseType"
|
|
title-text="{{'create.release.wizard.basicDetails.releaseType' | i18n | uppercase}}"
|
|
label="label"
|
|
value="label"
|
|
aria-required="true"
|
|
field-name="releaseType"
|
|
entity="draftTicket"
|
|
update-selected-item="true"
|
|
show-clear=true>
|
|
</selection>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
<div ux-id="business-justification-dropdown" class="col-sm-4">
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="businessJustification"
|
|
entity="draftTicket">
|
|
{{'create.release.wizard.basicDetails.businessJustification' | i18n }}
|
|
</span>
|
|
|
|
<div class="create-release-wizard__item">
|
|
<selection selection-items="releaseMetadata.businessJustifications"
|
|
selected-item="draftTicket.businessJustification"
|
|
title-text="{{'create.release.wizard.basicDetails.businessJustification' | i18n | uppercase}}"
|
|
label="label"
|
|
value="label"
|
|
aria-required="true"
|
|
field-name="businessJustification"
|
|
entity="draftTicket"
|
|
update-selected-item="true">
|
|
</selection>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
<div ux-id="field_impactedService" class="col-sm-4">
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="impactedService.name"
|
|
entity="draftTicket">
|
|
{{ 'create.release.wizard.basicDetails.affected.business.services' | i18n }}
|
|
</span>
|
|
<div class="create-release-wizard__service-item">
|
|
<input type="text"
|
|
title="{{ 'create.release.wizard.basicDetails.affected.business.services' | i18n }}"
|
|
name="service"
|
|
ng-model="draftTicket.impactedService"
|
|
role="combobox"
|
|
autocomplete="off"
|
|
typeahead-wait-ms="500"
|
|
typeahead-min-length="3"
|
|
typeahead-editable="false"
|
|
typeahead-template-url="views/create/custom-asset-service-dropdown.html"
|
|
typeahead="service as service.name for service in getList('service', $viewValue)"
|
|
placeholder="{{ 'create.release.wizard.basicDetails.affected.business.services.placeholder' | i18n }}"
|
|
class="custom-input"
|
|
tabindex="0"
|
|
potentially-required-field
|
|
field-name="impactedService.name"
|
|
entity="draftTicket"
|
|
ng-blur="onInputFocusBlur()"
|
|
uib-tooltip="{{'search.category.exceedsChunkSize' | i18n}}"
|
|
tooltip-is-open="state.isTooltipOpenService"
|
|
tooltip-enable="state.exceedsChunkSizeService"
|
|
tooltip-trigger="'none'"
|
|
tooltip-placement="top">
|
|
<i ux-id="affected-service-clear" class="icon-cross item-input__delete-btn" tabindex=0 role="link"
|
|
title="{{'common.button.clear' | i18n}} {{ 'create.release.wizard.basicDetails.affected.business.services' | i18n }}"
|
|
ng-if="draftTicket.impactedService"
|
|
focus-input-on-clear
|
|
ng-click="clearImpactedService()"
|
|
ng-enter="clearImpactedService()">
|
|
</i>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row create-ticket__section">
|
|
<div ux-id="release-location" class="col-xs-12 create-release__location">
|
|
<label class="label_control-wrap">
|
|
<span class="label__text">
|
|
{{'create.release.location' | i18n }}
|
|
</span>
|
|
</label>
|
|
<foundation-selector ux-id="location" ng-if="draftCreated" type="site" inline="true" multiple="false" options="siteOptions" use-chunking="false"
|
|
typeahead-mode="true" selected-foundations="draftTicket.location"></foundation-selector>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row create-ticket__section">
|
|
<div class="release-dates-validaton ticket-date__form_invalid"
|
|
ng-if="(basics.scheduledStartDate.$invalid && basics.scheduledStartDate.$dirty)||
|
|
(basics.scheduledEndDate.$invalid && basics.scheduledEndDate.$dirty) ||
|
|
(basics.deploymentStartDate.$invalid && basics.deploymentStartDate.$dirty) ||
|
|
(basics.deploymentEndDate.$invalid && basics.deploymentEndDate.$dirty)">
|
|
<i class="icon-exclamation_triangle"></i>
|
|
<span ng-if="basics.scheduledStartDate.$invalid && basics.scheduledStartDate.$dirty">{{'create.ticket.invalid.scheduled-start-date'|i18n}}</span>
|
|
<span ng-if="basics.scheduledEndDate.$invalid && basics.scheduledEndDate.$dirty">{{'create.ticket.invalid.scheduled-end-date'|i18n}}</span>
|
|
<span ng-if="basics.deploymentStartDate.$invalid && basics.deploymentStartDate.$dirty">{{'create.ticket.invalid.deployment-start-date'|i18n}}</span>
|
|
<span ng-if="basics.deploymentEndDate.$invalid && basics.deploymentEndDate.$dirty">{{'create.ticket.invalid.deployment-end-date'|i18n}}</span>
|
|
</div>
|
|
<div class="col-md-4 col-sm-6">
|
|
<div ux-id="scheduled-start-date" class="release-point">
|
|
<label class="label_control-wrap">
|
|
<span id="scheduledStart" class="label__text"
|
|
potentially-required-field
|
|
field-name="scheduledStartDate"
|
|
entity="draftTicket">
|
|
{{ 'create.ticket.scheduled.start.time' | i18n }}
|
|
</span>
|
|
<div class="create-ticket__date-time-item">
|
|
<div class="custom-field__date">
|
|
<input ux-id="start-date" type="text"
|
|
potentially-required-field
|
|
field-name="scheduledStartDate"
|
|
entity="draftTicket"
|
|
title="{{'common.label.date' | i18n}}"
|
|
class="form-control"
|
|
name="scheduledStartDate"
|
|
datepicker-popup="mediumDate"
|
|
ng-model="draftTicket.scheduledStartDate"
|
|
is-open="draftTicket.scheduledStartDatePicker.open"
|
|
show-button-bar="false"
|
|
ng-click="openDatePicker(draftTicket.scheduledStartDatePicker, $event)"
|
|
ng-enter="openDatePicker(draftTicket.scheduledStartDatePicker)"
|
|
datepicker-options="datePickerOptions"
|
|
aria-labelled="scheduledStart"
|
|
ng-change="updateDateTime('scheduled')"
|
|
/>
|
|
<i class="icon-calendar create-release-wizard__date-icon"></i>
|
|
</div>
|
|
|
|
<div class="custom-field__time">
|
|
<div class="dropdown timepicker">
|
|
<div ux-id="start-time" class="dropdown-toggle">
|
|
<input class="form-control custom-field__time-input create-release-wizard__time_disabled"
|
|
type="text" value="{{ draftTicket.scheduledStartDate | date: 'shortTime' }}"
|
|
ng-disabled="validator.scheduledStartTimeDisabled(draftTicket, editMode)"
|
|
title="{{'common.label.time' | i18n}}" aria-labelledby="scheduledStart"
|
|
readonly="readonly"/>
|
|
<i class="icon-clock_o create-release-wizard__time-icon"></i>
|
|
</div>
|
|
<div class="dropdown-menu" prevent-click-event ng-if="draftTicket.scheduledStartDate"
|
|
ng-hide="validator.scheduledStartTimeDisabled(draftTicket, editMode)">
|
|
<timepicker ux-id="start-time-picker" ng-model="draftTicket.scheduledStartDate"
|
|
ng-change="updateDateTime('scheduled')"
|
|
show-meridian="showMeridian"
|
|
default-hours="12"
|
|
default-minutes="0">
|
|
</timepicker>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
|
|
<div ux-id="scheduled-end-date" class="release-point">
|
|
<label class="label_control-wrap">
|
|
<span id="scheduledEnd" class="label__text"
|
|
potentially-required-field
|
|
field-name="scheduledEndDate"
|
|
entity="draftTicket">
|
|
{{ 'create.ticket.scheduled.end.time' | i18n }}
|
|
</span>
|
|
<div class="create-ticket__date-time-item">
|
|
<div class="custom-field__date">
|
|
<input ux-id="start-date" type="text"
|
|
potentially-required-field
|
|
field-name="scheduledEndDate"
|
|
entity="draftTicket"
|
|
title="{{'common.label.date' | i18n}}"
|
|
class="form-control"
|
|
name="scheduledEndDate"
|
|
datepicker-popup="mediumDate"
|
|
ng-model="draftTicket.scheduledEndDate"
|
|
is-open="draftTicket.scheduledEndDatePicker.open"
|
|
min-date="draftTicket.scheduledStartDate ? draftTicket.scheduledStartDate : datePickerOptions.minDate"
|
|
init-date="draftTicket.tempScheduledInit"
|
|
show-button-bar="false"
|
|
ng-click="openDatePicker(draftTicket.scheduledEndDatePicker, $event)"
|
|
ng-enter="openDatePicker(draftTicket.scheduledEndDatePicker)"
|
|
datepicker-options="datePickerOptions"
|
|
aria-labelled="scheduledEnd"
|
|
ng-change="updateDateTime('scheduled')" />
|
|
<i class="icon-calendar create-release-wizard__date-icon"></i>
|
|
</div>
|
|
|
|
<div class="custom-field__time">
|
|
<div class="dropdown timepicker">
|
|
<div ux-id="start-time" class="dropdown-toggle">
|
|
<input class="form-control custom-field__time-input create-release-wizard__time_disabled"
|
|
type="text" value="{{ draftTicket.scheduledEndDate | date: 'shortTime' }}"
|
|
ng-disabled="validator.scheduledEndTimeDisabled(draftTicket, editMode)"
|
|
title="{{'common.label.time' | i18n}}" aria-labelledby="scheduledEnd"
|
|
readonly="readonly"/>
|
|
<i class="icon-clock_o create-release-wizard__time-icon"></i>
|
|
</div>
|
|
<div class="dropdown-menu" prevent-click-event ng-if="draftTicket.scheduledEndDate"
|
|
ng-hide="validator.scheduledEndTimeDisabled(draftTicket, editMode)">
|
|
<timepicker ux-id="start-time-picker" ng-model="draftTicket.scheduledEndDate"
|
|
ng-change="updateDateTime('scheduled')"
|
|
show-meridian="showMeridian"
|
|
default-hours="12"
|
|
default-minutes="0">
|
|
</timepicker>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-md-4 col-sm-6">
|
|
<div ux-id="deployment-start-date" class="release-point">
|
|
<label class="label_control-wrap">
|
|
<span id="deploymentStart" class="label__text"
|
|
potentially-required-field
|
|
field-name="deploymentStartDate"
|
|
entity="draftTicket">
|
|
{{ 'create.ticket.deployment.start.time' | i18n }}
|
|
</span>
|
|
<div class="create-ticket__date-time-item">
|
|
<div class="custom-field__date">
|
|
<input ux-id="start-date" type="text"
|
|
title="{{'common.label.date' | i18n}}"
|
|
class="form-control"
|
|
name="deploymentStartDate"
|
|
datepicker-popup="mediumDate"
|
|
ng-model="draftTicket.deploymentStartDate"
|
|
is-open="draftTicket.deploymentStartDatePicker.open"
|
|
show-button-bar="false"
|
|
ng-click="openDatePicker(draftTicket.deploymentStartDatePicker, $event)"
|
|
ng-enter="openDatePicker(draftTicket.deploymentStartDatePicker)"
|
|
datepicker-options="datePickerOptions"
|
|
aria-labelled="deploymentStart"
|
|
ng-change="updateDateTime('deployment')"
|
|
potentially-required-field
|
|
field-name="deploymentStartDate"/>
|
|
<i class="icon-calendar create-release-wizard__date-icon"></i>
|
|
</div>
|
|
|
|
<div class="custom-field__time">
|
|
<div class="dropdown timepicker">
|
|
<div class="dropdown-toggle">
|
|
<input ux-id="start-time" class="form-control custom-field__time-input create-release-wizard__time_disabled"
|
|
type="text" value="{{ draftTicket.deploymentStartDate | date: 'shortTime' }}"
|
|
ng-disabled="validator.deploymentStartTimeDisabled(draftTicket, editMode)"
|
|
title="{{'common.label.time' | i18n}}" aria-labelledby="deploymentStart"
|
|
readonly="readonly"/>
|
|
<i class="icon-clock_o create-release-wizard__time-icon"></i>
|
|
</div>
|
|
<div class="dropdown-menu" prevent-click-event ng-if="draftTicket.deploymentStartDate"
|
|
ng-hide="validator.deploymentStartTimeDisabled(draftTicket, editMode)">
|
|
<timepicker ux-id="start-time-picker" ng-model="draftTicket.deploymentStartDate"
|
|
ng-change="updateDateTime('deployment')"
|
|
show-meridian="showMeridian"
|
|
default-hours="12"
|
|
default-minutes="0">
|
|
</timepicker>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
|
|
<div ux-id="deployment-end-date" class="release-point">
|
|
<label class="label_control-wrap">
|
|
<span id="deploymentEnd" class="label__text"
|
|
potentially-required-field
|
|
field-name="deploymentEndDate"
|
|
entity="draftTicket">
|
|
{{ 'create.ticket.deployment.end.time' | i18n }}
|
|
</span>
|
|
<div class="create-ticket__date-time-item">
|
|
<div class="custom-field__date">
|
|
<input ux-id="end-date" type="text"
|
|
title="{{'common.label.date' | i18n}}"
|
|
class="form-control"
|
|
name="deploymentEndDate"
|
|
datepicker-popup="mediumDate"
|
|
ng-model="draftTicket.deploymentEndDate"
|
|
min-date="draftTicket.deploymentStartDate ? draftTicket.deploymentStartDate : datePickerOptions.minDate"
|
|
init-date="draftTicket.tempDeploymentInit"
|
|
is-open="draftTicket.deploymentEndDatePicker.open"
|
|
show-button-bar="false"
|
|
ng-click="openDatePicker(draftTicket.deploymentEndDatePicker, $event)"
|
|
ng-enter="openDatePicker(draftTicket.deploymentEndDatePicker)"
|
|
datepicker-options="datePickerOptions"
|
|
aria-labelled="deploymentEnd"
|
|
ng-change="updateDateTime('deployment')"
|
|
potentially-required-field
|
|
field-name="deploymentEndDate"/>
|
|
<i class="icon-calendar create-release-wizard__date-icon"></i>
|
|
</div>
|
|
|
|
<div class="custom-field__time">
|
|
<div class="dropdown timepicker">
|
|
<div class="dropdown-toggle">
|
|
<input ux-id="end-time" class="form-control custom-field__time-input create-release-wizard__time_disabled"
|
|
type="text" value="{{ draftTicket.deploymentEndDate | date: 'shortTime' }}"
|
|
ng-disabled="validator.deploymentEndTimeDisabled(draftTicket, editMode)"
|
|
title="{{'common.label.time' | i18n}}" aria-labelledby="deploymentEnd"
|
|
readonly="readonly"/>
|
|
<i class="icon-clock_o create-release-wizard__time-icon"></i>
|
|
</div>
|
|
<div class="dropdown-menu" prevent-click-event ng-if="draftTicket.deploymentEndDate"
|
|
ng-hide="validator.deploymentEndTimeDisabled(draftTicket, editMode)">
|
|
<timepicker ux-id="end-time-picker" ng-model="draftTicket.deploymentEndDate"
|
|
ng-change="updateDateTime('deployment')"
|
|
show-meridian="showMeridian"
|
|
default-hours="12"
|
|
default-minutes="0">
|
|
</timepicker>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-sm-4 create-ticket__section">
|
|
<categories-editor ux-id="release-category" ng-if="draftTicket.allCategories" entity="draftTicket" company="draftTicket.company" categories="draftTicket.allCategories"></categories-editor>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-12 create-ticket__section-separator"></div>
|
|
|
|
<div class="col-sm-12 create-ticket__section">
|
|
<div class="create-ticket__assignment" ng-class="{'create-release-wizard__auto-assign':draftTicket.autoAssignAssignee}">
|
|
<div>
|
|
|
|
<img ux-id="avatar" ng-if="draftTicket.coordinator.id && !draftTicket.autoAssignAssignee" alt="{{draftTicket.coordinator.fullName}}" class="ticket-assignee__thumbnail" imgplaceholder="user"
|
|
thumbnail-img="{{'data:' + draftTicket.coordinator.thumbnailMime + ';base64,' + draftTicket.coordinator.thumbnail}}" user-availability="draftTicket.coordinator" />
|
|
<span ng-if="!draftTicket.coordinator.id && !draftTicket.autoAssignAssignee" class="ticket-assignee__none icon-question_circle"></span>
|
|
|
|
<div ux-id="release-coordinator" class="ticket-assignee__info">
|
|
<div ux-id="coordinator-label" class="ticket__label-small">{{ 'create.release.coordinator' | i18n }}</div>
|
|
<span ux-id="auto-assign-text" class="auto-assign__text" ng-if="draftTicket.autoAssignAssignee">
|
|
{{ 'create.ticket.auto.assign' | i18n }}
|
|
</span>
|
|
<span ux-id="coordinator-name" ng-if="!draftTicket.coordinator.id && !draftTicket.autoAssignAssignee" class="ticket__field-value">{{'common.label.noneYet' | i18n }}</span>
|
|
<span ng-if="draftTicket.coordinator.id && !draftTicket.autoAssignAssignee" class="ticket__field-value"><a ux-id="coordinator-name" href="#/person/{{draftTicket.coordinator.loginId | escape}}" title="{{draftTicket.coordinator.fullName}}">{{draftTicket.coordinator.fullName}}</a></span>
|
|
</div>
|
|
|
|
<div ux-id="coordinator-group" class="ticket-assignee__support-group" ng-if="!draftTicket.autoAssignAssignee">
|
|
<div ux-id="coordinator-group-label" class="ticket__label-small">{{'create.release.filter.group' | i18n}}</div>
|
|
<span ux-id="coordinator-group-name" class="ticket__field-value">{{ draftTicket.coordinatorGroup.name || ('common.label.noneYet' | i18n ) }}</span>
|
|
</div>
|
|
|
|
<div ux-id="assign-me-btn" class="ticket-incident-assignee__action" ng-click="assignToMe($event, 'releasecoordinator')" ng-enter="assignToMe($event, 'releasecoordinator')"
|
|
ng-if="availableForAssignment && draftTicket.coordinator.id !== loggedInUserId">
|
|
<i class="icon-user_plus"></i>
|
|
<a aria-label="{{'common.labels.assignToMe' | i18n}}" href="">
|
|
{{'common.labels.assignToMe' | i18n }}
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="create-ticket__assignment">
|
|
<button ux-id="change-assign-btn" type="button" class="btn_primary ticket-template__assignment-btn" ng-click="assign($event)">{{ 'create.ticket.assignment' | i18n }}</button>
|
|
</div>
|
|
</div>
|
|
|
|
</form>
|
|
</div> |