Mercurial > kallithea
comparison rhodecode/templates/changelog/changelog.html @ 3979:04242759b61e
fixed issue with formatting escaping on url used in changelog js.
Switched everything to pyroutes
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Wed, 12 Jun 2013 10:21:56 +0200 |
parents | 5293d4bbb1ea |
children | 072a37c44f58 |
comparison
equal
deleted
inserted
replaced
3978:4f31439c90d3 | 3979:04242759b61e |
---|---|
146 YAHOO.util.Event.onDOMReady(function(){ | 146 YAHOO.util.Event.onDOMReady(function(){ |
147 | 147 |
148 //Monitor range checkboxes and build a link to changesets | 148 //Monitor range checkboxes and build a link to changesets |
149 //ranges | 149 //ranges |
150 var checkboxes = YUD.getElementsByClassName('changeset_range'); | 150 var checkboxes = YUD.getElementsByClassName('changeset_range'); |
151 var url_tmpl = "${h.url('changeset_home',repo_name=c.repo_name,revision='__REVRANGE__')}"; | 151 // register our routes needed for this view |
152 pyroutes.register('changeset_home', "${h.url('changeset_home', repo_name='%(repo_name)s', revision='%(revision)s')}", ['repo_name', 'revision']); | |
153 pyroutes.register('changelog_home', "${h.url('changelog_home', repo_name='%(repo_name)s')}", ['repo_name']); | |
154 pyroutes.register('pullrequest_home', "${h.url('pullrequest_home', repo_name='%(repo_name)s')}", ['repo_name']); | |
152 | 155 |
153 var checkbox_checker = function(e){ | 156 var checkbox_checker = function(e){ |
154 var checked_checkboxes = []; | 157 var checked_checkboxes = []; |
155 for (pos in checkboxes){ | 158 for (pos in checkboxes){ |
156 if(checkboxes[pos].checked){ | 159 if(checkboxes[pos].checked){ |
171 } | 174 } |
172 | 175 |
173 if(checked_checkboxes.length>0){ | 176 if(checked_checkboxes.length>0){ |
174 var rev_end = checked_checkboxes[0].name; | 177 var rev_end = checked_checkboxes[0].name; |
175 var rev_start = checked_checkboxes[checked_checkboxes.length-1].name; | 178 var rev_start = checked_checkboxes[checked_checkboxes.length-1].name; |
176 var url = url_tmpl.replace('__REVRANGE__', | 179 var url = pyroutes.url('changeset_home', {'repo_name': '${c.repo_name}', |
177 rev_start+'...'+rev_end); | 180 'revision': rev_start+'...'+rev_end}); |
178 | 181 |
179 var link = (rev_start == rev_end) | 182 var link = (rev_start == rev_end) |
180 ? _TM['Show selected changeset __S'] | 183 ? _TM['Show selected changeset __S'] |
181 : _TM['Show selected changesets __S -> __E']; | 184 : _TM['Show selected changesets __S -> __E']; |
182 | 185 |
185 YUD.get('rev_range_container').href = url; | 188 YUD.get('rev_range_container').href = url; |
186 YUD.get('rev_range_container').innerHTML = link; | 189 YUD.get('rev_range_container').innerHTML = link; |
187 YUD.setStyle('rev_range_container','display',''); | 190 YUD.setStyle('rev_range_container','display',''); |
188 YUD.setStyle('rev_range_clear','display',''); | 191 YUD.setStyle('rev_range_clear','display',''); |
189 | 192 |
190 var pr_tmpl = "${h.url('pullrequest_home',repo_name=c.repo_name,rev_start='{0}',rev_end='{1}')}"; | 193 YUD.get('open_new_pr').href = pyroutes.url('pullrequest_home', |
191 YUD.get('open_new_pr').href = pr_tmpl.format(rev_start,rev_end); | 194 {'repo_name': '${c.repo_name}', |
195 'rev_start': rev_start, | |
196 'rev_end': rev_end}) | |
197 | |
192 YUD.setStyle('compare_fork','display','none'); | 198 YUD.setStyle('compare_fork','display','none'); |
193 }else{ | 199 }else{ |
194 YUD.setStyle('rev_range_container','display','none'); | 200 YUD.setStyle('rev_range_container','display','none'); |
195 YUD.setStyle('rev_range_clear','display','none'); | 201 YUD.setStyle('rev_range_clear','display','none'); |
196 %if c.branch_name: | 202 %if c.branch_name: |
197 YUD.get('open_new_pr').href = "${h.url('pullrequest_home',repo_name=c.repo_name,branch=c.branch_name)}"; | 203 YUD.get('open_new_pr').href = pyroutes.url('pullrequest_home', |
204 {'repo_name': '${c.repo_name}', | |
205 'branch':'${c.branch_name}'}); | |
198 %else: | 206 %else: |
199 YUD.get('open_new_pr').href = "${h.url('pullrequest_home',repo_name=c.repo_name)}"; | 207 YUD.get('open_new_pr').href = pyroutes.url('pullrequest_home', |
208 {'repo_name': '${c.repo_name}'}); | |
200 %endif | 209 %endif |
201 YUD.setStyle('compare_fork','display',''); | 210 YUD.setStyle('compare_fork','display',''); |
202 } | 211 } |
203 }; | 212 }; |
204 YUE.onDOMReady(checkbox_checker); | 213 YUE.onDOMReady(checkbox_checker); |
242 }); | 251 }); |
243 | 252 |
244 // change branch filter | 253 // change branch filter |
245 YUE.on(YUD.get('branch_filter'),'change',function(e){ | 254 YUE.on(YUD.get('branch_filter'),'change',function(e){ |
246 var selected_branch = e.currentTarget.options[e.currentTarget.selectedIndex].value; | 255 var selected_branch = e.currentTarget.options[e.currentTarget.selectedIndex].value; |
247 var url_main = "${h.url('changelog_home',repo_name=c.repo_name)}"; | |
248 var url = "${h.url('changelog_home',repo_name=c.repo_name,branch='__BRANCH__')}"; | |
249 var url = url.replace('__BRANCH__', encodeURIComponent(selected_branch)); | |
250 if(selected_branch != ''){ | 256 if(selected_branch != ''){ |
251 window.location = url; | 257 window.location = pyroutes.url('changelog_home', {'repo_name': '${c.repo_name}', |
258 'branch':encodeURIComponent(selected_branch)}); | |
252 }else{ | 259 }else{ |
253 window.location = url_main; | 260 window.location = pyroutes.url('changelog_home', {'repo_name': '${c.repo_name}'}); |
254 } | 261 } |
255 | |
256 }); | 262 }); |
257 | 263 |
258 function set_canvas(width) { | 264 function set_canvas(width) { |
259 var c = document.getElementById('graph_nodes'); | 265 var c = document.getElementById('graph_nodes'); |
260 var t = document.getElementById('graph_content'); | 266 var t = document.getElementById('graph_content'); |