comparison rhodecode/templates/changelog/changelog.html @ 1888:f91d3f9b7230 beta

White-space cleanup
author Marcin Kuzminski <marcin@python-works.com>
date Thu, 12 Jan 2012 06:32:40 +0200
parents 350d95dece6f
children af1fafcd5927
comparison
equal deleted inserted replaced
1886:50e32940e464 1888:f91d3f9b7230
9 <%def name="breadcrumbs_links()"> 9 <%def name="breadcrumbs_links()">
10 ${h.link_to(u'Home',h.url('/'))} 10 ${h.link_to(u'Home',h.url('/'))}
11 &raquo; 11 &raquo;
12 ${h.link_to(c.repo_name,h.url('summary_home',repo_name=c.repo_name))} 12 ${h.link_to(c.repo_name,h.url('summary_home',repo_name=c.repo_name))}
13 &raquo; 13 &raquo;
14 ${_('Changelog')} - ${_('showing ')} ${c.size if c.size <= c.total_cs else c.total_cs} ${_('out of')} ${c.total_cs} ${_('revisions')} 14 ${_('Changelog')} - ${_('showing ')} ${c.size if c.size <= c.total_cs else c.total_cs} ${_('out of')} ${c.total_cs} ${_('revisions')}
15 </%def> 15 </%def>
16 16
17 <%def name="page_nav()"> 17 <%def name="page_nav()">
18 ${self.menu('changelog')} 18 ${self.menu('changelog')}
19 </%def> 19 </%def>
20 20
21 <%def name="main()"> 21 <%def name="main()">
22 <div class="box"> 22 <div class="box">
23 <!-- box / title --> 23 <!-- box / title -->
40 </div> 40 </div>
41 ${h.end_form()} 41 ${h.end_form()}
42 <div id="rev_range_container" style="display:none"></div> 42 <div id="rev_range_container" style="display:none"></div>
43 <div style="float:right">${h.select('branch_filter',c.branch_name,c.branch_filters)}</div> 43 <div style="float:right">${h.select('branch_filter',c.branch_name,c.branch_filters)}</div>
44 </div> 44 </div>
45 45
46 %for cnt,cs in enumerate(c.pagination): 46 %for cnt,cs in enumerate(c.pagination):
47 <div id="chg_${cnt+1}" class="container ${'tablerow%s' % (cnt%2)}"> 47 <div id="chg_${cnt+1}" class="container ${'tablerow%s' % (cnt%2)}">
48 <div class="left"> 48 <div class="left">
49 <div> 49 <div>
50 ${h.checkbox(cs.short_id,class_="changeset_range")} 50 ${h.checkbox(cs.short_id,class_="changeset_range")}
59 <div class="date">${cs.date}</div> 59 <div class="date">${cs.date}</div>
60 </div> 60 </div>
61 <div class="mid"> 61 <div class="mid">
62 <div class="message">${h.urlify_commit(h.wrap_paragraphs(cs.message),c.repo_name,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}</div> 62 <div class="message">${h.urlify_commit(h.wrap_paragraphs(cs.message),c.repo_name,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}</div>
63 <div class="expand"><span class="expandtext">&darr; ${_('show more')} &darr;</span></div> 63 <div class="expand"><span class="expandtext">&darr; ${_('show more')} &darr;</span></div>
64 </div> 64 </div>
65 <div class="right"> 65 <div class="right">
66 <div id="${cs.raw_id}_changes_info" class="changes"> 66 <div id="${cs.raw_id}_changes_info" class="changes">
67 <div id="${cs.raw_id}" style="float:right;" class="changed_total tooltip" title="${_('Affected number of files, click to show more details')}">${len(cs.affected_files)}</div> 67 <div id="${cs.raw_id}" style="float:right;" class="changed_total tooltip" title="${_('Affected number of files, click to show more details')}">${len(cs.affected_files)}</div>
68 <div class="comments-container"> 68 <div class="comments-container">
69 %if len(c.comments.get(cs.raw_id,[])) > 0: 69 %if len(c.comments.get(cs.raw_id,[])) > 0:
71 <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)}"> 71 <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)}">
72 <div class="comments-cnt">${len(c.comments[cs.raw_id])}</div> 72 <div class="comments-cnt">${len(c.comments[cs.raw_id])}</div>
73 <img src="${h.url('/images/icons/comments.png')}"> 73 <img src="${h.url('/images/icons/comments.png')}">
74 </a> 74 </a>
75 </div> 75 </div>
76 %endif 76 %endif
77 </div> 77 </div>
78 </div> 78 </div>
79 %if cs.parents: 79 %if cs.parents:
80 %for p_cs in reversed(cs.parents): 80 %for p_cs in reversed(cs.parents):
81 <div class="parent">${_('Parent')} 81 <div class="parent">${_('Parent')}
82 <span class="changeset_id">${p_cs.revision}:<span class="changeset_hash">${h.link_to(h.short_id(p_cs.raw_id), 82 <span class="changeset_id">${p_cs.revision}:<span class="changeset_hash">${h.link_to(h.short_id(p_cs.raw_id),
83 h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.raw_id),title=p_cs.message)}</span></span> 83 h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.raw_id),title=p_cs.message)}</span></span>
84 </div> 84 </div>
85 %endfor 85 %endfor
86 %else: 86 %else:
87 <div class="parent">${_('No parents')}</div> 87 <div class="parent">${_('No parents')}</div>
88 %endif 88 %endif
89 89
90 <span class="logtags"> 90 <span class="logtags">
91 %if len(cs.parents)>1: 91 %if len(cs.parents)>1:
92 <span class="merge">${_('merge')}</span> 92 <span class="merge">${_('merge')}</span>
93 %endif 93 %endif
94 %if cs.branch: 94 %if cs.branch:
97 %endif 97 %endif
98 %for tag in cs.tags: 98 %for tag in cs.tags:
99 <span class="tagtag" title="${'%s %s' % (_('tag'),tag)}"> 99 <span class="tagtag" title="${'%s %s' % (_('tag'),tag)}">
100 ${h.link_to(tag,h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id))}</span> 100 ${h.link_to(tag,h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id))}</span>
101 %endfor 101 %endfor
102 </span> 102 </span>
103 </div> 103 </div>
104 </div> 104 </div>
105 105
106 %endfor 106 %endfor
107 <div class="pagination-wh pagination-left"> 107 <div class="pagination-wh pagination-left">
108 ${c.pagination.pager('$link_previous ~2~ $link_next')} 108 ${c.pagination.pager('$link_previous ~2~ $link_next')}
109 </div> 109 </div>
110 </div> 110 </div>
111 </div> 111 </div>
112 112
113 <script type="text/javascript" src="${h.url('/js/graph.js')}"></script> 113 <script type="text/javascript" src="${h.url('/js/graph.js')}"></script>
114 <script type="text/javascript"> 114 <script type="text/javascript">
115 YAHOO.util.Event.onDOMReady(function(){ 115 YAHOO.util.Event.onDOMReady(function(){
116 116
117 //Monitor range checkboxes and build a link to changesets 117 //Monitor range checkboxes and build a link to changesets
118 //ranges 118 //ranges
119 var checkboxes = YUD.getElementsByClassName('changeset_range'); 119 var checkboxes = YUD.getElementsByClassName('changeset_range');
120 var url_tmpl = "${h.url('changeset_home',repo_name=c.repo_name,revision='__REVRANGE__')}"; 120 var url_tmpl = "${h.url('changeset_home',repo_name=c.repo_name,revision='__REVRANGE__')}";
121 YUE.on(checkboxes,'click',function(e){ 121 YUE.on(checkboxes,'click',function(e){
122 var checked_checkboxes = []; 122 var checked_checkboxes = [];
123 for (pos in checkboxes){ 123 for (pos in checkboxes){
124 if(checkboxes[pos].checked){ 124 if(checkboxes[pos].checked){
125 checked_checkboxes.push(checkboxes[pos]); 125 checked_checkboxes.push(checkboxes[pos]);
126 } 126 }
127 } 127 }
128 if(checked_checkboxes.length>1){ 128 if(checked_checkboxes.length>1){
129 var rev_end = checked_checkboxes[0].name; 129 var rev_end = checked_checkboxes[0].name;
130 var rev_start = checked_checkboxes[checked_checkboxes.length-1].name; 130 var rev_start = checked_checkboxes[checked_checkboxes.length-1].name;
131 131
132 var url = url_tmpl.replace('__REVRANGE__', 132 var url = url_tmpl.replace('__REVRANGE__',
133 rev_start+'...'+rev_end); 133 rev_start+'...'+rev_end);
134 134
135 var link = "<a href="+url+">${_('Show selected changes __S -> __E')}</a>" 135 var link = "<a href="+url+">${_('Show selected changes __S -> __E')}</a>"
136 link = link.replace('__S',rev_start); 136 link = link.replace('__S',rev_start);
137 link = link.replace('__E',rev_end); 137 link = link.replace('__E',rev_end);
138 YUD.get('rev_range_container').innerHTML = link; 138 YUD.get('rev_range_container').innerHTML = link;
139 YUD.setStyle('rev_range_container','display',''); 139 YUD.setStyle('rev_range_container','display','');
140 } 140 }
141 else{ 141 else{
142 YUD.setStyle('rev_range_container','display','none'); 142 YUD.setStyle('rev_range_container','display','none');
143 143
144 } 144 }
145 }); 145 });
146 146
147 var msgs = YUQ('.message'); 147 var msgs = YUQ('.message');
148 // get first element height 148 // get first element height
149 var el = YUQ('.container')[0]; 149 var el = YUQ('.container')[0];
150 var row_h = el.clientHeight; 150 var row_h = el.clientHeight;
151 for(var i=0;i<msgs.length;i++){ 151 for(var i=0;i<msgs.length;i++){
160 } 160 }
161 YUE.on(YUQ('.expand'),'click',function(e){ 161 YUE.on(YUQ('.expand'),'click',function(e){
162 var elem = e.currentTarget.parentNode.parentNode; 162 var elem = e.currentTarget.parentNode.parentNode;
163 YUD.setStyle(e.currentTarget,'display','none'); 163 YUD.setStyle(e.currentTarget,'display','none');
164 YUD.setStyle(elem,'height','auto'); 164 YUD.setStyle(elem,'height','auto');
165 165
166 //redraw the graph, max_w and jsdata are global vars 166 //redraw the graph, max_w and jsdata are global vars
167 set_canvas(max_w); 167 set_canvas(max_w);
168 168
169 var r = new BranchRenderer(); 169 var r = new BranchRenderer();
170 r.render(jsdata,max_w); 170 r.render(jsdata,max_w);
171 171
172 }) 172 })
173 173
174 // Fetch changeset details 174 // Fetch changeset details
175 YUE.on(YUD.getElementsByClassName('changed_total'),'click',function(e){ 175 YUE.on(YUD.getElementsByClassName('changed_total'),'click',function(e){
176 var id = e.currentTarget.id 176 var id = e.currentTarget.id
177 var url = "${h.url('changelog_details',repo_name=c.repo_name,cs='__CS__')}" 177 var url = "${h.url('changelog_details',repo_name=c.repo_name,cs='__CS__')}"
178 var url = url.replace('__CS__',id); 178 var url = url.replace('__CS__',id);
179 ypjax(url,id+'_changes_info',function(){tooltip_activate()}); 179 ypjax(url,id+'_changes_info',function(){tooltip_activate()});
180 }); 180 });
181 181
182 // change branch filter 182 // change branch filter
183 YUE.on(YUD.get('branch_filter'),'change',function(e){ 183 YUE.on(YUD.get('branch_filter'),'change',function(e){
184 var selected_branch = e.currentTarget.options[e.currentTarget.selectedIndex].value; 184 var selected_branch = e.currentTarget.options[e.currentTarget.selectedIndex].value;
185 var url_main = "${h.url('changelog_home',repo_name=c.repo_name)}"; 185 var url_main = "${h.url('changelog_home',repo_name=c.repo_name)}";
186 var url = "${h.url('changelog_home',repo_name=c.repo_name,branch='__BRANCH__')}"; 186 var url = "${h.url('changelog_home',repo_name=c.repo_name,branch='__BRANCH__')}";
188 if(selected_branch != ''){ 188 if(selected_branch != ''){
189 window.location = url; 189 window.location = url;
190 }else{ 190 }else{
191 window.location = url_main; 191 window.location = url_main;
192 } 192 }
193 193
194 }); 194 });
195 195
196 function set_canvas(heads) { 196 function set_canvas(heads) {
197 var c = document.getElementById('graph_nodes'); 197 var c = document.getElementById('graph_nodes');
198 var t = document.getElementById('graph_content'); 198 var t = document.getElementById('graph_content');
199 canvas = document.getElementById('graph_canvas'); 199 canvas = document.getElementById('graph_canvas');
200 var div_h = t.clientHeight; 200 var div_h = t.clientHeight;
204 canvas.setAttribute('width',max_w); 204 canvas.setAttribute('width',max_w);
205 }; 205 };
206 var heads = 1; 206 var heads = 1;
207 var max_heads = 0; 207 var max_heads = 0;
208 var jsdata = ${c.jsdata|n}; 208 var jsdata = ${c.jsdata|n};
209 209
210 for( var i=0;i<jsdata.length;i++){ 210 for( var i=0;i<jsdata.length;i++){
211 var m = Math.max.apply(Math, jsdata[i][1]); 211 var m = Math.max.apply(Math, jsdata[i][1]);
212 if (m>max_heads){ 212 if (m>max_heads){
213 max_heads = m; 213 max_heads = m;
214 } 214 }
215 } 215 }
216 var max_w = Math.max(100,max_heads*25); 216 var max_w = Math.max(100,max_heads*25);
217 set_canvas(max_w); 217 set_canvas(max_w);
218 218
219 var r = new BranchRenderer(); 219 var r = new BranchRenderer();
220 r.render(jsdata,max_w); 220 r.render(jsdata,max_w);
221 221
222 }); 222 });
223 </script> 223 </script>
224 %else: 224 %else:
225 ${_('There are no changes yet')} 225 ${_('There are no changes yet')}
226 %endif 226 %endif
227 </div> 227 </div>
228 </div> 228 </div>
229 </%def> 229 </%def>