##// END OF EJS Templates
caches: use repo.lru based Dict cache. This LRUDict uses Timing Algo to not have to use locking...
caches: use repo.lru based Dict cache. This LRUDict uses Timing Algo to not have to use locking for the LRU implementation, this it's safer to use for dogpile. We used it before with beaker, so it's generally more stable.

File last commit:

r2816:b1852ba4 default
r2945:ec5716e4 default
Show More
_dt_elements.mako
425 lines | 13.7 KiB | application/x-mako | MakoHtmlLexer
templating: use .mako as extensions for template files.
r1282 ## DATA TABLE RE USABLE ELEMENTS
## usage:
## <%namespace name="dt" file="/data_table/_dt_elements.mako"/>
<%namespace name="base" file="/base/base.mako"/>
meta-tags: cleanup support for metatags....
r2091 <%def name="metatags_help()">
<table>
<%
example_tags = [
('state','[stable]'),
('state','[stale]'),
('state','[featured]'),
('state','[dev]'),
('state','[dead]'),
metatags: improve display syntax and add deprecated tag.
r2093 ('state','[deprecated]'),
meta-tags: cleanup support for metatags....
r2091
('label','[personal]'),
('generic','[v2.0.0]'),
('lang','[lang =&gt; JavaScript]'),
('license','[license =&gt; LicenseName]'),
('ref','[requires =&gt; RepoName]'),
('ref','[recommends =&gt; GroupName]'),
('ref','[conflicts =&gt; SomeName]'),
('ref','[base =&gt; SomeName]'),
('url','[url =&gt; [linkName](https://rhodecode.com)]'),
('see','[see =&gt; http://rhodecode.com]'),
]
%>
% for tag_type, tag in example_tags:
<tr>
<td>${tag|n}</td>
<td>${h.style_metatag(tag_type, tag)|n}</td>
</tr>
% endfor
</table>
</%def>
templating: use .mako as extensions for template files.
r1282 ## REPOSITORY RENDERERS
<%def name="quick_menu(repo_name)">
ui: fix double icons on quick-menu.
r1952 <i class="icon-more"></i>
templating: use .mako as extensions for template files.
r1282 <div class="menu_items_container hidden">
<ul class="menu_items">
<li>
repo-summary: re-implemented summary view as pyramid....
r1785 <a title="${_('Summary')}" href="${h.route_path('repo_summary',repo_name=repo_name)}">
templating: use .mako as extensions for template files.
r1282 <span>${_('Summary')}</span>
</a>
</li>
<li>
changelog: ported to pyramid views.
r1931 <a title="${_('Changelog')}" href="${h.route_path('repo_changelog',repo_name=repo_name)}">
templating: use .mako as extensions for template files.
r1282 <span>${_('Changelog')}</span>
</a>
</li>
<li>
files: ported repository files controllers to pyramid views.
r1927 <a title="${_('Files')}" href="${h.route_path('repo_files:default_commit',repo_name=repo_name)}">
templating: use .mako as extensions for template files.
r1282 <span>${_('Files')}</span>
</a>
</li>
<li>
forks: moved pylons code into pyramid.
r1988 <a title="${_('Fork')}" href="${h.route_path('repo_fork_new',repo_name=repo_name)}">
templating: use .mako as extensions for template files.
r1282 <span>${_('Fork')}</span>
</a>
</li>
</ul>
</div>
</%def>
<%def name="repo_name(name,rtype,rstate,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 class="${'repo_state_pending' if rstate == 'repo_state_pending' else ''} truncate">
##NAME
repo-summary: re-implemented summary view as pyramid....
r1785 <a href="${h.route_path('edit_repo',repo_name=name) if admin else h.route_path('repo_summary',repo_name=name)}">
templating: use .mako as extensions for template files.
r1282
##TYPE OF REPO
%if h.is_hg(rtype):
icons: try to use consistent size of icons for dashboard.
r2092 <span title="${_('Mercurial repository')}"><i class="icon-hg" style="font-size: 14px;"></i></span>
templating: use .mako as extensions for template files.
r1282 %elif h.is_git(rtype):
icons: try to use consistent size of icons for dashboard.
r2092 <span title="${_('Git repository')}"><i class="icon-git" style="font-size: 14px"></i></span>
templating: use .mako as extensions for template files.
r1282 %elif h.is_svn(rtype):
icons: try to use consistent size of icons for dashboard.
r2092 <span title="${_('Subversion repository')}"><i class="icon-svn" style="font-size: 14px"></i></span>
templating: use .mako as extensions for template files.
r1282 %endif
##PRIVATE/PUBLIC
%if private and c.visual.show_private_icon:
<i class="icon-lock" title="${_('Private repository')}"></i>
%elif not private and c.visual.show_public_icon:
<i class="icon-unlock-alt" title="${_('Public repository')}"></i>
%else:
<span></span>
%endif
${get_name(name)}
</a>
%if fork_of:
repo-summary: re-implemented summary view as pyramid....
r1785 <a href="${h.route_path('repo_summary',repo_name=fork_of.repo_name)}"><i class="icon-code-fork"></i></a>
templating: use .mako as extensions for template files.
r1282 %endif
%if rstate == 'repo_state_pending':
repositories: ported repo_creating checks to pyramid....
r1985 <span class="creation_in_progress tooltip" title="${_('This repository is being created in a background task')}">
(${_('creating...')})
</span>
templating: use .mako as extensions for template files.
r1282 %endif
</div>
</%def>
meta-tags: cleanup support for metatags....
r2091 <%def name="repo_desc(description, stylify_metatags)">
<%
tags, description = h.extract_metatags(description)
%>
<div class="truncate-wrap">
% if stylify_metatags:
% for tag_type, tag in tags:
${h.style_metatag(tag_type, tag)|n}
% endfor
% endif
${description}
</div>
templating: use .mako as extensions for template files.
r1282 </%def>
<%def name="last_change(last_change)">
age: use local flag to fix the problem of wrongly reported last update times on repository groups....
r2490 ${h.age_component(last_change, time_is_local=True)}
templating: use .mako as extensions for template files.
r1282 </%def>
dashboard: show date of commit inside the tooltip.
r2489 <%def name="revision(name,rev,tip,author,last_msg, commit_date)">
templating: use .mako as extensions for template files.
r1282 <div>
%if rev >= 0:
dashboard: show date of commit inside the tooltip.
r2489 <code><a title="${h.tooltip('%s\n%s\n\n%s' % (author, commit_date, last_msg))}" class="tooltip" href="${h.route_path('repo_commit',repo_name=name,commit_id=tip)}">${'r%s:%s' % (rev,h.short_id(tip))}</a></code>
templating: use .mako as extensions for template files.
r1282 %else:
${_('No commits yet')}
%endif
</div>
</%def>
<%def name="rss(name)">
%if c.rhodecode_user.username != h.DEFAULT_USER:
dan
repo-feed: moved from pylons controller to pyramid views.
r1899 <a title="${h.tooltip(_('Subscribe to %s rss feed')% name)}" href="${h.route_path('rss_feed_home', repo_name=name, _query=dict(auth_token=c.rhodecode_user.feed_token))}"><i class="icon-rss-sign"></i></a>
templating: use .mako as extensions for template files.
r1282 %else:
dan
repo-feed: moved from pylons controller to pyramid views.
r1899 <a title="${h.tooltip(_('Subscribe to %s rss feed')% name)}" href="${h.route_path('rss_feed_home', repo_name=name)}"><i class="icon-rss-sign"></i></a>
templating: use .mako as extensions for template files.
r1282 %endif
</%def>
<%def name="atom(name)">
%if c.rhodecode_user.username != h.DEFAULT_USER:
dan
repo-feed: moved from pylons controller to pyramid views.
r1899 <a title="${h.tooltip(_('Subscribe to %s atom feed')% name)}" href="${h.route_path('atom_feed_home', repo_name=name, _query=dict(auth_token=c.rhodecode_user.feed_token))}"><i class="icon-rss-sign"></i></a>
templating: use .mako as extensions for template files.
r1282 %else:
dan
repo-feed: moved from pylons controller to pyramid views.
r1899 <a title="${h.tooltip(_('Subscribe to %s atom feed')% name)}" href="${h.route_path('atom_feed_home', repo_name=name)}"><i class="icon-rss-sign"></i></a>
templating: use .mako as extensions for template files.
r1282 %endif
</%def>
<%def name="user_gravatar(email, size=16)">
dan
tooltip: use consistent h.tooltip usage to set tooltips.
r1843 <div class="rc-user tooltip" title="${h.tooltip(h.author_string(email))}">
templating: use .mako as extensions for template files.
r1282 ${base.gravatar(email, 16)}
</div>
</%def>
<%def name="repo_actions(repo_name, super_user=True)">
<div>
<div class="grid_edit">
repo-settings: converted repo settings to pyramid...
r1716 <a href="${h.route_path('edit_repo',repo_name=repo_name)}" title="${_('Edit')}">
templating: use .mako as extensions for template files.
r1282 <i class="icon-pencil"></i>Edit</a>
</div>
<div class="grid_delete">
forms: unified usage of h.secure_form. Make sure we ALWAYS pass in...
r2105 ${h.secure_form(h.route_path('edit_repo_advanced_delete', repo_name=repo_name), request=request)}
templating: use .mako as extensions for template files.
r1282 ${h.submit('remove_%s' % repo_name,_('Delete'),class_="btn btn-link btn-danger",
onclick="return confirm('"+_('Confirm to delete this repository: %s') % repo_name+"');")}
${h.end_form()}
</div>
</div>
</%def>
<%def name="repo_state(repo_state)">
<div>
%if repo_state == 'repo_state_pending':
<div class="tag tag4">${_('Creating')}</div>
%elif repo_state == 'repo_state_created':
<div class="tag tag1">${_('Created')}</div>
%else:
dan
tooltip: use consistent h.tooltip usage to set tooltips.
r1843 <div class="tag alert2" title="${h.tooltip(repo_state)}">invalid</div>
templating: use .mako as extensions for template files.
r1282 %endif
</div>
</%def>
## REPO GROUP RENDERERS
<%def name="quick_repo_group_menu(repo_group_name)">
ui: fix double icons on quick-menu.
r1952 <i class="icon-more"></i>
templating: use .mako as extensions for template files.
r1282 <div class="menu_items_container hidden">
<ul class="menu_items">
<li>
repo-groups-grid: remove left over icon.
r2012 <a href="${h.route_path('repo_group_home', repo_group_name=repo_group_name)}">${_('Summary')}</a>
templating: use .mako as extensions for template files.
r1282 </li>
</ul>
</div>
</%def>
<%def name="repo_group_name(repo_group_name, children_groups=None)">
<div>
home: moved home and repo group views into pyramid....
r1774 <a href="${h.route_path('repo_group_home', repo_group_name=repo_group_name)}">
icons: try to use consistent size of icons for dashboard.
r2092 <i class="icon-folder-close" title="${_('Repository group')}" style="font-size: 16px"></i>
templating: use .mako as extensions for template files.
r1282 %if children_groups:
${h.literal(' &raquo; '.join(children_groups))}
%else:
${repo_group_name}
%endif
</a>
</div>
</%def>
meta-tags: cleanup support for metatags....
r2091 <%def name="repo_group_desc(description, personal, stylify_metatags)">
<%
tags, description = h.extract_metatags(description)
%>
<div class="truncate-wrap">
% if personal:
<div class="metatag" tag="personal">${_('personal')}</div>
% endif
% if stylify_metatags:
% for tag_type, tag in tags:
${h.style_metatag(tag_type, tag)|n}
% endfor
% endif
${description}
</div>
templating: use .mako as extensions for template files.
r1282 </%def>
<%def name="repo_group_actions(repo_group_id, repo_group_name, gr_count)">
<div class="grid_edit">
repo-groups: moved to pyramid
r2175 <a href="${h.route_path('edit_repo_group',repo_group_name=repo_group_name)}" title="${_('Edit')}">Edit</a>
templating: use .mako as extensions for template files.
r1282 </div>
<div class="grid_delete">
repo-groups: moved to pyramid
r2175 ${h.secure_form(h.route_path('edit_repo_group_advanced_delete', repo_group_name=repo_group_name), request=request)}
templating: use .mako as extensions for template files.
r1282 ${h.submit('remove_%s' % repo_group_name,_('Delete'),class_="btn btn-link btn-danger",
translation: unified usage of pluralize function ungettext....
r1945 onclick="return confirm('"+_ungettext('Confirm to delete this group: %s with %s repository','Confirm to delete this group: %s with %s repositories',gr_count) % (repo_group_name, gr_count)+"');")}
templating: use .mako as extensions for template files.
r1282 ${h.end_form()}
</div>
</%def>
<%def name="user_actions(user_id, username)">
<div class="grid_edit">
users: ported controllers from pylons into pyramid views.
r2114 <a href="${h.route_path('user_edit',user_id=user_id)}" title="${_('Edit')}">
<i class="icon-pencil"></i>${_('Edit')}</a>
templating: use .mako as extensions for template files.
r1282 </div>
<div class="grid_delete">
users: ported controllers from pylons into pyramid views.
r2114 ${h.secure_form(h.route_path('user_delete', user_id=user_id), request=request)}
templating: use .mako as extensions for template files.
r1282 ${h.submit('remove_',_('Delete'),id="remove_user_%s" % user_id, class_="btn btn-link btn-danger",
onclick="return confirm('"+_('Confirm to delete this user: %s') % username+"');")}
${h.end_form()}
</div>
</%def>
<%def name="user_group_actions(user_group_id, user_group_name)">
<div class="grid_edit">
user-groups: rewrote the app to pyramid...
r2068 <a href="${h.route_path('edit_user_group', user_group_id=user_group_id)}" title="${_('Edit')}">Edit</a>
templating: use .mako as extensions for template files.
r1282 </div>
<div class="grid_delete">
forms: unified usage of h.secure_form. Make sure we ALWAYS pass in...
r2105 ${h.secure_form(h.route_path('user_groups_delete', user_group_id=user_group_id), request=request)}
templating: use .mako as extensions for template files.
r1282 ${h.submit('remove_',_('Delete'),id="remove_group_%s" % user_group_id, class_="btn btn-link btn-danger",
onclick="return confirm('"+_('Confirm to delete this user group: %s') % user_group_name+"');")}
${h.end_form()}
</div>
</%def>
<%def name="user_name(user_id, username)">
users: ported controllers from pylons into pyramid views.
r2114 ${h.link_to(h.person(username, 'username_or_name_or_email'), h.route_path('user_edit', user_id=user_id))}
templating: use .mako as extensions for template files.
r1282 </%def>
<%def name="user_profile(username)">
${base.gravatar_with_user(username, 16)}
</%def>
user-groups: on admin view redirect links to public profile. We have an explicit...
r2639 <%def name="user_group_name(user_group_name)">
templating: use .mako as extensions for template files.
r1282 <div>
user-groups: on admin view redirect links to public profile. We have an explicit...
r2639 <i class="icon-group" title="${_('User group')}"></i>
${h.link_to_group(user_group_name)}
templating: use .mako as extensions for template files.
r1282 </div>
</%def>
## GISTS
<%def name="gist_gravatar(full_contact)">
<div class="gist_gravatar">
${base.gravatar(full_contact, 30)}
</div>
</%def>
<%def name="gist_access_id(gist_access_id, full_contact)">
<div>
<b>
dan
gists: migrated gists controller to pyramid view.
r1891 <a href="${h.route_path('gist_show', gist_id=gist_access_id)}">gist: ${gist_access_id}</a>
templating: use .mako as extensions for template files.
r1282 </b>
</div>
</%def>
<%def name="gist_author(full_contact, created_on, expires)">
${base.gravatar_with_user(full_contact, 16)}
</%def>
<%def name="gist_created(created_on)">
<div class="created">
${h.age_component(created_on, time_is_local=True)}
</div>
</%def>
<%def name="gist_expires(expires)">
<div class="created">
%if expires == -1:
${_('never')}
%else:
${h.age_component(h.time_to_utcdatetime(expires))}
%endif
</div>
</%def>
<%def name="gist_type(gist_type)">
%if gist_type != 'public':
<div class="tag">${_('Private')}</div>
%endif
</%def>
<%def name="gist_description(gist_description)">
${gist_description}
</%def>
## PULL REQUESTS GRID RENDERERS
<%def name="pullrequest_target_repo(repo_name)">
<div class="truncate">
repo-summary: re-implemented summary view as pyramid....
r1785 ${h.link_to(repo_name,h.route_path('repo_summary',repo_name=repo_name))}
templating: use .mako as extensions for template files.
r1282 </div>
</%def>
<%def name="pullrequest_status(status)">
<div class="${'flag_status %s' % status} pull-left"></div>
</%def>
<%def name="pullrequest_title(title, description)">
pull-requests: allow markup rendered description.
r2816 ${title}
templating: use .mako as extensions for template files.
r1282 </%def>
<%def name="pullrequest_comments(comments_nr)">
<i class="icon-comment"></i> ${comments_nr}
</%def>
<%def name="pullrequest_name(pull_request_id, target_repo_name, short=False)">
pull-requests: prepare the migration of pull request to pyramid....
r1813 <a href="${h.route_path('pullrequest_show',repo_name=target_repo_name,pull_request_id=pull_request_id)}">
templating: use .mako as extensions for template files.
r1282 % if short:
#${pull_request_id}
% else:
${_('Pull request #%(pr_number)s') % {'pr_number': pull_request_id,}}
% endif
</a>
</%def>
<%def name="pullrequest_updated_on(updated_on)">
${h.age_component(h.time_to_utcdatetime(updated_on))}
</%def>
<%def name="pullrequest_author(full_contact)">
${base.gravatar_with_user(full_contact, 16)}
</%def>
pull-requests: allow markup rendered description.
r2816
<%def name="markup_form(form_id, form_text='', help_text=None)">
<div class="markup-form">
<div class="markup-form-area">
<div class="markup-form-area-header">
<ul class="nav-links clearfix">
<li class="active">
<a href="#edit-text" tabindex="-1" id="edit-btn_${form_id}">${_('Write')}</a>
</li>
<li class="">
<a href="#preview-text" tabindex="-1" id="preview-btn_${form_id}">${_('Preview')}</a>
</li>
</ul>
</div>
<div class="markup-form-area-write" style="display: block;">
<div id="edit-container_${form_id}">
<textarea id="${form_id}" name="${form_id}" class="comment-block-ta ac-input">${form_text if form_text else ''}</textarea>
</div>
<div id="preview-container_${form_id}" class="clearfix" style="display: none;">
<div id="preview-box_${form_id}" class="preview-box"></div>
</div>
</div>
<div class="markup-form-area-footer">
<div class="toolbar">
<div class="toolbar-text">
${(_('Parsed using %s syntax') % (
('<a href="%s">%s</a>' % (h.route_url('%s_help' % c.visual.default_renderer), c.visual.default_renderer.upper())),
)
)|n}
</div>
</div>
</div>
</div>
<div class="markup-form-footer">
% if help_text:
<span class="help-block">${help_text}</span>
% endif
</div>
</div>
<script type="text/javascript">
new MarkupForm('${form_id}');
</script>
</%def>