mirror of
https://github.com/MarijnDoeve/TijdVoorDeTest.git
synced 2026-07-06 23:50:16 +02:00
64a09453e6
- Replace Bootstrap accordion with flat card list for questions - Add HTML5 drag-and-drop reordering with placeholder-between-cards UX and amber/green/red save status indicator next to the heading - Add edit button per question opening a Bootstrap modal (bo--modal-form Stimulus controller with X-Modal-Request header pattern) - Show read-only view button instead of edit for locked/finalized quizzes - Add BankQuestion edit modal in question bank tab using same infrastructure - Move modal action buttons into modal-footer via <template data-modal-footer> - Fix IS_AUTHENTICATED_FULLY 403: replace ROLE_USER with IS_AUTHENTICATED on all backoffice controllers and in security.yaml access_control
36 lines
1.5 KiB
Twig
36 lines
1.5 KiB
Twig
{% import 'backoffice/partials/answer_row.html.twig' as macros %}
|
||
|
||
{{ form_start(form) }}
|
||
{{ form_row(form.question) }}
|
||
|
||
<div data-controller="bo--form-collection"
|
||
data-bo--form-collection-prototype-value="{{ macros.answer_row(form.answers.vars.prototype)|e('html_attr') }}">
|
||
{{ form_label(form.answers) }}
|
||
{{ form_errors(form.answers) }}
|
||
<div data-bo--form-collection-target="collection">
|
||
{% for answerForm in form.answers %}
|
||
{{ macros.answer_row(answerForm) }}
|
||
{% endfor %}
|
||
</div>
|
||
{% do form.answers.setRendered %}
|
||
<div class="d-flex gap-2 mb-3">
|
||
<button type="button" class="btn btn-sm btn-outline-primary"
|
||
data-action="bo--form-collection#addItem">{{ 'Add answer'|trans }}</button>
|
||
<button type="button" class="btn btn-sm btn-outline-secondary"
|
||
data-action="bo--form-collection#sortAlphabetically">{{ 'Sort A–Z'|trans }}</button>
|
||
<button type="button" class="btn btn-sm btn-outline-secondary"
|
||
data-action="bo--form-collection#randomize">{{ 'Randomize'|trans }}</button>
|
||
</div>
|
||
</div>
|
||
|
||
{% if isModal ?? false %}
|
||
{% do form.save.setRendered %}
|
||
{% endif %}
|
||
{{ form_end(form) }}
|
||
{% if isModal ?? false %}
|
||
<template data-modal-footer>
|
||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">{{ 'Cancel'|trans }}</button>
|
||
<button type="submit" form="{{ form.vars.id }}" class="btn btn-primary">{{ 'Save'|trans }}</button>
|
||
</template>
|
||
{% endif %}
|