{% extends "_layouts/cp" %}
{% import "_includes/forms" as forms %}

{% if errors is defined and originalMenu is defined %}
	{% set title = "Edit Menu -  " ~ originalMenu.name |t('olivemenus') %}
{% else %}
	{% set title = "Edit Menu -  " ~ menu.name |t('olivemenus') %}
{% endif %}

{% set selectedTab = '' %}

{% set tabs = {
    menus: { label: "All Menus"|t('olivemenus'), url: url('olivemenus/' ~ objSite.handle) },
    new:    { label: "New Menu"|t('olivemenus'), url: url('olivemenus/menu-new/' ~ objSite.handle) }
} %}

{% set content %}
    <form method="post" accept-charset="UTF-8">
        {{ csrfInput() }}
        <input type="hidden" name="action" value="olivemenus/menu/menu-edit" />
        <input type="hidden" name="data[id]" value="{{menu.id}}" />
        <input type="hidden" name="data[site_id]" value="{{menu.site_id}}" />

        {% set nameValidationError = '' %}
        {% set handleValidationError = '' %}

        {% set nameValue = '' %}
        {% set handleValue = '' %}

        {% macro errorList(errors) %}
            {% if errors %}
                <ul class="errors">
                    {% for error in errors %}
                        <li>{{ error }}</li>
                    {% endfor %}
                </ul>
            {% endif %}
        {% endmacro %}
        
        {% from _self import errorList %}

        {% if menu is defined %}
            {% set nameValidationError = errorList(menu.getErrors('name')) %}
            {% set handleValidationError = errorList(menu.getErrors('handle')) %}

            {% set nameValue = menu.name %}
            {% set handleValue = menu.handle %}
        {% endif %}

        {{
            forms.textField({
                label: "Name"|t('olivemenus'),
                id: 'name',
                name: 'data[name]',
                first: true,
                autofocus: true,
                required: true,
                value: nameValue
            })
        }}
        {{ nameValidationError }}
        {{
            forms.textField({
                label: "Handle"|t('olivemenus'),
                id: 'handle',
                name: 'data[handle]',
                required: true,
                value: handleValue
            })
        }}
        {{ handleValidationError }}
        <div class="buttons">
            <div class="btngroup submit first">
                <input type="submit" class="btn submit" value="{{ 'Save'|t('olivemenus') }}" />
                <a class="btn back-button" href="{{url('olivemenus/' ~ objSite.handle)}}">{{ "Back"|t('olivemenus') }}</a>
            </div>
        </div>
    </form>
{% endset %}

{% js %}
    new Craft.HandleGenerator('#name', '#handle');
{% endjs %}