mirror of
https://github.com/minetest/contentdb.git
synced 2025-01-10 15:07:35 +01:00
Prevent reviewing unapproved packages
This commit is contained in:
parent
d3bdf4cf03
commit
18f70738d0
@ -25,7 +25,7 @@ from flask_wtf import FlaskForm
|
|||||||
from wtforms import *
|
from wtforms import *
|
||||||
from wtforms.validators import *
|
from wtforms.validators import *
|
||||||
from app.models import db, PackageReview, Thread, ThreadReply, NotificationType, PackageReviewVote, Package, UserRank, \
|
from app.models import db, PackageReview, Thread, ThreadReply, NotificationType, PackageReviewVote, Package, UserRank, \
|
||||||
Permission, AuditSeverity
|
Permission, AuditSeverity, PackageState
|
||||||
from app.utils import is_package_page, addNotification, get_int_or_abort, isYes, is_safe_url, rank_required, addAuditLog
|
from app.utils import is_package_page, addNotification, get_int_or_abort, isYes, is_safe_url, rank_required, addAuditLog
|
||||||
from app.tasks.webhooktasks import post_discord_webhook
|
from app.tasks.webhooktasks import post_discord_webhook
|
||||||
|
|
||||||
@ -54,6 +54,9 @@ def review(package):
|
|||||||
flash(gettext("You can't review your own package!"), "danger")
|
flash(gettext("You can't review your own package!"), "danger")
|
||||||
return redirect(package.getURL("packages.view"))
|
return redirect(package.getURL("packages.view"))
|
||||||
|
|
||||||
|
if package.state != PackageState.APPROVED:
|
||||||
|
abort(404)
|
||||||
|
|
||||||
review = PackageReview.query.filter_by(package=package, author=current_user).first()
|
review = PackageReview.query.filter_by(package=package, author=current_user).first()
|
||||||
can_review = review is not None or current_user.canReviewRL()
|
can_review = review is not None or current_user.canReviewRL()
|
||||||
|
|
||||||
|
@ -297,22 +297,28 @@
|
|||||||
<h2 id="reviews" class="mt-0">{{ _("Reviews") }}</h2>
|
<h2 id="reviews" class="mt-0">{{ _("Reviews") }}</h2>
|
||||||
|
|
||||||
{% from "macros/reviews.html" import render_reviews, render_review_form, render_review_preview with context %}
|
{% from "macros/reviews.html" import render_reviews, render_review_form, render_review_preview with context %}
|
||||||
{% if current_user.is_authenticated %}
|
{% if package.state.name == "APPROVED" %}
|
||||||
{% if has_review %}
|
{% if current_user.is_authenticated %}
|
||||||
<p>
|
{% if has_review %}
|
||||||
<a class="btn btn-primary" href="{{ package.getURL("packages.review") }}">
|
<p>
|
||||||
{{ _("Edit Review") }}
|
<a class="btn btn-primary" href="{{ package.getURL("packages.review") }}">
|
||||||
</a>
|
{{ _("Edit Review") }}
|
||||||
</p>
|
</a>
|
||||||
{% elif current_user in package.maintainers %}
|
</p>
|
||||||
<p>
|
{% elif current_user in package.maintainers %}
|
||||||
{{ _("You can't review your own package.") }}
|
<p>
|
||||||
</p>
|
{{ _("You can't review your own package.") }}
|
||||||
|
</p>
|
||||||
|
{% else %}
|
||||||
|
{{ render_review_preview(package) }}
|
||||||
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ render_review_preview(package) }}
|
{{ render_review_preview(package) }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ render_review_preview(package) }}
|
<p>
|
||||||
|
{{ _("Package needs to be approved before it can be reviewed.") }}
|
||||||
|
</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if current_user.is_authenticated and current_user.rank.atLeast(current_user.rank.ADMIN) %}
|
{% if current_user.is_authenticated and current_user.rank.atLeast(current_user.rank.ADMIN) %}
|
||||||
|
Loading…
Reference in New Issue
Block a user