index.html
166 lines
| 5.9 KiB
| text/html
|
HtmlLexer
r547 | ## -*- coding: utf-8 -*- | |||
<%inherit file="base/base.html"/> | ||||
<%def name="title()"> | ||||
r619 | ${_('Dashboard')} - ${c.rhodecode_name} | |||
r547 | </%def> | |||
<%def name="breadcrumbs()"> | ||||
r548 | ${c.rhodecode_name} | |||
r547 | </%def> | |||
<%def name="page_nav()"> | ||||
${self.menu('home')} | ||||
</%def> | ||||
<%def name="main()"> | ||||
<%def name="get_sort(name)"> | ||||
<%name_slug = name.lower().replace(' ','_') %> | ||||
%if name_slug == c.sort_slug: | ||||
%if c.sort_by.startswith('-'): | ||||
<a href="?sort=${name_slug}">${name}↑</a> | ||||
%else: | ||||
<a href="?sort=-${name_slug}">${name}↓</a> | ||||
%endif: | ||||
%else: | ||||
<a href="?sort=${name_slug}">${name}</a> | ||||
%endif | ||||
</%def> | ||||
<div class="box"> | ||||
<!-- box / title --> | ||||
<div class="title"> | ||||
r646 | <h5>${_('Dashboard')} | |||
<input class="top-right-rounded-corner top-left-rounded-corner bottom-left-rounded-corner bottom-right-rounded-corner" id="q_filter" size="15" type="text" name="filter" value="${_('quick filter...')}"/> | ||||
</h5> | ||||
r547 | %if h.HasPermissionAny('hg.admin','hg.create.repository')(): | |||
<ul class="links"> | ||||
<li> | ||||
r579 | <span>${h.link_to(_('ADD NEW REPOSITORY'),h.url('admin_settings_create_repository'))}</span> | |||
r547 | </li> | |||
</ul> | ||||
%endif | ||||
</div> | ||||
<!-- end box / title --> | ||||
<div class="table"> | ||||
r646 | <table> | |||
r547 | <thead> | |||
<tr> | ||||
<th class="left">${get_sort(_('Name'))}</th> | ||||
<th class="left">${get_sort(_('Description'))}</th> | ||||
<th class="left">${get_sort(_('Last change'))}</th> | ||||
<th class="left">${get_sort(_('Tip'))}</th> | ||||
r633 | <th class="left">${get_sort(_('Owner'))}</th> | |||
r547 | <th class="left">${_('RSS')}</th> | |||
<th class="left">${_('Atom')}</th> | ||||
</tr> | ||||
</thead> | ||||
r646 | <tbody> | |||
%for cnt,repo in enumerate(c.repos_list): | ||||
<tr class="parity${cnt%2}"> | ||||
<td> | ||||
r668 | <div style="white-space: nowrap"> | |||
r647 | ## TYPE OF REPO | |||
r646 | %if repo['repo'].dbrepo.repo_type =='hg': | |||
<img class="icon" title="${_('Mercurial repository')}" alt="${_('Mercurial repository')}" src="/images/icons/hgicon.png"/> | ||||
%elif repo['repo'].dbrepo.repo_type =='git': | ||||
<img class="icon" title="${_('Git repository')}" alt="${_('Git repository')}" src="/images/icons/giticon.png"/> | ||||
%else: | ||||
%endif | ||||
r647 | ##PRIVATE/PUBLIC | |||
r646 | %if repo['repo'].dbrepo.private: | |||
<img class="icon" title="${_('private repository')}" alt="${_('private repository')}" src="/images/icons/lock.png"/> | ||||
%else: | ||||
<img class="icon" title="${_('public repository')}" alt="${_('public repository')}" src="/images/icons/lock_open.png"/> | ||||
r647 | %endif | |||
##NAME | ||||
r646 | ${h.link_to(repo['name'], | |||
h.url('summary_home',repo_name=repo['name']),class_="repo_name")} | ||||
%if repo['repo'].dbrepo.fork: | ||||
<a href="${h.url('summary_home',repo_name=repo['repo'].dbrepo.fork.repo_name)}"> | ||||
<img class="icon" alt="${_('fork')}" | ||||
title="${_('Fork of')} ${repo['repo'].dbrepo.fork.repo_name}" | ||||
src="/images/icons/arrow_divide.png"/></a> | ||||
%endif | ||||
r668 | </div> | |||
r646 | </td> | |||
r647 | ##DESCRIPTION | |||
r646 | <td><span class="tooltip" tooltip_title="${repo['description']}"> | |||
${h.truncate(repo['description'],60)}</span> | ||||
</td> | ||||
r647 | ##LAST CHANGE | |||
<td> | ||||
r668 | <span class="tooltip" tooltip_title="${h.age(repo['last_change'])}"> | |||
${repo['last_change']}</span> | ||||
r646 | </td> | |||
<td> | ||||
%if repo['rev']>=0: | ||||
${h.link_to('r%s:%s' % (repo['rev'],h.short_id(repo['tip'])), | ||||
h.url('changeset_home',repo_name=repo['name'],revision=repo['tip']), | ||||
class_="tooltip", | ||||
tooltip_title=h.tooltip(repo['last_msg']))} | ||||
%else: | ||||
${_('No changesets yet')} | ||||
%endif | ||||
</td> | ||||
<td title="${repo['contact']}">${h.person(repo['contact'])}</td> | ||||
<td> | ||||
<a title="${_('Subscribe to %s rss feed')%repo['name']}" class="rss_icon" href="${h.url('rss_feed_home',repo_name=repo['name'])}"></a> | ||||
</td> | ||||
<td> | ||||
<a title="${_('Subscribe to %s atom feed')%repo['name']}" class="atom_icon" href="${h.url('atom_feed_home',repo_name=repo['name'])}"></a> | ||||
</td> | ||||
</tr> | ||||
%endfor | ||||
</tbody> | ||||
</table> | ||||
r547 | </div> | |||
r646 | </div> | |||
<script type="text/javascript"> | ||||
var D = YAHOO.util.Dom; | ||||
var E = YAHOO.util.Event; | ||||
var S = YAHOO.util.Selector; | ||||
var q_filter = D.get('q_filter'); | ||||
var F = YAHOO.namespace('q_filter'); | ||||
E.on(q_filter,'click',function(){ | ||||
q_filter.value = ''; | ||||
}); | ||||
F.filterTimeout = null; | ||||
F.updateFilter = function() { | ||||
// Reset timeout | ||||
F.filterTimeout = null; | ||||
var obsolete = []; | ||||
r668 | var nodes = S.query('div.table tr td div a.repo_name'); | |||
r646 | var req = D.get('q_filter').value; | |||
for (n in nodes){ | ||||
r668 | D.setStyle(nodes[n].parentNode.parentNode.parentNode,'display','') | |||
r646 | } | |||
if (req){ | ||||
for (n in nodes){ | ||||
if (nodes[n].innerHTML.toLowerCase().indexOf(req) == -1) { | ||||
obsolete.push(nodes[n]); | ||||
} | ||||
} | ||||
if(obsolete){ | ||||
for (n in obsolete){ | ||||
r668 | D.setStyle(obsolete[n].parentNode.parentNode.parentNode,'display','none'); | |||
r646 | } | |||
} | ||||
} | ||||
} | ||||
E.on(q_filter,'keyup',function(e){ | ||||
clearTimeout(F.filterTimeout); | ||||
setTimeout(F.updateFilter,600); | ||||
}); | ||||
</script> | ||||
r547 | </%def> | |||