comparison pylons_app/controllers/summary.py @ 318:fdf9f6ee5217

Implemented permissions into hg app, secured admin controllers, templates and repository specific controllers
author Marcin Kuzminski <marcin@python-works.com>
date Tue, 29 Jun 2010 20:45:03 +0200
parents 237470e64bb8
children 558eb7c5028f
comparison
equal deleted inserted replaced
317:c961b78ff0a0 318:fdf9f6ee5217
21 Created on April 18, 2010 21 Created on April 18, 2010
22 summary controller for pylons 22 summary controller for pylons
23 @author: marcink 23 @author: marcink
24 """ 24 """
25 from pylons import tmpl_context as c, request 25 from pylons import tmpl_context as c, request
26 from pylons_app.lib.auth import LoginRequired 26 from pylons_app.lib.auth import LoginRequired, HasRepoPermissionAnyDecorator
27 from pylons_app.lib.base import BaseController, render 27 from pylons_app.lib.base import BaseController, render
28 from pylons_app.model.hg_model import HgModel 28 from pylons_app.model.hg_model import HgModel
29 from webhelpers.paginate import Page 29 from webhelpers.paginate import Page
30 import logging 30 import logging
31
32 log = logging.getLogger(__name__) 31 log = logging.getLogger(__name__)
33 32
34 class SummaryController(BaseController): 33 class SummaryController(BaseController):
35 34
36 @LoginRequired() 35 @LoginRequired()
36 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
37 'repository.admin')
37 def __before__(self): 38 def __before__(self):
38 super(SummaryController, self).__before__() 39 super(SummaryController, self).__before__()
39 40
40 def index(self): 41 def index(self):
41 hg_model = HgModel() 42 hg_model = HgModel()
42 c.repo_info = hg_model.get_repo(c.repo_name) 43 c.repo_info = hg_model.get_repo(c.repo_name)
43 c.repo_changesets = Page(list(c.repo_info[:10]), page=1, items_per_page=20) 44 c.repo_changesets = Page(list(c.repo_info[:10]), page=1, items_per_page=20)
44 e = request.environ 45 e = request.environ