contentdb/app/templates/macros/package_approval.html

117 lines
4.1 KiB
HTML
Raw Normal View History

2021-07-29 20:34:47 +02:00
{% macro render_banners(package, current_user, topic_error, topic_error_lvl, conflicting_modnames) -%}
<div class="row mb-4">
<span class="col">
2022-01-08 00:27:00 +01:00
{{ _("State") }}: <strong>{{ package.state.value }}</strong>
</span>
{% for state in package.getNextStates(current_user) %}
<form class="col-auto" method="post" action="{{ package.getSetStateURL(state) }}">
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}" />
<input class="btn btn-sm btn-primary" type="submit" value="{{ state.verb() }}" />
</form>
{% endfor %}
</div>
{% set level = "warning" %}
{% if package.releases.count() == 0 %}
{% set message %}
{% if package.checkPerm(current_user, "MAKE_RELEASE") %}
2020-12-15 22:22:17 +01:00
{% if package.update_config %}
2022-01-08 00:27:00 +01:00
<a class="btn btn-sm btn-warning float-right" href="{{ package.getURL("packages.create_release") }}">
{{ _("Create first release") }}
</a>
2020-12-15 22:22:17 +01:00
{% else %}
2022-01-08 00:27:00 +01:00
<a class="btn btn-sm btn-warning float-right" href="{{ package.getURL("packages.setup_releases") }}">
{{ _("Set up releases") }}
</a>
2020-12-15 22:22:17 +01:00
{% endif %}
{{ _("You need to create a release before this package can be approved.") }}
{% else %}
2020-12-15 22:22:17 +01:00
{{ _("A release is required before this package can be approved.") }}
{% endif %}
{% endset %}
{% elif (package.type == package.type.GAME or package.type == package.type.TXP) and package.screenshots.count() == 0 %}
2022-01-08 00:27:00 +01:00
{% set message = _("You need to add at least one screenshot.") %}
{% elif package.getMissingHardDependenciesQuery().count() > 0 %}
{% set deps = package.getMissingHardDependencies() | join(", ") %}
{% set message = _("The following hard dependencies need to be added to ContentDB first: %(deps)s", deps=deps) %}
{% elif topic_error_lvl == "danger" %}
{% elif package.state == package.state.READY_FOR_REVIEW and ("Other" in package.license.name or "Other" in package.media_license.name) %}
2022-01-08 00:27:00 +01:00
{% set message = _("Please wait for the license to be added to CDB.") %}
{% else %}
{% set level = "info" %}
{% set message %}
{% if package.screenshots.count() == 0 %}
2022-01-08 00:27:00 +01:00
<b>
{{ _("You should add at least one screenshot, but this isn't required.") }}
</b><br />
{% endif %}
{% if package.state == package.state.READY_FOR_REVIEW %}
{% if not package.getDownloadRelease() %}
2022-01-08 00:27:00 +01:00
{{ _("Please wait for the release to be approved.") }}
{% elif package.checkPerm(current_user, "APPROVE_NEW") %}
2022-01-08 00:27:00 +01:00
{{ _("You can now approve this package if you're ready.") }}
{% else %}
2022-01-08 00:27:00 +01:00
{{ _("Please wait for the package to be approved.") }}
{% endif %}
{% else %}
{% if package.checkPerm(current_user, "EDIT_PACKAGE") %}
2022-01-08 00:27:00 +01:00
{{ _("You can now submit this package for approval if you're ready.") }}
{% else %}
2022-01-08 00:27:00 +01:00
{{ _("This package can be submitted for approval when ready.") }}
{% endif %}
{% endif %}
{% endset %}
{% endif %}
{% if message %}
<div class="alert alert-{{ level }}">
<span class="icon_message"></span>
{{ message | safe }}
<div style="clear: both;"></div>
</div>
{% endif %}
{% if topic_error %}
<div class="alert alert-{{ topic_error_lvl }}">
<span class="icon_message"></span>
{{ topic_error | safe }}
<div style="clear: both;"></div>
</div>
{% endif %}
2021-07-29 20:34:47 +02:00
{% if conflicting_modnames %}
<div class="alert alert-warning">
2021-07-29 20:34:47 +02:00
<a class="float-right btn btn-sm btn-warning" href="{{ package.getURL('packages.similar') }}">
More info
</a>
{% if conflicting_modnames | length > 4 %}
2022-01-08 00:27:00 +01:00
{{ _("Please make sure that this package has the right to the names it uses.") }}
2021-07-29 20:34:47 +02:00
{% else %}
2022-01-08 00:27:00 +01:00
{{ _("Please make sure that this package has the right to the names %(names)s", names=conflicting_modnames | join(", ")) }}.
2021-07-29 20:34:47 +02:00
{% endif %}
</div>
{% endif %}
{% if not package.review_thread and (package.author == current_user or package.checkPerm(current_user, "APPROVE_NEW")) %}
<div class="alert alert-secondary">
2022-01-08 00:27:00 +01:00
<a class="float-right btn btn-sm btn-secondary" href="{{ url_for('threads.new', pid=package.id, title='Package approval comments') }}">
{{ _("Open Thread") }}
</a>
{{ _("Package approval thread") }}:
{{ _("You can open a thread if you have a question for the approver or package author.") }}
<div style="clear:both;"></div>
</div>
{% endif %}
{% endmacro %}