|
|
## snippet for displaying default permission box
|
|
|
## usage:
|
|
|
## <%namespace name="dpb" file="/base/default_perms_box.mako"/>
|
|
|
## ${dpb.default_perms_box(<url_to_form>)}
|
|
|
## ${dpb.default_perms_radios()}
|
|
|
<%namespace name="base" file="/base/base.mako"/>
|
|
|
|
|
|
<%def name="default_perms_radios(global_permissions_template = False, suffix='', **kwargs)">
|
|
|
<div class="main-content-full-width">
|
|
|
<div class="panel panel-default">
|
|
|
|
|
|
## displayed according to checkbox selection
|
|
|
<div class="panel-heading">
|
|
|
%if not global_permissions_template:
|
|
|
<h3 class="inherit_overlay_default panel-title">
|
|
|
% if hasattr(c, 'user'):
|
|
|
${base.gravatar_with_user(c.user.username, 16, tooltip=False, _class='pull-left')} -
|
|
|
% endif
|
|
|
${_('Inherited Permissions')}
|
|
|
</h3>
|
|
|
<h3 class="inherit_overlay panel-title">
|
|
|
% if hasattr(c, 'user'):
|
|
|
${base.gravatar_with_user(c.user.username, 16, tooltip=False, _class='pull-left')} -
|
|
|
% endif
|
|
|
${_('Custom Permissions')}
|
|
|
</h3>
|
|
|
%else:
|
|
|
<h3 class="panel-title">
|
|
|
${_('Default Global Permissions')}
|
|
|
</h3>
|
|
|
%endif
|
|
|
</div>
|
|
|
|
|
|
<div class="panel-body">
|
|
|
%if global_permissions_template:
|
|
|
<p>${_('The following options configure the default permissions each user or group will inherit. You can override these permissions for each individual user or user group using individual permissions settings.')}</p>
|
|
|
%endif
|
|
|
<div class="field">
|
|
|
<div class="label">
|
|
|
<label for="default_repo_create${suffix}">${_('Repository Creation')}:</label>
|
|
|
</div>
|
|
|
<div class="radios">
|
|
|
${h.radio('default_repo_create' + suffix, c.repo_create_choices[1][0], label=c.repo_create_choices[1][1], **kwargs)}
|
|
|
${h.radio('default_repo_create' + suffix, c.repo_create_choices[0][0], label=c.repo_create_choices[0][1], **kwargs)}
|
|
|
<span class="help-block">${_('Permission to create root level repositories. When disabled, users can still create repositories inside their own repository groups.')}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="field">
|
|
|
<div class="label">
|
|
|
<label for="default_repo_create_on_write${suffix}">${_('Repository Creation With Group Write Access')}:</label>
|
|
|
</div>
|
|
|
<div class="radios">
|
|
|
${h.radio('default_repo_create_on_write' + suffix, c.repo_create_on_write_choices[1][0], label=c.repo_create_on_write_choices[1][1], **kwargs)}
|
|
|
${h.radio('default_repo_create_on_write' + suffix, c.repo_create_on_write_choices[0][0], label=c.repo_create_on_write_choices[0][1], **kwargs)}
|
|
|
<span class="help-block">${_('Write permission given on a repository group will allow creating repositories inside that group.')}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="field">
|
|
|
<div class="label">
|
|
|
<label for="default_fork_create${suffix}">${_('Repository Forking')}:</label>
|
|
|
</div>
|
|
|
<div class="radios">
|
|
|
${h.radio('default_fork_create' + suffix, c.fork_choices[1][0], label=c.fork_choices[1][1], **kwargs)}
|
|
|
${h.radio('default_fork_create' + suffix, c.fork_choices[0][0], label=c.fork_choices[0][1], **kwargs)}
|
|
|
<span class="help-block">${_('Permission to create repository forks. Root level forks will only work if repository creation is enabled.')}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="field">
|
|
|
<div class="label">
|
|
|
<label for="default_repo_group_create${suffix}">${_('Repository Group Creation')}:</label>
|
|
|
</div>
|
|
|
<div class="radios">
|
|
|
${h.radio('default_repo_group_create' + suffix, c.repo_group_create_choices[1][0], label=c.repo_group_create_choices[1][1], **kwargs)}
|
|
|
${h.radio('default_repo_group_create' + suffix, c.repo_group_create_choices[0][0], label=c.repo_group_create_choices[0][1], **kwargs)}
|
|
|
<span class="help-block">${_('Permission to create root level repository groups. When disabled, repository group admins can still create repository subgroups within their repository groups.')}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="field">
|
|
|
<div class="label">
|
|
|
<label for="default_user_group_create${suffix}">${_('User Group Creation')}:</label>
|
|
|
</div>
|
|
|
<div class="radios">
|
|
|
${h.radio('default_user_group_create' + suffix, c.user_group_create_choices[1][0], label=c.user_group_create_choices[1][1], **kwargs)}
|
|
|
${h.radio('default_user_group_create' + suffix, c.user_group_create_choices[0][0], label=c.user_group_create_choices[0][1], **kwargs)}
|
|
|
<span class="help-block">${_('Permission to allow user group creation.')}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<div class="field">
|
|
|
<div class="label">
|
|
|
<label for="default_inherit_default_permissions${suffix}">${_('Inherit Permissions From The Default User')}:</label>
|
|
|
</div>
|
|
|
<div class="radios">
|
|
|
${h.radio('default_inherit_default_permissions' + suffix, c.inherit_default_permission_choices[1][0], label=c.inherit_default_permission_choices[1][1], **kwargs)}
|
|
|
${h.radio('default_inherit_default_permissions' + suffix, c.inherit_default_permission_choices[0][0], label=c.inherit_default_permission_choices[0][1], **kwargs)}
|
|
|
<span class="help-block">${_('Inherit default permissions from the default user. Turn off this option to force explicit permissions for users, even if they are more restrictive than the default user permissions.')}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<div class="buttons">
|
|
|
${h.submit('save',_('Save'),class_="btn")}
|
|
|
${h.reset('reset',_('Reset'),class_="btn")}
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</%def>
|
|
|
|
|
|
<%def name="default_perms_box(form_url)">
|
|
|
${h.secure_form(form_url, request=request)}
|
|
|
<div class="form">
|
|
|
<div class="fields">
|
|
|
<div class="field panel panel-default panel-body">
|
|
|
<div class="label label-checkbox">
|
|
|
<label for="inherit_default_permissions">${_('Inherit from default settings')}:</label>
|
|
|
</div>
|
|
|
<div class="checkboxes">
|
|
|
${h.checkbox('inherit_default_permissions',value=True)}
|
|
|
<span class="help-block">
|
|
|
${h.literal(_('Select to inherit permissions from %s permissions settings, '
|
|
|
'including default IP address whitelist and inheritance of \npermission by members of user groups.')
|
|
|
% h.link_to('default user', h.route_path('admin_permissions_global')))}
|
|
|
</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
## INHERITED permissions == the user permissions in admin
|
|
|
## if inherit checkbox is set this is displayed in non-edit mode
|
|
|
<div class="inherit_overlay_default">
|
|
|
${default_perms_radios(global_permissions_template = False, suffix='_inherited', disabled="disabled")}
|
|
|
</div>
|
|
|
|
|
|
## CUSTOM permissions
|
|
|
<div class="inherit_overlay">
|
|
|
${default_perms_radios(global_permissions_template = False)}
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
${h.end_form()}
|
|
|
|
|
|
|
|
|
## JS
|
|
|
<script>
|
|
|
var show_custom_perms = function(inherit_default){
|
|
|
if(inherit_default) {
|
|
|
$('.inherit_overlay_default').show();
|
|
|
$('.inherit_overlay').hide();
|
|
|
}
|
|
|
else {
|
|
|
$('.inherit_overlay').show();
|
|
|
$('.inherit_overlay_default').hide();
|
|
|
}
|
|
|
};
|
|
|
$(document).ready(function(e){
|
|
|
var inherit_checkbox = $('#inherit_default_permissions');
|
|
|
var defaults = inherit_checkbox.prop('checked');
|
|
|
show_custom_perms(defaults);
|
|
|
inherit_checkbox.on('change', function(){
|
|
|
if($(this).prop('checked')){
|
|
|
show_custom_perms(true);
|
|
|
}
|
|
|
else{
|
|
|
show_custom_perms(false);
|
|
|
}
|
|
|
})
|
|
|
})
|
|
|
</script>
|
|
|
|
|
|
</%def>
|
|
|
|