SmartIT_Extensions/BMC/smart-it-full/views/create/aqi-question-set-template.html

208 lines
9.2 KiB
HTML

<div>
<form name="createQuestionsForm" novalidate>
<div class="create-form-wrapper">
<div loading-spinner if="state.dataLoading" centered="true" overlay="true"></div>
<div class="create-aqi__header">
<h3 id="modalLabel" class="create-aqi__page-title">{{'create.aqi.editQuestions.header' | i18n}}</h3>
</div>
<div class="create-aqi__body">
<div class="create-aqi__section col-sm-12">
<div class="col-sm-4">
<label class="label_control-wrap">
<span class="label__text_required"
field-name="questionSetName"
entity="aqi">
{{'create.aqi.editQuestions.questionSetName.label' | i18n}}
</span>
<input class="custom-input full-width"
field-name="questionSetName"
ng-model="questionSet.name"
entity="aqi"
maxlength="100"
required/>
</label>
</div>
<div class="col-sm-2">
<label class="label_control-wrap">
<span class="label__text"
field-name="company"
entity="aqi">
{{'common.label.company' | i18n}}
</span>
<selection selection-items="selections.companies"
selected-item="questionSet.company"
selection-callback="loadOrganizations(questionSet.company)"
title-text="{{'common.label.company' | i18n | uppercase}}"
label="name"
value="name"
field-name="company"
entity="aqi"
loading-flag="state.companiesLoading"
update-selected-item="true"
selection-filter="true"
selection-filter-placeholder-text="assignBlade.searchCompany"
typeahead-mode="state.tooManyCompanies"
typeahead-details="company as company.name for company in getList($viewValue)"
typeahead-get-list="getCompaniesByName(name)">
</selection>
</label>
</div>
<div class="col-sm-2">
<label class="label_control-wrap">
<span class="label__text"
field-name="organization"
entity="aqi">
{{'common.label.organization' | i18n}}
</span>
<selection selection-items="selections.organizations"
selected-item="questionSet.organization"
title-text="{{'common.label.organization' | i18n | uppercase}}"
label="name"
value="name"
field-name="organization"
entity="aqi"
update-selected-item="true"
loading-flag="state.organizationsLoading"
disabled-selection="!questionSet.company">
</selection>
</label>
</div>
</div>
<div class="create-aqi__section col-sm-12">
<div class="create-aqi__add-question col-sm-4" ng-click="addNewQuestion()" ng-enter="addNewQuestion()" tabindex="0">
<i class="icon-plus"></i>
<span>{{'create.aqi.editQuestions.addNewQuestion' | i18n}}</span>
</div>
<div class="col-sm-10">
<span>{{'create.aqi.editQuestions.header' | i18n}}</span>
</div>
<div class="question-editor__question-list col-sm-10" ui-sortable="sortableOptions" ng-model="questionList">
<div class="question-editor__question-panel" ng-repeat="questionObj in questionList" ng-if="!questionObj.delete">
<div class="question-editor__question-panel-head" ng-click="openAction(questionObj)" ng-enter="openAction(questionObj)" tabindex="0">
<div class="question-editor__question-panel-head-sortable" prevent-click-event>
<div class="icon-dots"></div>
</div>
<div class="question-editor__question-panel-head-accordion">
<div ng-class="questionObj.isOpen ? 'icon-angle_up' : 'icon-angle_down'"></div>
</div>
<div class="question-editor__question-title">{{questionObj.textMap["default"]}}</div>
<label class="question-editor__checkbox-label question-editor__property-visible__width" ng-click="$event.stopPropagation()">
<input type="checkbox" ng-model="questionObj.isVisible" ng-click="$event.stopPropagation()" ng-checked="questionObj.isVisible"/>
{{'create.aqi.editQuestions.isVisible.label' | i18n}}
</label>
<button class="question-editor__delete-btn btn_no-fill" ng-if="!questionObj.isDefault" ng-click="deleteAction($event, questionObj)">
<i class="icon-cross"></i>{{'customization.globalMenu.action.delete' | i18n}}
</button>
</div>
<div class="question-editor__question-panel-body" ng-class="{active: questionObj.isOpen}"
ng-show="questionObj.isOpen">
<div>
<div>
<div class="question-editor__question-panel-body__locale label__text">{{ 'common.labels.languages' | i18n }}</div>
<div class="question-editor__question-panel-body__text">
<span class="label__text_required">{{ 'create.aqi.editQuestions.questionText.label' | i18n }}</span>
</div>
</div>
<div class="question-editor__question-panel-body__label-row"
ng-init="locale = 'default';">
<div class="question-editor__question-panel-body__locale-dropdown">
<div class="dropdown-input full-width">
<button type="button" class="dropdown-input__button dropdown-toggle" disabled>
<span>{{supportedLocales[locale]}}</span>
</button>
</div>
</div>
<div class="question-editor__question-panel-body__question-text">
<input type="text"
class="text-input full-width"
placeholder="{{'create.aqi.editQuestions.questionText.label' | i18n }}"
ng-model="questionObj.textMap[locale]"
ng-disabled="questionObj.isDefault"
required />
</div>
<div class="required-field-msg-box" ng-show="!questionObj.textMap[locale] && postValidate">{{'common.labels.nonEmpty' | i18n }}</div>
</div>
<div class="question-editor__question-panel-body__label-row"
ng-repeat="(locale, questionText) in questionObj.textMap" ng-if="locale != 'default'">
<div class="question-editor__question-panel-body__locale-dropdown">
<div class="dropdown-input full-width" dropdown>
<button type="button" class="dropdown-input__button dropdown-toggle" ng-disabled="questionObj.isDefault">
<span>{{supportedLocales[locale]}}</span>
</button>
<ul class="dropdown-menu full-width">
<li ng-repeat="(key, value) in supportedLocales"
ng-click="updateLabel(questionObj, locale, key)">
<div class="{{(locale == key) ? 'dropdown-item_selected' : 'dropdown-item'}}"
tabindex="0" role="menuitem">
{{value}}
</div>
</li>
</ul>
</div>
</div>
<div class="question-editor__question-panel-body__question-text">
<input type="text"
class="text-input full-width"
placeholder="{{'create.aqi.editQuestions.questionText.label' | i18n }}"
value="{{questionText}}"
ng-model="questionObj.textMap[locale]"
ng-disabled="questionObj.isDefault"
required />
</div>
<div class="question-editor__question-panel-body__label-close"
ng-click="removeLabel(questionObj, locale);" ng-show="!questionObj.isDefault"><i
class="fields-widget__icon icon-cross"></i></div>
<div class="required-field-msg-box" ng-show="!questionObj.textMap[locale] && postValidate">{{'common.labels.nonEmpty' | i18n }}</div>
</div>
<div>
<button class="btn_link" ng-click="addLabel(questionObj)" ng-hide="questionObj.isDefault">
<i class="icon-plus_circle" aria-hidden="true"></i> {{'create.aqi.editQuestions.additionalLanguages' | i18n}}
</button>
</div>
<div class="question-editor__question-panel-body__container">
<div class="question-editor__question-panel-body__weight col-sm-5">
<label class="label_control-wrap">
<span class="label__text_required"
field-name="questionWeight"
entity="aqi">
{{'create.aqi.editQuestions.weighting.label' | i18n}}
</span>
<input class="question-editor__question-panel-body__custom-input"
field-name="questionWeight" entity="aqi"
ng-model="questionObj.weight"
type="number" min="0.01" max="9.99" step="0.01"
ng-disabled="questionObj.isDefault" required/>
</label>
</div>
<div class="col-sm-6 question-editor__property-yes-desirable" ng-hide="questionObj.isDefault">
<label class="question-editor__checkbox-label">
<input type="checkbox" ng-model="questionObj.desirableAnswer" />
{{'create.aqi.editQuestions.yesDesirable.label' | i18n}}
</label>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</form>
<div class="create-ticket__action-panel">
<div class="pull-right">
<button type="submit" class="btn_primary create-ticket__action-btn" ng-click="onSaveClick()" ng-disabled="(createQuestionsForm.$invalid || state.dataLoading)">{{'common.button.save' | i18n}}</button>
<button type="button" class="btn_secondary action-panel__cancel-btn" ng-click="onCancelClick()" ng-disabled="state.dataLoading">{{'common.button.cancel' | i18n}}</button>
</div>
</div>
</div>