Files
@ 87f0800abc7b
Branch filter:
Location: kallithea/rhodecode/templates/admin/settings/hooks.html - annotation
87f0800abc7b
2.9 KiB
text/html
#227 Initial version of repository groups permissions system
- implemented none/read/write/admin permissions for groups
- wrote more tests for permissions, and new permissions groups
- a lot of code garden, splitted logic into proper models
- permissions on groups doesn't propagate yet to repositories
- deprecated some methods on api for managing permissions on
repositories for users, and users groups
- implemented none/read/write/admin permissions for groups
- wrote more tests for permissions, and new permissions groups
- a lot of code garden, splitted logic into proper models
- permissions on groups doesn't propagate yet to repositories
- deprecated some methods on api for managing permissions on
repositories for users, and users groups
b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 f91d3f9b7230 b50348816a80 b50348816a80 f91d3f9b7230 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 f91d3f9b7230 b50348816a80 b50348816a80 b50348816a80 b50348816a80 f91d3f9b7230 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 f91d3f9b7230 b50348816a80 b50348816a80 b50348816a80 f91d3f9b7230 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 f91d3f9b7230 f91d3f9b7230 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 aaec08ad9daf f91d3f9b7230 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 b50348816a80 f91d3f9b7230 f91d3f9b7230 | ## -*- coding: utf-8 -*-
<%inherit file="/base/base.html"/>
<%def name="title()">
${_('Settings administration')} - ${c.rhodecode_name}
</%def>
<%def name="breadcrumbs_links()">
${h.link_to(_('Admin'),h.url('admin_home'))} » ${_('Settings')}
</%def>
<%def name="page_nav()">
${self.menu('admin')}
</%def>
<%def name="main()">
<div class="box">
<!-- box / title -->
<div class="title">
${self.breadcrumbs()}
</div>
<!-- end box / title -->
<h3>${_('Built in hooks - read only')}</h3>
<div class="form">
<div class="fields">
% for hook in c.hooks:
<div class="field">
<div class="label label">
<label for="${hook.ui_key}">${hook.ui_key}</label>
</div>
<div class="input" style="margin-left:280px">
${h.text(hook.ui_key,hook.ui_value,size=60,readonly="readonly")}
</div>
</div>
% endfor
</div>
</div>
<h3>${_('Custom hooks')}</h3>
${h.form(url('admin_setting', setting_id='hooks'),method='put')}
<div class="form">
<div class="fields">
% for hook in c.custom_hooks:
<div class="field" id="${'id%s' % hook.ui_id }">
<div class="label label">
<label for="${hook.ui_key}">${hook.ui_key}</label>
</div>
<div class="input" style="margin-left:280px">
${h.hidden('hook_ui_key',hook.ui_key)}
${h.hidden('hook_ui_value',hook.ui_value)}
${h.text('hook_ui_value_new',hook.ui_value,size=60)}
<span class="delete_icon action_button"
onclick="ajaxActionHook(${hook.ui_id},'${'id%s' % hook.ui_id }')">
${_('remove')}
</span>
</div>
</div>
% endfor
<div class="field">
<div class="input" style="margin-left:-180px;position: absolute;">
<div class="input">
${h.text('new_hook_ui_key',size=30)}
</div>
</div>
<div class="input" style="margin-left:280px">
${h.text('new_hook_ui_value',size=60)}
</div>
</div>
<div class="buttons" style="margin-left:280px">
${h.submit('save',_('Save'),class_="ui-button")}
</div>
</div>
</div>
${h.end_form()}
</div>
<script type="text/javascript">
function ajaxActionHook(hook_id,field_id) {
var sUrl = "${h.url('admin_setting', setting_id='hooks')}";
var callback = {
success: function (o) {
var elem = YUD.get(""+field_id);
elem.parentNode.removeChild(elem);
},
failure: function (o) {
alert("${_('Failed to remove hook')}");
},
};
var postData = '_method=delete&hook_id=' + hook_id;
var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback, postData);
};
</script>
</%def>
|