<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="https://raw.githubusercontent.com/shopware/shopware/trunk/src/Core/System/SystemConfig/Schema/config.xsd">
    <card>
        <title>Filialbestand</title>
        <title lang="en-GB">Store stock</title>

        <input-field type="single-select">
            <name>mode</name>
            <label>Quelle</label>
            <label lang="en-GB">Source</label>
            <options>
                <option><id>off</id><name>aus (keine Anzeige)</name><name lang="en-GB">off</name></option>
                <option><id>demo</id><name>Beispieldaten (nur Entwicklung)</name><name lang="en-GB">demo data</name></option>
                <option><id>jtl</id><name>JTL-Wawi der Filialen</name><name lang="en-GB">JTL warehouse</name></option>
            </options>
            <defaultValue>off</defaultValue>
        </input-field>

        <input-field type="text">
            <name>baseUrl</name>
            <label>Adresse der Schnittstelle</label>
            <helpText>Basis-URL ohne Pfad, z. B. https://wawi.example.de/api/v1</helpText>
        </input-field>

        <input-field type="password">
            <name>apiToken</name>
            <label>Zugangsschlüssel</label>
            <helpText>Der Schlüssel aus der App-Registrierung. Wird als „Authorization: Wawi …“ gesendet, nicht als Bearer-Token.</helpText>
        </input-field>

        <input-field>
            <name>appId</name>
            <label>App-Kennung</label>
            <defaultValue>RiccardoShopware</defaultValue>
            <helpText>Muss zur Registrierung in der Wawi passen; geht als X-AppId mit. Ohne sie antwortet der Dienst mit 400.</helpText>
        </input-field>

        <input-field>
            <name>challengeCode</name>
            <label>Bestätigungscode</label>
            <helpText>Der bei der Registrierung erzeugte Code. Die Wawi erwartet ihn bei JEDER Anfrage.</helpText>
        </input-field>

        <input-field>
            <name>caFile</name>
            <label>Zertifikatsdatei des Wawi-Dienstes</label>
            <defaultValue>/etc/ssl/riccardo/wawi-offline.pem</defaultValue>
            <helpText>Pfad zum selbstsignierten Zertifikat, gegen das geprüft wird. Muss auf jedem Frontend liegen. Erzeugen: openssl s_client -connect host:5884 &lt;/dev/null | openssl x509 &gt; /etc/ssl/riccardo/wawi-offline.pem</helpText>
        </input-field>

        <input-field>
            <name>certPin</name>
            <label>Schlüssel-Pin (pin-sha256)</label>
            <helpText>Der Wawi-Dienst nutzt ein selbstsigniertes Zertifikat. Hier eingetragen, wird genau dieser öffentliche Schlüssel verlangt – strenger als eine gewöhnliche Prüfung, und er überlebt eine Zertifikatserneuerung. Leer lassen heißt: normale CA-Prüfung, die bei selbstsigniertem Zertifikat fehlschlägt. Auslesen: openssl s_client -connect host:5884 &lt;/dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | base64</helpText>
        </input-field>

        <input-field type="int">
            <name>timeout</name>
            <label>Zeitlimit je Abfrage (Sekunden)</label>
            <defaultValue>3</defaultValue>
        </input-field>

        <input-field type="int">
            <name>cacheSeconds</name>
            <label>Antworten zwischenspeichern (Sekunden)</label>
            <defaultValue>120</defaultValue>
            <helpText>0 schaltet den Zwischenspeicher ab.</helpText>
        </input-field>

        <input-field type="int">
            <name>lowLimit</name>
            <label>„nur noch wenige“ ab (Stück oder weniger)</label>
            <defaultValue>2</defaultValue>
        </input-field>

        <input-field type="textarea">
            <name>warehouseMapping</name>
            <label>Zuordnung Filiale zu Lagernummer</label>
            <helpText>Eine Zeile je Filiale: filial-slug = Lagernummer in der Wawi. Den Slug zeigt das Modul Inhalte &gt; Filialen.</helpText>
        </input-field>
    </card>
</config>
