comparison rhodecode/controllers/tags.py @ 1045:3fc9183e05dd beta

another major codes rewrite: - created BaseRepo controller for all repo specific controller, and added common data propagation - removed obosete codes, and made optimizations, removed to often calls to RepoModel - fixed found bugs in files controller that generated unhandled 500 errors - cache issues - removed repo_branches global template values - journal fixes - main repo list is fully dict now it's less resource heavy that way
author Marcin Kuzminski <marcin@python-works.com>
date Tue, 15 Feb 2011 01:36:07 +0100
parents 5554aa9c2480
children e654898120b6
comparison
equal deleted inserted replaced
1044:f3402cb92fdf 1045:3fc9183e05dd
27 import logging 27 import logging
28 28
29 from pylons import tmpl_context as c 29 from pylons import tmpl_context as c
30 30
31 from rhodecode.lib.auth import LoginRequired, HasRepoPermissionAnyDecorator 31 from rhodecode.lib.auth import LoginRequired, HasRepoPermissionAnyDecorator
32 from rhodecode.lib.base import BaseController, render 32 from rhodecode.lib.base import BaseRepoController, render
33 from rhodecode.lib.utils import OrderedDict 33 from rhodecode.lib.utils import OrderedDict
34 from rhodecode.model.scm import ScmModel
35 34
36 log = logging.getLogger(__name__) 35 log = logging.getLogger(__name__)
37 36
38 class TagsController(BaseController): 37 class TagsController(BaseRepoController):
39 38
40 @LoginRequired() 39 @LoginRequired()
41 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write', 40 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
42 'repository.admin') 41 'repository.admin')
43 def __before__(self): 42 def __before__(self):
44 super(TagsController, self).__before__() 43 super(TagsController, self).__before__()
45 44
46 def index(self): 45 def index(self):
47 c.repo_info, dbrepo = ScmModel().get(c.repo_name, retval='repo')
48 c.repo_tags = OrderedDict() 46 c.repo_tags = OrderedDict()
49 for name, hash_ in c.repo_info.tags.items(): 47 for name, hash_ in c.rhodecode_repo.tags.items():
50 c.repo_tags[name] = c.repo_info.get_changeset(hash_) 48 c.repo_tags[name] = c.rhodecode_repo.get_changeset(hash_)
51 49
52 return render('tags/tags.html') 50 return render('tags/tags.html')