Files
@ 631e8000eae8
Branch filter:
Location: kallithea/rhodecode/templates/branches/branches.html - annotation
631e8000eae8
2.9 KiB
text/html
diff parser: match the header order of hg diff --git patches
The output might look like:
diff --git a/A b/B
old mode 100644
new mode 100755
rename from A
rename to B
--- a/A
+++ b/B
Such files were shown as 'modified binary file chmod 100644 => 100755' without
diff.
Now the chmod and diff will be shown ... but still not the rename.
Correct parsing of headers do require a better parser - one do not just use a
regexp.
The output might look like:
diff --git a/A b/B
old mode 100644
new mode 100755
rename from A
rename to B
--- a/A
+++ b/B
Such files were shown as 'modified binary file chmod 100644 => 100755' without
diff.
Now the chmod and diff will be shown ... but still not the rename.
Correct parsing of headers do require a better parser - one do not just use a
regexp.
1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1f334a68d057 1e757ac98988 1e757ac98988 1e757ac98988 690a955ba785 9e677f6d34cb 1e757ac98988 1e757ac98988 1e757ac98988 eacd33e0c5b3 1e757ac98988 1e757ac98988 1e757ac98988 1c32b72930fa 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 1e757ac98988 3c4afb8894bd 488bbf5e3f59 3c4afb8894bd 1e757ac98988 1e757ac98988 1e757ac98988 713315371e03 713315371e03 f6cdfc730831 b4f401524060 b4f401524060 b4f401524060 eaf09acf6872 b4f401524060 b4f401524060 b4f401524060 b4f401524060 b4f401524060 b4f401524060 bf96fd1920c1 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 f6cdfc730831 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 f6cdfc730831 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 f91d3f9b7230 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 eaf09acf6872 f91d3f9b7230 f91d3f9b7230 eaf09acf6872 713315371e03 eaf09acf6872 f91d3f9b7230 | ## -*- coding: utf-8 -*-
<%inherit file="/base/base.html"/>
<%def name="title()">
${_('%s Branches') % c.repo_name} · ${c.rhodecode_name}
</%def>
<%def name="breadcrumbs_links()">
<input class="q_filter_box" id="q_filter_branches" size="15" type="text" name="filter" placeholder="${_('quick filter...')}" value=""/>
${_('Branches')}
</%def>
<%def name="page_nav()">
${self.menu('repositories')}
</%def>
<%def name="main()">
${self.context_bar('switch-to')}
<div class="box">
<!-- box / title -->
<div class="title">
${self.breadcrumbs()}
</div>
<!-- end box / title -->
%if c.repo_branches:
<div class="info_box" id="compare_branches" style="clear: both;padding: 10px 19px;text-align: right;"><a href="#" class="ui-btn small">${_('Compare branches')}</a></div>
%endif
<div class="table">
<%include file='branches_data.html'/>
</div>
</div>
<script type="text/javascript">
YUE.on('compare_branches','click',function(e){
YUE.preventDefault(e);
var org = YUQ('input[name=compare_org]:checked')[0];
var other = YUQ('input[name=compare_other]:checked')[0];
if(org && other){
var compare_url = "${h.url('compare_url',repo_name=c.repo_name,org_ref_type='branch',org_ref='__ORG__',other_ref_type='branch',other_ref='__OTHER__')}";
var u = compare_url.replace('__ORG__',org.value)
.replace('__OTHER__',other.value);
window.location=u;
}
});
// main table sorting
var myColumnDefs = [
{key:"name",label:"${_('Name')}",sortable:true},
{key:"date",label:"${_('Date')}",sortable:true,
sortOptions: { sortFunction: dateSort }},
{key:"author",label:"${_('Author')}",sortable:true},
{key:"revision",label:"${_('Revision')}",sortable:true,
sortOptions: { sortFunction: revisionSort }},
{key:"compare",label:"${_('Compare')}",sortable:false,},
];
var myDataSource = new YAHOO.util.DataSource(YUD.get("branches_data"));
myDataSource.responseType = YAHOO.util.DataSource.TYPE_HTMLTABLE;
myDataSource.responseSchema = {
fields: [
{key:"name"},
{key:"date"},
{key:"author"},
{key:"revision"},
{key:"compare"},
]
};
var myDataTable = new YAHOO.widget.DataTable("table_wrap", myColumnDefs, myDataSource,
{
sortedBy:{key:"name",dir:"asc"},
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();
var func = function(node){
return node.parentNode.parentNode.parentNode.parentNode.parentNode;
}
q_filter('q_filter_branches',YUQ('div.table tr td .logtags .branchtag a'),func);
});
</script>
</%def>
|