aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/models.py4
-rw-r--r--app/templates/index.html2
-rw-r--r--app/templates/macros/reviews.html17
-rw-r--r--app/templates/packages/view.html6
-rw-r--r--app/templates/threads/view.html8
5 files changed, 26 insertions, 11 deletions
diff --git a/app/models.py b/app/models.py
index f89fb6f..2d43656 100644
--- a/app/models.py
+++ b/app/models.py
@@ -659,6 +659,10 @@ class Package(db.Model):
return url_for("packages.remove_self_maintainers",
author=self.author.username, name=self.name)
+ def getReviewURL(self):
+ return url_for('packages.review',
+ author=self.author.username, name=self.name)
+
def getDownloadRelease(self, version=None):
for rel in self.releases:
if rel.approved and (version is None or
diff --git a/app/templates/index.html b/app/templates/index.html
index 10e0014..852ba0e 100644
--- a/app/templates/index.html
+++ b/app/templates/index.html
@@ -53,7 +53,7 @@
<h2 class="my-3">{{ _("Recent Positive Reviews") }}</h2>
{% from "macros/reviews.html" import render_reviews %}
- {{ render_reviews(reviews, True) }}
+ {{ render_reviews(reviews, current_user, True) }}
<div class="text-center mt-5">
<small>
diff --git a/app/templates/macros/reviews.html b/app/templates/macros/reviews.html
index 4dd51f5..ad622da 100644
--- a/app/templates/macros/reviews.html
+++ b/app/templates/macros/reviews.html
@@ -1,4 +1,4 @@
-{% macro render_reviews(reviews, show_package_link=False) -%}
+{% macro render_reviews(reviews, current_user, show_package_link=False) -%}
<ul class="comments mt-4 mb-0">
{% for review in reviews %}
<li class="row my-2 mx-0">
@@ -31,6 +31,13 @@
</div>
<div class="card-body">
+ {% if current_user == review.author %}
+ <a class="btn btn-primary btn-sm ml-1 float-right"
+ href="{{ review.package.getReviewURL() }}">
+ <i class="fas fa-edit"></i>
+ </a>
+ {% endif %}
+
<p>
<strong>{{ review.thread.title }}</strong>
</p>
@@ -64,7 +71,7 @@
<div class="card-header">
{{ _("Review") }}
</div>
- <form method="post" action="{{ url_for('packages.review', author=package.author.username, name=package.name) }}" class="card-body">
+ <form method="post" action="{{ package.getReviewURL() }}" class="card-body">
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}" />
<p>
{{ _("Do you recommend this %(type)s?", type=package.type.value | lower) }}
@@ -108,14 +115,12 @@
{{ _("Do you recommend this %(type)s?", type=package.type.value | lower) }}
</p>
- {% set review_url = url_for('packages.review', author=package.author.username, name=package.name) %}
-
<div class="btn-group">
- <a class="btn btn-primary" href="{{ url_for('user.login', r=review_url) }}">
+ <a class="btn btn-primary" href="{{ url_for('user.login', r=package.getReviewURL()) }}">
<i class="fas fa-thumbs-up mr-2"></i>
{{ _("Yes") }}
</a>
- <a class="btn btn-primary" href="{{ url_for('user.login', r=review_url) }}">
+ <a class="btn btn-primary" href="{{ url_for('user.login', r=package.getReviewURL()) }}">
<i class="fas fa-thumbs-down mr-2"></i>
{{ _("No") }}
</a>
diff --git a/app/templates/packages/view.html b/app/templates/packages/view.html
index 550ea12..d60ef16 100644
--- a/app/templates/packages/view.html
+++ b/app/templates/packages/view.html
@@ -465,9 +465,7 @@
{% if current_user.is_authenticated %}
{% if has_review %}
<p>
- <a
- class="btn btn-primary"
- href="{{ url_for('packages.review', author=package.author.username, name=package.name) }}">
+ <a class="btn btn-primary" href="{{ package.getReviewURL() }}">
{{ _("Edit Review") }}
</a>
</p>
@@ -477,7 +475,7 @@
{% else %}
{{ render_review_preview(package) }}
{% endif %}
- {{ render_reviews(package.reviews) }}
+ {{ render_reviews(package.reviews, current_user) }}
{#
{% if current_user.is_authenticated or requests %}
diff --git a/app/templates/threads/view.html b/app/templates/threads/view.html
index b91f866..b10d1e1 100644
--- a/app/templates/threads/view.html
+++ b/app/templates/threads/view.html
@@ -19,6 +19,14 @@ Threads
{% endif %}
{% endif %}
+ {% if current_user == thread.author and thread.review %}
+ <a class="btn btn-primary ml-1 float-right mr-2"
+ href="{{ thread.review.package.getReviewURL() }}">
+ <i class="fas fa-edit"></i>
+ {{ _("Edit Review") }}
+ </a>
+ {% endif %}
+
<h1>
{% if thread.review %}
{% if thread.review.recommends %}