##// END OF EJS Templates
added deque with maxlen for py2.5 compat
added deque with maxlen for py2.5 compat

File last commit:

r2604:dfa5180c beta
r2729:e9e7c40b beta
Show More
home.py
66 lines | 2.2 KiB | text/x-python | PythonLexer
updated docs on every controller
r861 # -*- coding: utf-8 -*-
"""
rhodecode.controllers.home
~~~~~~~~~~~~~~~~~~~~~~~~~~
Home controller for Rhodecode
source code cleanup: remove trailing white space, normalize file endings
r1203
updated docs on every controller
r861 :created_on: Feb 18, 2010
:author: marcink
2012 copyrights
r1824 :copyright: (C) 2010-2012 Marcin Kuzminski <marcin@python-works.com>
updated docs on every controller
r861 :license: GPLv3, see COPYING for more details.
"""
fixed license issue #149
r1206 # This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
source code cleanup: remove trailing white space, normalize file endings
r1203 #
Fixes for raw_id, needed for git...
r636 # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
source code cleanup: remove trailing white space, normalize file endings
r1203 #
Fixes for raw_id, needed for git...
r636 # You should have received a copy of the GNU General Public License
fixed license issue #149
r1206 # along with this program. If not, see <http://www.gnu.org/licenses/>.
updated docs on every controller
r861
import logging
Fixes for raw_id, needed for git...
r636 from pylons import tmpl_context as c, request
Use webob exception as often as possible
r2242 from webob.exc import HTTPBadRequest
updated docs on every controller
r861
Fixes for raw_id, needed for git...
r636 from rhodecode.lib.auth import LoginRequired
from rhodecode.lib.base import BaseController, render
#227 Initial version of repository groups permissions system...
r1982 from rhodecode.model.db import Repository
implemented repo switcher list as dynamically loaded by xhr requestt....
r1158
Fixes for raw_id, needed for git...
r636 log = logging.getLogger(__name__)
pep8ify
r1212
Fixes for raw_id, needed for git...
r636 class HomeController(BaseController):
@LoginRequired()
def __before__(self):
super(HomeController, self).__before__()
def index(self):
removed obsolete sort code
r1482 c.repos_list = self.scm_model.get_repos()
#227 Initial version of repository groups permissions system...
r1982 c.groups = self.scm_model.get_repos_groups()
#401 repository group is automatically pre-selected when adding repos inside a repository group
r2130 c.group = None
Fixes for raw_id, needed for git...
r636 return render('/index.html')
implemented repo switcher list as dynamically loaded by xhr requestt....
r1158
def repo_switcher(self):
if request.is_xhr:
fixes #200, rewrote the whole caching mechanism to get rid of such problems. Now cached instances are attached...
r1366 all_repos = Repository.query().order_by(Repository.repo_name).all()
c.repos_list = self.scm_model.get_repos(all_repos,
Use simplified cached repos list for quick repo switcher, in some cases it can have 2-3x speed-up since it doesn't need to init the scms
r2604 sort_key='name_sort',
simple=True)
implemented repo switcher list as dynamically loaded by xhr requestt....
r1158 return render('/repo_switcher_list.html')
else:
return HTTPBadRequest()
lazy load of branches and tags menu...
r1608
def branch_tag_switcher(self, repo_name):
if request.is_xhr:
fixed xhr check for tags-branches view
r1609 c.rhodecode_db_repo = Repository.get_by_repo_name(c.repo_name)
c.rhodecode_repo = c.rhodecode_db_repo.scm_instance
lazy load of branches and tags menu...
r1608 return render('/switch_to_list.html')
else:
return HTTPBadRequest()