Add report edit form
This commit is contained in:
@@ -150,3 +150,22 @@ def view(rid: str):
|
||||
db.session.commit()
|
||||
|
||||
return render_template("report/view.html", report=report)
|
||||
|
||||
|
||||
@bp.route("/admin/reports/<rid>/edit/", methods=["GET", "POST"])
|
||||
def edit(rid: str):
|
||||
report = Report.query.get_or_404(rid)
|
||||
if not report.check_perm(current_user, Permission.SEE_REPORT):
|
||||
abort(404)
|
||||
|
||||
form = ReportForm(request.form, obj=report)
|
||||
form.submit.label.text = lazy_gettext("Save")
|
||||
if form.validate_on_submit():
|
||||
form.populate_obj(report)
|
||||
url = url_for("report.view", rid=report.id)
|
||||
add_audit_log(AuditSeverity.MODERATION, current_user, f"Edited report \"{report.title}\"", url)
|
||||
db.session.commit()
|
||||
|
||||
return redirect(url_for("report.view", rid=report.id))
|
||||
|
||||
return render_template("report/edit.html", report=report, form=form)
|
||||
|
||||
25
app/templates/report/edit.html
Normal file
25
app/templates/report/edit.html
Normal file
@@ -0,0 +1,25 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block title -%}
|
||||
Edit report
|
||||
{%- endblock %}
|
||||
|
||||
{% from "macros/forms.html" import render_field, render_submit_field, render_checkbox_field, easymde_scripts %}
|
||||
{% block scriptextra %}
|
||||
{{ easymde_scripts() }}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h1>{{ self.title() }}</h1>
|
||||
|
||||
<form method="POST" action="" enctype="multipart/form-data">
|
||||
{{ form.hidden_tag() }}
|
||||
{{ render_field(form.category) }}
|
||||
{{ render_field(form.url) }}
|
||||
{{ render_field(form.title) }}
|
||||
{{ render_field(form.message, class_="m-0", fieldclass="form-control markdown", data_enter_submit="1") }}
|
||||
{{ render_submit_field(form.submit) }}
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h1>{{ _("Report") }}</h1>
|
||||
<h1>{{ self.title() }}</h1>
|
||||
|
||||
{% if not form %}
|
||||
|
||||
|
||||
@@ -11,6 +11,10 @@
|
||||
|
||||
{% block content %}
|
||||
|
||||
<p class="float-end">
|
||||
<a class="btn bg-secondary" href="{{ url_for('report.edit', rid=report.id) }}">{{ _("Edit") }}</a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a class="btn bg-secondary" href="{{ url_for('report.list_all') }}">Back to reports</a>
|
||||
</p>
|
||||
|
||||
Reference in New Issue
Block a user