Mercurial > kallithea
annotate rhodecode/controllers/summary.py @ 936:e1c9903d7e38 beta
fixed wrong clone url for anonymous access
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Mon, 10 Jan 2011 20:37:46 +0100 |
parents | 811fa5d45de8 |
children | 6489d9b7791d |
rev | line source |
---|---|
763
0dad296d2a57
extended trending languages to more entries, implemented new faster and "fancy"
Marcin Kuzminski <marcin@python-works.com>
parents:
734
diff
changeset
|
1 # -*- coding: utf-8 -*- |
0dad296d2a57
extended trending languages to more entries, implemented new faster and "fancy"
Marcin Kuzminski <marcin@python-works.com>
parents:
734
diff
changeset
|
2 """ |
860
5f7731e3ab4d
fixed spelling mistakes, and some minor docs bugs
Marcin Kuzminski <marcin@python-works.com>
parents:
820
diff
changeset
|
3 rhodecode.controllers.summary |
5f7731e3ab4d
fixed spelling mistakes, and some minor docs bugs
Marcin Kuzminski <marcin@python-works.com>
parents:
820
diff
changeset
|
4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
763
0dad296d2a57
extended trending languages to more entries, implemented new faster and "fancy"
Marcin Kuzminski <marcin@python-works.com>
parents:
734
diff
changeset
|
5 |
0dad296d2a57
extended trending languages to more entries, implemented new faster and "fancy"
Marcin Kuzminski <marcin@python-works.com>
parents:
734
diff
changeset
|
6 Summary controller for Rhodecode |
820
de5d9de45146
fixed message about disabled stats, template fixes for summary page
Marcin Kuzminski <marcin@python-works.com>
parents:
810
diff
changeset
|
7 |
763
0dad296d2a57
extended trending languages to more entries, implemented new faster and "fancy"
Marcin Kuzminski <marcin@python-works.com>
parents:
734
diff
changeset
|
8 :created_on: Apr 18, 2010 |
0dad296d2a57
extended trending languages to more entries, implemented new faster and "fancy"
Marcin Kuzminski <marcin@python-works.com>
parents:
734
diff
changeset
|
9 :author: marcink |
902
07a6e8c65526
fixed copyright year to 2011
Marcin Kuzminski <marcin@python-works.com>
parents:
860
diff
changeset
|
10 :copyright: (C) 2009-2011 Marcin Kuzminski <marcin@python-works.com> |
763
0dad296d2a57
extended trending languages to more entries, implemented new faster and "fancy"
Marcin Kuzminski <marcin@python-works.com>
parents:
734
diff
changeset
|
11 :license: GPLv3, see COPYING for more details. |
0dad296d2a57
extended trending languages to more entries, implemented new faster and "fancy"
Marcin Kuzminski <marcin@python-works.com>
parents:
734
diff
changeset
|
12 """ |
252
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
13 # This program is free software; you can redistribute it and/or |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
14 # modify it under the terms of the GNU General Public License |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
15 # as published by the Free Software Foundation; version 2 |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
16 # of the License or (at your opinion) any later version of the license. |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
17 # |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
18 # This program is distributed in the hope that it will be useful, |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
19 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
21 # GNU General Public License for more details. |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
22 # |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
23 # You should have received a copy of the GNU General Public License |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
24 # along with this program; if not, write to the Free Software |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
25 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
3782a6d698af
licensing updates, code cleanups
Marcin Kuzminski <marcin@python-works.com>
parents:
245
diff
changeset
|
26 # MA 02110-1301, USA. |
763
0dad296d2a57
extended trending languages to more entries, implemented new faster and "fancy"
Marcin Kuzminski <marcin@python-works.com>
parents:
734
diff
changeset
|
27 |
810
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
28 import calendar |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
29 import logging |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
30 from time import mktime |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
31 from datetime import datetime, timedelta |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
32 |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
33 from vcs.exceptions import ChangesetError |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
34 |
486
5c376ac2d4c9
rewrote graph plotting, added zooming and json dump insted of stupid string formating.
Marcin Kuzminski <marcin@python-works.com>
parents:
473
diff
changeset
|
35 from pylons import tmpl_context as c, request, url |
810
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
36 from pylons.i18n.translation import _ |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
37 |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
38 from rhodecode.model.scm import ScmModel |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
39 from rhodecode.model.db import Statistics |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
40 |
547
1e757ac98988
renamed project to rhodecode
Marcin Kuzminski <marcin@python-works.com>
parents:
510
diff
changeset
|
41 from rhodecode.lib.auth import LoginRequired, HasRepoPermissionAnyDecorator |
1e757ac98988
renamed project to rhodecode
Marcin Kuzminski <marcin@python-works.com>
parents:
510
diff
changeset
|
42 from rhodecode.lib.base import BaseController, render |
643
9dc1d92d82ed
updated setup for all newest versions
Marcin Kuzminski <marcin@python-works.com>
parents:
637
diff
changeset
|
43 from rhodecode.lib.utils import OrderedDict, EmptyChangeset |
810
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
44 |
547
1e757ac98988
renamed project to rhodecode
Marcin Kuzminski <marcin@python-works.com>
parents:
510
diff
changeset
|
45 from rhodecode.lib.celerylib import run_task |
1e757ac98988
renamed project to rhodecode
Marcin Kuzminski <marcin@python-works.com>
parents:
510
diff
changeset
|
46 from rhodecode.lib.celerylib.tasks import get_commits_stats |
810
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
47 |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
48 from webhelpers.paginate import Page |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
49 |
592
0a48c1ec04fc
#37 fixed json imports for python2.5
Marcin Kuzminski <marcin@python-works.com>
parents:
548
diff
changeset
|
50 try: |
0a48c1ec04fc
#37 fixed json imports for python2.5
Marcin Kuzminski <marcin@python-works.com>
parents:
548
diff
changeset
|
51 import json |
0a48c1ec04fc
#37 fixed json imports for python2.5
Marcin Kuzminski <marcin@python-works.com>
parents:
548
diff
changeset
|
52 except ImportError: |
0a48c1ec04fc
#37 fixed json imports for python2.5
Marcin Kuzminski <marcin@python-works.com>
parents:
548
diff
changeset
|
53 #python 2.5 compatibility |
0a48c1ec04fc
#37 fixed json imports for python2.5
Marcin Kuzminski <marcin@python-works.com>
parents:
548
diff
changeset
|
54 import simplejson as json |
82
670713507d03
Moved summary to seperate controller,
Marcin Kuzminski <marcin@python-blog.com>
parents:
diff
changeset
|
55 log = logging.getLogger(__name__) |
670713507d03
Moved summary to seperate controller,
Marcin Kuzminski <marcin@python-blog.com>
parents:
diff
changeset
|
56 |
670713507d03
Moved summary to seperate controller,
Marcin Kuzminski <marcin@python-blog.com>
parents:
diff
changeset
|
57 class SummaryController(BaseController): |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
58 |
191
b68b2246e5a6
Authenticated controller with LoginRequired decorator, and cleaned __before__ (used in baseController now). fixed User for clone url with logged in session user.
Marcin Kuzminski <marcin@python-works.com>
parents:
127
diff
changeset
|
59 @LoginRequired() |
318
fdf9f6ee5217
Implemented permissions into hg app, secured admin controllers, templates and repository specific controllers
Marcin Kuzminski <marcin@python-works.com>
parents:
282
diff
changeset
|
60 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write', |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
61 'repository.admin') |
82
670713507d03
Moved summary to seperate controller,
Marcin Kuzminski <marcin@python-blog.com>
parents:
diff
changeset
|
62 def __before__(self): |
191
b68b2246e5a6
Authenticated controller with LoginRequired decorator, and cleaned __before__ (used in baseController now). fixed User for clone url with logged in session user.
Marcin Kuzminski <marcin@python-works.com>
parents:
127
diff
changeset
|
63 super(SummaryController, self).__before__() |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
64 |
82
670713507d03
Moved summary to seperate controller,
Marcin Kuzminski <marcin@python-blog.com>
parents:
diff
changeset
|
65 def index(self): |
734
49eb69d78988
implemented user dashboards, and following system.
Marcin Kuzminski <marcin@python-works.com>
parents:
691
diff
changeset
|
66 scm_model = ScmModel() |
49eb69d78988
implemented user dashboards, and following system.
Marcin Kuzminski <marcin@python-works.com>
parents:
691
diff
changeset
|
67 c.repo_info = scm_model.get_repo(c.repo_name) |
49eb69d78988
implemented user dashboards, and following system.
Marcin Kuzminski <marcin@python-works.com>
parents:
691
diff
changeset
|
68 c.following = scm_model.is_following_repo(c.repo_name, |
49eb69d78988
implemented user dashboards, and following system.
Marcin Kuzminski <marcin@python-works.com>
parents:
691
diff
changeset
|
69 c.rhodecode_user.user_id) |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
70 def url_generator(**kw): |
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
71 return url('shortlog_home', repo_name=c.repo_name, **kw) |
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
72 |
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
73 c.repo_changesets = Page(c.repo_info, page=1, items_per_page=10, |
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
74 url=url_generator) |
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
75 |
82
670713507d03
Moved summary to seperate controller,
Marcin Kuzminski <marcin@python-blog.com>
parents:
diff
changeset
|
76 e = request.environ |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
77 |
674
99875a8f2ad1
#49 Enabled anonymous access push and pull commands
Marcin Kuzminski <marcin@python-works.com>
parents:
643
diff
changeset
|
78 if self.rhodecode_user.username == 'default': |
910
811fa5d45de8
Rewrite simehg for enabling cloning with raw url for anonymous access + some optimizations for making less queries when authenticating users.
Marcin Kuzminski <marcin@python-works.com>
parents:
902
diff
changeset
|
79 #for default(anonymous) user we don't need to pass credentials |
811fa5d45de8
Rewrite simehg for enabling cloning with raw url for anonymous access + some optimizations for making less queries when authenticating users.
Marcin Kuzminski <marcin@python-works.com>
parents:
902
diff
changeset
|
80 username = '' |
811fa5d45de8
Rewrite simehg for enabling cloning with raw url for anonymous access + some optimizations for making less queries when authenticating users.
Marcin Kuzminski <marcin@python-works.com>
parents:
902
diff
changeset
|
81 password = '' |
674
99875a8f2ad1
#49 Enabled anonymous access push and pull commands
Marcin Kuzminski <marcin@python-works.com>
parents:
643
diff
changeset
|
82 else: |
910
811fa5d45de8
Rewrite simehg for enabling cloning with raw url for anonymous access + some optimizations for making less queries when authenticating users.
Marcin Kuzminski <marcin@python-works.com>
parents:
902
diff
changeset
|
83 username = str(c.rhodecode_user.username) |
936
e1c9903d7e38
fixed wrong clone url for anonymous access
Marcin Kuzminski <marcin@python-works.com>
parents:
910
diff
changeset
|
84 password = '@' |
674
99875a8f2ad1
#49 Enabled anonymous access push and pull commands
Marcin Kuzminski <marcin@python-works.com>
parents:
643
diff
changeset
|
85 |
936
e1c9903d7e38
fixed wrong clone url for anonymous access
Marcin Kuzminski <marcin@python-works.com>
parents:
910
diff
changeset
|
86 uri = u'%(protocol)s://%(user)s%(password)s%(host)s%(prefix)s/%(repo_name)s' % { |
232
37a832dc4a82
some beaker cache changes, and added repr to models
Marcin Kuzminski <marcin@python-works.com>
parents:
191
diff
changeset
|
87 'protocol': e.get('wsgi.url_scheme'), |
910
811fa5d45de8
Rewrite simehg for enabling cloning with raw url for anonymous access + some optimizations for making less queries when authenticating users.
Marcin Kuzminski <marcin@python-works.com>
parents:
902
diff
changeset
|
88 'user':username, |
674
99875a8f2ad1
#49 Enabled anonymous access push and pull commands
Marcin Kuzminski <marcin@python-works.com>
parents:
643
diff
changeset
|
89 'password':password, |
232
37a832dc4a82
some beaker cache changes, and added repr to models
Marcin Kuzminski <marcin@python-works.com>
parents:
191
diff
changeset
|
90 'host':e.get('HTTP_HOST'), |
508
fdb78a140ae4
fixes #35 hg-app does not respect SCRIPT_NAME
Marcin Kuzminski <marcin@python-works.com>
parents:
506
diff
changeset
|
91 'prefix':e.get('SCRIPT_NAME'), |
232
37a832dc4a82
some beaker cache changes, and added repr to models
Marcin Kuzminski <marcin@python-works.com>
parents:
191
diff
changeset
|
92 'repo_name':c.repo_name, } |
191
b68b2246e5a6
Authenticated controller with LoginRequired decorator, and cleaned __before__ (used in baseController now). fixed User for clone url with logged in session user.
Marcin Kuzminski <marcin@python-works.com>
parents:
127
diff
changeset
|
93 c.clone_repo_url = uri |
389
174785aa5dc4
fixed sorting of tags and branches. Fix made in vcs.
Marcin Kuzminski <marcin@python-works.com>
parents:
365
diff
changeset
|
94 c.repo_tags = OrderedDict() |
277
7ec4463b6e53
fixed branches and tags, fetching for new vcs implementation
Marcin Kuzminski <marcin@python-works.com>
parents:
252
diff
changeset
|
95 for name, hash in c.repo_info.tags.items()[:10]: |
643
9dc1d92d82ed
updated setup for all newest versions
Marcin Kuzminski <marcin@python-works.com>
parents:
637
diff
changeset
|
96 try: |
9dc1d92d82ed
updated setup for all newest versions
Marcin Kuzminski <marcin@python-works.com>
parents:
637
diff
changeset
|
97 c.repo_tags[name] = c.repo_info.get_changeset(hash) |
9dc1d92d82ed
updated setup for all newest versions
Marcin Kuzminski <marcin@python-works.com>
parents:
637
diff
changeset
|
98 except ChangesetError: |
9dc1d92d82ed
updated setup for all newest versions
Marcin Kuzminski <marcin@python-works.com>
parents:
637
diff
changeset
|
99 c.repo_tags[name] = EmptyChangeset(hash) |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
100 |
389
174785aa5dc4
fixed sorting of tags and branches. Fix made in vcs.
Marcin Kuzminski <marcin@python-works.com>
parents:
365
diff
changeset
|
101 c.repo_branches = OrderedDict() |
277
7ec4463b6e53
fixed branches and tags, fetching for new vcs implementation
Marcin Kuzminski <marcin@python-works.com>
parents:
252
diff
changeset
|
102 for name, hash in c.repo_info.branches.items()[:10]: |
643
9dc1d92d82ed
updated setup for all newest versions
Marcin Kuzminski <marcin@python-works.com>
parents:
637
diff
changeset
|
103 try: |
9dc1d92d82ed
updated setup for all newest versions
Marcin Kuzminski <marcin@python-works.com>
parents:
637
diff
changeset
|
104 c.repo_branches[name] = c.repo_info.get_changeset(hash) |
9dc1d92d82ed
updated setup for all newest versions
Marcin Kuzminski <marcin@python-works.com>
parents:
637
diff
changeset
|
105 except ChangesetError: |
9dc1d92d82ed
updated setup for all newest versions
Marcin Kuzminski <marcin@python-works.com>
parents:
637
diff
changeset
|
106 c.repo_branches[name] = EmptyChangeset(hash) |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
107 |
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
108 td = datetime.today() + timedelta(days=1) |
493
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
109 y, m, d = td.year, td.month, td.day |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
110 |
493
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
111 ts_min_y = mktime((y - 1, (td - timedelta(days=calendar.mdays[m])).month, |
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
112 d, 0, 0, 0, 0, 0, 0,)) |
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
113 ts_min_m = mktime((y, (td - timedelta(days=calendar.mdays[m])).month, |
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
114 d, 0, 0, 0, 0, 0, 0,)) |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
115 |
493
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
116 ts_max_y = mktime((y, m, d, 0, 0, 0, 0, 0, 0,)) |
810
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
117 if c.repo_info.dbrepo.enable_statistics: |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
118 c.no_data_msg = _('No data loaded yet') |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
119 run_task(get_commits_stats, c.repo_info.name, ts_min_y, ts_max_y) |
bd57d1cb9dc3
fixes #62, added option to disable statistics for each repository
Marcin Kuzminski <marcin@python-works.com>
parents:
800
diff
changeset
|
120 else: |
820
de5d9de45146
fixed message about disabled stats, template fixes for summary page
Marcin Kuzminski <marcin@python-works.com>
parents:
810
diff
changeset
|
121 c.no_data_msg = _('Statistics update are disabled for this repository') |
493
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
122 c.ts_min = ts_min_m |
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
123 c.ts_max = ts_max_y |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
124 |
493
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
125 stats = self.sa.query(Statistics)\ |
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
126 .filter(Statistics.repository == c.repo_info.dbrepo)\ |
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
127 .scalar() |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
128 |
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
129 |
506
d5efb83590ef
fixed lock decorator bug which didn't release the lock after func execution and rewrote the pidlock a little with Ask Solem suggestions!
Marcin Kuzminski <marcin@python-works.com>
parents:
493
diff
changeset
|
130 if stats and stats.languages: |
820
de5d9de45146
fixed message about disabled stats, template fixes for summary page
Marcin Kuzminski <marcin@python-works.com>
parents:
810
diff
changeset
|
131 c.no_data = False is c.repo_info.dbrepo.enable_statistics |
506
d5efb83590ef
fixed lock decorator bug which didn't release the lock after func execution and rewrote the pidlock a little with Ask Solem suggestions!
Marcin Kuzminski <marcin@python-works.com>
parents:
493
diff
changeset
|
132 lang_stats = json.loads(stats.languages) |
493
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
133 c.commit_data = stats.commit_activity |
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
134 c.overview_data = stats.commit_activity_combined |
506
d5efb83590ef
fixed lock decorator bug which didn't release the lock after func execution and rewrote the pidlock a little with Ask Solem suggestions!
Marcin Kuzminski <marcin@python-works.com>
parents:
493
diff
changeset
|
135 c.trending_languages = json.dumps(OrderedDict( |
d5efb83590ef
fixed lock decorator bug which didn't release the lock after func execution and rewrote the pidlock a little with Ask Solem suggestions!
Marcin Kuzminski <marcin@python-works.com>
parents:
493
diff
changeset
|
136 sorted(lang_stats.items(), reverse=True, |
763
0dad296d2a57
extended trending languages to more entries, implemented new faster and "fancy"
Marcin Kuzminski <marcin@python-works.com>
parents:
734
diff
changeset
|
137 key=lambda k: k[1])[:10] |
506
d5efb83590ef
fixed lock decorator bug which didn't release the lock after func execution and rewrote the pidlock a little with Ask Solem suggestions!
Marcin Kuzminski <marcin@python-works.com>
parents:
493
diff
changeset
|
138 ) |
d5efb83590ef
fixed lock decorator bug which didn't release the lock after func execution and rewrote the pidlock a little with Ask Solem suggestions!
Marcin Kuzminski <marcin@python-works.com>
parents:
493
diff
changeset
|
139 ) |
493
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
140 else: |
2256c78afe53
implemented basic autoupdating statistics fetched from database
Marcin Kuzminski <marcin@python-works.com>
parents:
486
diff
changeset
|
141 c.commit_data = json.dumps({}) |
800
e41aacb6aa18
small fixes for summary graph, added message about no data for the graph, when empty
Marcin Kuzminski <marcin@python-works.com>
parents:
763
diff
changeset
|
142 c.overview_data = json.dumps([[ts_min_y, 0], [ts_max_y, 10] ]) |
506
d5efb83590ef
fixed lock decorator bug which didn't release the lock after func execution and rewrote the pidlock a little with Ask Solem suggestions!
Marcin Kuzminski <marcin@python-works.com>
parents:
493
diff
changeset
|
143 c.trending_languages = json.dumps({}) |
800
e41aacb6aa18
small fixes for summary graph, added message about no data for the graph, when empty
Marcin Kuzminski <marcin@python-works.com>
parents:
763
diff
changeset
|
144 c.no_data = True |
637
b04d5214fd3c
removed shortlog from main menu, as duplicated functionality of changelog,
Marcin Kuzminski <marcin@python-works.com>
parents:
629
diff
changeset
|
145 |
191
b68b2246e5a6
Authenticated controller with LoginRequired decorator, and cleaned __before__ (used in baseController now). fixed User for clone url with logged in session user.
Marcin Kuzminski <marcin@python-works.com>
parents:
127
diff
changeset
|
146 return render('summary/summary.html') |
362
558eb7c5028f
version bump to 0.8
Marcin Kuzminski <marcin@python-works.com>
parents:
318
diff
changeset
|
147 |