Mercurial > kallithea
changeset 3289:666fc6ac9ce5 beta
search: repo search is a repo thing - show it that way in ui and url
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Wed, 30 Jan 2013 21:17:03 +0100 |
parents | 6cdf2cd9d9d8 |
children | e4025b361fcf |
files | rhodecode/config/routing.py rhodecode/controllers/search.py rhodecode/templates/base/base.html rhodecode/templates/search/search.html |
diffstat | 4 files changed, 40 insertions(+), 32 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/config/routing.py Wed Jan 30 21:13:47 2013 +0100 +++ b/rhodecode/config/routing.py Wed Jan 30 21:17:03 2013 +0100 @@ -389,8 +389,12 @@ #SEARCH rmap.connect('search', '%s/search' % ADMIN_PREFIX, controller='search',) - rmap.connect('search_repo', '%s/search/{search_repo:.*}' % ADMIN_PREFIX, - controller='search') + rmap.connect('search_repo_admin', '%s/search/{repo_name:.*}' % ADMIN_PREFIX, + controller='search') + rmap.connect('search_repo', '/{repo_name:.*?}/search', + controller='search', + conditions=dict(function=check_repo), + ) #LOGIN/LOGOUT/REGISTER/SIGN IN rmap.connect('login_home', '%s/login' % ADMIN_PREFIX, controller='login')
--- a/rhodecode/controllers/search.py Wed Jan 30 21:13:47 2013 +0100 +++ b/rhodecode/controllers/search.py Wed Jan 30 21:17:03 2013 +0100 @@ -29,7 +29,7 @@ from pylons import request, config, tmpl_context as c from rhodecode.lib.auth import LoginRequired -from rhodecode.lib.base import BaseController, render +from rhodecode.lib.base import BaseRepoController, render from rhodecode.lib.indexers import CHGSETS_SCHEMA, SCHEMA, CHGSET_IDX_NAME, \ IDX_NAME, WhooshResultWrapper @@ -46,14 +46,14 @@ log = logging.getLogger(__name__) -class SearchController(BaseController): +class SearchController(BaseRepoController): @LoginRequired() def __before__(self): super(SearchController, self).__before__() - def index(self, search_repo=None): - c.repo_name = search_repo + def index(self, repo_name=None): + c.repo_name = repo_name c.formated_results = [] c.runtime = '' c.cur_query = request.GET.get('q', None)
--- a/rhodecode/templates/base/base.html Wed Jan 30 21:13:47 2013 +0100 +++ b/rhodecode/templates/base/base.html Wed Jan 30 21:17:03 2013 +0100 @@ -221,7 +221,7 @@ %if c.rhodecode_db_repo.fork: <li>${h.link_to(_('compare fork'),h.url('compare_url',repo_name=c.repo_name,org_ref_type='branch',org_ref=request.GET.get('branch') or 'default',other_ref_type='branch',other_ref='default',repo=c.rhodecode_db_repo.fork.repo_name),class_='compare_request')}</li> %endif - <li>${h.link_to(_('search'),h.url('search_repo',search_repo=c.repo_name),class_='search')}</li> + <li>${h.link_to(_('search'),h.url('search_repo',repo_name=c.repo_name),class_='search')}</li> %if h.HasRepoPermissionAny('repository.write','repository.admin')(c.repo_name) and c.rhodecode_db_repo.enable_locking: %if c.rhodecode_db_repo.locked[0]:
--- a/rhodecode/templates/search/search.html Wed Jan 30 21:13:47 2013 +0100 +++ b/rhodecode/templates/search/search.html Wed Jan 30 21:17:03 2013 +0100 @@ -1,43 +1,47 @@ ## -*- coding: utf-8 -*- <%inherit file="/base/base.html"/> + <%def name="title()"> - %if c.cur_query: + %if c.repo_name: + ${_('Search repository')} ${c.repo_name} - ${c.rhodecode_name} + %else: + ${_('Search in all repositories')} + %endif +</%def> + +<%def name="breadcrumbs_links()"> + %if c.repo_name: + ${h.link_to(_(u'Home'),h.url('/'))} + » + ${h.link_to(c.repo_name,h.url('summary_home',repo_name=c.repo_name))} + » + ${_('Search')} + %else: + ${_('Search in all repositories')} + %endif + %if c.cur_query: + » + ${c.cur_query} + %endif +</%def> + +<%def name="page_nav()"> %if c.repo_name: - ${_('Search "%s" in repository: %s') % (c.cur_query, c.repo_name)} - %else: - ${_('Search "%s" in all repositories') % c.cur_query} - %endif - %else: - %if c.repo_name: - ${_('Search in repository: %s') % c.repo_name} + ${self.menu('options')} %else: - ${_('Search in all repositories')} + ${self.menu('search')} %endif - %endif - - ${c.rhodecode_name} -</%def> -<%def name="breadcrumbs()"> - ${c.rhodecode_name} -</%def> -<%def name="page_nav()"> - ${self.menu('search')} </%def> <%def name="main()"> <div class="box"> <!-- box / title --> <div class="title"> - <h5> - %if c.repo_name: - ${_('Search in repository: %s') % c.repo_name} - %else: - ${_('Search in all repositories')} - %endif - </h5> + ${self.breadcrumbs()} </div> <!-- end box / title --> %if c.repo_name: - ${h.form(h.url('search_repo',search_repo=c.repo_name),method='get')} + ${h.form(h.url('search_repo',repo_name=c.repo_name),method='get')} %else: ${h.form(h.url('search'),method='get')} %endif