165 lines
6.5 KiB
HTML
165 lines
6.5 KiB
HTML
<div class="row">
|
|
<div class="col-sm-6">
|
|
<div class="person-profile-form-item">
|
|
<label class="label_control-wrap">
|
|
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="firstName"
|
|
entity="person">
|
|
{{'person.details.firstName' | i18n}}
|
|
</span>
|
|
<input aria-label="{{'person.details.firstName' | i18n}}" class="form-control" type="text" ng-model="person.firstName"
|
|
potentially-required-field
|
|
field-name="firstName"
|
|
entity="person">
|
|
</label>
|
|
</div>
|
|
|
|
<div class="person-profile-form-item">
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="lastName"
|
|
entity="person">
|
|
{{'person.details.lastName' | i18n}}
|
|
</span>
|
|
<input aria-label="{{'person.details.lastName' | i18n}}" class="form-control" type="text" ng-model="person.lastName"
|
|
potentially-required-field
|
|
field-name="lastName"
|
|
entity="person">
|
|
</label>
|
|
</div>
|
|
|
|
<div class="person-profile-form-item">
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="jobTitle"
|
|
entity="person">
|
|
{{'person.details.jobTitle' | i18n}}
|
|
</span>
|
|
<input aria-label="{{'person.details.jobTitle' | i18n}}" class="form-control" type="text" ng-model="person.jobTitle"
|
|
potentially-required-field
|
|
field-name="jobTitle"
|
|
entity="person"
|
|
maxlength="50">
|
|
<character-limit-message field="person.jobTitle" limit="50"></character-limit-message>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-sm-6">
|
|
<div class="person-profile-form-item clearfix">
|
|
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="organization"
|
|
entity="person">
|
|
{{'common.label.organization' | i18n}}
|
|
</span>
|
|
|
|
<div class="dropdown-input full-width" dropdown>
|
|
<button type="button" aria-label="{{'common.label.organization' | i18n}}" class="dropdown-input__button dropdown-toggle" ng-click="getOrganizationsAndUpdate(person.company)" ng-enter="getOrganizationsAndUpdate(person.company)">
|
|
<span loading-spinner if="organizationsLoading" inline="true"></span>
|
|
<span>{{person.organization}}</span>
|
|
</button>
|
|
<input type="hidden" ng-model="person.organization"
|
|
potentially-required-field
|
|
field-name="organization"
|
|
entity="person" >
|
|
<ul ng-if="!organizationsLoading" vertical-screen-fit="personProfileOrganizationMenu" class="dropdown-menu full-width">
|
|
<li ng-if="organizations.length<1">
|
|
<div class="{{(organization.name == person.organization) ? 'dropdown-item_selected' : 'dropdown-item'}}" tabindex="0" role="menuitem">
|
|
{{'common.label.noOrganizations' | i18n}}
|
|
</div>
|
|
</li>
|
|
<li ng-repeat="organization in organizations">
|
|
<a class="{{(organization.name == person.organization) ? 'dropdown-item_selected' : 'dropdown-item'}}" tabindex="0" role="menuitem"
|
|
ng-click="$event.preventDefault(); person.organization = organization.name;" href="javascript:void(0)">
|
|
{{organization.name}}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
|
|
<div class="person-profile-form-item clearfix">
|
|
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="department"
|
|
entity="person">
|
|
{{'common.label.department' | i18n}}
|
|
</span>
|
|
|
|
<div ng-disabled="!person.organization" class="dropdown-input full-width" dropdown>
|
|
|
|
<button type="button" aria-label="{{'common.label.department' | i18n}}" class="dropdown-input__button dropdown-toggle" ng-click="!person.organization || getDepartmentsAndUpdate(person.organization,person.company)" ng-enter="!person.organization || getDepartmentsAndUpdate(person.organization,person.company)">
|
|
<span loading-spinner if="departmentsLoading" inline="true"></span>
|
|
<span>{{person.department}}</span>
|
|
</button>
|
|
<input type="hidden" ng-model="person.department"
|
|
potentially-required-field
|
|
field-name="department"
|
|
entity="person" >
|
|
<ul ng-if="!departmentsLoading" ng-hide="!person.organization" vertical-screen-fit="personProfileDepartmentMenu" class="dropdown-menu full-width">
|
|
<li ng-if="departments.length<1">
|
|
<div class="{{(department.name == person.department) ? 'dropdown-item_selected' : 'dropdown-item'}}" tabindex="0" role="menuitem">
|
|
{{'common.label.noDepartments' | i18n}}
|
|
</div>
|
|
</li>
|
|
<li ng-repeat="department in departments">
|
|
<a class="{{(department.name == person.department) ? 'dropdown-item_selected' : 'dropdown-item'}}" tabindex="0" role="menuitem"
|
|
ng-click="$event.preventDefault(); person.department = department.name;" href="javascript:void(0)">
|
|
{{department.name}}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</label>
|
|
</div>
|
|
|
|
<div class="person-profile-form-item clearfix">
|
|
|
|
<label class="label_control-wrap">
|
|
<span class="label__text"
|
|
potentially-required-field
|
|
field-name="site.name"
|
|
entity="person">
|
|
{{'common.label.site' | i18n}}
|
|
</span>
|
|
|
|
<div class="dropdown-input full-width" dropdown>
|
|
<button type="button" aria-label="{{'common.label.site' | i18n}}" class="dropdown-input__button dropdown-toggle" ng-click="getSitesAndUpdate(person.company,person.site)" ng-enter="getSitesAndUpdate(person.company,person.site)" aria-required="true">
|
|
<span loading-spinner if="sitesLoading" inline="true"></span>
|
|
<span>{{person.site.name}}</span>
|
|
</button>
|
|
<input type="hidden" ng-model="person.site.name"
|
|
potentially-required-field
|
|
field-name="site.name"
|
|
entity="person" >
|
|
<ul ng-if="!sitesLoading" vertical-screen-fit="personProfileSiteMenu" class="dropdown-menu full-width">
|
|
<li ng-if="sites.length<1">
|
|
<div class="{{(site.name == person.site.name) ? 'dropdown-item_selected' : 'dropdown-item'}}" tabindex="0" role="menuitem">
|
|
{{'common.label.noSites' | i18n}}
|
|
</div>
|
|
</li>
|
|
<li ng-repeat="site in sites">
|
|
<a class="{{(site.name == person.site.name) ? 'dropdown-item_selected' : 'dropdown-item'}}" tabindex="0" role="menuitem"
|
|
ng-click="$event.preventDefault(); person.site.name = site.name;" href="javascript:void(0)">
|
|
{{site.name}}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</label>
|
|
<!-- Needed for validation to work -->
|
|
<input name="personSite" type="hidden" ng-model="person.site" ng-required="true" />
|
|
</div>
|
|
</div>
|
|
</div>
|