TASKPM/libreplan-webapp/src/main/webapp/users/_editUser.zul

191 lines
10 KiB
Text
Raw Normal View History

<!--
This file is part of LibrePlan
Copyright (C) 2009-2010 Fundación para o Fomento da Calidade Industrial e
Desenvolvemento Tecnolóxico de Galicia
Copyright (C) 2010-2012 Igalia, S.L.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<?taglib uri="/WEB-INF/tld/i18n.tld" prefix="i18n" ?>
<window id="${arg.top_id}">
<caption id="caption" sclass="caption-title" />
<tabbox>
<tabs>
<tab label="${i18n:_('User data')}"></tab>
</tabs>
<tabpanels>
<tabpanel>
<vbox>
<!-- User details -->
<groupbox closable="false">
<caption label="${i18n:_('General user data')}" />
<vbox>
<label value="${i18n:_('Password cannot be managed for LDAP users because LDAP authentication is enabled.')}" visible="@{controller.ldapUserLdapConfiguration}" />
</vbox>
<grid fixedLayout="false" span="true">
<columns>
<column width="200px" />
<column />
</columns>
<rows>
<row>
<label value="${i18n:_('Username')}" />
<textbox id="loginName"
value="@{controller.user.loginName}" width="300px"
constraint="no empty:${i18n:_('cannot be empty')}"
onBlur="controller.updateWindowTitle()"
disabled="@{controller.ldapUserOrDefaultAdmin}" />
</row>
<row>
<label value="${i18n:_('First name')}" />
<textbox id="firstName"
value="@{controller.user.firstName}" width="300px"
disabled="@{controller.user.bound}" />
</row>
<row>
<label value="${i18n:_('Last name')}" />
<textbox id="lastName"
value="@{controller.user.lastName}" width="300px"
disabled="@{controller.user.bound}" />
</row>
<row>
<label value="${i18n:_('Password')}" />
<textbox id="password" type="password"
onChange="controller.setPassword(self.value);" width="300px" disabled="@{controller.ldapUserLdapConfiguration}"/>
</row>
<row>
<label value="${i18n:_('Password confirmation')}" />
<textbox id="passwordConfirmation" type="password"
constraint="@{controller.validatePasswordConfirmation}"
width="300px" disabled="@{controller.ldapUserLdapConfiguration}"/>
</row>
<row>
<label value="${i18n:_('Disabled')}" />
<checkbox id="disabled"
checked="@{controller.user.disabled}" width="300px"
disabled="@{controller.ldapUserOrDefaultAdmin}" />
</row>
<row>
<label value="${i18n:_('E-mail')}" />
<textbox id="email"
value="@{controller.user.email}" width="300px"/>
</row>
<row id="authenticationTypeComboRow">
<label value="${i18n:_('Authentication type')}" />
<combobox id="authenticationTypeCombo" autodrop="true"
onChange="controller.setAuthenticationType(self.selectedItem)" />
</row>
</rows>
</grid>
</groupbox>
<groupbox closable="false" id="boundResourceGroupbox">
<caption label="${i18n:_('Bound resource')}" />
<grid fixedLayout="false" span="true">
<columns>
<column width="200px" />
<column />
</columns>
<rows>
<row>
<label value="${i18n:_('Has bound resource')}" />
<label value="@{controller.hasBoundResource}" />
</row>
<row visible="@{controller.bound}">
<label value="${i18n:_('Bound resource')}" />
<label value="@{controller.boundResource}" />
</row>
</rows>
</grid>
<button label="${i18n:_('Go to worker edition window')}"
onClick="controller.goToWorkerEdition();"
visible="@{controller.bound}"
disabled="@{controller.noRoleWorkers}"
tooltiptext="@{controller.workerEditionButtonTooltip}" />
<button label="${i18n:_('Unbound resource')}"
onClick="controller.unboundResource();"
visible="@{controller.bound}" />
</groupbox>
<!-- Associated UserRoles -->
<groupbox closable="false">
<caption label="${i18n:_('Association with roles')}" />
<vbox>
<label value="${i18n:_('Roles of LDAP users cannot be managed because LDAP is enabled and LDAP roles are being used.')}" visible="@{controller.areRolesAndProfilesDisabled}" />
</vbox>
<hbox align="center">
<combobox id="userRolesCombo" autodrop="true" />
<button label="${i18n:_('Add role')}"
onClick="controller.addSelectedRole()"
disabled="@{controller.areRolesAndProfilesDisabled}" />
</hbox>
<grid id="listing" model="@{controller.roles}"
rowRenderer="@{controller.rolesRenderer}">
<columns sizable="true">
<column label="${i18n:_('Role name')}" />
<column label="${i18n:_('Actions')}" />
</columns>
</grid>
</groupbox>
<!-- Associated Profiles -->
<groupbox closable="false">
<caption label="${i18n:_('Association with profiles')}" />
<vbox>
<label value="${i18n:_('Profiles of LDAP users cannot be managed because LDAP is enabled and LDAP roles are being used.')}" visible="@{controller.areRolesAndProfilesDisabled}" />
</vbox>
<hbox align="center">
<combobox id="profilesCombo" autodrop="true" />
<button label="${i18n:_('Add profile')}"
onClick="controller.addSelectedProfile()"
disabled="@{controller.areRolesAndProfilesDisabled}" />
</hbox>
<grid id="profilesListing" model="@{controller.profiles}">
<columns sizable="true">
<column label="${i18n:_('Profile name')}" />
<column label="${i18n:_('Actions')}" />
</columns>
<rows>
<row self="@{each='profile'}" value="@{profile}">
<label value="@{profile.profileName}" />
<hbox>
<button sclass="icono" image="/common/img/ico_borrar1.png"
hoverImage="/common/img/ico_borrar.png"
tooltiptext="${i18n:_('Delete')}"
onClick="controller.removeProfile(self.parent.parent.value);"
disabled="@{controller.areRolesAndProfilesDisabled}" >
</button>
</hbox>
</row>
</rows>
</grid>
</groupbox>
</vbox>
</tabpanel>
</tabpanels>
</tabbox>
<button onClick="controller.saveAndExit();" autodisable="self"
label="${i18n:_('Save')}" sclass="save-button global-action" />
<button onClick="controller.saveAndContinue();"
label="${i18n:_('Save &amp; Continue')}" sclass="saveandcontinue-button global-action" />
<button onClick="controller.cancelForm();"
label="${i18n:_('Cancel')}" sclass="cancel-button global-action" />
</window>