changeset 823:81e8dfa3beb5 beta

merge
author Marcin Kuzminski <marcin@python-works.com>
date Thu, 09 Dec 2010 19:32:16 +0100
parents f579790a0ecd (current diff) d5a71348ee4d (diff)
children ceb9f419b7fe
files
diffstat 4 files changed, 38 insertions(+), 24 deletions(-) [+]
line wrap: on
line diff
--- a/rhodecode/controllers/admin/repos.py	Wed Dec 08 18:43:35 2010 +0100
+++ b/rhodecode/controllers/admin/repos.py	Thu Dec 09 19:32:16 2010 +0100
@@ -141,6 +141,20 @@
 
         except formencode.Invalid, errors:
             c.repo_info = repo_model.get_by_repo_name(repo_name)
+            if c.repo_info.stats:
+                last_rev = c.repo_info.stats.stat_on_revision
+            else:
+                last_rev = 0
+            c.stats_revision = last_rev
+            r = ScmModel().get(repo_name)
+            c.repo_last_rev = r.revisions[-1] if r.revisions else 0
+
+            if last_rev == 0:
+                c.stats_percentage = 0
+            else:
+                c.stats_percentage = '%.2f' % ((float((last_rev)) /
+                                                c.repo_last_rev) * 100)
+
             c.users_array = repo_model.get_users_js()
             errors.value.update({'user':c.repo_info.user.username})
             return htmlfill.render(
@@ -245,9 +259,9 @@
         """GET /repos/repo_name/edit: Form to edit an existing item"""
         # url('edit_repo', repo_name=ID)
         repo_model = RepoModel()
-        c.repo_info = repo = repo_model.get_by_repo_name(repo_name)
-        if repo.stats:
-            last_rev = repo.stats.stat_on_revision
+        c.repo_info = repo_model.get_by_repo_name(repo_name)
+        if c.repo_info.stats:
+            last_rev = c.repo_info.stats.stat_on_revision
         else:
             last_rev = 0
         c.stats_revision = last_rev
@@ -257,10 +271,11 @@
         if last_rev == 0:
             c.stats_percentage = 0
         else:
-            c.stats_percentage = '%.2f' % ((float((last_rev)) / c.repo_last_rev) * 100)
+            c.stats_percentage = '%.2f' % ((float((last_rev)) /
+                                            c.repo_last_rev) * 100)
 
 
-        if not repo:
+        if not c.repo_info:
             h.flash(_('%s repository is not mapped to db perhaps'
                       ' it was created or renamed from the filesystem'
                       ' please run the application again'
--- a/rhodecode/controllers/summary.py	Wed Dec 08 18:43:35 2010 +0100
+++ b/rhodecode/controllers/summary.py	Thu Dec 09 19:32:16 2010 +0100
@@ -4,6 +4,7 @@
     ~~~~~~~~~~~~~~
 
     Summary controller for Rhodecode
+    
     :created_on: Apr 18, 2010
     :author: marcink
     :copyright: (C) 2009-2010 Marcin Kuzminski <marcin@python-works.com>    
@@ -114,7 +115,7 @@
             c.no_data_msg = _('No data loaded yet')
             run_task(get_commits_stats, c.repo_info.name, ts_min_y, ts_max_y)
         else:
-            c.no_data_msg = _('Statistics are disabled for this repository')
+            c.no_data_msg = _('Statistics update are disabled for this repository')
         c.ts_min = ts_min_m
         c.ts_max = ts_max_y
 
@@ -124,7 +125,7 @@
 
 
         if stats and stats.languages:
-            c.no_data = False
+            c.no_data = False is c.repo_info.dbrepo.enable_statistics
             lang_stats = json.loads(stats.languages)
             c.commit_data = stats.commit_activity
             c.overview_data = stats.commit_activity_combined
--- a/rhodecode/model/repo.py	Wed Dec 08 18:43:35 2010 +0100
+++ b/rhodecode/model/repo.py	Thu Dec 09 19:32:16 2010 +0100
@@ -75,38 +75,36 @@
 
     def update(self, repo_name, form_data):
         try:
+            cur_repo = self.get_by_repo_name(repo_name, cache=False)
+            user_model = UserModel(self.sa)
 
             #update permissions
             for username, perm in form_data['perms_updates']:
                 r2p = self.sa.query(RepoToPerm)\
-                        .filter(RepoToPerm.user == UserModel(self.sa)\
-                                .get_by_username(username, cache=False))\
-                        .filter(RepoToPerm.repository == \
-                                self.get_by_repo_name(repo_name))\
+                        .filter(RepoToPerm.user == user_model.get_by_username(username))\
+                        .filter(RepoToPerm.repository == cur_repo)\
                         .one()
 
-                r2p.permission_id = self.sa.query(Permission).filter(
-                                                Permission.permission_name ==
-                                                perm).one().permission_id
+                r2p.permission = self.sa.query(Permission)\
+                                    .filter(Permission.permission_name == perm)\
+                                    .scalar()
                 self.sa.add(r2p)
 
             #set new permissions
             for username, perm in form_data['perms_new']:
                 r2p = RepoToPerm()
-                r2p.repository = self.get_by_repo_name(repo_name)
-                r2p.user = UserModel(self.sa).get_by_username(username, cache=False)
+                r2p.repository = cur_repo
+                r2p.user = user_model.get_by_username(username, cache=False)
 
-                r2p.permission_id = self.sa.query(Permission).filter(
-                                        Permission.permission_name == perm)\
-                                        .one().permission_id
+                r2p.permission = self.sa.query(Permission)\
+                                    .filter(Permission.permission_name == perm)\
+                                    .scalar()
                 self.sa.add(r2p)
 
             #update current repo
-            cur_repo = self.get_by_repo_name(repo_name, cache=False)
-
             for k, v in form_data.items():
                 if k == 'user':
-                    cur_repo.user_id = v
+                    cur_repo.user = user_model.get(v)
                 else:
                     setattr(cur_repo, k, v)
 
--- a/rhodecode/templates/summary/summary.html	Wed Dec 08 18:43:35 2010 +0100
+++ b/rhodecode/templates/summary/summary.html	Thu Dec 09 19:32:16 2010 +0100
@@ -619,7 +619,7 @@
 </div>
 <div class="box">    
     <div class="title">
-        <div class="breadcrumbs">${h.link_to(_('Last ten tags'),h.url('tags_home',repo_name=c.repo_name))}</div>
+        <div class="breadcrumbs">${h.link_to(_('Tags'),h.url('tags_home',repo_name=c.repo_name))}</div>
     </div>    
     <div class="table">
         <%include file='../tags/tags_data.html'/>
@@ -630,7 +630,7 @@
 </div>
 <div class="box">
     <div class="title">
-        <div class="breadcrumbs">${h.link_to(_('Last ten branches'),h.url('branches_home',repo_name=c.repo_name))}</div>
+        <div class="breadcrumbs">${h.link_to(_('Branches'),h.url('branches_home',repo_name=c.repo_name))}</div>
     </div>    
     <div class="table">
         <%include file='../branches/branches_data.html'/>