##// END OF EJS Templates
Group management delegation:...
Group management delegation: this allows users to become an admin of groups a group admin can manage a group, change it's name or permissions. A group admin can create child group only within a group he is an admin off. Top-level group can be only created by super admins

File last commit:

r3222:b4daef4c beta
r3222:b4daef4c beta
Show More
permissions.html
215 lines | 8.3 KiB | text/html | HtmlLexer
renamed project to rhodecode
r547 ## -*- coding: utf-8 -*-
<%inherit file="/base/base.html"/>
<%def name="title()">
#38 updated RhodeCode titles
r619 ${_('Permissions administration')} - ${c.rhodecode_name}
renamed project to rhodecode
r547 </%def>
<%def name="breadcrumbs_links()">
White-space cleanup
r1888 ${h.link_to(_('Admin'),h.url('admin_home'))}
renamed project to rhodecode
r547 &raquo;
White-space cleanup
r1888 ${_('Permissions')}
renamed project to rhodecode
r547 </%def>
<%def name="page_nav()">
Mads Kiilerich
html: don't use tabs
r3197 ${self.menu('admin')}
renamed project to rhodecode
r547 </%def>
<%def name="main()">
Added UserIpMap interface for allowed IP addresses and IP restriction access...
r3125 <div class="box box-left">
renamed project to rhodecode
r547 <!-- box / title -->
<div class="title">
White-space cleanup
r1888 ${self.breadcrumbs()}
renamed project to rhodecode
r547 </div>
<h3>${_('Default permissions')}</h3>
${h.form(url('permission', id='default'),method='put')}
<div class="form">
<!-- fields -->
<div class="fields">
#49 Enabled anonymous access for web interface controllable from permissions pannel
r673 <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>
White-space cleanup
r1888 </div>
Mads Kiilerich
html: don't use tabs
r3197 <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)}
White-space cleanup
r1888
Mads Kiilerich
html: don't use tabs
r3197 ${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)}
implemented #663 Admin/permission: specify default repogroup perms...
r3052 ${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 repositories group will be lost'))}">
${_('overwrite existing settings')}</span> </label>
whitespace and formatting
r3057
Mads Kiilerich
html: don't use tabs
r3197 </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>
renamed project to rhodecode
r547 <div class="field">
<div class="label">
<label for="default_create">${_('Repository creation')}:</label>
</div>
Mads Kiilerich
html: don't use tabs
r3197 <div class="select">
${h.select('default_create','',c.create_choices)}
</div>
White-space cleanup
r1888 </div>
RhodeCode now has a option to explicitly set forking permissions. ref #508...
r2709 <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>
Mads Kiilerich
html: don't use tabs
r3197 <div class="buttons">
Added UserIpMap interface for allowed IP addresses and IP restriction access...
r3125 ${h.submit('save',_('Save'),class_="ui-btn large")}
${h.reset('reset',_('Reset'),class_="ui-btn large")}
Mads Kiilerich
html: don't use tabs
r3197 </div>
renamed project to rhodecode
r547 </div>
White-space cleanup
r1888 </div>
renamed project to rhodecode
r547 ${h.end_form()}
</div>
Added UserIpMap interface for allowed IP addresses and IP restriction access...
r3125
<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':
Group management delegation:...
r3222 <a href="${h.url('edit_repos_group',group_name=k,anchor='permissions_manage')}">${_('edit')}</a>
Added UserIpMap interface for allowed IP addresses and IP restriction access...
r3125 %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>
White-space cleanup
r1888 </%def>