##// END OF EJS Templates
invalidation: don't create CacheInvalidation records on startup...
invalidation: don't create CacheInvalidation records on startup Creating the records early gave an advantage before lightweight was introduced. With lightweight it is no longer necessary. The records will be created on demand anyway and there is no reason to create and maintain them before they are used.

File last commit:

r3715:25dbbdae beta
r3774:60335b70 beta
Show More
repos_group_edit_perms.html
106 lines | 5.1 KiB | text/html | HtmlLexer
<table id="permissions_manage" class="noborder">
<tr>
<td>${_('none')}</td>
<td>${_('read')}</td>
<td>${_('write')}</td>
<td>${_('admin')}</td>
<td>${_('member')}</td>
<td></td>
</tr>
## USERS
%for r2p in c.repos_group.repo_group_to_perm:
##forbid revoking permission from yourself
<tr id="id${id(r2p.user.username)}">
%if c.rhodecode_user.user_id != r2p.user.user_id or c.rhodecode_user.is_admin:
<td>${h.radio('u_perm_%s' % r2p.user.username,'group.none')}</td>
<td>${h.radio('u_perm_%s' % r2p.user.username,'group.read')}</td>
<td>${h.radio('u_perm_%s' % r2p.user.username,'group.write')}</td>
<td>${h.radio('u_perm_%s' % r2p.user.username,'group.admin')}</td>
<td style="white-space: nowrap;">
<img class="perm-gravatar" src="${h.gravatar_url(r2p.user.email,14)}"/>${r2p.user.username if r2p.user.username != 'default' else _('default')}
</td>
<td>
%if r2p.user.username !='default':
<span class="delete_icon action_button" onclick="ajaxActionRevoke(${r2p.user.user_id}, 'user', '${'id%s'%id(r2p.user.username)}')">
${_('revoke')}
</span>
%endif
</td>
%else:
<td>${h.radio('u_perm_%s' % r2p.user.username,'group.none', disabled="disabled")}</td>
<td>${h.radio('u_perm_%s' % r2p.user.username,'group.read', disabled="disabled")}</td>
<td>${h.radio('u_perm_%s' % r2p.user.username,'group.write', disabled="disabled")}</td>
<td>${h.radio('u_perm_%s' % r2p.user.username,'group.admin', disabled="disabled")}</td>
<td style="white-space: nowrap;">
<img class="perm-gravatar" src="${h.gravatar_url(r2p.user.email,14)}"/>${r2p.user.username if r2p.user.username != 'default' else _('default')}
</td>
<td>
</td>
%endif
</tr>
%endfor
## USER GROUPS
%for g2p in c.repos_group.users_group_to_perm:
<tr id="id${id(g2p.users_group.users_group_name)}">
<td>${h.radio('g_perm_%s' % g2p.users_group.users_group_name,'group.none')}</td>
<td>${h.radio('g_perm_%s' % g2p.users_group.users_group_name,'group.read')}</td>
<td>${h.radio('g_perm_%s' % g2p.users_group.users_group_name,'group.write')}</td>
<td>${h.radio('g_perm_%s' % g2p.users_group.users_group_name,'group.admin')}</td>
<td style="white-space: nowrap;">
<img class="perm-gravatar" src="${h.url('/images/icons/group.png')}"/>${g2p.users_group.users_group_name}
</td>
<td>
<span class="delete_icon action_button" onclick="ajaxActionRevoke(${g2p.users_group.users_group_id}, 'user_group', '${'id%s'%id(g2p.users_group.users_group_name)}')">
${_('revoke')}
</span>
</td>
</tr>
%endfor
<%
_tmpl = h.literal("""' \
<td><input type="radio" value="group.none" name="perm_new_member_{0}" id="perm_new_member_{0}"></td> \
<td><input type="radio" value="group.read" name="perm_new_member_{0}" id="perm_new_member_{0}"></td> \
<td><input type="radio" value="group.write" name="perm_new_member_{0}" id="perm_new_member_{0}"></td> \
<td><input type="radio" value="group.admin" name="perm_new_member_{0}" id="perm_new_member_{0}"></td> \
<td class="ac"> \
<div class="perm_ac" id="perm_ac_{0}"> \
<input class="yui-ac-input" id="perm_new_member_name_{0}" name="perm_new_member_name_{0}" value="" type="text"> \
<input id="perm_new_member_type_{0}" name="perm_new_member_type_{0}" value="" type="hidden"> \
<div id="perm_container_{0}"></div> \
</div> \
</td> \
<td></td>'""")
%>
## ADD HERE DYNAMICALLY NEW INPUTS FROM THE '_tmpl'
<tr class="new_members last_new_member" id="add_perm_input"></tr>
<tr>
<td colspan="6">
<span id="add_perm" class="add_icon" style="cursor: pointer;">
${_('Add another member')}
</span>
</td>
</tr>
<tr>
<td colspan="6">
${h.checkbox('recursive',value="True", label=_('apply to children'))}
<span class="help-block">${_('Set or revoke permission to all children of that group, including non-private repositories and other groups')}</span>
</td>
</tr>
</table>
<script type="text/javascript">
function ajaxActionRevoke(obj_id, obj_type, field_id) {
url = "${h.url('delete_repo_group_perm_member', group_name=c.repos_group.group_name)}";
ajaxActionRevokePermission(url, obj_id, obj_type, field_id, {recursive:YUD.get('recursive').checked});
};
YUE.onDOMReady(function () {
if (!YUD.hasClass('perm_new_member_name', 'error')) {
YUD.setStyle('add_perm_input', 'display', 'none');
}
YAHOO.util.Event.addListener('add_perm', 'click', function () {
addPermAction(${_tmpl}, ${c.users_array|n}, ${c.users_groups_array|n});
});
});
</script>