Compare commits

...

3 Commits

Author SHA1 Message Date
Lukas Bockstaller
a1f796da9e Update src/pretix/static/pretixbase/js/asynctask.js
Co-authored-by: pajowu <engelhardt@pretix.eu>
2026-06-15 13:15:56 +02:00
Lukas Bockstaller
3a10a5387e scope down event 2026-06-15 11:55:58 +02:00
Lukas Bockstaller
6d405a608f load errors.js as standard and make it coop with async_task_replace_page 2026-06-15 11:41:28 +02:00
4 changed files with 19 additions and 7 deletions

View File

@@ -20,6 +20,5 @@
<div class="container">
{% block content %}{% endblock %}
</div>
<script src="{% static "pretixbase/js/errors.js" %}"></script>
</body>
</html>

View File

@@ -22,4 +22,5 @@
<script type="text/javascript" src="{% static "pretixpresale/js/ui/iframe.js" %}"></script>
<script type="text/javascript" src="{% static "pretixbase/js/addressform.js" %}"></script>
<script type="text/javascript" src="{% static "pretixbase/js/deanonymize_email.js" %}"></script>
<script type="text/javascript" src="{% static "pretixbase/js/errors.js" %}"></script>
{% endcompress %}

View File

@@ -174,15 +174,15 @@ function async_task_error(jqXHR, textStatus, errorThrown) {
var respdom = $(jqXHR.responseText);
var c = respdom.filter('.container');
if (respdom.filter('form') && (respdom.filter('.has-error') || respdom.filter('.alert-danger'))) {
// This is a failed form validation, let's just use it
if (respdom.filter('#page-wrapper') && $('#page-wrapper').length) {
// This is a failed form validation, let's just use it
async_task_replace_page("#page-wrapper", respdom.find("#page-wrapper").html());
} else {
async_task_replace_page("body", jqXHR.responseText.substring(
jqXHR.responseText.indexOf("<body"),
jqXHR.responseText.indexOf("</body")
));
$(document).trigger("pretix:async_task_replace_page:on_error");
}
} else if (c.length > 0) {

View File

@@ -1,5 +1,17 @@
document.getElementById('goback').onclick =
function() {window.history.back()};
const registerErrorLinkHandlers = (reloadAll = false) => {
const backwards = document.getElementById('goback');
if (backwards) {
backwards.onclick = reloadAll
? () => window.location.reload(true)
: () => window.history.back();
}
document.getElementById('reload').onclick =
function() {window.location.reload(true)};
const reload = document.getElementById('reload');
if (reload) {
reload.onclick = () => window.location.reload(true);
}
};
registerErrorLinkHandlers();
$(document).on("pretix:async_task_replace_page:on_error", () => registerErrorLinkHandlers(true));