##// END OF EJS Templates
vcs: Only allow 'pull' actions on shadow repositories....
vcs: Only allow 'pull' actions on shadow repositories. We are exposing the shadow repositories of pull requests to allow easy CI integration or users to access the pull request shadow repo for investigating on it. But we don't want someone/something to push changes to a shadow repository.

File last commit:

r410:e0937131 default
r891:910a0be0 default
Show More
_dt_elements.html
299 lines | 9.5 KiB | text/html | HtmlLexer
## DATA TABLE RE USABLE ELEMENTS
## usage:
## <%namespace name="dt" file="/data_table/_dt_elements.html"/>
<%namespace name="base" file="/base/base.html"/>
## REPOSITORY RENDERERS
<%def name="quick_menu(repo_name)">
<i class="pointer icon-more"></i>
<div class="menu_items_container hidden">
<ul class="menu_items">
<li>
<a title="${_('Summary')}" href="${h.url('summary_home',repo_name=repo_name)}">
<span>${_('Summary')}</span>
</a>
</li>
<li>
<a title="${_('Changelog')}" href="${h.url('changelog_home',repo_name=repo_name)}">
<span>${_('Changelog')}</span>
</a>
</li>
<li>
<a title="${_('Files')}" href="${h.url('files_home',repo_name=repo_name)}">
<span>${_('Files')}</span>
</a>
</li>
<li>
<a title="${_('Fork')}" href="${h.url('repo_fork_home',repo_name=repo_name)}">
<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
<a href="${h.url('edit_repo' if admin else 'summary_home',repo_name=name)}">
##TYPE OF REPO
%if h.is_hg(rtype):
<span title="${_('Mercurial repository')}"><i class="icon-hg"></i></span>
%elif h.is_git(rtype):
<span title="${_('Git repository')}"><i class="icon-git"></i></span>
%elif h.is_svn(rtype):
<span title="${_('Subversion repository')}"><i class="icon-svn"></i></span>
%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:
<a href="${h.url('summary_home',repo_name=fork_of.repo_name)}"><i class="icon-code-fork"></i></a>
%endif
%if rstate == 'repo_state_pending':
<i class="icon-cogs" title="${_('Repository creating in progress...')}"></i>
%endif
</div>
</%def>
<%def name="last_change(last_change)">
${h.age_component(last_change)}
</%def>
<%def name="revision(name,rev,tip,author,last_msg)">
<div>
%if rev >= 0:
<code><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></code>
%else:
${_('No commits yet')}
%endif
</div>
</%def>
<%def name="rss(name)">
%if c.rhodecode_user.username != h.DEFAULT_USER:
<a title="${_('Subscribe to %s rss feed')% name}" href="${h.url('rss_feed_home',repo_name=name,auth_token=c.rhodecode_user.feed_token)}"><i class="icon-rss-sign"></i></a>
%else:
<a title="${_('Subscribe to %s rss feed')% name}" href="${h.url('rss_feed_home',repo_name=name)}"><i class="icon-rss-sign"></i></a>
%endif
</%def>
<%def name="atom(name)">
%if c.rhodecode_user.username != h.DEFAULT_USER:
<a title="${_('Subscribe to %s atom feed')% name}" href="${h.url('atom_feed_home',repo_name=name,auth_token=c.rhodecode_user.feed_token)}"><i class="icon-rss-sign"></i></a>
%else:
<a title="${_('Subscribe to %s atom feed')% name}" href="${h.url('atom_feed_home',repo_name=name)}"><i class="icon-rss-sign"></i></a>
%endif
</%def>
<%def name="user_gravatar(email, size=16)">
<div class="rc-user tooltip" title="${h.author_string(email)}">
${base.gravatar(email, 16)}
</div>
</%def>
<%def name="repo_actions(repo_name, super_user=True)">
<div>
<div class="grid_edit">
<a href="${h.url('edit_repo',repo_name=repo_name)}" title="${_('Edit')}">
<i class="icon-pencil"></i>Edit</a>
</div>
<div class="grid_delete">
${h.secure_form(h.url('repo', repo_name=repo_name),method='delete')}
${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:
<div class="tag alert2" title="${repo_state}">invalid</div>
%endif
</div>
</%def>
## REPO GROUP RENDERERS
<%def name="quick_repo_group_menu(repo_group_name)">
<i class="pointer icon-more"></i>
<div class="menu_items_container hidden">
<ul class="menu_items">
<li>
<a href="${h.url('repo_group_home',group_name=repo_group_name)}">
<span class="icon">
<i class="icon-file-text"></i>
</span>
<span>${_('Summary')}</span>
</a>
</li>
</ul>
</div>
</%def>
<%def name="repo_group_name(repo_group_name, children_groups=None)">
<div>
<a href="${h.url('repo_group_home',group_name=repo_group_name)}">
<i class="icon-folder-close" title="${_('Repository group')}"></i>
%if children_groups:
${h.literal(' &raquo; '.join(children_groups))}
%else:
${repo_group_name}
%endif
</a>
</div>
</%def>
<%def name="repo_group_actions(repo_group_id, repo_group_name, gr_count)">
<div class="grid_edit">
<a href="${h.url('edit_repo_group',group_name=repo_group_name)}" title="${_('Edit')}">Edit</a>
</div>
<div class="grid_delete">
${h.secure_form(h.url('delete_repo_group', group_name=repo_group_name),method='delete')}
${h.submit('remove_%s' % repo_group_name,_('Delete'),class_="btn btn-link btn-danger",
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)+"');")}
${h.end_form()}
</div>
</%def>
<%def name="user_actions(user_id, username)">
<div class="grid_edit">
<a href="${h.url('edit_user',user_id=user_id)}" title="${_('Edit')}">
<i class="icon-pencil"></i>Edit</a>
</div>
<div class="grid_delete">
${h.secure_form(h.url('delete_user', user_id=user_id),method='delete')}
${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">
<a href="${h.url('edit_users_group', user_group_id=user_group_id)}" title="${_('Edit')}">Edit</a>
</div>
<div class="grid_delete">
${h.secure_form(h.url('delete_users_group', user_group_id=user_group_id),method='delete')}
${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)">
${h.link_to(h.person(username, 'username_or_name_or_email'), h.url('edit_user', user_id=user_id))}
</%def>
<%def name="user_profile(username)">
${base.gravatar_with_user(username, 16)}
</%def>
<%def name="user_group_name(user_group_id, user_group_name)">
<div>
<a href="${h.url('edit_users_group', user_group_id=user_group_id)}">
<i class="icon-group" title="${_('User group')}"></i> ${user_group_name}</a>
</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>
<a href="${h.url('gist',gist_id=gist_access_id)}">gist: ${gist_access_id}</a>
</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_status(status)">
<div class="${'flag_status %s' % status} pull-left"></div>
</%def>
<%def name="pullrequest_title(title, description)">
${title} <br/>
${h.shorter(description, 40)}
</%def>
<%def name="pullrequest_comments(comments_nr)">
<i class="icon-comment icon-comment-colored"></i> ${comments_nr}
</%def>
<%def name="pullrequest_name(pull_request_id, target_repo_name)">
<a href="${h.url('pullrequest_show',repo_name=target_repo_name,pull_request_id=pull_request_id)}">
${_('Pull request #%(pr_number)s') % {'pr_number': pull_request_id,}}
</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>