{% extends 'administration/base.html.twig' %} {% block title %}{{ title_key|trans }}{% endblock %} {% block body %} {% set ptype = entity is defined ? entity.providerType : form.vars.value.providerType %} {% set slug_for_redirect = ptype != 'custom' ? ptype : (form.slug.vars.value|default('')) %} {% set oauth_callback_url_tpl = absolute_url(path('storefront_oauth_callback', { slug: '__SLUG__' })) %}
{{ 'admin.back'|trans }}

{{ title_key|trans }}

{{ 'admin.oauth_inbound.form.page_intro'|trans }}

{% if not oauthOperational %}
{{ 'admin.oauth_module.license_inactive'|trans }}
{% endif %}
{{ form_start(form, { attr: { class: 'needs-validation oauth-inbound-form', novalidate: 'novalidate', 'data-oauth-form': '1' } }) }} {{ form_errors(form) }} {# ——— Schritt 1: Vorlage (nur Neu) ——— #} {% if is_new %}
1

{{ 'admin.oauth_inbound.form.step_provider'|trans }}

{{ 'admin.oauth_inbound.form.step_provider_help'|trans }}

{{ form_row(form.providerType) }}
{% else %}
{{ ('admin.oauth_inbound.preset.' ~ ptype)|trans }} {{ 'admin.oauth_inbound.form.edit_type_locked'|trans }}
{% endif %} {# ——— Redirect-URL (zentrale Orientierung) ——— #}

{{ 'admin.oauth_inbound.form.redirect_title'|trans }}

{{ 'admin.oauth_inbound.form.redirect_body'|trans }}

{{ absolute_url(path('storefront_oauth_callback', { slug: slug_for_redirect ?: '…' })) }}

{% if ptype == 'custom' %} {{ 'admin.oauth_inbound.form.redirect_hint_custom'|trans }} {% else %} {{ 'admin.oauth_inbound.form.redirect_hint_preset'|trans }} {% endif %}

{% if is_new or ptype == 'terraflow' %}
{{ 'admin.oauth_inbound.form.terraflow_setup_hint'|trans|raw }}
{% endif %} {# ——— Schritt 2: Sichtbarkeit & Name ——— #}
{{ is_new ? '2' : '1' }}

{{ 'admin.oauth_inbound.form.step_identity'|trans }}

{% if form.slug is defined %}
{{ form_row(form.slug) }}
{% endif %}
{{ form_row(form.displayName) }}
{{ form_row(form.enabled) }}
{# ——— Schritt 3: App-Zugangsdaten ——— #}
{{ is_new ? '3' : '2' }}

{{ 'admin.oauth_inbound.form.step_credentials'|trans }}

{{ 'admin.oauth_inbound.form.step_credentials_help'|trans }}

{{ form_row(form.clientId) }}
{{ form_row(form.plainClientSecret) }}
{% if form.terraflowRemoteBaseUrl is defined %}
{{ form_row(form.terraflowRemoteBaseUrl) }}
{% endif %}
{# ——— Nur eigener Anbieter: Scopes ——— #} {% if form.scopesText is defined %}

{{ 'admin.oauth_inbound.form.step_scopes'|trans }}

{{ 'admin.oauth_inbound.form.step_scopes_help'|trans }}

{{ form_row(form.scopesText) }}

{{ 'admin.oauth_inbound.form.scopes_examples'|trans }}

{% endif %} {% if ptype == 'custom' or is_new %}

{{ 'admin.oauth_inbound.custom_endpoints'|trans }}

{% if form.authorizationUrl is defined %}
{{ form_row(form.authorizationUrl) }}
{{ form_row(form.tokenUrl) }}
{{ form_row(form.userInfoUrl) }}
{{ form_row(form.userIdField) }}
{{ form_row(form.userEmailField) }}
{{ form_row(form.userNameField) }}
{% endif %}
{% endif %} {% if form.iconClass is defined %}
{{ form_row(form.iconClass) }}
{% endif %} {# Preset: kurzinfo statt Scope-Felder #} {% if ptype != 'custom' and not is_new %}
{{ 'admin.oauth_inbound.form.preset_auto_title'|trans }} {{ 'admin.oauth_inbound.form.preset_auto_body'|trans }}
{% endif %}
{{ 'admin.cancel'|trans }}
{{ form_end(form) }}
{% if is_new %} {% endif %} {% endblock %}