##// END OF EJS Templates
fixed issue with formatting escaping on url used in changelog js....
fixed issue with formatting escaping on url used in changelog js. Switched everything to pyroutes

File last commit:

r3979:04242759 default
r3979:04242759 default
Show More
changelog.html
296 lines | 15.1 KiB | text/html | HtmlLexer
renamed project to rhodecode
r547 ## -*- coding: utf-8 -*-
<%inherit file="/base/base.html"/>
<%def name="title()">
changelog for file history shows that we're in different changelog view
r3761 ${_('%s Changelog') % c.repo_name} &middot;
%if c.changelog_for_path:
/${c.changelog_for_path} &middot;
%endif
${c.rhodecode_name}
renamed project to rhodecode
r547 </%def>
<%def name="breadcrumbs_links()">
Vincent Duvert
Improved i18n on changelog and user group administration pages.
r2312 <% size = c.size if c.size <= c.total_cs else c.total_cs %>
changelog for file history shows that we're in different changelog view
r3761 ${_('Changelog')}
%if c.changelog_for_path:
- /${c.changelog_for_path}
%endif
- ${ungettext('showing %d out of %d revision', 'showing %d out of %d revisions', size) % (size, c.total_cs)}
renamed project to rhodecode
r547 </%def>
<%def name="page_nav()">
Mads Kiilerich
use valid options for the top menu: repositories, journal, search and admin
r3603 ${self.menu('repositories')}
renamed project to rhodecode
r547 </%def>
<%def name="main()">
Leonardo
WIP: Changelog view
r3536 ${self.context_bar('changelog')}
renamed project to rhodecode
r547 <div class="box">
<!-- box / title -->
<div class="title">
${self.breadcrumbs()}
</div>
<div class="table">
Mads Kiilerich
html: don't use tabs
r3197 % if c.pagination:
<div id="graph">
Use changelog controller for displaying history of files....
r3760 <div style="display:${'none' if c.changelog_for_path else ''}">
<div class="info_box" style="clear: both;padding: 10px 6px;min-height: 12px;text-align: right;">
<a href="#" class="ui-btn small" id="rev_range_container" style="display:none"></a>
<a href="#" class="ui-btn small" id="rev_range_clear" style="display:none">${_('Clear selection')}</a>
whitespace cleanup
r2973
Use changelog controller for displaying history of files....
r3760 %if c.rhodecode_db_repo.fork:
<a id="compare_fork" title="${_('Compare fork with %s' % c.rhodecode_db_repo.fork.repo_name)}" href="${h.url('compare_url',repo_name=c.rhodecode_db_repo.fork.repo_name,org_ref_type='branch',org_ref='default',other_repo=c.repo_name,other_ref_type='branch',other_ref=request.GET.get('branch') or 'default',merge=1)}" class="ui-btn small">${_('Compare fork with parent')}</a>
%endif
%if h.is_hg(c.rhodecode_repo):
<a id="open_new_pr" href="${h.url('pullrequest_home',repo_name=c.repo_name)}" class="ui-btn small">${_('Open new pull request')}</a>
%endif
Rewrote url routes to make all validations and parsing for compare view + added compare fork button into forked repos
r2363 </div>
Use changelog controller for displaying history of files....
r3760 <div class="container_header">
${h.form(h.url.current(),method='get')}
<div style="float:left">
${h.submit('set',_('Show'),class_="ui-btn")}
${h.text('size',size=1,value=c.size)}
${_('revisions')}
</div>
${h.end_form()}
<div style="float:right">${h.select('branch_filter',c.branch_name,c.branch_filters)}</div>
</div>
Leonardo
WIP: Changelog view
r3536 </div>
<div id="graph_nodes">
<canvas id="graph_canvas"></canvas>
</div>
<div id="graph_content">
White-space cleanup
r1888
Leonardo
WIP: Changelog view
r3536 <table id="changesets">
<tbody>
Mads Kiilerich
html: don't use tabs
r3197 %for cnt,cs in enumerate(c.pagination):
Leonardo
WIP: Changelog view
r3536 <tr id="chg_${cnt+1}" class="container ${'tablerow%s' % (cnt%2)}">
<td class="checkbox">
Use changelog controller for displaying history of files....
r3760 %if c.changelog_for_path:
${h.checkbox(cs.raw_id,class_="changeset_range", disabled="disabled")}
%else:
${h.checkbox(cs.raw_id,class_="changeset_range")}
%endif
bring back review status in main changelog
r3688 <td class="status">
%if c.statuses.get(cs.raw_id):
<div class="changeset-status-ico">
%if c.statuses.get(cs.raw_id)[2]:
<a class="tooltip" title="${_('Click to open associated pull request #%s' % c.statuses.get(cs.raw_id)[2])}" href="${h.url('pullrequest_show',repo_name=c.statuses.get(cs.raw_id)[3],pull_request_id=c.statuses.get(cs.raw_id)[2])}">
<img src="${h.url('/images/icons/flag_status_%s.png' % c.statuses.get(cs.raw_id)[0])}" />
</a>
%else:
<img src="${h.url('/images/icons/flag_status_%s.png' % c.statuses.get(cs.raw_id)[0])}" />
%endif
</div>
%endif
Leonardo
WIP: Changelog view
r3536 </td>
<td class="author">
<img alt="gravatar" src="${h.gravatar_url(h.email_or_none(cs.author),16)}"/>
<span title="${cs.author}" class="user">${h.shorter(h.person(cs.author),22)}</span>
</td>
adjust the width on changelog based on the show_id function output
r3585 <td class="hash" style="width:${len(h.show_id(cs))*6.5}px">
Leonardo Carneiro
Tweaks to Changelog and Summary view, removing excess information, and improving layout.
r3538 <a href="${h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id)}">
Implemented show_id function that is a configurable way to display sha hashes in the changelog.
r3557 <span class="changeset_hash">${h.show_id(cs)}</span>
Leonardo Carneiro
Tweaks to Changelog and Summary view, removing excess information, and improving layout.
r3538 </a>
Leonardo
WIP: Changelog view
r3536 </td>
<td class="date">
<div class="date">${h.age(cs.date,True)}</div>
</td>
<td class="mid">
Leonardo
Tweaks to Changelog view, removing excess information, and improving layout.
r3537 <div class="log-container">
<div class="message">${h.urlify_commit(cs.message, c.repo_name,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}</div>
<div class="expand"><span class="expandtext">&darr; ${_('Show more')} &darr;</span></div>
<div class="extra-container">
show comments in summary changelog overview
r3765 %if c.comments.get(cs.raw_id):
Added number of comments in changelog for each changeset...
r1884 <div class="comments-container">
ui touch ups
r1885 <div class="comments-cnt" title="${('comments')}">
Leonardo Carneiro
Tweaks to Changelog and Summary view, removing excess information, and improving layout.
r3538 <a href="${h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id,anchor='comment-%s' % c.comments[cs.raw_id][0].comment_id)}">
${len(c.comments[cs.raw_id])}
</a>
ui touch ups
r1885 </div>
Added number of comments in changelog for each changeset...
r1884 </div>
Leonardo
Tweaks to Changelog view, removing excess information, and improving layout.
r3537 %endif
fixed bookmarks error on git
r3541 %if h.is_hg(c.rhodecode_repo):
codecleaner
r3544 %for book in cs.bookmarks:
shortlog: show all refs (bookmarks,tags,branches) in one dedicated column...
r3707 <div class="booktag" title="${_('Bookmark %s') % book}">
codecleaner
r3544 ${h.link_to(h.shorter(book),h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id))}
</div>
%endfor
fixed bookmarks error on git
r3541 %endif
Leonardo
Tweaks to Changelog view, removing excess information, and improving layout.
r3537 %for tag in cs.tags:
Mads Kiilerich
Fix a lot of casings - use standard casing in most places
r3654 <div class="tagtag" title="${_('Tag %s') % tag}">
Leonardo
Tweaks to Changelog view, removing excess information, and improving layout.
r3537 ${h.link_to(h.shorter(tag),h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id))}
Mads Kiilerich
html: don't use tabs
r3197 </div>
%endfor
Leonardo Carneiro
Tweaks to Changelog and Summary view, removing excess information, and improving layout.
r3538 %if (not c.branch_name) and cs.branch:
Mads Kiilerich
Fix a lot of casings - use standard casing in most places
r3654 <div class="branchtag" title="${_('Branch %s' % cs.branch)}">
Leonardo Carneiro
Tweaks to Changelog and Summary view, removing excess information, and improving layout.
r3538 ${h.link_to(h.shorter(cs.branch),h.url('changelog_home',repo_name=c.repo_name,branch=cs.branch))}
Leonardo
Tweaks to Changelog view, removing excess information, and improving layout.
r3537 </div>
Mads Kiilerich
html: don't use tabs
r3197 %endif
Leonardo
WIP: Changelog view
r3536 </div>
Leonardo
Tweaks to Changelog view, removing excess information, and improving layout.
r3537 </div>
Leonardo
WIP: Changelog view
r3536 </td>
</tr>
Mads Kiilerich
html: don't use tabs
r3197 %endfor
Leonardo
WIP: Changelog view
r3536 </tbody>
</table>
White-space cleanup
r1888
Mads Kiilerich
html: don't use tabs
r3197 <div class="pagination-wh pagination-left">
${c.pagination.pager('$link_previous ~2~ $link_next')}
</div>
</div>
Leonardo
WIP: Changelog view
r3536 </div>
White-space cleanup
r1888
Leonardo
WIP: Changelog view
r3536 <script type="text/javascript" src="${h.url('/js/graph.js')}"></script>
<script type="text/javascript">
YAHOO.util.Event.onDOMReady(function(){
White-space cleanup
r1888
Leonardo
WIP: Changelog view
r3536 //Monitor range checkboxes and build a link to changesets
//ranges
var checkboxes = YUD.getElementsByClassName('changeset_range');
fixed issue with formatting escaping on url used in changelog js....
r3979 // register our routes needed for this view
pyroutes.register('changeset_home', "${h.url('changeset_home', repo_name='%(repo_name)s', revision='%(revision)s')}", ['repo_name', 'revision']);
pyroutes.register('changelog_home', "${h.url('changelog_home', repo_name='%(repo_name)s')}", ['repo_name']);
pyroutes.register('pullrequest_home', "${h.url('pullrequest_home', repo_name='%(repo_name)s')}", ['repo_name']);
Leonardo Carneiro
Bugfix: On the changelog page, its possible that some changeset is already checked out by the browser. So we check for that on page load.
r3464
Mads Kiilerich
Stylistic cleanup - mostly formatting
r3552 var checkbox_checker = function(e){
Leonardo
WIP: Changelog view
r3536 var checked_checkboxes = [];
for (pos in checkboxes){
if(checkboxes[pos].checked){
checked_checkboxes.push(checkboxes[pos]);
started work on #93 added rev ranges view, checkboxes in changelog to view ranges of changes
r977 }
Leonardo
WIP: Changelog view
r3536 }
if(YUD.get('open_new_pr')){
Mads Kiilerich
Stylistic cleanup - mostly formatting
r3552 if(checked_checkboxes.length>1){
YUD.setStyle('open_new_pr','display','none');
} else {
YUD.setStyle('open_new_pr','display','');
Mads Kiilerich
pullrequest: pullrequest from changelog view...
r3485 if(checked_checkboxes.length>0){
Mads Kiilerich
Stylistic cleanup - mostly formatting
r3552 YUD.get('open_new_pr').innerHTML = _TM['Open new pull request for selected changesets'];
Mads Kiilerich
pullrequest: pullrequest from changelog view...
r3485 }else{
Mads Kiilerich
Stylistic cleanup - mostly formatting
r3552 YUD.get('open_new_pr').innerHTML = _TM['Open new pull request'];
Mads Kiilerich
pullrequest: pullrequest from changelog view...
r3485 }
Don't allow cherry picking changesets from the changelog using checkboxes....
r2927 }
Mads Kiilerich
Stylistic cleanup - mostly formatting
r3552 }
whitespace cleanup
r2973
Leonardo
WIP: Changelog view
r3536 if(checked_checkboxes.length>0){
var rev_end = checked_checkboxes[0].name;
var rev_start = checked_checkboxes[checked_checkboxes.length-1].name;
fixed issue with formatting escaping on url used in changelog js....
r3979 var url = pyroutes.url('changeset_home', {'repo_name': '${c.repo_name}',
'revision': rev_start+'...'+rev_end});
White-space cleanup
r1888
Leonardo
WIP: Changelog view
r3536 var link = (rev_start == rev_end)
Mads Kiilerich
changelog / compare: adjust titles...
r3592 ? _TM['Show selected changeset __S']
: _TM['Show selected changesets __S -> __E'];
whitespace cleanup
r3447
Leonardo
WIP: Changelog view
r3536 link = link.replace('__S',rev_start.substr(0,6));
link = link.replace('__E',rev_end.substr(0,6));
YUD.get('rev_range_container').href = url;
YUD.get('rev_range_container').innerHTML = link;
YUD.setStyle('rev_range_container','display','');
YUD.setStyle('rev_range_clear','display','');
whitespace cleanup
r2973
fixed issue with formatting escaping on url used in changelog js....
r3979 YUD.get('open_new_pr').href = pyroutes.url('pullrequest_home',
{'repo_name': '${c.repo_name}',
'rev_start': rev_start,
'rev_end': rev_end})
Mads Kiilerich
Stylistic cleanup - mostly formatting
r3552 YUD.setStyle('compare_fork','display','none');
}else{
Leonardo
WIP: Changelog view
r3536 YUD.setStyle('rev_range_container','display','none');
YUD.setStyle('rev_range_clear','display','none');
Mads Kiilerich
pull requests: use branch name when creating PRs from a changelog with branch filter
r3813 %if c.branch_name:
fixed issue with formatting escaping on url used in changelog js....
r3979 YUD.get('open_new_pr').href = pyroutes.url('pullrequest_home',
{'repo_name': '${c.repo_name}',
'branch':'${c.branch_name}'});
Mads Kiilerich
pull requests: use branch name when creating PRs from a changelog with branch filter
r3813 %else:
fixed issue with formatting escaping on url used in changelog js....
r3979 YUD.get('open_new_pr').href = pyroutes.url('pullrequest_home',
{'repo_name': '${c.repo_name}'});
Mads Kiilerich
pull requests: use branch name when creating PRs from a changelog with branch filter
r3813 %endif
Mads Kiilerich
Stylistic cleanup - mostly formatting
r3552 YUD.setStyle('compare_fork','display','');
}
};
YUE.onDOMReady(checkbox_checker);
YUE.on(checkboxes,'click', checkbox_checker);
Leonardo Carneiro
Bugfix: On the changelog page, its possible that some changeset is already checked out by the browser. So we check for that on page load.
r3464
Leonardo
WIP: Changelog view
r3536 YUE.on('rev_range_clear','click',function(e){
for (var i=0; i<checkboxes.length; i++){
var cb = checkboxes[i];
cb.checked = false;
}
Mads Kiilerich
Stylistic cleanup - mostly formatting
r3552 checkbox_checker();
Leonardo
WIP: Changelog view
r3536 YUE.preventDefault(e);
});
White-space cleanup
r1888
Leonardo
WIP: Changelog view
r3536 var msgs = YUQ('.message');
// get first element height
var el = YUQ('#graph_content .container')[0];
var row_h = el.clientHeight;
for(var i=0;i<msgs.length;i++){
var m = msgs[i];
White-space cleanup
r1888
Leonardo
WIP: Changelog view
r3536 var h = m.clientHeight;
var pad = YUD.getStyle(m,'padding');
if(h > row_h){
var offset = row_h - (h+12);
YUD.setStyle(m.nextElementSibling,'display','block');
YUD.setStyle(m.nextElementSibling,'margin-top',offset+'px');
Mads Kiilerich
html: don't use tabs
r3197 };
Leonardo
WIP: Changelog view
r3536 }
YUE.on(YUQ('.expand'),'click',function(e){
var elem = e.currentTarget.parentNode.parentNode;
YUD.setStyle(e.currentTarget,'display','none');
YUD.setStyle(elem,'height','auto');
White-space cleanup
r1888
Leonardo
WIP: Changelog view
r3536 //redraw the graph, line_count and jsdata are global vars
Mads Kiilerich
html: don't use tabs
r3197 set_canvas(100);
White-space cleanup
r1888
Mads Kiilerich
html: don't use tabs
r3197 var r = new BranchRenderer();
r.render(jsdata,100,line_count);
White-space cleanup
r1888
Mads Kiilerich
html: don't use tabs
r3197 });
Leonardo
WIP: Changelog view
r3536
// change branch filter
YUE.on(YUD.get('branch_filter'),'change',function(e){
var selected_branch = e.currentTarget.options[e.currentTarget.selectedIndex].value;
if(selected_branch != ''){
fixed issue with formatting escaping on url used in changelog js....
r3979 window.location = pyroutes.url('changelog_home', {'repo_name': '${c.repo_name}',
'branch':encodeURIComponent(selected_branch)});
Leonardo
WIP: Changelog view
r3536 }else{
fixed issue with formatting escaping on url used in changelog js....
r3979 window.location = pyroutes.url('changelog_home', {'repo_name': '${c.repo_name}'});
Leonardo
WIP: Changelog view
r3536 }
});
function set_canvas(width) {
var c = document.getElementById('graph_nodes');
var t = document.getElementById('graph_content');
canvas = document.getElementById('graph_canvas');
var div_h = t.clientHeight;
canvas.setAttribute('height',div_h);
canvas.setAttribute('width',width);
};
var heads = 1;
var line_count = 0;
var jsdata = ${c.jsdata|n};
for (var i=0;i<jsdata.length;i++) {
var in_l = jsdata[i][2];
for (var j in in_l) {
var m = in_l[j][1];
if (m > line_count)
line_count = m;
}
}
set_canvas(100);
var r = new BranchRenderer();
r.render(jsdata,100,line_count);
});
</script>
Mads Kiilerich
html: don't use tabs
r3197 %else:
${_('There are no changes yet')}
%endif
renamed project to rhodecode
r547 </div>
White-space cleanup
r1888 </div>
UI fixes...
r1865 </%def>