+
{% blocktrans trimmed %}
You selected a set of dates that currently have different check-in list setups. You can
therefore not change their check-in lists in bulk.
@@ -367,4 +369,17 @@
+ {% trans "Delete existing quotas" as dialog_title %}
+ {% trans "Using this option will
delete all current quotas from
all selected dates." as dialog_text %}
+ {% trans "This cannot be reverted. Are you sure to proceed?" as dialog_text2 %}
+ {% dialog "confirm-override-quotas" dialog_title dialog_text|add:" "|add:dialog_text2 icon="trash" %}
+
+
+
+
+ {% enddialog %}
{% endblock %}
diff --git a/src/pretix/static/pretixcontrol/js/ui/main.js b/src/pretix/static/pretixcontrol/js/ui/main.js
index 8156b34336..3b476ab22d 100644
--- a/src/pretix/static/pretixcontrol/js/ui/main.js
+++ b/src/pretix/static/pretixcontrol/js/ui/main.js
@@ -648,18 +648,47 @@ var form_handlers = function (el) {
var $checkbox = $(this).find("input[type=checkbox][name=_bulk]");
var $content = $(this).find(".field-content");
var $fields = $content.find("input, select, textarea, button");
+ var $dialog = $(this).attr("data-confirm-dialog") ? $($(this).attr("data-confirm-dialog")) : null;
+ var warningShown = false;
+
+ if ($dialog) {
+ $dialog.on("close", function () {
+ if ($dialog.get(0).returnValue === "yes") {
+ $checkbox.prop("checked", true);
+ } else {
+ $checkbox.prop("checked", false);
+ warningShown = false;
+ }
+ update();
+ });
+ }
var update = function () {
var isChecked = $checkbox.prop("checked");
+
$content.toggleClass("enabled", isChecked);
$fields.attr("tabIndex", isChecked ? 0 : -1);
}
$content.on("focusin change click", function () {
if ($checkbox.prop("checked")) return;
- $checkbox.prop("checked", true);
- update();
+ if ($dialog && !warningShown) {
+ warningShown = true;
+ $dialog.get(0).showModal();
+ } else {
+ $checkbox.prop("checked", true);
+ update();
+ }
});
- $checkbox.on('change', update)
+ $checkbox.on('change', function () {
+ var isChecked = $checkbox.prop("checked");
+ if (isChecked && $dialog && !warningShown) {
+ warningShown = true;
+ $dialog.get(0).showModal();
+ } else if (!isChecked) {
+ warningShown = false;
+ }
+ update();
+ })
update();
});