From fb61ba2b07a73e3940f1b78a057c58a3812c4c37 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Jul 08 2015 13:21:09 +0000 Subject: [PATCH 1/4] Adjust is_repo_admin to check if the user logged is an admin via a group This way, anyone having commit to a project via a group has basically full access to the project, just as if that person was namely granted the commit right to the project. --- diff --git a/pagure/__init__.py b/pagure/__init__.py index 3153926..1799d0b 100644 --- a/pagure/__init__.py +++ b/pagure/__init__.py @@ -148,8 +148,14 @@ def is_repo_admin(repo_obj): user = flask.g.fas_user.username + usergrps = [ + usr.user + for grp in repo_obj.groups + for usr in grp.users] + return user == repo_obj.user.user or ( - user in [user.user for user in repo_obj.users]) + user in [user.user for user in repo_obj.users] + ) or (user in usergrps) def generate_gitolite_acls(): From 070a239b31141de7996989b9956c0757d24a433a Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Jul 08 2015 13:23:28 +0000 Subject: [PATCH 2/4] Adjust showing the Settings/Fork buttons --- diff --git a/pagure/templates/repo_master.html b/pagure/templates/repo_master.html index a5189d8..caad683 100644 --- a/pagure/templates/repo_master.html +++ b/pagure/templates/repo_master.html @@ -87,7 +87,7 @@
    + {% if authenticated %} {% if not repo_admin %}
  • {% endif %} + {% endif %}
{% block repo %}