Repository :
http://git.fedorahosted.org/cgit/copr.git
On branch : master
---------------------------------------------------------------
commit b8358354f2e3219e7d5be01c48625fd11fde53f3
Author: Jakub Kadl����k <jkadlcik(a)redhat.com>
Date: Mon Feb 15 15:58:40 2016 +0100
[frontend] show edit and rebuild buttons only for allowed users
---------------------------------------------------------------
.../coprs/templates/coprs/detail/package.html | 4 ++++
.../coprs/views/coprs_ns/coprs_packages.py | 4 ++++
2 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/frontend/coprs_frontend/coprs/templates/coprs/detail/package.html
b/frontend/coprs_frontend/coprs/templates/coprs/detail/package.html
index e5cc5a3..37be997 100644
--- a/frontend/coprs_frontend/coprs/templates/coprs/detail/package.html
+++ b/frontend/coprs_frontend/coprs/templates/coprs/detail/package.html
@@ -18,9 +18,11 @@
{% block detail_body %}
+{% if g.user and g.user.can_edit(copr) %}
<a class="btn btn-default pull-right button-build-action" href="{{
copr_url('coprs_ns.copr_rebuild_package', copr, package_name=package.name)
}}">
<span class="pficon pficon-restart"></span> Rebuild
</a>
+{% endif %}
<h2 class="page-title"> Package: {{ package.name }} </h2>
@@ -47,11 +49,13 @@
<div class="panel panel-default">
<div class="panel-heading clearfix panel-heading-buttons">
<h3 class="panel-title pull-left">Default Build
Source</h3>
+ {% if g.user and g.user.can_edit(copr) %}
<div class="btn-group pull-right">
<a class="btn btn-default btn-sm" href="{{
copr_url('coprs_ns.copr_edit_package', copr, package_name=package.name)
}}">
<span class="pficon pficon-edit"> Edit</span>
</a>
</div>
+ {% endif %}
</div>
<div class="panel-body">
<dl class="dl-horizontal">
diff --git a/frontend/coprs_frontend/coprs/views/coprs_ns/coprs_packages.py
b/frontend/coprs_frontend/coprs/views/coprs_ns/coprs_packages.py
index 9ca1ed3..9a81504 100644
--- a/frontend/coprs_frontend/coprs/views/coprs_ns/coprs_packages.py
+++ b/frontend/coprs_frontend/coprs/views/coprs_ns/coprs_packages.py
@@ -11,6 +11,7 @@ from coprs.views.coprs_ns.coprs_builds import render_add_build_tito,
render_add_
from coprs.views.misc import login_required, page_not_found, req_with_copr,
req_with_copr
from coprs.logic.complex_logic import ComplexLogic
from coprs.logic.packages_logic import PackagesLogic
+from coprs.logic.users_logic import UsersLogic
from coprs.exceptions import (ActionInProgressException,
InsufficientRightsException,)
@@ -124,6 +125,9 @@ def copr_edit_package(copr, package_name, source_type=None,
**kwargs):
@login_required
@req_with_copr
def copr_edit_package_post(copr, package_name):
+ UsersLogic.raise_if_cant_build_in_copr(
+ flask.g.user, copr, "You don't have permissions to edit this
package.")
+
url_on_success = copr_url("coprs_ns.copr_packages", copr)
return process_save_package(copr, package_name,
view="coprs_ns.copr_edit_package",
view_method=copr_edit_package,
url_on_success=url_on_success)