##// END OF EJS Templates
Fixed #585, checks for status of revision where to strict, and made opening pull request with those revision impossible due to previosly set status....
Fixed #585, checks for status of revision where to strict, and made opening pull request with those revision impossible due to previosly set status. Checks now are made also for the repository.

File last commit:

r2785:f1f01e95 beta
r2893:eb180eb1 beta
Show More
index_base.html
211 lines | 9.1 KiB | text/html | HtmlLexer
<%page args="parent" />
<div class="box">
<!-- box / title -->
<div class="title">
<h5>
<input class="q_filter_box" id="q_filter" size="15" type="text" name="filter" value="${_('quick filter...')}"/> ${parent.breadcrumbs()} <span id="repo_count">0</span> ${_('repositories')}
</h5>
%if c.rhodecode_user.username != 'default':
%if h.HasPermissionAny('hg.admin','hg.create.repository')():
<ul class="links">
<li>
%if c.group:
<span>${h.link_to(_('ADD REPOSITORY'),h.url('admin_settings_create_repository',parent_group=c.group.group_id))}</span>
%else:
<span>${h.link_to(_('ADD REPOSITORY'),h.url('admin_settings_create_repository'))}</span>
%endif
</li>
</ul>
%endif
%endif
</div>
<!-- end box / title -->
<div class="table">
% if c.groups:
<div id='groups_list_wrap' class="yui-skin-sam">
<table id="groups_list">
<thead>
<tr>
<th class="left"><a href="#">${_('Group name')}</a></th>
<th class="left"><a href="#">${_('Description')}</a></th>
##<th class="left"><a href="#">${_('Number of repositories')}</a></th>
</tr>
</thead>
## REPO GROUPS
% for gr in c.groups:
<tr>
<td>
<div style="white-space: nowrap">
<img class="icon" alt="${_('Repositories group')}" src="${h.url('/images/icons/database_link.png')}"/>
${h.link_to(gr.name,url('repos_group_home',group_name=gr.group_name))}
</div>
</td>
%if c.visual.stylify_metatags:
<td>${h.urlify_text(h.desc_stylize(gr.group_description))}</td>
%else:
<td>${gr.group_description}</td>
%endif
## this is commented out since for multi nested repos can be HEAVY!
## in number of executed queries during traversing uncomment at will
##<td><b>${gr.repositories_recursive_count}</b></td>
</tr>
% endfor
</table>
</div>
<div style="height: 20px"></div>
% endif
<div id="welcome" style="display:none;text-align:center">
<h1><a href="${h.url('home')}">${c.rhodecode_name} ${c.rhodecode_version}</a></h1>
</div>
<div id='repos_list_wrap' class="yui-skin-sam">
<%cnt=0%>
<%namespace name="dt" file="/data_table/_dt_elements.html"/>
<table id="repos_list">
<thead>
<tr>
<th class="left"></th>
<th class="left">${_('Name')}</th>
<th class="left">${_('Description')}</th>
<th class="left">${_('Last change')}</th>
<th class="left">${_('Tip')}</th>
<th class="left">${_('Owner')}</th>
<th class="left">${_('RSS')}</th>
<th class="left">${_('Atom')}</th>
</tr>
</thead>
<tbody>
%for cnt,repo in enumerate(c.repos_list):
<tr class="parity${(cnt+1)%2}">
##QUICK MENU
<td class="quick_repo_menu">
${dt.quick_menu(repo['name'])}
</td>
##REPO NAME AND ICONS
<td class="reponame">
${dt.repo_name(repo['name'],repo['dbrepo']['repo_type'],repo['dbrepo']['private'],repo['dbrepo_fork'].get('repo_name'),pageargs.get('short_repo_names'))}
</td>
##DESCRIPTION
<td><span class="tooltip" title="${h.tooltip(repo['description'])}">
%if c.visual.stylify_metatags:
${h.urlify_text(h.desc_stylize(h.truncate(repo['description'],60)))}</span>
%else:
${h.truncate(repo['description'],60)}</span>
%endif
</td>
##LAST CHANGE DATE
<td>
<span class="tooltip" date="${repo['last_change']}" title="${h.tooltip(h.fmt_date(repo['last_change']))}">${h.age(repo['last_change'])}</span>
</td>
##LAST REVISION
<td>
${dt.revision(repo['name'],repo['rev'],repo['tip'],repo['author'],repo['last_msg'])}
</td>
##
<td title="${repo['contact']}">${h.person(repo['contact'])}</td>
<td>
%if c.rhodecode_user.username != 'default':
<a title="${_('Subscribe to %s rss feed')%repo['name']}" class="rss_icon" href="${h.url('rss_feed_home',repo_name=repo['name'],api_key=c.rhodecode_user.api_key)}"></a>
%else:
<a title="${_('Subscribe to %s rss feed')%repo['name']}" class="rss_icon" href="${h.url('rss_feed_home',repo_name=repo['name'])}"></a>
%endif:
</td>
<td>
%if c.rhodecode_user.username != 'default':
<a title="${_('Subscribe to %s atom feed')%repo['name']}" class="atom_icon" href="${h.url('atom_feed_home',repo_name=repo['name'],api_key=c.rhodecode_user.api_key)}"></a>
%else:
<a title="${_('Subscribe to %s atom feed')%repo['name']}" class="atom_icon" href="${h.url('atom_feed_home',repo_name=repo['name'])}"></a>
%endif:
</td>
</tr>
%endfor
</tbody>
</table>
</div>
</div>
</div>
<script>
YUD.get('repo_count').innerHTML = ${cnt+1 if cnt else 0};
var func = function(node){
return node.parentNode.parentNode.parentNode.parentNode;
}
var sort_by = "name";
var sort_dir = "asc";
// groups table sorting
var myColumnDefs = [
{key:"name",label:"${_('Group Name')}",sortable:true,
sortOptions: { sortFunction: groupNameSort }},
{key:"desc",label:"${_('Description')}",sortable:true},
];
var myDataSource = new YAHOO.util.DataSource(YUD.get("groups_list"));
myDataSource.responseType = YAHOO.util.DataSource.TYPE_HTMLTABLE;
myDataSource.responseSchema = {
fields: [
{key:"name"},
{key:"desc"},
]
};
var myDataTable = new YAHOO.widget.DataTable("groups_list_wrap", myColumnDefs, myDataSource,
{
sortedBy:{key:"name",dir:"asc"},
MSG_SORTASC:"${_('Click to sort ascending')}",
MSG_SORTDESC:"${_('Click to sort descending')}"
}
);
// main table sorting
var myColumnDefs = [
{key:"menu",label:"",sortable:false,className:"quick_repo_menu hidden"},
{key:"name",label:"${_('Name')}",sortable:true,
sortOptions: { sortFunction: nameSort }},
{key:"desc",label:"${_('Description')}",sortable:true},
{key:"last_change",label:"${_('Last Change')}",sortable:true,
sortOptions: { sortFunction: ageSort }},
{key:"tip",label:"${_('Tip')}",sortable:true,
sortOptions: { sortFunction: revisionSort }},
{key:"owner",label:"${_('Owner')}",sortable:true},
{key:"rss",label:"",sortable:false},
{key:"atom",label:"",sortable:false},
];
var myDataSource = new YAHOO.util.DataSource(YUD.get("repos_list"));
myDataSource.responseType = YAHOO.util.DataSource.TYPE_HTMLTABLE;
myDataSource.responseSchema = {
fields: [
{key:"menu"},
{key:"name"},
{key:"desc"},
{key:"last_change"},
{key:"tip"},
{key:"owner"},
{key:"rss"},
{key:"atom"},
]
};
var myDataTable = new YAHOO.widget.DataTable("repos_list_wrap", myColumnDefs, myDataSource,
{
sortedBy:{key:sort_by,dir:sort_dir},
MSG_SORTASC:"${_('Click to sort ascending')}",
MSG_SORTDESC:"${_('Click to sort descending')}",
MSG_EMPTY:"${_('No records found.')}",
MSG_ERROR:"${_('Data error.')}",
MSG_LOADING:"${_('Loading...')}",
}
);
myDataTable.subscribe('postRenderEvent',function(oArgs) {
tooltip_activate();
quick_repo_menu();
q_filter('q_filter',YUQ('div.table tr td a.repo_name'),func);
});
</script>