Files @ fc63a1d93803
Branch filter:

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

Marcin Kuzminski
Switched order of actions when doing repo rescan.

doing invalidation after repository scan is not optimal.
In case of big repository we first create an instance then invalidate
cache that we don't actually need. Reversing this order prevents that
## -*- coding: utf-8 -*-
<%inherit file="/base/base.html"/>

<%def name="title()">
    ${_('Settings administration')} &middot; ${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>