Mercurial > kallithea
diff rhodecode/model/scm.py @ 2440:1bc579bcd67a codereview
- pull request generates overview based on it's params
- added page to show all pull-requests for a repository
- db schema changes to support comments and inline comments for pull-requests
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Sun, 10 Jun 2012 18:15:00 +0200 |
parents | e576410f911d |
children | 1f9c467e01eb |
line wrap: on
line diff
--- a/rhodecode/model/scm.py Sun Jun 10 16:44:06 2012 +0200 +++ b/rhodecode/model/scm.py Sun Jun 10 18:15:00 2012 +0200 @@ -43,7 +43,7 @@ action_logger, EmptyChangeset, REMOVED_REPO_PAT from rhodecode.model import BaseModel from rhodecode.model.db import Repository, RhodeCodeUi, CacheInvalidation, \ - UserFollowing, UserLog, User, RepoGroup + UserFollowing, UserLog, User, RepoGroup, PullRequest log = logging.getLogger(__name__) @@ -320,19 +320,21 @@ return f is not None - def get_followers(self, repo_id): - if not isinstance(repo_id, int): - repo_id = getattr(Repository.get_by_repo_name(repo_id), 'repo_id') + def get_followers(self, repo): + repo = self._get_repo(repo) return self.sa.query(UserFollowing)\ - .filter(UserFollowing.follows_repo_id == repo_id).count() + .filter(UserFollowing.follows_repository == repo).count() - def get_forks(self, repo_id): - if not isinstance(repo_id, int): - repo_id = getattr(Repository.get_by_repo_name(repo_id), 'repo_id') + def get_forks(self, repo): + repo = self._get_repo(repo) + return self.sa.query(Repository)\ + .filter(Repository.fork == repo).count() - return self.sa.query(Repository)\ - .filter(Repository.fork_id == repo_id).count() + def get_pull_requests(self, repo): + repo = self._get_repo(repo) + return self.sa.query(PullRequest)\ + .filter(PullRequest.other_repo == repo).count() def mark_as_fork(self, repo, fork, user): repo = self.__get_repo(repo)