diff --git a/kallithea/config/rcextensions/__init__.py b/kallithea/config/rcextensions/__init__.py --- a/kallithea/config/rcextensions/__init__.py +++ b/kallithea/config/rcextensions/__init__.py @@ -41,7 +41,7 @@ def _crrepohook(*args, **kwargs): :param created_on: :param enable_downloads: :param repo_id: - :param user_id: + :param owner_id: :param enable_statistics: :param clone_uri: :param fork_id: @@ -123,7 +123,7 @@ def _dlrepohook(*args, **kwargs): :param created_on: :param enable_downloads: :param repo_id: - :param user_id: + :param owner_id: :param enable_statistics: :param clone_uri: :param fork_id: diff --git a/kallithea/controllers/admin/my_account.py b/kallithea/controllers/admin/my_account.py --- a/kallithea/controllers/admin/my_account.py +++ b/kallithea/controllers/admin/my_account.py @@ -81,7 +81,7 @@ class MyAccountController(BaseController else: admin = True repos_list = Session().query(Repository) \ - .filter(Repository.user_id == + .filter(Repository.owner_id == self.authuser.user_id).all() repos_data = RepoModel().get_repos_as_dict(repos_list=repos_list, diff --git a/kallithea/controllers/admin/repo_groups.py b/kallithea/controllers/admin/repo_groups.py --- a/kallithea/controllers/admin/repo_groups.py +++ b/kallithea/controllers/admin/repo_groups.py @@ -136,7 +136,7 @@ class RepoGroupsController(BaseControlle "group_name": repo_group_name(repo_gr.group_name, children_groups), "desc": h.escape(repo_gr.group_description), "repos": repo_count, - "owner": h.person(repo_gr.user), + "owner": h.person(repo_gr.owner), "action": repo_group_actions(repo_gr.group_id, repo_gr.group_name, repo_count) }) diff --git a/kallithea/controllers/admin/user_groups.py b/kallithea/controllers/admin/user_groups.py --- a/kallithea/controllers/admin/user_groups.py +++ b/kallithea/controllers/admin/user_groups.py @@ -115,7 +115,7 @@ class UserGroupsController(BaseControlle "desc": h.escape(user_gr.user_group_description), "members": len(user_gr.members), "active": h.boolicon(user_gr.users_group_active), - "owner": h.person(user_gr.user.username), + "owner": h.person(user_gr.owner.username), "action": user_group_actions(user_gr.users_group_id, user_gr.users_group_name) }) diff --git a/kallithea/controllers/api/api.py b/kallithea/controllers/api/api.py --- a/kallithea/controllers/api/api.py +++ b/kallithea/controllers/api/api.py @@ -963,7 +963,7 @@ class ApiController(JSONRPCController): updates = {} store_update(updates, group_name, 'users_group_name') store_update(updates, description, 'user_group_description') - store_update(updates, owner, 'user') + store_update(updates, owner, 'owner') store_update(updates, active, 'users_group_active') try: UserGroupModel().update(user_group, updates) @@ -1513,7 +1513,7 @@ class ApiController(JSONRPCController): try: store_update(updates, name, 'repo_name') store_update(updates, repo_group, 'repo_group') - store_update(updates, owner, 'user') + store_update(updates, owner, 'owner') store_update(updates, description, 'repo_description') store_update(updates, private, 'repo_private') store_update(updates, clone_uri, 'clone_uri') diff --git a/kallithea/controllers/journal.py b/kallithea/controllers/journal.py --- a/kallithea/controllers/journal.py +++ b/kallithea/controllers/journal.py @@ -212,7 +212,7 @@ class JournalController(BaseController): return render('journal/journal_data.html') repos_list = Repository.query(sorted=True) \ - .filter_by(user_id=self.authuser.user_id).all() + .filter_by(owner_id=self.authuser.user_id).all() repos_data = RepoModel().get_repos_as_dict(repos_list=repos_list, admin=True) diff --git a/kallithea/controllers/pullrequests.py b/kallithea/controllers/pullrequests.py --- a/kallithea/controllers/pullrequests.py +++ b/kallithea/controllers/pullrequests.py @@ -181,7 +181,7 @@ class PullrequestsController(BaseRepoCon if pull_request.is_closed(): return False - owner = self.authuser.user_id == pull_request.user_id + owner = self.authuser.user_id == pull_request.owner_id reviewer = PullRequestReviewers.query() \ .filter(PullRequestReviewers.pull_request == pull_request) \ .filter(PullRequestReviewers.user_id == self.authuser.user_id) \ @@ -216,7 +216,7 @@ class PullrequestsController(BaseRepoCon c.my_pull_requests = PullRequest.query( include_closed=c.closed, sorted=True, - ).filter_by(user_id=self.authuser.user_id).all() + ).filter_by(owner_id=self.authuser.user_id).all() c.participate_in_pull_requests = [] c.participate_in_pull_requests_todo = [] @@ -496,7 +496,7 @@ class PullrequestsController(BaseRepoCon raise HTTPForbidden() assert pull_request.other_repo.repo_name == repo_name #only owner or admin can update it - owner = pull_request.owner.user_id == c.authuser.user_id + owner = pull_request.owner_id == c.authuser.user_id repo_admin = h.HasRepoPermissionAny('repository.admin')(c.repo_name) if not (h.HasPermissionAny('hg.admin')() or repo_admin or owner): raise HTTPForbidden() diff --git a/kallithea/lib/auth.py b/kallithea/lib/auth.py --- a/kallithea/lib/auth.py +++ b/kallithea/lib/auth.py @@ -215,10 +215,10 @@ def _cached_perms_data(user_id, user_is_ # defaults for repositories, taken from default user for perm in default_repo_perms: r_k = perm.UserRepoToPerm.repository.repo_name - if perm.Repository.private and not (perm.Repository.user_id == user_id): + if perm.Repository.private and not (perm.Repository.owner_id == user_id): # disable defaults for private repos, p = 'repository.none' - elif perm.Repository.user_id == user_id: + elif perm.Repository.owner_id == user_id: # set admin if owner p = 'repository.admin' else: @@ -325,7 +325,7 @@ def _cached_perms_data(user_id, user_is_ p = perm.Permission.permission_name cur_perm = permissions[RK][r_k] - if perm.Repository.user_id == user_id: + if perm.Repository.owner_id == user_id: # set admin if owner p = 'repository.admin' else: @@ -340,7 +340,7 @@ def _cached_perms_data(user_id, user_is_ r_k = perm.UserRepoToPerm.repository.repo_name cur_perm = permissions[RK][r_k] # set admin if owner - if perm.Repository.user_id == user_id: + if perm.Repository.owner_id == user_id: p = 'repository.admin' else: p = perm.Permission.permission_name diff --git a/kallithea/lib/hooks.py b/kallithea/lib/hooks.py --- a/kallithea/lib/hooks.py +++ b/kallithea/lib/hooks.py @@ -224,7 +224,7 @@ def log_create_repository(repository_dic 'created_on', 'enable_downloads', 'repo_id', - 'user_id', + 'owner_id', 'enable_statistics', 'clone_uri', 'fork_id', @@ -306,7 +306,7 @@ def log_delete_repository(repository_dic 'created_on', 'enable_downloads', 'repo_id', - 'user_id', + 'owner_id', 'enable_statistics', 'clone_uri', 'fork_id', diff --git a/kallithea/lib/utils.py b/kallithea/lib/utils.py --- a/kallithea/lib/utils.py +++ b/kallithea/lib/utils.py @@ -453,7 +453,7 @@ def map_groups(path): lvl, group_name) group = RepoGroup(group_name, parent) group.group_description = desc - group.user = owner + group.owner = owner sa.add(group) perm_obj = rgm._create_default_perms(group) sa.add(perm_obj) diff --git a/kallithea/model/comment.py b/kallithea/model/comment.py --- a/kallithea/model/comment.py +++ b/kallithea/model/comment.py @@ -81,7 +81,7 @@ class ChangesetCommentsModel(BaseModel): if not cs_author: #use repo owner if we cannot extract the author correctly # FIXME: just use committer name even if not a user - cs_author = repo.user + cs_author = repo.owner recipients += [cs_author] email_kwargs = { 'status_change': status_change, diff --git a/kallithea/model/db.py b/kallithea/model/db.py --- a/kallithea/model/db.py +++ b/kallithea/model/db.py @@ -844,7 +844,7 @@ class UserGroup(Base, BaseModel): user_group_description = Column(Unicode(10000), nullable=True) # FIXME: not nullable? users_group_active = Column(Boolean(), nullable=False) inherit_default_permissions = Column("users_group_inherit_default_permissions", Boolean(), nullable=False, default=True) - user_id = Column(Integer(), ForeignKey('users.user_id'), nullable=False) + owner_id = Column('user_id', Integer(), ForeignKey('users.user_id'), nullable=False) created_on = Column(DateTime(timezone=False), nullable=False, default=datetime.datetime.now) _group_data = Column("group_data", LargeBinary(), nullable=True) # JSON data # FIXME: not nullable? @@ -855,7 +855,7 @@ class UserGroup(Base, BaseModel): user_user_group_to_perm = relationship('UserUserGroupToPerm ', cascade='all') user_group_user_group_to_perm = relationship('UserGroupUserGroupToPerm ', primaryjoin="UserGroupUserGroupToPerm.target_user_group_id==UserGroup.users_group_id", cascade='all') - user = relationship('User') + owner = relationship('User') @hybrid_property def group_data(self): @@ -910,7 +910,7 @@ class UserGroup(Base, BaseModel): group_name=user_group.users_group_name, group_description=user_group.user_group_description, active=user_group.users_group_active, - owner=user_group.user.username, + owner=user_group.owner.username, ) if with_members: members = [] @@ -998,7 +998,7 @@ class Repository(Base, BaseModel): clone_uri = Column(String(255), nullable=True) # FIXME: not nullable? repo_type = Column(String(255), nullable=False) - user_id = Column(Integer(), ForeignKey('users.user_id'), nullable=False) + owner_id = Column('user_id', Integer(), ForeignKey('users.user_id'), nullable=False) private = Column(Boolean(), nullable=False) enable_statistics = Column("statistics", Boolean(), nullable=False, default=True) enable_downloads = Column("downloads", Boolean(), nullable=False, default=True) @@ -1013,7 +1013,7 @@ class Repository(Base, BaseModel): fork_id = Column(Integer(), ForeignKey('repositories.repo_id'), nullable=True) group_id = Column(Integer(), ForeignKey('groups.group_id'), nullable=True) - user = relationship('User') + owner = relationship('User') fork = relationship('Repository', remote_side=repo_id) group = relationship('RepoGroup') repo_to_perm = relationship('UserRepoToPerm', cascade='all', order_by='UserRepoToPerm.repo_to_perm_id') @@ -1121,7 +1121,7 @@ class Repository(Base, BaseModel): def get_by_repo_name(cls, repo_name): q = Session().query(cls).filter(cls.repo_name == repo_name) q = q.options(joinedload(Repository.fork)) \ - .options(joinedload(Repository.user)) \ + .options(joinedload(Repository.owner)) \ .options(joinedload(Repository.group)) return q.scalar() @@ -1263,7 +1263,7 @@ class Repository(Base, BaseModel): created_on=repo.created_on, description=repo.description, landing_rev=repo.landing_rev, - owner=repo.user.username, + owner=repo.owner.username, fork_of=repo.fork.repo_name if repo.fork else None, enable_statistics=repo.enable_statistics, enable_locking=repo.enable_locking, @@ -1524,13 +1524,13 @@ class RepoGroup(Base, BaseModel): group_parent_id = Column(Integer(), ForeignKey('groups.group_id'), nullable=True) group_description = Column(Unicode(10000), nullable=False) enable_locking = Column(Boolean(), nullable=False, default=False) - user_id = Column(Integer(), ForeignKey('users.user_id'), nullable=False) + owner_id = Column('user_id', Integer(), ForeignKey('users.user_id'), nullable=False) created_on = Column(DateTime(timezone=False), nullable=False, default=datetime.datetime.now) repo_group_to_perm = relationship('UserRepoGroupToPerm', cascade='all', order_by='UserRepoGroupToPerm.group_to_perm_id') users_group_to_perm = relationship('UserGroupRepoGroupToPerm', cascade='all') parent_group = relationship('RepoGroup', remote_side=group_id) - user = relationship('User') + owner = relationship('User') @classmethod def query(cls, sorted=False): @@ -1694,7 +1694,7 @@ class RepoGroup(Base, BaseModel): group_description=group.group_description, parent_group=group.parent_group.group_name if group.parent_group else None, repositories=[x.repo_name for x in group.repositories], - owner=group.user.username + owner=group.owner.username ) return data @@ -2329,7 +2329,7 @@ class PullRequest(Base, BaseModel): status = Column(Unicode(255), nullable=False, default=STATUS_NEW) # only for closedness, not approve/reject/etc created_on = Column(DateTime(timezone=False), nullable=False, default=datetime.datetime.now) updated_on = Column(DateTime(timezone=False), nullable=False, default=datetime.datetime.now) - user_id = Column(Integer(), ForeignKey('users.user_id'), nullable=False) + owner_id = Column('user_id', Integer(), ForeignKey('users.user_id'), nullable=False) _revisions = Column('revisions', UnicodeText(), nullable=False) org_repo_id = Column(Integer(), ForeignKey('repositories.repo_id'), nullable=False) org_ref = Column(Unicode(255), nullable=False) diff --git a/kallithea/model/forms.py b/kallithea/model/forms.py --- a/kallithea/model/forms.py +++ b/kallithea/model/forms.py @@ -259,8 +259,7 @@ def RepoForm(edit=False, old_data=None, repo_enable_locking = v.StringBoolean(if_missing=False) if edit: - #this is repo owner - user = All(v.UnicodeString(not_empty=True), v.ValidRepoUser()) + owner = All(v.UnicodeString(not_empty=True), v.ValidRepoUser()) # Not a real field - just for reference for validation: # clone_uri_hidden = v.UnicodeString(if_missing='') diff --git a/kallithea/model/repo.py b/kallithea/model/repo.py --- a/kallithea/model/repo.py +++ b/kallithea/model/repo.py @@ -211,8 +211,8 @@ class RepoModel(BaseModel): def repo_actions(repo_name): return _render('repo_actions', repo_name, super_user_actions) - def owner_actions(user_id, username): - return _render('user_name', user_id, username) + def owner_actions(owner_id, username): + return _render('user_name', owner_id, username) repos_data = [] for repo in repos_list: @@ -234,7 +234,7 @@ class RepoModel(BaseModel): "last_changeset": last_rev(repo.repo_name, cs_cache), "last_rev_raw": cs_cache.get('revision'), "desc": desc(repo.description), - "owner": h.person(repo.user), + "owner": h.person(repo.owner), "state": state(repo.repo_state), "rss": rss_lnk(repo.repo_name), "atom": atom_lnk(repo.repo_name), @@ -243,8 +243,8 @@ class RepoModel(BaseModel): if admin: row.update({ "action": repo_actions(repo.repo_name), - "owner": owner_actions(repo.user.user_id, - h.person(repo.user)) + "owner": owner_actions(repo.owner_id, + h.person(repo.owner)) }) repos_data.append(row) @@ -291,12 +291,12 @@ class RepoModel(BaseModel): defaults['clone_uri_hidden'] = repo_info.clone_uri_hidden # fill owner - if repo_info.user: - defaults.update({'user': repo_info.user.username}) + if repo_info.owner: + defaults.update({'owner': repo_info.owner.username}) else: replacement_user = User.query().filter(User.admin == True).first().username - defaults.update({'user': replacement_user}) + defaults.update({'owner': replacement_user}) # fill repository users for p in repo_info.repo_to_perm: @@ -314,8 +314,8 @@ class RepoModel(BaseModel): try: cur_repo = self._get_repo(repo) org_repo_name = cur_repo.repo_name - if 'user' in kwargs: - cur_repo.user = User.get_by_username(kwargs['user']) + if 'owner' in kwargs: + cur_repo.owner = User.get_by_username(kwargs['owner']) if 'repo_group' in kwargs: cur_repo.group = RepoGroup.get(kwargs['repo_group']) @@ -392,7 +392,7 @@ class RepoModel(BaseModel): new_repo.enable_statistics = False new_repo.repo_name = repo_name_full new_repo.repo_type = repo_type - new_repo.user = owner + new_repo.owner = owner new_repo.group = repo_group new_repo.description = description or repo_name new_repo.private = private diff --git a/kallithea/model/repo_group.py b/kallithea/model/repo_group.py --- a/kallithea/model/repo_group.py +++ b/kallithea/model/repo_group.py @@ -143,10 +143,10 @@ class RepoGroupModel(BaseModel): def create(self, group_name, group_description, owner, parent=None, just_db=False, copy_permissions=False): try: - user = self._get_user(owner) + owner = self._get_user(owner) parent_group = self._get_repo_group(parent) new_repo_group = RepoGroup() - new_repo_group.user = user + new_repo_group.owner = owner new_repo_group.group_description = group_description or group_name new_repo_group.parent_group = parent_group new_repo_group.group_name = new_repo_group.get_new_name(group_name) @@ -155,7 +155,7 @@ class RepoGroupModel(BaseModel): # create an ADMIN permission for owner except if we're super admin, # later owner should go into the owner field of groups - if not user.is_admin: + if not owner.is_admin: self.grant_user_permission(repo_group=new_repo_group, user=owner, perm='group.admin') @@ -171,7 +171,7 @@ class RepoGroupModel(BaseModel): # don't copy over the permission for user who is creating # this group, if he is not super admin he get's admin # permission set above - if perm.user != user or user.is_admin: + if perm.user != owner or owner.is_admin: UserRepoGroupToPerm.create(perm.user, new_repo_group, perm.permission) for perm in group_perms: diff --git a/kallithea/model/user_group.py b/kallithea/model/user_group.py --- a/kallithea/model/user_group.py +++ b/kallithea/model/user_group.py @@ -107,7 +107,7 @@ class UserGroupModel(BaseModel): def create(self, name, description, owner, active=True, group_data=None): try: new_user_group = UserGroup() - new_user_group.user = self._get_user(owner) + new_user_group.owner = self._get_user(owner) new_user_group.users_group_name = name new_user_group.user_group_description = description new_user_group.users_group_active = active diff --git a/kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html b/kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html --- a/kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html +++ b/kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html @@ -7,7 +7,7 @@ (_('Total repositories'), c.repo_group.repositories_recursive_count, ''), (_('Children groups'), c.repo_group.children.count(), ''), (_('Created on'), h.fmt_date(c.repo_group.created_on), ''), - (_('Owner'), h.person(c.repo_group.user), ''), + (_('Owner'), h.person(c.repo_group.owner), ''), ] %> %for dt, dd, tt in elems: diff --git a/kallithea/templates/admin/repos/repo_edit_settings.html b/kallithea/templates/admin/repos/repo_edit_settings.html --- a/kallithea/templates/admin/repos/repo_edit_settings.html +++ b/kallithea/templates/admin/repos/repo_edit_settings.html @@ -50,11 +50,11 @@ ${h.form(url('update_repo', repo_name=c.
- +
- ${h.text('user',class_='yui-ac-input')} + ${h.text('owner',class_='yui-ac-input')} ${_('Change owner of this repository.')}
@@ -147,6 +147,6 @@ ${h.form(url('update_repo', repo_name=c. // autocomplete var _USERS_AC_DATA = ${c.users_array|n}; - SimpleUserAutoComplete($('#user'), $('#owner_container'), _USERS_AC_DATA); + SimpleUserAutoComplete($('#owner'), $('#owner_container'), _USERS_AC_DATA); }); diff --git a/kallithea/templates/admin/user_groups/user_group_edit_advanced.html b/kallithea/templates/admin/user_groups/user_group_edit_advanced.html --- a/kallithea/templates/admin/user_groups/user_group_edit_advanced.html +++ b/kallithea/templates/admin/user_groups/user_group_edit_advanced.html @@ -5,7 +5,7 @@ elems = [ (_('Members'), len(c.group_members_obj), ''), (_('Created on'), h.fmt_date(c.user_group.created_on), ''), - (_('Owner'), h.person(c.user_group.user), ''), + (_('Owner'), h.person(c.user_group.owner), ''), ] %> %for dt, dd, tt in elems: diff --git a/kallithea/templates/forks/forks_data.html b/kallithea/templates/forks/forks_data.html --- a/kallithea/templates/forks/forks_data.html +++ b/kallithea/templates/forks/forks_data.html @@ -4,9 +4,9 @@ % for f in c.forks_pager:
- ${h.gravatar_div(f.user.email, size=24)} + ${h.gravatar_div(f.owner.email, size=24)} - ${f.user.username} (${f.user.name} ${f.user.lastname}) / + ${f.owner.username} (${f.owner.name} ${f.owner.lastname}) / ${h.link_to(f.repo_name,h.url('summary_home',repo_name=f.repo_name))}
${f.description}
diff --git a/kallithea/templates/pullrequests/pullrequest_show.html b/kallithea/templates/pullrequests/pullrequest_show.html --- a/kallithea/templates/pullrequests/pullrequest_show.html +++ b/kallithea/templates/pullrequests/pullrequest_show.html @@ -238,7 +238,7 @@ ${self.repo_context_bar('showpullrequest ${h.gravatar_div(member.email, size=14, div_class="reviewer_gravatar gravatar")}
${member.full_name_and_username} - %if c.pull_request.user_id == member.user_id: + %if c.pull_request.owner_id == member.user_id: (${_('Owner')}) %endif
@@ -270,7 +270,7 @@ ${self.repo_context_bar('showpullrequest ${_('Click to add the repository owner as reviewer:')}
    - %for u in [c.pull_request.other_repo.user]: + %for u in [c.pull_request.other_repo.owner]:
    • - - ${c.db_repo.user.username} - ${h.gravatar_div(c.db_repo.user.email, size=18, div_style="float: right; margin: 0px 0px 0px 0px", div_title=c.db_repo.user.full_name)} + + ${c.db_repo.owner.username} + ${h.gravatar_div(c.db_repo.owner.email, size=18, div_style="float: right; margin: 0px 0px 0px 0px", div_title=c.db_repo.owner.full_name)}
    • diff --git a/kallithea/tests/functional/test_admin_gists.py b/kallithea/tests/functional/test_admin_gists.py --- a/kallithea/tests/functional/test_admin_gists.py +++ b/kallithea/tests/functional/test_admin_gists.py @@ -10,8 +10,8 @@ def _create_gist(f_name, content='some g gist_mapping = { f_name: {'content': content} } - user = User.get_by_username(owner) - gist = GistModel().create(description, owner=user, + owner = User.get_by_username(owner) + gist = GistModel().create(description, owner=owner, gist_mapping=gist_mapping, gist_type=gist_type, lifetime=lifetime) Session().commit() diff --git a/kallithea/tests/functional/test_admin_repos.py b/kallithea/tests/functional/test_admin_repos.py --- a/kallithea/tests/functional/test_admin_repos.py +++ b/kallithea/tests/functional/test_admin_repos.py @@ -448,7 +448,7 @@ class _BaseTestCase(TestController): fixture._get_repo_create_params(repo_private=1, repo_name=self.REPO, repo_type=self.REPO_TYPE, - user=TEST_USER_ADMIN_LOGIN, + owner=TEST_USER_ADMIN_LOGIN, _authentication_token=self.authentication_token())) self.checkSessionFlash(response, msg='Repository %s updated successfully' % (self.REPO)) @@ -463,7 +463,7 @@ class _BaseTestCase(TestController): fixture._get_repo_create_params(repo_private=False, repo_name=self.REPO, repo_type=self.REPO_TYPE, - user=TEST_USER_ADMIN_LOGIN, + owner=TEST_USER_ADMIN_LOGIN, _authentication_token=self.authentication_token())) self.checkSessionFlash(response, msg='Repository %s updated successfully' % (self.REPO)) diff --git a/kallithea/tests/functional/test_my_account.py b/kallithea/tests/functional/test_my_account.py --- a/kallithea/tests/functional/test_my_account.py +++ b/kallithea/tests/functional/test_my_account.py @@ -28,7 +28,7 @@ class TestMyAccountController(TestContro def test_my_account_my_repos(self): self.log_user() response = self.app.get(url('my_account_repos')) - cnt = Repository.query().filter(Repository.user == + cnt = Repository.query().filter(Repository.owner == User.get_by_username(TEST_USER_ADMIN_LOGIN)).count() response.mustcontain('"totalRecords": %s' % cnt)