rich-id/terms-module

View on GitHub
src/Infrastructure/Resources/views/admin/edit/_partial/_body.html.twig

Summary

Maintainability
Test Coverage
{% form_theme form '@RichIdTermsModule/_form-theme.html.twig' %}

{% include '@RichIdTermsModule/_loader.html.twig' %}
{% set publishedTermsAndDepublicationLocked = terms.published() and terms.depublicationLocked %}

{% if lastTermsVersion.isEnabled() %}
    {% set lastEnabledVersion = lastTermsVersion %}
{% else %}
    {% set lastEnabledVersion = terms.versions|sort((a, b) => b.version <=> a.version)|slice(1, 1)|first %}
{% endif %}

<div class="terms-module-admin-body terms-module-admin-body-form ">
    <div class="terms-module-admin-edition-terms-name">{{ terms.name }}</div>

    {{ form_start(form, {'attr': {'id': 'terms-edition-form'}}) }}
        {{ form_row(form.isTermsPublished, {'attr': {'class': 'terms-module-form-field-small'}}) }}
        {{ form_row(form.needVersionActivation) }}

        <div class="terms-module-admin-edition-add-version-container">
            <div id="terms-module-admin-edition-terms-version-tags" class="terms-module-admin-edition-terms-version-tags">
                {% for termsVersion in terms.versions|sort((a, b) => b.version <=> a.version) %}
                    {% include '@RichIdTermsModule/admin/edit/_partial/_terms_version_card.html.twig' %}
                {% endfor %}

                <div class="terms-version-tag terms-version-tag-next" onclick="openOtherVersion()">...</div>
            </div>

            <div class="terms-module-admin-edition-version-management">
                {% if currentTermsVersion.id == lastTermsVersion.id and lastTermsVersion.isEnabled() %}
                    <button type="button" class="terms-module-button-secondary terms-module-button-secondary-small" onclick="createNewVersion()" {% if currentTermsVersion.id is null %}disabled{% endif %}>
                        <i class="icon-plus-circle-light"></i>
                        {{ 'terms_module.admin.edit.new_version'|trans({}, 'terms_module') }}
                    </button>
                {% endif %}

                {% if currentTermsVersion.id != lastTermsVersion.id  %}
                    <button type="button" class="terms-module-button-secondary terms-module-button-secondary-small" onclick="createNewVersion({{ currentTermsVersion.version }})" {% if not lastTermsVersion.isEnabled() %}disabled{% endif %}>
                        <i class="icon-layer-plus-light"></i>
                        {{ 'terms_module.admin.edit.duplicate'|trans({}, 'terms_module') }}
                    </button>
                {% endif %}

                {% if currentTermsVersion.id is not null and  currentTermsVersion.id == lastTermsVersion.id and not lastTermsVersion.isEnabled() %}
                    <button type="button" class="terms-module-button-secondary terms-module-button-secondary-small" onclick="activateVersion()">
                        <i class="icon-check1"></i>
                        {{ 'terms_module.admin.edit.activate_version'|trans({}, 'terms_module') }}
                    </button>
                {% endif %}

                {% if currentTermsVersion.id is not null and not currentTermsVersion.isEnabled() and terms.versions|length > 1 %}
                    <button type="button" class="terms-module-button-remove" onclick="removeVersion()">
                        <i class="icon-trash"></i>
                    </button>
                {% endif %}
            </div>
        </div>

        <div class="terms-module-admin-edition-title-block terms-module-admin-row">
            <div class="terms-module-admin-edition-title terms-module-admin-col">{{ form_row(form.title, {'attr': {'class': 'terms-module-form-field-full'}}) }}</div>
            {% if lastTermsVersion.version > 1 %}
                <div class="terms-module-admin-edition-publication-date terms-module-admin-col">{{ form_row(form.publicationDate, {'attr': {'class': 'terms-module-form-field-small'}}) }}</div>
            {% else %}
                {% do form.publicationDate.setRendered() %}
            {% endif %}
        </div>

        {{ form_row(form.content, {'attr': {'class': 'terms-module-form-field-full'}}) }}

        {% block editionActions %}
            <div class="terms-module-admin-edition-actions">
                <button type="button" id="save-terms" class="terms-module-button-primary terms-module-action terms-module-action-space terms-module-open-loader" onclick="saveTerms()" disabled>{{ 'terms_module.admin.edit.save'|trans({}, 'terms_module') }}</button>
                <button type="button" id="save-and-exit-terms" class="terms-module-button-primary terms-module-action terms-module-action-space terms-module-open-loader" onclick="saveTerms(true)" disabled>{{ 'terms_module.admin.edit.save_and_exit'|trans({}, 'terms_module') }}</button>
                <a class="terms-module-button-secondary terms-module-action-space" id="exit-terms" href="{{ path('module_terms_admin_list') }}">{{ 'terms_module.admin.edit.close'|trans({}, 'terms_module') }}</a>
            </div>
        {% endblock %}
    {{ form_end(form) }}
</div>

{% include '@RichIdTermsModule/_load-picto.html.twig' %}

<script>
    document.addEventListener("DOMContentLoaded", function () {
        {% include '@RichIdTermsModule/admin/edit/_partial/js/_init.js.twig' %}
        {% include '@RichIdTermsModule/admin/edit/_partial/js/_getter.js.twig' %}
        {% include '@RichIdTermsModule/admin/edit/_partial/js/_updater.js.twig' %}
        {% include '@RichIdTermsModule/admin/edit/_partial/js/_ajax.js.twig' %}
        {% include '@RichIdTermsModule/admin/edit/_partial/js/_listener.js.twig' %}
    });
</script>