comparison pylons_app/templates/base/base.html @ 182:11e8eb5a92e3

new way of menu generation for base, and all admin pages
author Marcin Kuzminski <marcin@python-works.com>
date Fri, 21 May 2010 23:51:02 +0200
parents 8dd7305fbc2d
children 3380ca40cdba
comparison
equal deleted inserted replaced
181:55c875d8608b 182:11e8eb5a92e3
37 37
38 </div> 38 </div>
39 </body> 39 </body>
40 </html> 40 </html>
41 41
42 ### MAKO DEFS ###
43
42 <%def name="page_nav()"> 44 <%def name="page_nav()">
43 ${self.menu()} 45 ${self.menu()}
44 </%def> 46 </%def>
45 47
46
47 <%def name="menu(current)"> 48 <%def name="menu(current)">
48 <script type="text/javascript"> 49 <%
49 YAHOO.util.Event.onDOMReady(function(){ 50 def is_current(selected):
50 YAHOO.util.Event.addListener('repo_switcher','click',function(){ 51 if selected == current:
51 if(YAHOO.util.Dom.hasClass('repo_switcher','selected')){ 52 return 'class=current'
52 YAHOO.util.Dom.setStyle('switch_repos','display','none'); 53 %>
53 YAHOO.util.Dom.setStyle('repo_switcher','background',''); 54 %if current not in ['home','admin']:
54 YAHOO.util.Dom.removeClass('repo_switcher','selected'); 55 <script type="text/javascript">
55 } 56 YAHOO.util.Event.onDOMReady(function(){
56 else{ 57 YAHOO.util.Event.addListener('repo_switcher','click',function(){
57 YAHOO.util.Dom.setStyle('switch_repos','display',''); 58 if(YAHOO.util.Dom.hasClass('repo_switcher','selected')){
58 YAHOO.util.Dom.setStyle('repo_switcher','background','#FFFFFF'); 59 YAHOO.util.Dom.setStyle('switch_repos','display','none');
59 YAHOO.util.Dom.addClass('repo_switcher','selected'); 60 YAHOO.util.Dom.setStyle('repo_switcher','background','');
60 } 61 YAHOO.util.Dom.removeClass('repo_switcher','selected');
61 }); 62 }
62 YAHOO.util.Event.addListener('repos_list','change',function(e){ 63 else{
63 var wa = YAHOO.util.Dom.get('repos_list').value; 64 YAHOO.util.Dom.setStyle('switch_repos','display','');
64 65 YAHOO.util.Dom.setStyle('repo_switcher','background','#FFFFFF');
65 var url = "${h.url('summary_home',repo_name='__REPLACE__')}".replace('__REPLACE__',wa); 66 YAHOO.util.Dom.addClass('repo_switcher','selected');
66 window.location = url; 67 }
67 }) 68 });
68 }); 69 YAHOO.util.Event.addListener('repos_list','change',function(e){
69 </script> 70 var wa = YAHOO.util.Dom.get('repos_list').value;
70 <ul class="page-nav"> 71
71 <li> 72 var url = "${h.url('summary_home',repo_name='__REPLACE__')}".replace('__REPLACE__',wa);
72 <a id="repo_switcher" title="${_('Switch repository')}" href="#">&darr;</a> 73 window.location = url;
73 <div id="switch_repos" style="display:none;position: absolute;width: 150px;height: 25px"> 74 })
74 <select id="repos_list" size="=10"> 75 });
75 %for repo in c.cached_repo_list: 76 </script>
76 <option value="${repo['name']}">${repo['name']}</option> 77 <ul class="page-nav">
77 %endfor 78 <li>
78 </select> 79 <a id="repo_switcher" title="${_('Switch repository')}" href="#">&darr;</a>
79 </div> 80 <div id="switch_repos" style="display:none;position: absolute;width: 150px;height: 25px">
80 </li> 81 <select id="repos_list" size="=10">
81 <%def name="is_current(selected)"> 82 %for repo in c.cached_repo_list:
82 <% 83 <option value="${repo['name']}">${repo['name']}</option>
83 if selected == current: 84 %endfor
84 return 'class="current"' 85 </select>
85 %> 86 </div>
86 </%def> 87 </li>
87 <li ${is_current('summary')|n}>${h.link_to(_('summary'),h.url('summary_home',repo_name=c.repo_name))}</li> 88 <li ${is_current('summary')}>${h.link_to(_('summary'),h.url('summary_home',repo_name=c.repo_name))}</li>
88 <li ${is_current('shortlog')|n}>${h.link_to(_('shortlog'),h.url('shortlog_home',repo_name=c.repo_name))}</li> 89 <li ${is_current('shortlog')}>${h.link_to(_('shortlog'),h.url('shortlog_home',repo_name=c.repo_name))}</li>
89 <li ${is_current('changelog')|n}>${h.link_to(_('changelog'),h.url('changelog_home',repo_name=c.repo_name))}</li> 90 <li ${is_current('changelog')}>${h.link_to(_('changelog'),h.url('changelog_home',repo_name=c.repo_name))}</li>
90 <li ${is_current('branches')|n}>${h.link_to(_('branches'),h.url('branches_home',repo_name=c.repo_name))}</li> 91 <li ${is_current('branches')}>${h.link_to(_('branches'),h.url('branches_home',repo_name=c.repo_name))}</li>
91 <li ${is_current('tags')|n}>${h.link_to(_('tags'),h.url('tags_home',repo_name=c.repo_name))}</li> 92 <li ${is_current('tags')}>${h.link_to(_('tags'),h.url('tags_home',repo_name=c.repo_name))}</li>
92 <li ${is_current('files')|n}>${h.link_to(_('files'),h.url('files_home',repo_name=c.repo_name))}</li> 93 <li ${is_current('files')}>${h.link_to(_('files'),h.url('files_home',repo_name=c.repo_name))}</li>
93 </ul> 94 </ul>
95 %else:
96 <ul class="page-nav">
97 <li ${is_current('home')}>${h.link_to(_('Home'),h.url('/'))}</li>
98 <li ${is_current('admin')}>${h.link_to(_('Admin'),h.url('admin_home'))}</li>
99 <li class="logout">${h.link_to(u'Logout',h.url('logout_home'))}</li>
100 </ul>
101 %endif
94 </%def> 102 </%def>
95 103
96 <%def name="css()"> 104 <%def name="css()">
97 <link rel="stylesheet" href="/css/monoblue_custom.css" type="text/css" /> 105 <link rel="stylesheet" href="/css/monoblue_custom.css" type="text/css" />
98 </%def> 106 </%def>