Mercurial > public > src > rhodecode
annotate pylons_app/controllers/hg.py @ 135:28f28d423268
removed ununsed imports
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Sun, 09 May 2010 13:20:52 +0200 |
parents | 8c038e588a42 |
children | 8e01265fb586 |
rev | line source |
---|---|
0 | 1 #!/usr/bin/python |
2 # -*- coding: utf-8 -*- | |
135
28f28d423268
removed ununsed imports
Marcin Kuzminski <marcin@python-works.com>
parents:
115
diff
changeset
|
3 import logging |
93
aec4c0071cb3
added empty controllers for branches tags files graph, routing and test for them
Marcin Kuzminski <marcin@python-works.com>
parents:
82
diff
changeset
|
4 from operator import itemgetter |
135
28f28d423268
removed ununsed imports
Marcin Kuzminski <marcin@python-works.com>
parents:
115
diff
changeset
|
5 from pylons import tmpl_context as c, request, config |
76
71401840ed86
refactoring update
Marcin Kuzminski <marcin@python-blog.com>
parents:
74
diff
changeset
|
6 from pylons_app.lib.base import BaseController, render |
82
670713507d03
Moved summary to seperate controller,
Marcin Kuzminski <marcin@python-blog.com>
parents:
80
diff
changeset
|
7 from pylons_app.lib.utils import get_repo_slug |
58
8fb1abd4178a
Added hg model,implemented removal of repos, added HgModel for fetching repos(with generator)
Marcin Kuzminski <marcin@python-blog.com>
parents:
57
diff
changeset
|
8 from pylons_app.model.hg_model import HgModel |
93
aec4c0071cb3
added empty controllers for branches tags files graph, routing and test for them
Marcin Kuzminski <marcin@python-works.com>
parents:
82
diff
changeset
|
9 from beaker.cache import cache_region |
10
525ed90e4577
major app speedup moved the wsgi creation to app globals, in order to make it run only once.
Marcin Kuzminski
parents:
8
diff
changeset
|
10 log = logging.getLogger(__name__) |
0 | 11 |
12 class HgController(BaseController): | |
21 | 13 |
14 def __before__(self): | |
41
71ffa932799d
Added app basic auth.
Marcin Kuzminski <marcin@python-blog.com>
parents:
37
diff
changeset
|
15 c.repos_prefix = config['repos_name'] |
82
670713507d03
Moved summary to seperate controller,
Marcin Kuzminski <marcin@python-blog.com>
parents:
80
diff
changeset
|
16 c.repo_name = get_repo_slug(request) |
670713507d03
Moved summary to seperate controller,
Marcin Kuzminski <marcin@python-blog.com>
parents:
80
diff
changeset
|
17 |
55
e00dccb6f211
Implemented index page using vcs
Marcin Kuzminski <marcin@python-blog.com>
parents:
43
diff
changeset
|
18 def index(self): |
93
aec4c0071cb3
added empty controllers for branches tags files graph, routing and test for them
Marcin Kuzminski <marcin@python-works.com>
parents:
82
diff
changeset
|
19 |
58
8fb1abd4178a
Added hg model,implemented removal of repos, added HgModel for fetching repos(with generator)
Marcin Kuzminski <marcin@python-blog.com>
parents:
57
diff
changeset
|
20 hg_model = HgModel() |
93
aec4c0071cb3
added empty controllers for branches tags files graph, routing and test for them
Marcin Kuzminski <marcin@python-works.com>
parents:
82
diff
changeset
|
21 @cache_region('short_term', 'repo_list') |
aec4c0071cb3
added empty controllers for branches tags files graph, routing and test for them
Marcin Kuzminski <marcin@python-works.com>
parents:
82
diff
changeset
|
22 def _list(): |
aec4c0071cb3
added empty controllers for branches tags files graph, routing and test for them
Marcin Kuzminski <marcin@python-works.com>
parents:
82
diff
changeset
|
23 return list(hg_model.get_repos()) |
aec4c0071cb3
added empty controllers for branches tags files graph, routing and test for them
Marcin Kuzminski <marcin@python-works.com>
parents:
82
diff
changeset
|
24 |
aec4c0071cb3
added empty controllers for branches tags files graph, routing and test for them
Marcin Kuzminski <marcin@python-works.com>
parents:
82
diff
changeset
|
25 c.repos_list = _list() |
57
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
26 c.current_sort = request.GET.get('sort', 'name') |
55
e00dccb6f211
Implemented index page using vcs
Marcin Kuzminski <marcin@python-blog.com>
parents:
43
diff
changeset
|
27 |
57
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
28 cs = c.current_sort |
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
29 c.cs_slug = cs.replace('-', '') |
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
30 sortables = ['name', 'description', 'last_change', 'tip', 'contact'] |
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
31 |
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
32 if cs and c.cs_slug in sortables: |
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
33 sort_key = c.cs_slug + '_sort' |
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
34 if cs.startswith('-'): |
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
35 c.repos_list.sort(key=itemgetter(sort_key), reverse=True) |
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
36 else: |
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
37 c.repos_list.sort(key=itemgetter(sort_key), reverse=False) |
e96bc5a01490
Implemented main page sorting
Marcin Kuzminski <marcin@python-blog.com>
parents:
56
diff
changeset
|
38 |
55
e00dccb6f211
Implemented index page using vcs
Marcin Kuzminski <marcin@python-blog.com>
parents:
43
diff
changeset
|
39 return render('/index.html') |