diff options
-rw-r--r-- | app/models.py | 4 | ||||
-rw-r--r-- | app/templates/index.html | 2 | ||||
-rw-r--r-- | app/templates/macros/reviews.html | 17 | ||||
-rw-r--r-- | app/templates/packages/view.html | 6 | ||||
-rw-r--r-- | app/templates/threads/view.html | 8 |
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 %} |