##// 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:

r2937:d439d408 beta
r3043:b61824e6 beta
Show More
_dt_elements.html
128 lines | 4.9 KiB | text/html | HtmlLexer
## DATA TABLE RE USABLE ELEMENTS
## usage:
## <%namespace name="dt" file="/data_table/_dt_elements.html"/>
<%def name="repo_actions(repo_name)">
${h.form(h.url('repo', repo_name=repo_name),method='delete')}
${h.submit('remove_%s' % repo_name,_('delete'),class_="delete_icon action_button",onclick="return confirm('"+_('Confirm to delete this repository: %s') % repo_name+"');")}
${h.end_form()}
</%def>
<%def name="quick_menu(repo_name)">
<ul class="menu_items hidden">
<li style="border-top:1px solid #003367;margin-left:18px;padding-left:-99px"></li>
<li>
<a title="${_('Summary')}" href="${h.url('summary_home',repo_name=repo_name)}">
<span class="icon">
<img src="${h.url('/images/icons/clipboard_16.png')}" alt="${_('Summary')}" />
</span>
<span>${_('Summary')}</span>
</a>
</li>
<li>
<a title="${_('Changelog')}" href="${h.url('changelog_home',repo_name=repo_name)}">
<span class="icon">
<img src="${h.url('/images/icons/time.png')}" alt="${_('Changelog')}" />
</span>
<span>${_('Changelog')}</span>
</a>
</li>
<li>
<a title="${_('Files')}" href="${h.url('files_home',repo_name=repo_name)}">
<span class="icon">
<img src="${h.url('/images/icons/file.png')}" alt="${_('Files')}" />
</span>
<span>${_('Files')}</span>
</a>
</li>
<li>
<a title="${_('Fork')}" href="${h.url('repo_fork_home',repo_name=repo_name)}">
<span class="icon">
<img src="${h.url('/images/icons/arrow_divide.png')}" alt="${_('Fork')}" />
</span>
<span>${_('Fork')}</span>
</a>
</li>
</ul>
</%def>
<%def name="repo_name(name,rtype,private,fork_of,short_name=False, admin=False)">
<%
def get_name(name,short_name=short_name):
if short_name:
return name.split('/')[-1]
else:
return name
%>
<div style="white-space: nowrap">
##TYPE OF REPO
%if h.is_hg(rtype):
<img class="icon" title="${_('Mercurial repository')}" alt="${_('Mercurial repository')}" src="${h.url('/images/icons/hgicon.png')}"/>
%elif h.is_git(rtype):
<img class="icon" title="${_('Git repository')}" alt="${_('Git repository')}" src="${h.url('/images/icons/giticon.png')}"/>
%endif
##PRIVATE/PUBLIC
%if private and c.visual.show_private_icon:
<img class="icon" title="${_('private repository')}" alt="${_('private repository')}" src="${h.url('/images/icons/lock.png')}"/>
%elif not private and c.visual.show_public_icon:
<img class="icon" title="${_('public repository')}" alt="${_('public repository')}" src="${h.url('/images/icons/lock_open.png')}"/>
%endif
##NAME
%if admin:
${h.link_to(get_name(name),h.url('edit_repo',repo_name=name),class_="repo_name")}
%else:
${h.link_to(get_name(name),h.url('summary_home',repo_name=name),class_="repo_name")}
%endif
%if fork_of:
<a href="${h.url('summary_home',repo_name=fork_of.repo_name)}">
<img class="icon" alt="${_('fork')}" title="${_('Fork of')} ${fork_of.repo_name}" src="${h.url('/images/icons/arrow_divide.png')}"/></a>
%endif
</div>
</%def>
<%def name="last_change(last_change)">
<span class="tooltip" date="${last_change}" title="${h.tooltip(h.fmt_date(last_change))}">${h.age(last_change)}</span>
</%def>
<%def name="revision(name,rev,tip,author,last_msg)">
<div>
%if rev >= 0:
<pre><a title="${h.tooltip('%s:\n\n%s' % (author,last_msg))}" class="tooltip" href="${h.url('changeset_home',repo_name=name,revision=tip)}">${'r%s:%s' % (rev,h.short_id(tip))}</a></pre>
%else:
${_('No changesets yet')}
%endif
</div>
</%def>
<%def name="rss(name)">
%if c.rhodecode_user.username != 'default':
<a title="${_('Subscribe to %s rss feed')% name}" class="rss_icon" href="${h.url('rss_feed_home',repo_name=name,api_key=c.rhodecode_user.api_key)}"></a>
%else:
<a title="${_('Subscribe to %s rss feed')% name}" class="rss_icon" href="${h.url('rss_feed_home',repo_name=name)}"></a>
%endif
</%def>
<%def name="atom(name)">
%if c.rhodecode_user.username != 'default':
<a title="${_('Subscribe to %s atom feed')% name}" class="atom_icon" href="${h.url('atom_feed_home',repo_name=name,api_key=c.rhodecode_user.api_key)}"></a>
%else:
<a title="${_('Subscribe to %s atom feed')% name}" class="atom_icon" href="${h.url('atom_feed_home',repo_name=name)}"></a>
%endif
</%def>
<%def name="user_gravatar(email, size=24)">
<div class="gravatar"><img alt="gravatar" src="${h.gravatar_url(email, size)}"/> </div>
</%def>
<%def name="user_actions(user_id, username)">
${h.form(h.url('delete_user', id=user_id),method='delete')}
${h.submit('remove_',_('delete'),id="remove_user_%s" % user_id,
class_="delete_icon action_button",onclick="return confirm('"+_('Confirm to delete this user: %s') % username+"');")}
${h.end_form()}
</%def>
<%def name="user_name(user_id, username)">
${h.link_to(username,h.url('edit_user', id=user_id))}
</%def>