##// END OF EJS Templates
Add javascript for Object Code excanvas (flot) version herein included and use that instead of minified version....
Add javascript for Object Code excanvas (flot) version herein included and use that instead of minified version. I had a bit of trouble finding the upstream on excanvas, as the version from Google, which appears to be the original source, seems unmaintained. However, it appears the version we're carrying in Kallithea is indeed from the excanvas era of flot. $ (cd /tmp; \ svn -r 135 checkout http://flot.googlecode.com/svn/trunk/ flot ) $ cp /tmp/flot/excanvas.js rhodecode/public/js/excanvas.js I also verified the sha256sum of the min file matched ours: $ sha256sum /tmp/flot/excanvas.min.js rhodecode/public/js/excanvas.min.js 5f94b032a110504b7b261eaf71392fa3e8d82cdc6455c0cba5c9f03cd34ed122 /tmp/flot/excanvas.min.js 5f94b032a110504b7b261eaf71392fa3e8d82cdc6455c0cba5c9f03cd34ed122 rhodecode/public/js/excanvas.min.js

File last commit:

r4116:ffd45b18 rhodecode-2.2.5-gpl
r4132:531ab818 rhodecode-2.2.5-gpl
Show More
changelog.html
303 lines | 15.8 KiB | text/html | HtmlLexer
renamed project to rhodecode
r547 ## -*- coding: utf-8 -*-
<%inherit file="/base/base.html"/>
<%def name="title()">
Bradley M. Kuhn
Imported some of the GPLv3'd changes from RhodeCode v2.2.5....
r4116 ${_('%s Changelog') % c.repo_name}
%if c.changelog_for_path:
/${c.changelog_for_path}
%endif
%if c.rhodecode_name:
&middot; ${c.rhodecode_name}
%endif
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()">
Mads Kiilerich
templates: drop context_bar, use repo_context_bar directly
r3988 ${self.repo_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 ''}">
Bradley M. Kuhn
Imported some of the GPLv3'd changes from RhodeCode v2.2.5....
r4116 <div class="container_header">
<div style="float:right; margin: 0px 0px 0px 4px">${h.select('branch_filter',c.branch_name,c.branch_filters)}</div>
<div class="info_box" style="text-align: right; float: right">
<a href="#" class="btn btn-mini" id="rev_range_container" style="display:none"></a>
<a href="#" class="btn btn-mini" id="rev_range_clear" style="display:none">${_('Clear selection')}</a>
whitespace cleanup
r2973
Bradley M. Kuhn
Imported some of the GPLv3'd changes from RhodeCode v2.2.5....
r4116 %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=c.rhodecode_db_repo.landing_rev[0],org_ref=c.rhodecode_db_repo.landing_rev[1],other_repo=c.repo_name,other_ref_type='branch' if request.GET.get('branch') else c.rhodecode_db_repo.landing_rev[0],other_ref=request.GET.get('branch') or c.rhodecode_db_repo.landing_rev[1], merge=1)}"
class="btn btn-mini"><i class="icon-loop"></i> ${_('Compare fork with Parent(%s)' % c.rhodecode_db_repo.fork.repo_name)}</a>
%endif
<a id="open_new_pr" href="${h.url('pullrequest_home',repo_name=c.repo_name)}" class="btn btn-mini">${_('Open new pull request')}</a>
</div>
${h.form(h.url.current(),method='get')}
<div style="float:left">
${h.submit('set',_('Show'),class_="btn btn-mini")}
${h.text('size',size=1,value=c.size)}
${_('revisions')}
</div>
${h.end_form()}
Use changelog controller for displaying history of files....
r3760 </div>
Leonardo
WIP: Changelog view
r3536 </div>
<div id="graph_nodes">
<canvas id="graph_canvas"></canvas>
</div>
Bradley M. Kuhn
Imported some of the GPLv3'd changes from RhodeCode v2.2.5....
r4116 <div id="graph_content" style="${'margin: 0px' if c.changelog_for_path else ''}">
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]:
Use review status labels in changelog view
r4076 <a class="tooltip" title="${_('Changeset status: %s\nClick to open associated pull request #%s') % (h.changeset_status_lbl(c.statuses.get(cs.raw_id)[0]), 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])}">
bring back review status in main changelog
r3688 <img src="${h.url('/images/icons/flag_status_%s.png' % c.statuses.get(cs.raw_id)[0])}" />
</a>
%else:
Use review status labels in changelog view
r4076 <a class="tooltip" title="${_('Changeset status: %s') % h.changeset_status_lbl(c.statuses.get(cs.raw_id)[0])}" 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)}">
Mads Kiilerich
pull requests: add a 'Changeset status' comment on changeset status
r4056 <img src="${h.url('/images/icons/flag_status_%s.png' % c.statuses.get(cs.raw_id)[0])}" />
</a>
bring back review status in main changelog
r3688 %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>
Bradley M. Kuhn
Imported some of the GPLv3'd changes from RhodeCode v2.2.5....
r4116 <td class="expand_commit" commit_id="${cs.raw_id}" title="${_('Expand commit message')}">
<i class="icon-resize-vertical" style="color:#DDD"></i>
</td>
Leonardo
WIP: Changelog view
r3536 <td class="mid">
Leonardo
Tweaks to Changelog view, removing excess information, and improving layout.
r3537 <div class="log-container">
Bradley M. Kuhn
Imported some of the GPLv3'd changes from RhodeCode v2.2.5....
r4116 <div class="message" id="C-${cs.raw_id}">${h.urlify_commit(cs.message, c.repo_name,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}</div>
Leonardo
Tweaks to Changelog view, removing excess information, and improving layout.
r3537 <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">
Mads Kiilerich
pull requests: add a 'Changeset status' comment on changeset status
r4056 <div class="comments-cnt" title="${_('Changeset has 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])}
Bradley M. Kuhn
Imported some of the GPLv3'd changes from RhodeCode v2.2.5....
r4116 <i class="icon-comment-alt icon-comment-colored"></i>
Leonardo Carneiro
Tweaks to Changelog and Summary view, removing excess information, and improving layout.
r3538 </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']);
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 }
White-space cleanup
r1888
Bradley M. Kuhn
Imported some of the GPLv3'd changes from RhodeCode v2.2.5....
r4116 $('.expand_commit').on('click',function(e){
$(this).children('i').hide();
var cid = $(this).attr('commit_id');
$('#C-'+cid).css({'height': 'auto', 'margin': '4px 0px 4px 0px'})
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);
});
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}',
removed encodeURIComponent, on url generation....
r3992 'branch':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);
});
Bradley M. Kuhn
Imported some of the GPLv3'd changes from RhodeCode v2.2.5....
r4116
Leonardo
WIP: Changelog view
r3536 </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>