##// END OF EJS Templates
better detection of deleting groups with subgroups inside....
better detection of deleting groups with subgroups inside. Added less strict checks on delete group routing so we can delete zombie groups (those that are not in filesystem but in DB)

File last commit:

r3416:5706f6ab beta
r3458:0ad025ee beta
Show More
permissions.html
215 lines | 8.3 KiB | text/html | HtmlLexer
## -*- coding: utf-8 -*-
<%inherit file="/base/base.html"/>
<%def name="title()">
${_('Permissions administration')} - ${c.rhodecode_name}
</%def>
<%def name="breadcrumbs_links()">
${h.link_to(_('Admin'),h.url('admin_home'))}
&raquo;
${_('permissions')}
</%def>
<%def name="page_nav()">
${self.menu('admin')}
</%def>
<%def name="main()">
<div class="box box-left">
<!-- box / title -->
<div class="title">
${self.breadcrumbs()}
</div>
<h3>${_('Default permissions')}</h3>
${h.form(url('permission', id='default'),method='put')}
<div class="form">
<!-- fields -->
<div class="fields">
<div class="field">
<div class="label label-checkbox">
<label for="anonymous">${_('Anonymous access')}:</label>
</div>
<div class="checkboxes">
<div class="checkbox">
${h.checkbox('anonymous',True)}
</div>
</div>
</div>
<div class="field">
<div class="label">
<label for="default_repo_perm">${_('Repository')}:</label>
</div>
<div class="select">
${h.select('default_repo_perm','',c.repo_perms_choices)}
${h.checkbox('overwrite_default_repo','true')}
<label for="overwrite_default_repo">
<span class="tooltip"
title="${h.tooltip(_('All default permissions on each repository will be reset to choosen permission, note that all custom default permission on repositories will be lost'))}">
${_('overwrite existing settings')}</span> </label>
</div>
</div>
<div class="field">
<div class="label">
<label for="default_group_perm">${_('Repository group')}:</label>
</div>
<div class="select">
${h.select('default_group_perm','',c.group_perms_choices)}
${h.checkbox('overwrite_default_group','true')}
<label for="overwrite_default_group">
<span class="tooltip"
title="${h.tooltip(_('All default permissions on each repository group will be reset to choosen permission, note that all custom default permission on repository groups will be lost'))}">
${_('overwrite existing settings')}</span> </label>
</div>
</div>
<div class="field">
<div class="label">
<label for="default_register">${_('Registration')}:</label>
</div>
<div class="select">
${h.select('default_register','',c.register_choices)}
</div>
</div>
<div class="field">
<div class="label">
<label for="default_create">${_('Repository creation')}:</label>
</div>
<div class="select">
${h.select('default_create','',c.create_choices)}
</div>
</div>
<div class="field">
<div class="label">
<label for="default_fork">${_('Repository forking')}:</label>
</div>
<div class="select">
${h.select('default_fork','',c.fork_choices)}
</div>
</div>
<div class="buttons">
${h.submit('save',_('Save'),class_="ui-btn large")}
${h.reset('reset',_('Reset'),class_="ui-btn large")}
</div>
</div>
</div>
${h.end_form()}
</div>
<div style="min-height:780px" class="box box-right">
<!-- box / title -->
<div class="title">
<h5>${_('Default User Permissions')}</h5>
</div>
## permissions overview
<div id="perms" class="table">
%for section in sorted(c.perm_user.permissions.keys()):
<div class="perms_section_head">${section.replace("_"," ").capitalize()}</div>
%if not c.perm_user.permissions[section]:
<span class="empty_data">${_('Nothing here yet')}</span>
%else:
<div id='tbl_list_wrap_${section}' class="yui-skin-sam">
<table id="tbl_list_${section}">
<thead>
<tr>
<th class="left">${_('Name')}</th>
<th class="left">${_('Permission')}</th>
<th class="left">${_('Edit Permission')}</th>
</thead>
<tbody>
%for k in c.perm_user.permissions[section]:
<%
if section != 'global':
section_perm = c.perm_user.permissions[section].get(k)
_perm = section_perm.split('.')[-1]
else:
_perm = section_perm = None
%>
<tr>
<td>
%if section == 'repositories':
<a href="${h.url('summary_home',repo_name=k)}">${k}</a>
%elif section == 'repositories_groups':
<a href="${h.url('repos_group_home',group_name=k)}">${k}</a>
%else:
${h.get_permission_name(k)}
%endif
</td>
<td>
%if section == 'global':
${h.bool2icon(k.split('.')[-1] != 'none')}
%else:
<span class="perm_tag ${_perm}">${section_perm}</span>
%endif
</td>
<td>
%if section == 'repositories':
<a href="${h.url('edit_repo',repo_name=k,anchor='permissions_manage')}">${_('edit')}</a>
%elif section == 'repositories_groups':
<a href="${h.url('edit_repos_group',group_name=k,anchor='permissions_manage')}">${_('edit')}</a>
%else:
--
%endif
</td>
</tr>
%endfor
</tbody>
</table>
</div>
%endif
%endfor
</div>
</div>
<div class="box box-left" style="clear:left">
<!-- box / title -->
<div class="title">
<h5>${_('Allowed IP addresses')}</h5>
</div>
<div class="ips_wrap">
<table class="noborder">
%if c.user_ip_map:
%for ip in c.user_ip_map:
<tr>
<td><div class="ip">${ip.ip_addr}</div></td>
<td><div class="ip">${h.ip_range(ip.ip_addr)}</div></td>
<td>
${h.form(url('user_ips_delete', id=c.user.user_id),method='delete')}
${h.hidden('del_ip',ip.ip_id)}
${h.hidden('default_user', 'True')}
${h.submit('remove_',_('delete'),id="remove_ip_%s" % ip.ip_id,
class_="delete_icon action_button", onclick="return confirm('"+_('Confirm to delete this ip: %s') % ip.ip_addr+"');")}
${h.end_form()}
</td>
</tr>
%endfor
%else:
<tr><td><div class="ip">${_('All IP addresses are allowed')}</div></td></tr>
%endif
</table>
</div>
${h.form(url('user_ips', id=c.user.user_id),method='put')}
<div class="form">
<!-- fields -->
<div class="fields">
<div class="field">
<div class="label">
<label for="new_ip">${_('New ip address')}:</label>
</div>
<div class="input">
${h.hidden('default_user', 'True')}
${h.text('new_ip', class_='medium')}
</div>
</div>
<div class="buttons">
${h.submit('save',_('Add'),class_="ui-btn large")}
${h.reset('reset',_('Reset'),class_="ui-btn large")}
</div>
</div>
</div>
${h.end_form()}
</div>
</%def>