changeset 1282:faaadfc3c359 beta

fixed condition evaluated for gitrepo that returned null, simplified scm functions
author Marcin Kuzminski <marcin@python-works.com>
date Sun, 24 Apr 2011 17:36:09 +0200
parents 0d3706ccf129
children d6524f3025e8
files rhodecode/lib/base.py rhodecode/model/scm.py
diffstat 2 files changed, 11 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/rhodecode/lib/base.py	Sun Apr 24 16:59:27 2011 +0200
+++ b/rhodecode/lib/base.py	Sun Apr 24 17:36:09 2011 +0200
@@ -62,7 +62,8 @@
 
             c.rhodecode_repo, dbrepo = self.scm_model.get(c.repo_name,
                                                           retval='repo')
-            if c.rhodecode_repo:
+
+            if c.rhodecode_repo is not None:
                 c.repository_followers = self.scm_model.get_followers(c.repo_name)
                 c.repository_forks = self.scm_model.get_forks(c.repo_name)
             else:
--- a/rhodecode/model/scm.py	Sun Apr 24 16:59:27 2011 +0200
+++ b/rhodecode/model/scm.py	Sun Apr 24 17:36:09 2011 +0200
@@ -344,22 +344,18 @@
         return f is not None
 
     def get_followers(self, repo_id):
-        if isinstance(repo_id, int):
-            return self.sa.query(UserFollowing)\
-                    .filter(UserFollowing.follows_repo_id == repo_id).count()
-        else:
-            return self.sa.query(UserFollowing)\
-                    .filter(UserFollowing.follows_repository \
-                            == RepoModel().get_by_repo_name(repo_id)).count()
+        if not isinstance(repo_id, int):
+            repo_id = getattr(Repository.by_repo_name(repo_id), 'repo_id')
+
+        return self.sa.query(UserFollowing)\
+                .filter(UserFollowing.follows_repo_id == repo_id).count()
 
     def get_forks(self, repo_id):
-        if isinstance(repo_id, int):
-            return self.sa.query(Repository)\
+        if not isinstance(repo_id, int):
+            repo_id = getattr(Repository.by_repo_name(repo_id), 'repo_id')
+
+        return self.sa.query(Repository)\
                 .filter(Repository.fork_id == repo_id).count()
-        else:
-            return self.sa.query(Repository)\
-                .filter(Repository.fork \
-                        == RepoModel().get_by_repo_name(repo_id)).count()
 
     def pull_changes(self, repo_name, username):
         repo, dbrepo = self.get(repo_name, retval='all')