Mercurial > kallithea
changeset 943:1f28cf5384bf beta
Implemented dynamic download links in summary page
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Fri, 14 Jan 2011 12:24:57 +0100 |
parents | 32318ec7bfc1 |
children | bec32ac08c9a |
files | docs/changelog.rst rhodecode/templates/summary/summary.html |
diffstat | 2 files changed, 108 insertions(+), 92 deletions(-) [+] |
line wrap: on
line diff
--- a/docs/changelog.rst Thu Jan 13 23:35:46 2011 +0100 +++ b/docs/changelog.rst Fri Jan 14 12:24:57 2011 +0100 @@ -19,6 +19,7 @@ into clone url - fixed #90 whoosh indexer can index chooses repositories passed in command line +- added dynamic download links in summary. With quick branch/tag selection fixes -----
--- a/rhodecode/templates/summary/summary.html Thu Jan 13 23:35:46 2011 +0100 +++ b/rhodecode/templates/summary/summary.html Fri Jan 14 12:24:57 2011 +0100 @@ -130,14 +130,14 @@ <div class="input-short"> ${h.select('download_options','tip',c.download_options)} - %for cnt,archive in enumerate(c.repo_info._get_archives()): %if cnt >=1: | %endif - ${h.link_to(archive['type'], + <span class="tooltip" title="${_('Download %s as %s') %('tip',archive['type'])}" + id="${archive['type']+'_link'}">${h.link_to(archive['type'], h.url('files_archive_home',repo_name=c.repo_info.name, - fname='tip'+archive['extension']),class_="archive_icon")} + fname='tip'+archive['extension']),class_="archive_icon")}</span> %endfor </div> </div> @@ -153,97 +153,112 @@ </div> </div> </div> - <script type="text/javascript"> - YUE.onDOMReady(function(e){ - id = 'clone_url'; - YUE.on(id,'click',function(e){ - YUD.get('clone_url').select(); - }) - }) - var data = ${c.trending_languages|n}; - var total = 0; - var no_data = true; - for (k in data){ - total += data[k]; - no_data = false; - } - var tbl = document.createElement('table'); - tbl.setAttribute('class','trending_language_tbl'); - var cnt =0; - for (k in data){ - cnt+=1; - var hide = cnt>2; - var tr = document.createElement('tr'); - if (hide){ - tr.setAttribute('style','display:none'); - tr.setAttribute('class','stats_hidden'); - } - var percentage = Math.round((data[k]/total*100),2); - var value = data[k]; - var td1 = document.createElement('td'); - td1.width=150; - var trending_language_label = document.createElement('div'); - trending_language_label.innerHTML = k; - td1.appendChild(trending_language_label); + <script type="text/javascript"> + YUE.onDOMReady(function(e){ + id = 'clone_url'; + YUE.on(id,'click',function(e){ + YUD.get('clone_url').select(); + }) + }) + var data = ${c.trending_languages|n}; + var total = 0; + var no_data = true; + for (k in data){ + total += data[k]; + no_data = false; + } + var tbl = document.createElement('table'); + tbl.setAttribute('class','trending_language_tbl'); + var cnt =0; + for (k in data){ + cnt+=1; + var hide = cnt>2; + var tr = document.createElement('tr'); + if (hide){ + tr.setAttribute('style','display:none'); + tr.setAttribute('class','stats_hidden'); + } + var percentage = Math.round((data[k]/total*100),2); + var value = data[k]; + var td1 = document.createElement('td'); + td1.width=150; + var trending_language_label = document.createElement('div'); + trending_language_label.innerHTML = k; + td1.appendChild(trending_language_label); - var td2 = document.createElement('td'); - td2.setAttribute('style','padding-right:14px !important'); - var trending_language = document.createElement('div'); - var nr_files = value+" ${_('files')}"; - - trending_language.title = k+" "+nr_files; - - if (percentage>20){ - trending_language.innerHTML = "<b style='font-size:0.8em'>"+percentage+"% "+nr_files+ "</b>"; - } - else{ - trending_language.innerHTML = "<b style='font-size:0.8em'>"+percentage+"%</b>"; - } - - trending_language.setAttribute("class", 'trending_language top-right-rounded-corner bottom-right-rounded-corner'); - trending_language.style.width=percentage+"%"; - td2.appendChild(trending_language); - - tr.appendChild(td1); - tr.appendChild(td2); - tbl.appendChild(tr); - if(cnt == 2){ - var show_more = document.createElement('tr'); - var td=document.createElement('td'); - lnk = document.createElement('a'); - lnk.href='#'; - lnk.innerHTML = "${_("show more")}"; - lnk.id='code_stats_show_more'; - td.appendChild(lnk); - show_more.appendChild(td); - show_more.appendChild(document.createElement('td')); - tbl.appendChild(show_more); - } - - } - if(no_data){ - var tr = document.createElement('tr'); - var td1 = document.createElement('td'); - td1.innerHTML = "${c.no_data_msg}"; - tr.appendChild(td1); - tbl.appendChild(tr); - } - YUD.get('lang_stats').appendChild(tbl); - YUE.on('code_stats_show_more','click',function(){ - l = YUD.getElementsByClassName('stats_hidden') - for (e in l){ - YUD.setStyle(l[e],'display',''); - }; - YUD.setStyle(YUD.get('code_stats_show_more'), - 'display','none'); - }) - + var td2 = document.createElement('td'); + td2.setAttribute('style','padding-right:14px !important'); + var trending_language = document.createElement('div'); + var nr_files = value+" ${_('files')}"; + + trending_language.title = k+" "+nr_files; + + if (percentage>20){ + trending_language.innerHTML = "<b style='font-size:0.8em'>"+percentage+"% "+nr_files+ "</b>"; + } + else{ + trending_language.innerHTML = "<b style='font-size:0.8em'>"+percentage+"%</b>"; + } + + trending_language.setAttribute("class", 'trending_language top-right-rounded-corner bottom-right-rounded-corner'); + trending_language.style.width=percentage+"%"; + td2.appendChild(trending_language); + + tr.appendChild(td1); + tr.appendChild(td2); + tbl.appendChild(tr); + if(cnt == 2){ + var show_more = document.createElement('tr'); + var td=document.createElement('td'); + lnk = document.createElement('a'); + lnk.href='#'; + lnk.innerHTML = "${_("show more")}"; + lnk.id='code_stats_show_more'; + td.appendChild(lnk); + show_more.appendChild(td); + show_more.appendChild(document.createElement('td')); + tbl.appendChild(show_more); + } + + } + if(no_data){ + var tr = document.createElement('tr'); + var td1 = document.createElement('td'); + td1.innerHTML = "${c.no_data_msg}"; + tr.appendChild(td1); + tbl.appendChild(tr); + } + YUD.get('lang_stats').appendChild(tbl); + YUE.on('code_stats_show_more','click',function(){ + l = YUD.getElementsByClassName('stats_hidden') + for (e in l){ + YUD.setStyle(l[e],'display',''); + }; + YUD.setStyle(YUD.get('code_stats_show_more'), + 'display','none'); + }) + + + YUE.on('download_options','change',function(e){ + var new_cs = e.target.options[e.target.selectedIndex]; + var tmpl_links = {} + %for cnt,archive in enumerate(c.repo_info._get_archives()): + tmpl_links['${archive['type']}'] = '${h.link_to(archive['type'], + h.url('files_archive_home',repo_name=c.repo_info.name, + fname='__CS__'+archive['extension']),class_="archive_icon")}'; + %endfor - YUE.on('download_options','change',function(e){ - var new_cs = e.target.options[e.target.selectedIndex].value; - }) - - </script> + + for(k in tmpl_links){ + var s = YUD.get(k+'_link') + title_tmpl = "${_('Download %s as %s') % ('__CS_NAME__',archive['type'])}"; + s.title = title_tmpl.replace('__CS_NAME__',new_cs.text) + s.innerHTML = tmpl_links[k].replace('__CS__',new_cs.value); + } + + }) + + </script> </div> <div class="box box-right" style="min-height:455px">