Files
@ b232a36cc51f
Branch filter:
Location: kallithea/rhodecode/templates/admin/admin_log.html - annotation
b232a36cc51f
1.8 KiB
text/html
Improve LDAP authentication
* Adds an LDAP filter for locating the LDAP object
* Adds a search scope policy when using the Base DN
* Adds option required certificate policy when using LDAPS
* Adds attribute mapping for username, firstname, lastname, email
* Initializes rhodecode user using LDAP info (no longer uses "@ldap")
* Remembers the user object (DN) in the user table
* Updates admin interfaces
* Authenticates against actual user objects in LDAP
* Possibly other things.
Really, this should be extended to a list of LDAP configurations, but this is a good start.
* Adds an LDAP filter for locating the LDAP object
* Adds a search scope policy when using the Base DN
* Adds option required certificate policy when using LDAPS
* Adds attribute mapping for username, firstname, lastname, email
* Initializes rhodecode user using LDAP info (no longer uses "@ldap")
* Remembers the user object (DN) in the user table
* Updates admin interfaces
* Authenticates against actual user objects in LDAP
* Possibly other things.
Really, this should be extended to a list of LDAP configurations, but this is a good start.
1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 df61378032f3 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 df61378032f3 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 df61378032f3 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1af15d66838f 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 | ## -*- coding: utf-8 -*-
%if c.users_log:
<table>
<tr>
<th class="left">${_('Username')}</th>
<th class="left">${_('Action')}</th>
<th class="left">${_('Repository')}</th>
<th class="left">${_('Date')}</th>
<th class="left">${_('From IP')}</th>
</tr>
%for cnt,l in enumerate(c.users_log):
<tr class="parity${cnt%2}">
<td>${h.link_to(l.user.username,h.url('edit_user', id=l.user.user_id))}</td>
<td>${h.action_parser(l)}</td>
<td>
%if l.repository:
${h.link_to(l.repository.repo_name,h.url('summary_home',repo_name=l.repository.repo_name))}
%else:
${l.repository_name}
%endif
</td>
<td>${l.action_date}</td>
<td>${l.user_ip}</td>
</tr>
%endfor
</table>
<script type="text/javascript">
var data_div = 'user_log';
YUE.onDOMReady(function(){
YUE.on(YUD.getElementsByClassName('pager_link'),"click",function(){
YUD.setStyle(data_div,'opacity','0.3');});
YUE.on(YUD.getElementsByClassName('show_more'),'click',function(e){
var el = e.target;
YUD.setStyle(YUD.get(el.id.substring(1)),'display','');
YUD.setStyle(el.parentNode,'display','none');
});
});
</script>
<div class="pagination-wh pagination-left">
${c.users_log.pager('$link_previous ~2~ $link_next',
onclick="""YAHOO.util.Connect.asyncRequest('GET','$partial_url',{
success:function(o){
YUD.get(data_div).innerHTML=o.responseText;
YUE.on(YUD.getElementsByClassName('pager_link'),"click",function(){
YUD.setStyle(data_div,'opacity','0.3');
});
YUE.on(YUD.getElementsByClassName('show_more'),'click',function(e){
var el = e.target;
YUD.setStyle(YUD.get(el.id.substring(1)),'display','');
YUD.setStyle(el.parentNode,'display','none');
});
YUD.setStyle(data_div,'opacity','1');}
},null); return false;""")}
</div>
%else:
${_('No actions yet')}
%endif
|