[extensions-web] views: Hide contact information for everybody but the reporter and extension author
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [extensions-web] views: Hide contact information for everybody but the reporter and extension author
- Date: Thu, 27 Jun 2013 19:51:05 +0000 (UTC)
commit c363bb840820109dfb0fbfac4cde6b6a92ca3141
Author: Jasper St. Pierre <jstpierre mecheye net>
Date: Thu Jun 27 15:50:42 2013 -0400
views: Hide contact information for everybody but the reporter and extension author
.../errorreports/templates/errorreports/view.html | 2 ++
sweettooth/errorreports/views.py | 12 +++++++++++-
2 files changed, 13 insertions(+), 1 deletions(-)
---
diff --git a/sweettooth/errorreports/templates/errorreports/view.html
b/sweettooth/errorreports/templates/errorreports/view.html
index e38e752..f6999a8 100644
--- a/sweettooth/errorreports/templates/errorreports/view.html
+++ b/sweettooth/errorreports/templates/errorreports/view.html
@@ -8,9 +8,11 @@
<div>{{ report.comment|default:"No comments" }}</div>
</div>
+{% if show_email %}
<h3> Contact information </h3>
<p>Please email the reporter back to respond. The user's address is:</p>
<a class="email" href="mailto:{{ report.user.email }}">{{ report.user.email }}</a>
+{% endif %}
{% endblock %}
{% block navclass %}main{% endblock %}
diff --git a/sweettooth/errorreports/views.py b/sweettooth/errorreports/views.py
index 0ad336c..d0eaf8d 100644
--- a/sweettooth/errorreports/views.py
+++ b/sweettooth/errorreports/views.py
@@ -40,10 +40,20 @@ def report_error(request, extension):
form=form)
return render(request, 'errorreports/report.html', context)
+def can_see_reporter_email(user, report):
+ if user.is_superuser:
+ return True
+
+ if user in (report.user, report.extension.creator):
+ return True
+
+ return False
+
@login_required
@model_view(ErrorReport)
def view_error_report(request, obj):
- return render(request, 'errorreports/view.html', dict(report=obj))
+ return render(request, 'errorreports/view.html', dict(report=obj,
+ show_email=can_see_reporter_email(request.user,
obj)))
def send_email_on_error_reported(sender, request, extension, report, **kwargs):
url = request.build_absolute_uri(reverse('errorreports.views.view_error_report',
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]