%PDF- %PDF-
Direktori : /proc/985914/root/data/old/home/stash/atlassian-stash/static/page/admin/users/ |
Current File : //proc/985914/root/data/old/home/stash/atlassian-stash/static/page/admin/users/useredit.soy |
{namespace stash.admin.users} /** * @param username * @param user * @param captchaChallenged * @param editableDetails * @param editableGroups * @param editablePermissions * @param editableDirectory * @param isDeletable * @param? highestGlobalPermission */ {template .edit} {webResourceManager_requireResourcesForContext('stash.page.admin.users.edit')} {call stash.layout.admin} {param activeTab: 'admin-general-users' /} {param content} {call .viewandedit data="all"} {param secondarySection} {call .userSecondarySection} {param user: $user /} {param editableGroups: $editableGroups /} {param webItems: getWebItems('stash.web.userdetails.secondary.tabs', [ 'user' : $user ]) /} {/call} {/param} {/call} {/param} {param pageBottomContent} <script>require('page/admin/userEdit').onReady({to_json($user)|noAutoescape}, {lb} groupsTableSelector: '#user-groups-table', passwordLinkSelector: '#update-password-user', renameUserLinkSelector: '#rename-user', clearCaptchaLinkSelector: '#clear-captcha', avatarFormSelector: '.aui-page-panel-content', // TODO: the page is inconsistent with the rest of Stash and has to be refactored deleteLinkSelector: '#delete-user' {rb}); </script> {/param} {/call} {/template} /** * @param username * @param user * @param captchaChallenged * @param editableDetails * @param editablePermissions * @param editableDirectory * @param isDeletable * @param secondarySection * @param? highestGlobalPermission */ {template .viewandedit} {if $user} <ol class="aui-nav aui-nav-breadcrumbs"> {call stash.widget.breadcrumbs.back} {param id: 'users-breadcrumb' /} {param href: nav_admin_users() /} {param text: getText('stash.web.users.back.link') /} {/call} </ol> {if $editableDetails or $captchaChallenged} {call aui.toolbar2.toolbar2} {param content} {call aui.toolbar2.item} {param item: 'primary' /} {param content} {call stash.buttons.buttons} {param content} {if $editableDetails} {call stash.buttons.button} {param buttonText: getText('stash.web.users.edit.button') /} {{param title: getText('stash.web.users.edit.title', $user.displayName) /}} {param id: 'edit-details' /} {/call} {call stash.buttons.button} {param buttonText: getText('stash.web.users.changeavatar.button') /} {{param title: getText('stash.web.users.changeavatar.title', $user.displayName) /}} {param extraClasses: 'avatar-picker-trigger' /} {/call} {call stash.buttons.button} {param buttonText: getText('stash.web.users.changepassword.button') /} {{param title: getText('stash.web.users.changepassword.title', $user.displayName) /}} {param id: 'update-password-user' /} {/call} {call stash.buttons.button} {param buttonText: getText('stash.web.users.renameuser.button') /} {{param title: getText('stash.web.users.renameuser.title', $user.displayName) /}} {param id: 'rename-user' /} {/call} {/if} {if $captchaChallenged} {call stash.buttons.button} {param buttonText: getText('stash.web.users.clearcaptcha.button') /} {param href: nav_admin_user_captcha($user.name) /} {{param title: getText('stash.web.users.clearcaptcha.title', $user.displayName) /}} {param id: 'clear-captcha' /} {/call} {/if} {/param} {/call} {if $isDeletable} {call stash.buttons.buttons} {param content} {call stash.buttons.button} {param buttonText: getText('stash.web.users.delete.button') /} {param href: nav_admin_user_delete($user.name) /} {{param title: getText('stash.web.users.delete.title', $user.displayName) /}} {param id: 'delete-user' /} {/call} {/param} {/call} {/if} {/param} {/call} {/param} {/call} {/if} <div class="notifications"> {if not $editableDirectory} {call widget.aui.message.info} {param content} {getText('stash.web.users.edit.read.only.warning')} {/param} {/call} {/if} </div> {call widget.aui.group.group} {param extraClasses: 'panel-details' /} {param content} {call widget.aui.group.item} {param content} {call stash.widget.avatar} {param person: $user /} {param size: 'xxxlarge' /} {/call} {foreach $webPanel in getWebPanels('stash.web.userdetails.avatar.caption', [ 'user' : $user ])} {$webPanel|noAutoescape} {/foreach} {/param} {/call} {call widget.aui.group.item} {param content} <div class="details"> {call .userDetailsForm data="all"/} </div> {/param} {/call} {/param} {/call} {$secondarySection|noAutoescape} {else} {call widget.aui.group.group} {param content} {call widget.aui.group.item} {param content} {call widget.aui.message.error} {param content} {{getText('stash.web.users.view.notfound', $username)}} {/param} {/call} {/param} {/call} {/param} {/call} {/if} {/template} /** * @param user * @param editableDetails * @param editablePermissions * @param? highestGlobalPermission */ {template .userDetailsForm} <form id="user-details" method="POST" action="{nav_rest_admin_users()}" class="aui{if $editableDetails} editable{/if}"> <div class="field-group"> <input type="text" readonly="readonly" id="fullname" name="fullname" value="{$user.displayName}" title="{$user.displayName}" data-rollback="{$user.displayName}"> </div> <div class="field-group"> <label for="name"></label> <input type="text" readonly="readonly" id="name" name="name" value="{$user.name}" data-rollback="{$user.name}"> </div> <div class="field-group"> <label for="email"></label> <input type="text" readonly="readonly" id="email" name="email" value="{$user.emailAddress ? $user.emailAddress : ''}" data-rollback="{$user.emailAddress ? $user.emailAddress : ''}"> </div> <div class="field-group user-permission"> {call stash.feature.permission.lozenge} {param permission: $highestGlobalPermission /} {/call} {if $editablePermissions} <a href="{nav_admin_global_perms()}" id="change-permissions">{getText('stash.web.users.change.permissions')}</a> {/if} </div> {if $editableDetails} {call widget.aui.form.buttons} {param content} {call stash.buttons.button} {param buttonText: getText('stash.web.button.save') /} {param isPrimary: true /} {param extraClasses: 'save' /} {/call} {call widget.aui.form.cancelButton} {param href: '' /} {/call} {/param} {/call} {/if} </form> {/template} /** * Adds at least the group list to the profile and user admin page. As the ability to transform itself into * a pluggable, dynamic AUI tab based on web items and web panels. Used by SSH currently * * @param user * @param editableGroups * @param webItems **/ {template .userSecondarySection} {call widget.aui.group.group} {param extraClasses: length($webItems) == 0 ? 'group-picker' : 'user-secondary-section' /} {param content} {call widget.aui.group.item} {param content} {if length($webItems) > 0} {call widget.aui.webItemTabs} {param webItems: $webItems /} {param tabItemsContent} {call widget.aui.tabMenuItem} {param text: getText('stash.web.users.group.membership') /} {param url: '#groups-tab' /} {param isActive: true /} {/call} {/param} {param tabPanesContent} {call widget.aui.tabPane} {param isActive: true /} {param id: 'groups-tab' /} {param extraClasses: 'group-picker' /} {param content} {call .groupsPaneContents} {param user: $user /} {param editableGroups: $editableGroups /} {/call} {/param} {/call} {foreach $webItem in $webItems} {call widget.aui.tabPane} {param id: substring($webItem.url, 1) /} // Convert #blah urls to blah ids {param content} {foreach $webPanel in getWebPanels($webItem.moduleKey, [ 'user' : $user ])} {$webPanel|noAutoescape} {/foreach} {/param} {/call} {/foreach} {/param} {/call} {else} {call .groupsPaneContents} {param user: $user /} {param editableGroups: $editableGroups /} {/call} {/if} {/param} {/call} {/param} {/call} {/template} /** * @param user * @param editableGroups **/ {template .groupsPaneContents} <header class="aui-page-header"> <div class="aui-page-header-inner"> <div class="aui-page-header-main"> <h2>{{getText('stash.web.users.group.membership')}}</h2> </div> </div> </header> {call stash.feature.user.userGroupsTable} {param id: 'user-groups-table' /} {param editable: $editableGroups /} {param user: $user /} {/call} {/template}