Mercurial > kallithea
comparison rhodecode/templates/summary/summary.html @ 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 |
comparison
equal
deleted
inserted
replaced
942:32318ec7bfc1 | 943:1f28cf5384bf |
---|---|
128 <label>${_('Download')}:</label> | 128 <label>${_('Download')}:</label> |
129 </div> | 129 </div> |
130 <div class="input-short"> | 130 <div class="input-short"> |
131 | 131 |
132 ${h.select('download_options','tip',c.download_options)} | 132 ${h.select('download_options','tip',c.download_options)} |
133 | |
134 %for cnt,archive in enumerate(c.repo_info._get_archives()): | 133 %for cnt,archive in enumerate(c.repo_info._get_archives()): |
135 %if cnt >=1: | 134 %if cnt >=1: |
136 | | 135 | |
137 %endif | 136 %endif |
138 ${h.link_to(archive['type'], | 137 <span class="tooltip" title="${_('Download %s as %s') %('tip',archive['type'])}" |
138 id="${archive['type']+'_link'}">${h.link_to(archive['type'], | |
139 h.url('files_archive_home',repo_name=c.repo_info.name, | 139 h.url('files_archive_home',repo_name=c.repo_info.name, |
140 fname='tip'+archive['extension']),class_="archive_icon")} | 140 fname='tip'+archive['extension']),class_="archive_icon")}</span> |
141 %endfor | 141 %endfor |
142 </div> | 142 </div> |
143 </div> | 143 </div> |
144 | 144 |
145 <div class="field"> | 145 <div class="field"> |
151 ${h.link_to(_('Atom'),h.url('atom_feed_home',repo_name=c.repo_info.name),class_='atom_icon')} | 151 ${h.link_to(_('Atom'),h.url('atom_feed_home',repo_name=c.repo_info.name),class_='atom_icon')} |
152 </div> | 152 </div> |
153 </div> | 153 </div> |
154 </div> | 154 </div> |
155 </div> | 155 </div> |
156 <script type="text/javascript"> | 156 <script type="text/javascript"> |
157 YUE.onDOMReady(function(e){ | 157 YUE.onDOMReady(function(e){ |
158 id = 'clone_url'; | 158 id = 'clone_url'; |
159 YUE.on(id,'click',function(e){ | 159 YUE.on(id,'click',function(e){ |
160 YUD.get('clone_url').select(); | 160 YUD.get('clone_url').select(); |
161 }) | 161 }) |
162 }) | 162 }) |
163 var data = ${c.trending_languages|n}; | 163 var data = ${c.trending_languages|n}; |
164 var total = 0; | 164 var total = 0; |
165 var no_data = true; | 165 var no_data = true; |
166 for (k in data){ | 166 for (k in data){ |
167 total += data[k]; | 167 total += data[k]; |
168 no_data = false; | 168 no_data = false; |
169 } | 169 } |
170 var tbl = document.createElement('table'); | 170 var tbl = document.createElement('table'); |
171 tbl.setAttribute('class','trending_language_tbl'); | 171 tbl.setAttribute('class','trending_language_tbl'); |
172 var cnt =0; | 172 var cnt =0; |
173 for (k in data){ | 173 for (k in data){ |
174 cnt+=1; | 174 cnt+=1; |
175 var hide = cnt>2; | 175 var hide = cnt>2; |
176 var tr = document.createElement('tr'); | 176 var tr = document.createElement('tr'); |
177 if (hide){ | 177 if (hide){ |
178 tr.setAttribute('style','display:none'); | 178 tr.setAttribute('style','display:none'); |
179 tr.setAttribute('class','stats_hidden'); | 179 tr.setAttribute('class','stats_hidden'); |
180 } | 180 } |
181 var percentage = Math.round((data[k]/total*100),2); | 181 var percentage = Math.round((data[k]/total*100),2); |
182 var value = data[k]; | 182 var value = data[k]; |
183 var td1 = document.createElement('td'); | 183 var td1 = document.createElement('td'); |
184 td1.width=150; | 184 td1.width=150; |
185 var trending_language_label = document.createElement('div'); | 185 var trending_language_label = document.createElement('div'); |
186 trending_language_label.innerHTML = k; | 186 trending_language_label.innerHTML = k; |
187 td1.appendChild(trending_language_label); | 187 td1.appendChild(trending_language_label); |
188 | 188 |
189 var td2 = document.createElement('td'); | 189 var td2 = document.createElement('td'); |
190 td2.setAttribute('style','padding-right:14px !important'); | 190 td2.setAttribute('style','padding-right:14px !important'); |
191 var trending_language = document.createElement('div'); | 191 var trending_language = document.createElement('div'); |
192 var nr_files = value+" ${_('files')}"; | 192 var nr_files = value+" ${_('files')}"; |
193 | 193 |
194 trending_language.title = k+" "+nr_files; | 194 trending_language.title = k+" "+nr_files; |
195 | 195 |
196 if (percentage>20){ | 196 if (percentage>20){ |
197 trending_language.innerHTML = "<b style='font-size:0.8em'>"+percentage+"% "+nr_files+ "</b>"; | 197 trending_language.innerHTML = "<b style='font-size:0.8em'>"+percentage+"% "+nr_files+ "</b>"; |
198 } | 198 } |
199 else{ | 199 else{ |
200 trending_language.innerHTML = "<b style='font-size:0.8em'>"+percentage+"%</b>"; | 200 trending_language.innerHTML = "<b style='font-size:0.8em'>"+percentage+"%</b>"; |
201 } | 201 } |
202 | 202 |
203 trending_language.setAttribute("class", 'trending_language top-right-rounded-corner bottom-right-rounded-corner'); | 203 trending_language.setAttribute("class", 'trending_language top-right-rounded-corner bottom-right-rounded-corner'); |
204 trending_language.style.width=percentage+"%"; | 204 trending_language.style.width=percentage+"%"; |
205 td2.appendChild(trending_language); | 205 td2.appendChild(trending_language); |
206 | 206 |
207 tr.appendChild(td1); | 207 tr.appendChild(td1); |
208 tr.appendChild(td2); | 208 tr.appendChild(td2); |
209 tbl.appendChild(tr); | 209 tbl.appendChild(tr); |
210 if(cnt == 2){ | 210 if(cnt == 2){ |
211 var show_more = document.createElement('tr'); | 211 var show_more = document.createElement('tr'); |
212 var td=document.createElement('td'); | 212 var td=document.createElement('td'); |
213 lnk = document.createElement('a'); | 213 lnk = document.createElement('a'); |
214 lnk.href='#'; | 214 lnk.href='#'; |
215 lnk.innerHTML = "${_("show more")}"; | 215 lnk.innerHTML = "${_("show more")}"; |
216 lnk.id='code_stats_show_more'; | 216 lnk.id='code_stats_show_more'; |
217 td.appendChild(lnk); | 217 td.appendChild(lnk); |
218 show_more.appendChild(td); | 218 show_more.appendChild(td); |
219 show_more.appendChild(document.createElement('td')); | 219 show_more.appendChild(document.createElement('td')); |
220 tbl.appendChild(show_more); | 220 tbl.appendChild(show_more); |
221 } | 221 } |
222 | 222 |
223 } | 223 } |
224 if(no_data){ | 224 if(no_data){ |
225 var tr = document.createElement('tr'); | 225 var tr = document.createElement('tr'); |
226 var td1 = document.createElement('td'); | 226 var td1 = document.createElement('td'); |
227 td1.innerHTML = "${c.no_data_msg}"; | 227 td1.innerHTML = "${c.no_data_msg}"; |
228 tr.appendChild(td1); | 228 tr.appendChild(td1); |
229 tbl.appendChild(tr); | 229 tbl.appendChild(tr); |
230 } | 230 } |
231 YUD.get('lang_stats').appendChild(tbl); | 231 YUD.get('lang_stats').appendChild(tbl); |
232 YUE.on('code_stats_show_more','click',function(){ | 232 YUE.on('code_stats_show_more','click',function(){ |
233 l = YUD.getElementsByClassName('stats_hidden') | 233 l = YUD.getElementsByClassName('stats_hidden') |
234 for (e in l){ | 234 for (e in l){ |
235 YUD.setStyle(l[e],'display',''); | 235 YUD.setStyle(l[e],'display',''); |
236 }; | 236 }; |
237 YUD.setStyle(YUD.get('code_stats_show_more'), | 237 YUD.setStyle(YUD.get('code_stats_show_more'), |
238 'display','none'); | 238 'display','none'); |
239 }) | 239 }) |
240 | 240 |
241 | |
242 YUE.on('download_options','change',function(e){ | |
243 var new_cs = e.target.options[e.target.selectedIndex]; | |
244 var tmpl_links = {} | |
245 %for cnt,archive in enumerate(c.repo_info._get_archives()): | |
246 tmpl_links['${archive['type']}'] = '${h.link_to(archive['type'], | |
247 h.url('files_archive_home',repo_name=c.repo_info.name, | |
248 fname='__CS__'+archive['extension']),class_="archive_icon")}'; | |
249 %endfor | |
241 | 250 |
242 YUE.on('download_options','change',function(e){ | 251 |
243 var new_cs = e.target.options[e.target.selectedIndex].value; | 252 for(k in tmpl_links){ |
244 }) | 253 var s = YUD.get(k+'_link') |
245 | 254 title_tmpl = "${_('Download %s as %s') % ('__CS_NAME__',archive['type'])}"; |
246 </script> | 255 s.title = title_tmpl.replace('__CS_NAME__',new_cs.text) |
256 s.innerHTML = tmpl_links[k].replace('__CS__',new_cs.value); | |
257 } | |
258 | |
259 }) | |
260 | |
261 </script> | |
247 </div> | 262 </div> |
248 | 263 |
249 <div class="box box-right" style="min-height:455px"> | 264 <div class="box box-right" style="min-height:455px"> |
250 <!-- box / title --> | 265 <!-- box / title --> |
251 <div class="title"> | 266 <div class="title"> |