view rhodecode/templates/admin/settings/hooks.html @ 1460:b50348816a80 beta

Added more advanced hook management into rhodecode admin settings
author Marcin Kuzminski <marcin@python-works.com>
date Fri, 09 Sep 2011 20:30:14 +0300
parents
children aaec08ad9daf
line wrap: on
line source

## -*- 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-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>