##// END OF EJS Templates
Don't cache dulwich Repos, in pararell multithreaded evniroment dulwich pack file openers...
Don't cache dulwich Repos, in pararell multithreaded evniroment dulwich pack file openers can break badly. We need to create Repo() objects always for each call, even when it's taken from cache. Fixed issue with dulwich filedescriptor leak ref #573

File last commit:

r2979:95f03f8f beta
r3043:b61824e6 beta
Show More
admin_log.html
58 lines | 1.5 KiB | text/html | HtmlLexer
## -*- 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)[0]()}
<div class="journal_action_params">
${h.literal(h.action_parser(l)[1]())}
</div>
</td>
<td>
%if l.repository is not None:
${h.link_to(l.repository.repo_name,h.url('summary_home',repo_name=l.repository.repo_name))}
%else:
${l.repository_name}
%endif
</td>
<td>${h.fmt_date(l.action_date)}</td>
<td>${l.user_ip}</td>
</tr>
%endfor
</table>
<script type="text/javascript">
YUE.onDOMReady(function(){
YUE.delegate("user_log","click",function(e, matchedEl, container){
ypjax(e.target.href,"user_log",function(){
show_more_event();
tooltip_activate();
show_changeset_tooltip();
});
YUE.preventDefault(e);
},'.pager_link');
YUE.delegate("user_log","click",function(e,matchedEl,container){
var el = e.target;
YUD.setStyle(YUD.get(el.id.substring(1)),'display','');
YUD.setStyle(el.parentNode,'display','none');
},'.show_more');
});
</script>
<div class="pagination-wh pagination-left">
${c.users_log.pager('$link_previous ~2~ $link_next')}
</div>
%else:
${_('No actions yet')}
%endif