Mercurial > kallithea
comparison pylons_app/model/hg_model.py @ 376:7fbf81447c6c
Fixes #18, removing user, who owns some repositories
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Fri, 30 Jul 2010 22:12:06 +0200 |
parents | 3171614c0067 |
children | c3236d7febad |
comparison
equal
deleted
inserted
replaced
375:3e55d9981c0e | 376:7fbf81447c6c |
---|---|
26 from mercurial import ui | 26 from mercurial import ui |
27 from mercurial.hgweb.hgwebdir_mod import findrepos | 27 from mercurial.hgweb.hgwebdir_mod import findrepos |
28 from pylons.i18n.translation import _ | 28 from pylons.i18n.translation import _ |
29 from pylons_app.lib.auth import HasRepoPermissionAny | 29 from pylons_app.lib.auth import HasRepoPermissionAny |
30 from pylons_app.model import meta | 30 from pylons_app.model import meta |
31 from pylons_app.model.db import Repository | 31 from pylons_app.model.db import Repository, User |
32 from sqlalchemy.orm import joinedload | 32 from sqlalchemy.orm import joinedload |
33 from vcs.exceptions import RepositoryError, VCSError | 33 from vcs.exceptions import RepositoryError, VCSError |
34 import logging | 34 import logging |
35 import os | 35 import os |
36 import sys | 36 import sys |
132 | 132 |
133 if dbrepo: | 133 if dbrepo: |
134 log.info('Adding db instance to cached list') | 134 log.info('Adding db instance to cached list') |
135 repos_list[name].dbrepo = dbrepo | 135 repos_list[name].dbrepo = dbrepo |
136 repos_list[name].description = dbrepo.description | 136 repos_list[name].description = dbrepo.description |
137 repos_list[name].contact = dbrepo.user.full_contact | 137 if dbrepo.user: |
138 repos_list[name].contact = dbrepo.user.full_contact | |
139 else: | |
140 repos_list[name].contact = sa.query(User)\ | |
141 .filter(User.admin == True).first().full_contact | |
138 except OSError: | 142 except OSError: |
139 continue | 143 continue |
140 meta.Session.remove() | 144 meta.Session.remove() |
141 return repos_list | 145 return repos_list |
142 | 146 |