##// END OF EJS Templates
authentication: register global shared session key used for external authentication session data storeage....
authentication: register global shared session key used for external authentication session data storeage. - We'll have more plugins not only oauth so this should be a constant name, instead of repating the same name all over the code.

File last commit:

r3233:4c12f36b default
r3247:3c175ca2 default
Show More
auth_settings.mako
124 lines | 3.9 KiB | application/x-mako | MakoHtmlLexer
## -*- coding: utf-8 -*-
<%inherit file="/base/base.mako"/>
<%def name="title()">
${_('Authentication Settings')}
%if c.rhodecode_name:
&middot; ${h.branding(c.rhodecode_name)}}
%endif
</%def>
<%def name="breadcrumbs_links()">
${h.link_to(_('Admin'),h.route_path('admin_home'))}
&raquo;
${_('Authentication Plugins')}
</%def>
<%def name="menu_bar_nav()">
${self.menu_items(active='admin')}
</%def>
<%def name="main()">
<div class="box">
<div class="title">
${self.breadcrumbs()}
</div>
<div class='sidebar-col-wrapper'>
<div class="sidebar">
<ul class="nav nav-pills nav-stacked">
% for item in resource.get_root().get_nav_list(sort=False):
<li ${'class=active' if item == resource else ''}>
<a href="${request.resource_path(item, route_name='auth_home')}">${item.display_name}</a>
</li>
% endfor
</ul>
</div>
<div class="main-content-full-width">
${h.secure_form(request.resource_path(resource, route_name='auth_home'), request=request)}
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">${_("Enabled and Available Plugins")}</h3>
</div>
<div class="panel-body">
<div class="label">${_("Ordered Enabled Plugins")}</div>
<div class="textarea text-area editor">
${h.textarea('auth_plugins',cols=120,rows=20,class_="medium")}
</div>
<div class="field">
<p class="help-block pre-formatting">${_('List of plugins, separated by commas.'
'\nThe order of the plugins is also the order in which '
'RhodeCode Enterprise will try to authenticate a user.')}
</p>
</div>
<table class="rctable">
<th>${_('Activate')}</th>
<th>${_('Plugin Name')}</th>
<th>${_('Documentation')}</th>
<th>${_('Plugin ID')}</th>
%for plugin in available_plugins:
<tr>
<td>
<span plugin_id="${plugin.get_id()}" class="toggle-plugin btn ${'btn-success' if plugin.get_id() in enabled_plugins else ''}">
${_('enabled') if plugin.get_id() in enabled_plugins else _('disabled')}
</span>
</td>
<td>${plugin.get_display_name()}</td>
<td>
% if plugin.docs():
<a href="${plugin.docs()}">docs</a>
% endif
</td>
<td>${plugin.get_id()}</td>
</tr>
%endfor
</table>
<div class="buttons">
${h.submit('save',_('Save'),class_="btn")}
</div>
</div>
</div>
${h.end_form()}
</div>
</div>
</div>
<script>
$('.toggle-plugin').click(function(e){
var auth_plugins_input = $('#auth_plugins');
var elems = [];
$.each(auth_plugins_input.val().split(',') , function (index, element) {
if (element !== "") {
elems.push(element.strip())
}
});
var cur_button = e.currentTarget;
var plugin_id = $(cur_button).attr('plugin_id');
if($(cur_button).hasClass('btn-success')){
elems.splice(elems.indexOf(plugin_id), 1);
auth_plugins_input.val(elems.join(',\n'));
$(cur_button).removeClass('btn-success');
cur_button.innerHTML = _gettext('disabled');
}
else{
if(elems.indexOf(plugin_id) == -1){
elems.push(plugin_id);
}
auth_plugins_input.val(elems.join(',\n'));
$(cur_button).addClass('btn-success');
cur_button.innerHTML = _gettext('enabled');
}
});
</script>
</%def>