|
@@ -5,20 +5,36 @@
|
|
|
Scegli gli eventi che vuoi mettere nel volantino e premi genera.
|
|
|
Per stampare fai "File >> Stampa" Scegli come destinazione "Salva come PDF" e seleziona il giusto formato di carta (A3).
|
|
|
<br>
|
|
|
-L'attuale layout può contenere fino a 24 eventi.
|
|
|
+L'attuale layout può contenere fino a <span id="maxEvents"></span> eventi.
|
|
|
</div>
|
|
|
<br>
|
|
|
<form action="/flyer" target="_blank">
|
|
|
<label for="template">Scegli un template</label>
|
|
|
- <select id="template" name="template">
|
|
|
+ <select onchange="templateSelected(this.value)" id="template" name="template">
|
|
|
{% for template in templates %}
|
|
|
- <option value="{{template}}">{{template}}</option>
|
|
|
+ <option value="{{template.name}}">{{template.name}}</option>
|
|
|
{% endfor %}
|
|
|
</select>
|
|
|
<br>
|
|
|
{% for event in events %}
|
|
|
-<input type="checkbox" {% if loop.index <= 24 %} checked {% endif %} id="{{event.id}}" name="events" value="{{event.id}}">
|
|
|
+<input type="checkbox" id="{{event.id}}" name="events" value="{{event.id}}">
|
|
|
<label for="{{event.id}}"> {{loop.index}} [ {{event.when}} ] {{ event.title }}</label><br>
|
|
|
{% endfor %}
|
|
|
<input type="submit" value="Genera volantino">
|
|
|
</form>
|
|
|
+<script>
|
|
|
+ const templates={{templates|tojson}}
|
|
|
+ function templateSelected(templateName) {
|
|
|
+ const template = templates.find((t) => t.name == templateName)
|
|
|
+ const events = document.querySelectorAll("[name=events]")
|
|
|
+ document.querySelector("#maxEvents").innerHTML = template.maxEvents
|
|
|
+ var maxEvents = template.maxEvents
|
|
|
+ events.forEach((e) => {
|
|
|
+ e.checked = maxEvents > 0
|
|
|
+ maxEvents--
|
|
|
+ })
|
|
|
+ }
|
|
|
+ document.querySelector("#template").value = "{{default_template}}"
|
|
|
+ templateSelected("{{default_template}}")
|
|
|
+</script>
|
|
|
+
|