SmartIT_Extensions/BMC/smart-it-full/views/change/create-change-template-sele...

115 lines
6.9 KiB
HTML

<div class="create-change__content-template" xmlns="http://www.w3.org/1999/html">
<div loading-spinner if="state.templatesLoading" centered="true" overlay="true"></div>
<div class="change-template__search">
<div class="change-template__input-field">
<label class="label_control-wrap">
<span class="label_text">{{ 'create.change.locationCompany' | i18n }}</span>
<selection
selection-items="selections.companies"
selected-item="draftTicket.company"
selection-callback="setCompany(item)"
title-text=""
label="name"
value="name"
update-selected-item="true" auto-focus
selection-filter="true"
selection-filter-placeholder-text="assignBlade.searchCompany"
show-chunking-tooltip="true"
typeahead-mode="state.tooManyCompanies"
typeahead-details="company as company.name for company in getList($viewValue)"
typeahead-get-list="getCompaniesByName(name)"
show-clear=true>
</selection>
</label>
</div>
<div class="change-template__input-field">
<label class="label_control-wrap">
<span class="label_text">{{ 'create.change.requestedFor' | i18n }}</span>
<input type="text"
aria-required="true"
title="{{ 'create.change.requestedFor' | i18n }}"
class="custom-input"
ng-model="draftTicket.customer"
ng-blur="onInputFocusBlur(); validateRequestedFor()"
role="combobox"
typeahead-min-length="3"
typeahead-template-url="views/create/custom-add-user-dropdown.html"
typeahead="customer as customer.firstName + ' ' + customer.lastName for customer in getListPersons('person', $viewValue)"
placeholder="{{ 'create.change.requestedFor.placeholder' | i18n }}"
set-focus="focusElement"
typeahead-on-select="setChangeLocation()"
uib-tooltip="{{'search.category.exceedsChunkSize' | i18n}}"
tooltip-is-open="$parent.$parent.isTooltipOpenRequestedFor"
tooltip-enable="$parent.$parent.exceedsChunkSizeRequestedFor"
tooltip-trigger="'none'"
tooltip-placement="top" />
</label>
<div loading-spinner if="state.searchingPersons" inline="true"></div>
<i class="icon-cross item-input__delete-btn" tabindex=0 role="link"
title="{{'common.button.clear' | i18n}} {{ 'create.change.requestedFor' | i18n }}" ng-if="draftTicket.customer && !state.searchingPersons"
focus-input-on-clear ng-click="clearRequestedFor()" ng-enter="clearRequestedFor()">
</i>
</div>
<div class="create-change__input-container" ng-if="draftTicket.company">
<input type="text"
title="{{'create.change.template.search' | i18n}}"
class="change-template__search-input"
ng-model="template.search"
ng-enter="getRecommendedTemplates(template.search)"
role="combobox"
typeahead-min-length="3"
typeahead-focus-first=false
typeahead="template as template for template in getTemplateList($viewValue)"
typeahead-on-select="getRecommendedTemplates($item)"
placeholder="{{'create.change.template.search' | i18n}}"
ng-blur="onInputFocusBlur()"
uib-tooltip="{{'search.category.exceedsChunkSize' | i18n}}"
tooltip-is-open="state.isTooltipOpenTemplates"
tooltip-enable="state.exceedsChunkSizeTemplates"
tooltip-trigger="'none'"
tooltip-placement="top">
<i class="icon-cross item-input__delete-btn" tabindex=0 role="link"
title="{{'common.button.clear' | i18n}}" ng-if="template.search"
focus-input-on-clear ng-click="clear()" ng-enter="clear()">
</i>
</div>
<div class="change-template__search-results" ng-if="template.showSearchResults">
<div class="change-template__list-header" ng-if="template.list.length==0">{{'create.change.template.noMatch' | i18n : template.search}}</div>
<div class="change-template__list-header" ng-if="template.list.length">{{'create.change.template.searchResults' | i18n : template.list.length}}</div>
<div class="change-template__list" ng-if="template.list.length">
<div class='create-change__template-item' tabindex=0
ng-repeat="item in template.list" ng-click="template.preview = item" ng-enter="template.preview = item" ng-keydown="$parent.handleKeyDown($event, item)"
role="link">
<div class="list-item_use icon-circle_thin_o" ng-click="template.selected = item" ng-enter="template.selected = item" ng-if="item.id != template.selected.id" tabindex="0" role="button"></div>
<div class="list-item_use icon-check" ng-click="template.selected = ''" ng-enter="template.selected = ''" ng-if="item.id == template.selected.id" tabindex="0" role="button"></div>
<div class="list-item_icon icon-file_template_o"></div>
<div class="template-item__information">
<div class="nowrap-line">{{item.name}}</div>
<div ng-class="{'priority-high': (item.templateObject.timing == 'Emergency' || item.templateObject.timing == 'Expedited')}">{{'create.change.template.timing' | i18n : (item.templateObject.timing | localizeLabel: 'timing': 'change')}}</div>
</div>
</div>
</div>
</div>
<div ng-if="!template.showSearchResults && (lastUsedTemplates | filter:{forCompany:draftTicket.company.name}).length">
<div class="change-template__list-header">{{'create.change.template.recentlyUsed' | i18n}}</div>
<div class="change-template__list">
<div loading-spinner if="state.lastUsedTemplatesLoading" centered="true"></div>
<div class='create-change__template-item' tabindex=0
ng-repeat="item in currentRecentlyUsedTemplates" ng-click="template.preview = item" ng-enter="template.preview = item" role="link">
<div class="list-item_use icon-circle_thin_o" ng-click="template.selected = item" ng-enter="template.selected = item" ng-if="item.id != template.selected.id" tabindex="0" role="button"></div>
<div class="list-item_use icon-check" ng-click="template.selected = ''" ng-enter="template.selected = ''" ng-if="item.id == template.selected.id" tabindex="0" role="button"></div>
<div class="list-item_icon icon-file_template_o"></div>
<div class="template-item__information">
<div class="nowrap-line">{{item.name}}</div>
<div ng-class="{'priority-high': (item.templateObject.timing == 'Emergency' || item.templateObject.timing == 'Expedited')}">{{'create.change.template.timing' | i18n : (item.templateObject.timing | localizeLabel: 'timing': 'change')}}</div>
</div>
</div>
</div>
</div>
</div>
<div class="change-template__preview">
<div class="change-template__empty-preview" ng-if="!template.preview">{{'create.change.template.preview' | i18n}}</div>
<preview-ticket-template template="template.preview"></preview-ticket-template>
</div>
</div>