32
25
<tal:no-link condition="not: branch/branch_link">
33
<span metal:use-macro="breadcrumbs/directory"></span>
26
<tal:branch-name replace="branch/friendly_name" />
35
<span class="breadcrumb">:
36
<tal:revno condition="not:specific_path" content="change/revno"></tal:revno>
37
<a tal:condition="specific_path" tal:content="change/revno"
38
tal:attributes="href python:url(['/revision', change.revno])"
39
title="View changes to all files"></a>
40
<tal:compare-to condition="python:compare_revid is not None">
41
(compared to revision <tal:block content="python:history.get_revno(compare_revid)" />)
44
<span class="breadcrumb" tal:condition="specific_path">
45
: <tal:annotate content="structure python:annotate_link(url, change.revno, specific_path)" />
48
<tal:branch-info replace="structure python:branchinfo(branch)" />
49
<p tal:condition="not:specific_path">
50
Viewing all changes in revision <tal:revno content="change/revno" />.
52
<p tal:condition="specific_path">
53
<a tal:attributes="href python:url(['/revision', change.revno])">
54
« back to all changes in this revision
57
<p tal:condition="specific_path">
58
Viewing changes to <tal:annotate content="structure python:annotate_link(url, change.revno, specific_path)" />
28
<span>: <tal:revno content="change/revno"></tal:revno>
29
<tal:compare-to condition="python:compare_revid is not None">
30
(compared to revision <tal:block content="python:history.get_revno(compare_revid)" />)
60
33
<ul id="submenuTabs">
61
<li id="first"><a tal:attributes="href python:url(['/files', change.revno]);
62
title string:browse files at revision ${change/revno}"
63
tal:content="string:browse files at revision ${change/revno}"></a></li>
64
<li tal:condition="python:remember != change.revno">
65
<a tal:attributes="href python:url(['/revision', change.revno], remember=change.revno, compare_revid=None);
66
title string:compare with another revision"
67
tal:content="string:Compare with another revision"></a></li>
68
<li tal:condition="python:(remember is not None) and (compare_revid is None) and (change.revno != remember)" >
69
<a tal:attributes="href python:url(['/revision', change.revno], compare_revid=history.get_revno(remember))">
70
compare with revision <tal:b content="python:history.get_revno(remember)" />
34
<li id="first"><a tal:attributes="href python:url(['/files', change.revno]);
35
title string:browse files at revision ${change/revno}"
36
tal:content="string:browse files at revision ${change/revno}"></a></li>
37
<li tal:condition="python:remember != change.revno">
38
<a tal:attributes="href python:url(['/revision', change.revno], remember=change.revno, compare_revid=None);
39
title string:compare with another revision"
40
tal:content="string:Compare with another revision"></a></li>
41
<li tal:condition="python:(remember is not None) and (compare_revid is None) and (change.revno != remember)" >
42
<a tal:attributes="href python:url(['/revision', change.revno], compare_revid=history.get_revno(remember))">
43
compare with revision <tal:b content="python:history.get_revno(remember)" />
74
47
<a tal:condition="python:len(change.parents) > 0 and compare_revid is None"
75
tal:attributes="href python:url(['/diff', change.revno], clear=1)">download diff</a>
48
tal:attributes="href python:url(['/diff', change.revno], clear=1)">download diff</a>
76
49
<a tal:condition="python:compare_revid is not None"
77
tal:attributes="href python:url(['/diff', change.revno, history.get_revno(compare_revid)], clear=1)">download diff</a>
79
<li id="last"><a tal:attributes="href python:url(['/changes', change.revno]);
80
title string:view history from revision ${change/revno}"
81
tal:content="string:view history from revision ${change/revno}"></a></li>
50
tal:attributes="href python:url(['/diff', change.revno, history.get_revno(compare_revid)], clear=1)">download diff</a>
52
<li id="last"><a tal:attributes="href python:url(['/changes', change.revno]);
53
title string:view history from revision ${change/revno}"
54
tal:content="string:view history from revision ${change/revno}"></a></li>
84
57
<tal:we-are-comparing condition="python:compare_revid is not None">
87
60
<a tal:attributes="href python:url([ '/revision', history.get_revno(compare_revid) ], remember=change.revno, compare_revid=change.revno)">
88
61
reverse the comparison (<tal:b content="change/revno" /> to <tal:b content="python:history.get_revno(compare_revid)" />)
92
65
<a tal:attributes="href python:url(['/revision', change.revno], remember=None, compare_revid=None)">
93
66
stop comparing with revision <tal:b content="python:history.get_revno(compare_revid)" />
97
70
</tal:we-are-comparing>
99
<tal:revision-info replace="structure python:revisioninfo(url, branch, change, file_changes, specific_path, merged_in)" />
100
<tal:specific-path condition="not:specific_path">
101
<p class="expand show_if_js" id="expand_all"><a href="#">
102
<img tal:attributes="src python:branch.static_url('/static/images/treeCollapsed.png')"
103
alt="expand all" /> expand all</a>
105
<p class="expand" id="collapse_all" style="display:none;"><a href="#">
106
<img tal:attributes="src python:branch.static_url('/static/images/treeExpanded.png')"
107
alt="collapse all" /> collapse all</a>
111
<p class="expand show_if_js"><a id="toggle_unified_sbs" href="#">Show diffs side-by-side</a></p>
72
<tal:revision-info replace="structure python:revisioninfo(url, branch, change, modified_file_link_rev)" />
73
<p class="expand" id="expand_all" style="display:none;"><a tal:attributes="href string:javascript:toggle_expand_all_revisionview('open')">
74
<img tal:attributes="src python:branch.static_url('/static/images/treeCollapsed.png')"
75
alt="expand all" /> expand all</a>
77
<p class="expand" id="collapse_all"><a tal:attributes="href string:javascript:toggle_expand_all_revisionview('close')">
78
<img tal:attributes="src python:branch.static_url('/static/images/treeExpanded.png')"
79
alt="collapse all" /> collapse all</a>
112
82
<p class="codin"><img tal:attributes="src python:branch.static_url('/static/images/newCode.gif')" alt="added" /> added</p>
113
83
<p class="codin"><img tal:attributes="src python:branch.static_url('/static/images/deleteCode.gif')" alt="removed" /> removed</p>
114
84
<div class="clear"><!-- --></div>
118
88
<div metal:fill-slot="content">
119
<tal:block condition="specific_path">
122
<div class="diffBox">
123
<a tal:attributes="href python:url(['/revision', change.revno, specific_path], clear=1);
124
id string:${specific_path};
125
title string:View changes to ${specific_path} only"
127
<img tal:attributes="src python:branch.static_url('/static/images/treeExpanded.png')"
128
class="expand_diff"/>
129
<tal:b content="specific_path" />
132
<div style="overflow: hidden">
133
<div class="container">
134
<div class="loading" style="display:none">
135
<img tal:attributes="src python:branch.static_url('/static/images/spinner.gif')" />
137
<div class="diffinfo">
138
<div class="pseudotable unified"
139
tal:repeat="chunk diff_chunks">
141
<tal:block condition="not:repeat/chunk/start">
142
<div class="pseudorow context-row">
143
<div class="lineNumber separate"></div>
144
<div class="lineNumber second separate"></div>
145
<div class="code separate"></div>
146
<div class="clear"><!-- --></div>
150
<div tal:repeat="line chunk/diff"
151
tal:attributes="class string:pseudorow ${line/type}-row">
152
<div class="lineNumber first"
153
tal:content="structure python:util.fill_div(line.old_lineno)"></div>
154
<div class="lineNumber second"
155
tal:content="structure python:util.fill_div(line.new_lineno)"></div>
156
<div tal:attributes="class string:code ${line/type}"
157
tal:content="structure python:util.fill_div(util.html_clean(line.line))"></div>
158
<div class="clear"><!-- --></div>
90
tal:condition="change/changes/modified"
91
tal:define="uniqs python:{}">
92
<!-- ! side-by-side diff -->
93
<tal:block repeat="item change/changes/modified">
95
<tal:u define="u python:util.uniq(uniqs, item.file_id)">
96
<div class="diffBox"><img tal:attributes="src python:branch.static_url('/static/images/treeExpanded.png');
97
title python:branch.static_url('/static/images/treeCollapsed.png');
98
alt python:branch.static_url('/static/images/treeExpanded.png')"
99
class="expand_diff" />
100
<a tal:attributes="href python:url(['/annotate', change.revno], clear=1, file_id=item.file_id);
101
id string:${item/filename}-s;
102
title string:Annotate ${item/filename}"
103
tal:content="item/filename"></a></div>
104
<div id="psuedotable" class="diffinfo">
105
<tal:block repeat="chunk item/sbs_chunks">
107
<tal:block condition="not:repeat/chunk/start">
108
<div class="lineNumber separate"></div>
109
<div class="lineCode separate"></div>
110
<div class="lineNumber separate"></div>
111
<div class="lineCode separate"></div>
112
<div class="clear"><!-- --></div>
115
<tal:block repeat="line chunk/diff">
117
<tal:block condition="line/old_lineno">
118
<div class="lineNumber"><tal:block replace="structure python:util.fill_div(line.old_lineno)" /></div>
119
<div tal:attributes="class string:lineCode ${line/old_type}">
120
<tal:block replace="structure python:util.fill_div(line.old_line)" />
124
<tal:block condition="not:line/old_lineno">
125
<div class="lineNumber"><tal:block replace="structure python:util.fill_div(line.old_lineno)" /></div>
126
<div tal:attributes="class string:lineCode ${line/old_type}">
127
<tal:block replace="structure python:util.fill_div(line.old_line)" />
131
<tal:block condition="line/new_lineno">
132
<div class="lineNumber"><tal:block replace="structure python:util.fill_div(line.new_lineno)" /></div>
133
<div tal:attributes="class string:lineCode ${line/new_type}">
134
<tal:block replace="structure python:util.fill_div(line.new_line)" />
138
<tal:block condition="not:line/new_lineno">
139
<div class="lineNumber"><tal:block replace="structure python:util.fill_div(line.new_lineno)" /></div>
140
<div tal:attributes="class string:lineCode ${line/new_type}">
141
<tal:block replace="structure python:util.fill_div(line.new_line)" />
144
<div class="clear"><!-- --></div>
167
<tal:block condition="not:specific_path">
169
tal:repeat="item file_changes/text_changes" tal:attributes="id string:diff-${item/index}">
171
<div class="diffBox">
172
<a tal:attributes="href python:url(['/revision', change.revno, item.filename], clear=1);
173
id string:${item/filename};
174
title string:View changes to ${item/filename} only"
176
<img tal:attributes="src python:branch.static_url('/static/images/treeCollapsed.png')"
177
class="expand_diff" />
178
<tal:b content="item/filename" />
181
<div class="diffinfo" style="display:none">
182
<div class="loading">
183
<img tal:attributes="src python:branch.static_url('/static/images/spinner.gif')" />
189
153
<ul tal:condition="python:navigation.prev_page_revid or navigation.next_page_revid"
191
<li tal:condition="navigation/prev_page_revid"
193
<a tal:attributes="href navigation/prev_page_url">« Newer</a>
195
<!-- FIXME: Leaving this to eventually show page numbers. Can't show all of them,
196
so some magic has to be done to just show the previous and next N page numbers
155
<li tal:condition="navigation/prev_page_revid"
157
<a tal:attributes="href navigation/prev_page_url">« Previous</a>
159
<!-- FIXME: Leaving this to eventually show page numbers. Can't show all of them,
160
so some magic has to be done to just show the previous and next N page numbers
198
<li class="active">1</li>
199
<tal:block tal:repeat="page_number python:range(navigation.page_count)">
201
tal:content="page_number"></a></li>
162
<li class="active">1</li>
163
<tal:block tal:repeat="page_number python:range(navigation.page_count)">
165
tal:content="page_number"></a></li>
203
<li tal:condition="navigation/next_page_revid"
205
<a tal:attributes="href navigation/next_page_url">Older »</a>
167
<li tal:condition="navigation/next_page_revid"
169
<a tal:attributes="href navigation/next_page_url">Next »</a>