Mercurial > kallithea
view rhodecode/templates/base/base.html @ 2375:bc2d8c03c050 beta
Implemented #467 Journal logs comments on changesets
- added created/updated user action to journal
- added created/updated users group action journal
- added ip adresses to most of action_log calls to track IP changes
- rewrote action_parser to simpler and more efficient solution
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Sun, 03 Jun 2012 00:40:14 +0200 |
parents | 6020e3884a58 |
children | 82a88013a3fd 1bc579bcd67a |
line wrap: on
line source
## -*- coding: utf-8 -*- <%inherit file="root.html"/> <!-- HEADER --> <div id="header"> <div id="header-inner" class="title hover"> <div id="logo"> <h1><a href="${h.url('home')}">${c.rhodecode_name}</a></h1> </div> <!-- MENU --> ${self.page_nav()} <!-- END MENU --> ${self.body()} </div> </div> <!-- END HEADER --> <!-- CONTENT --> <div id="content"> <div class="flash_msg"> <% messages = h.flash.pop_messages() %> % if messages: <ul id="flash-messages"> % for message in messages: <li class="${message.category}_msg">${message}</li> % endfor </ul> % endif </div> <div id="main"> ${next.main()} </div> </div> <!-- END CONTENT --> <!-- FOOTER --> <div id="footer"> <div id="footer-inner" class="title"> <div> <p class="footer-link"> <a href="${h.url('bugtracker')}">${_('Submit a bug')}</a> </p> <p class="footer-link-right"> <a href="${h.url('rhodecode_official')}">RhodeCode${'-%s' % c.rhodecode_instanceid if c.rhodecode_instanceid else ''}</a> ${c.rhodecode_version} © 2010-${h.datetime.today().year} by Marcin Kuzminski </p> </div> </div> </div> <!-- END FOOTER --> ### MAKO DEFS ### <%def name="page_nav()"> ${self.menu()} </%def> <%def name="breadcrumbs()"> <div class="breadcrumbs"> ${self.breadcrumbs_links()} </div> </%def> <%def name="usermenu()"> <div class="user-menu"> <div class="container"> <div class="gravatar" id="quick_login_link"> <img alt="gravatar" src="${h.gravatar_url(c.rhodecode_user.email,24)}" /> </div> %if c.rhodecode_user.username != 'default' and c.unread_notifications != 0: <div class="notifications"> <a id="notification_counter" href="${h.url('notifications')}">${c.unread_notifications}</a> </div> %endif </div> <div id="quick_login" style="display:none"> %if c.rhodecode_user.username == 'default': <h4>${_('Login to your account')}</h4> ${h.form(h.url('login_home',came_from=h.url.current()))} <div class="form"> <div class="fields"> <div class="field"> <div class="label"> <label for="username">${_('Username')}:</label> </div> <div class="input"> ${h.text('username',class_='focus',size=40)} </div> </div> <div class="field"> <div class="label"> <label for="password">${_('Password')}:</label> </div> <div class="input"> ${h.password('password',class_='focus',size=40)} </div> </div> <div class="buttons"> <div class="password_forgoten">${h.link_to(_('Forgot password ?'),h.url('reset_password'))}</div> <div class="register"> %if h.HasPermissionAny('hg.admin', 'hg.register.auto_activate', 'hg.register.manual_activate')(): ${h.link_to(_("Don't have an account ?"),h.url('register'))} %endif </div> <div class="submit"> ${h.submit('sign_in',_('Log In'),class_="ui-btn xsmall")} </div> </div> </div> </div> ${h.end_form()} %else: <div class="links_left"> <div class="full_name">${c.rhodecode_user.full_name_or_username}</div> <div class="email">${c.rhodecode_user.email}</div> <div class="big_gravatar"><img alt="gravatar" src="${h.gravatar_url(c.rhodecode_user.email,48)}" /></div> <div class="inbox"><a href="${h.url('notifications')}">${_('Inbox')}: ${c.unread_notifications}</a></div> </div> <div class="links_right"> <ol class="links"> <li>${h.link_to(_(u'Home'),h.url('home'))}</li> <li>${h.link_to(_(u'Journal'),h.url('journal'))}</li> <li>${h.link_to(_(u'My account'),h.url('admin_settings_my_account'))}</li> <li class="logout">${h.link_to(_(u'Log Out'),h.url('logout_home'))}</li> </ol> </div> %endif </div> </div> </%def> <%def name="menu(current=None)"> <% def is_current(selected): if selected == current: return h.literal('class="current"') %> %if current not in ['home','admin']: ##REGULAR MENU <ul id="quick"> <!-- repo switcher --> <li> <a class="menu_link" id="repo_switcher" title="${_('Switch repository')}" href="#"> <span class="icon"> <img src="${h.url('/images/icons/database.png')}" alt="${_('Products')}" /> </span> <span>↓</span> </a> <ul id="repo_switcher_list" class="repo_switcher"> <li> <a href="#">${_('loading...')}</a> </li> </ul> </li> <li ${is_current('summary')}> <a class="menu_link" title="${_('Summary')}" href="${h.url('summary_home',repo_name=c.repo_name)}"> <span class="icon"> <img src="${h.url('/images/icons/clipboard_16.png')}" alt="${_('Summary')}" /> </span> <span>${_('Summary')}</span> </a> </li> <li ${is_current('changelog')}> <a class="menu_link" title="${_('Changelog')}" href="${h.url('changelog_home',repo_name=c.repo_name)}"> <span class="icon"> <img src="${h.url('/images/icons/time.png')}" alt="${_('Changelog')}" /> </span> <span>${_('Changelog')}</span> </a> </li> <li ${is_current('switch_to')}> <a class="menu_link" id="branch_tag_switcher" title="${_('Switch to')}" href="#"> <span class="icon"> <img src="${h.url('/images/icons/arrow_switch.png')}" alt="${_('Switch to')}" /> </span> <span>${_('Switch to')}</span> </a> <ul id="switch_to_list" class="switch_to"> <li><a href="#">${_('loading...')}</a></li> </ul> </li> <li ${is_current('files')}> <a class="menu_link" title="${_('Files')}" href="${h.url('files_home',repo_name=c.repo_name)}"> <span class="icon"> <img src="${h.url('/images/icons/file.png')}" alt="${_('Files')}" /> </span> <span>${_('Files')}</span> </a> </li> <li ${is_current('options')}> <a class="menu_link" title="${_('Options')}" href="#"> <span class="icon"> <img src="${h.url('/images/icons/table_gear.png')}" alt="${_('Admin')}" /> </span> <span>${_('Options')}</span> </a> <ul> %if h.HasRepoPermissionAll('repository.admin')(c.repo_name): %if h.HasPermissionAll('hg.admin')('access settings on repository'): <li>${h.link_to(_('settings'),h.url('edit_repo',repo_name=c.repo_name),class_='settings')}</li> %else: <li>${h.link_to(_('settings'),h.url('repo_settings_home',repo_name=c.repo_name),class_='settings')}</li> %endif %endif <li>${h.link_to(_('fork'),h.url('repo_fork_home',repo_name=c.repo_name),class_='fork')}</li> <li>${h.link_to(_('search'),h.url('search_repo',search_repo=c.repo_name),class_='search')}</li> % if h.HasPermissionAll('hg.admin')('access admin main page'): <li> ${h.link_to(_('admin'),h.url('admin_home'),class_='admin')} <%def name="admin_menu()"> <ul> <li>${h.link_to(_('journal'),h.url('admin_home'),class_='journal')}</li> <li>${h.link_to(_('repositories'),h.url('repos'),class_='repos')}</li> <li>${h.link_to(_('repositories groups'),h.url('repos_groups'),class_='repos_groups')}</li> <li>${h.link_to(_('users'),h.url('users'),class_='users')}</li> <li>${h.link_to(_('users groups'),h.url('users_groups'),class_='groups')}</li> <li>${h.link_to(_('permissions'),h.url('edit_permission',id='default'),class_='permissions')}</li> <li>${h.link_to(_('ldap'),h.url('ldap_home'),class_='ldap')}</li> <li class="last">${h.link_to(_('settings'),h.url('admin_settings'),class_='settings')}</li> </ul> </%def> ${admin_menu()} </li> % endif </ul> </li> <li> <a class="menu_link" title="${_('Followers')}" href="${h.url('repo_followers_home',repo_name=c.repo_name)}"> <span class="icon_short"> <img src="${h.url('/images/icons/heart.png')}" alt="${_('Followers')}" /> </span> <span id="current_followers_count" class="short">${c.repository_followers}</span> </a> </li> <li> <a class="menu_link" title="${_('Forks')}" href="${h.url('repo_forks_home',repo_name=c.repo_name)}"> <span class="icon_short"> <img src="${h.url('/images/icons/arrow_divide.png')}" alt="${_('Forks')}" /> </span> <span class="short">${c.repository_forks}</span> </a> </li> ${usermenu()} </ul> <script type="text/javascript"> YUE.on('repo_switcher','mouseover',function(){ function qfilter(){ var nodes = YUQ('ul#repo_switcher_list li a.repo_name'); var target = 'q_filter_rs'; var func = function(node){ return node.parentNode; } q_filter(target,nodes,func); } var loaded = YUD.hasClass('repo_switcher','loaded'); if(!loaded){ YUD.addClass('repo_switcher','loaded'); ypjax("${h.url('repo_switcher')}",'repo_switcher_list', function(o){qfilter();}, function(o){YUD.removeClass('repo_switcher','loaded');} ,null); } return false; }); YUE.on('branch_tag_switcher','mouseover',function(){ var loaded = YUD.hasClass('branch_tag_switcher','loaded'); if(!loaded){ YUD.addClass('branch_tag_switcher','loaded'); ypjax("${h.url('branch_tag_switcher',repo_name=c.repo_name)}",'switch_to_list', function(o){}, function(o){YUD.removeClass('branch_tag_switcher','loaded');} ,null); } return false; }); </script> %else: ##ROOT MENU <ul id="quick"> <li> <a class="menu_link" title="${_('Home')}" href="${h.url('home')}"> <span class="icon"> <img src="${h.url('/images/icons/home_16.png')}" alt="${_('Home')}" /> </span> <span>${_('Home')}</span> </a> </li> %if c.rhodecode_user.username != 'default': <li> <a class="menu_link" title="${_('Journal')}" href="${h.url('journal')}"> <span class="icon"> <img src="${h.url('/images/icons/book.png')}" alt="${_('Journal')}" /> </span> <span>${_('Journal')}</span> </a> </li> %else: <li> <a class="menu_link" title="${_('Public journal')}" href="${h.url('public_journal')}"> <span class="icon"> <img src="${h.url('/images/icons/book.png')}" alt="${_('Public journal')}" /> </span> <span>${_('Public journal')}</span> </a> </li> %endif <li> <a class="menu_link" title="${_('Search')}" href="${h.url('search')}"> <span class="icon"> <img src="${h.url('/images/icons/search_16.png')}" alt="${_('Search')}" /> </span> <span>${_('Search')}</span> </a> </li> %if h.HasPermissionAll('hg.admin')('access admin main page'): <li ${is_current('admin')}> <a class="menu_link" title="${_('Admin')}" href="${h.url('admin_home')}"> <span class="icon"> <img src="${h.url('/images/icons/cog_edit.png')}" alt="${_('Admin')}" /> </span> <span>${_('Admin')}</span> </a> ${admin_menu()} </li> %endif ${usermenu()} </ul> %endif </%def>