Files @ 0ad025ee005e
Branch filter:

Location: kallithea/rhodecode/templates/admin/settings/hooks.html

Marcin Kuzminski
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)
## -*- 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'))} &raquo; ${_('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-btn large")}
          </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>