INQUIRY4-External ist ein externes WEBSALE Modul zur Erstellung von individuellen Kontakt-, Support- und Serviceformularen für deinen WEBSALE-Onlineshop. Die Formulare können ganz nach deinen Anforderungen konfiguriert werden.
Formulare über INQUIRY4-External können einfach und problemlos an verschiedenen Stellen in dein Shop-Frontend integriert werden. Auch Links zu den Formularen können überall platziert werden.
Das Look & Feel der Formulare kann mittels HTML und CSS individuell gestaltet werden.
Diese Dokumentation richtet sich an Personen, die entsprechendes Wissen über die Erstellung von HTML-Seiten besitzen und die Grundlagen von HTML beherrschen.
INQUIRY4 ist ein universelles Formularprogramm, mit dem auf einfache Art beliebige Anfrage-Formulare betrieben werden können.
INQUIRY4 ist ein CGI-Programm, das gänzlich auf Java-Applets, Java-Scripts und Cookies verzichtet. Es unterstützt daher alle Browser auf dem Markt.
INQUIRY4 bearbeitet und kontrolliert die Eingaben von Anfrageformularen und sendet die Eingaben per E-Mail an einen Formularempfänger. Alternativ können alle Anfragen über den Online-Servicebereich (OSB) von WEBSALE in der Übersicht und im Detail angesehen werden.
INQUIRY4 wurde zur Verwendung in Verbindung mit WEBSALE E-Commerce Shops entwickelt. Eine Nutzung des Programms ist auch ohne Shop möglich.
Genauso wie bei jedem anderen Aufruf eines Programms am Server wird auch beim Aufruf von INQUIRY4 Rechenleistung benötigt. Daher wird der Leistungsverbrauch ebenfalls über die Leistungseinheiten mit abgerechnet.
Sofern INQUIRY4 über WS-ExternInclude innerhalb einer Shopseite in WEBSALE E-Commerce integriert aufgerufen wird, entsteht sowohl für den Aufruf von INQUIRY4 als auch für den Aufruf von WEBSALE E-Commerce Rechenleistungsbedarf und Laufzeit.
Es besteht jedoch eine einfache Möglichkeit einzelne Eingabefelder auf jeder oder vielen Shopseiten anzuzeigen ohne den zusätzlichen Bedarf an Leistungseinheiten oder Laufzeit. (s. „Einzelnes Formular-Eingabefeld auf jeder Shopseite“)
Der HTTP-Referer-Schutz ist von der WEBSALE AG für INQUIRY4 entwickelt worden, da es im Internet Anbieter gibt, die für deren Kunden automatisiert Formulare ausfüllen und so mit Leichtigkeit mehrere tausend Anfragen pro Stunde generieren können. Dies sind insbesondere Anbieter, die für ihre Kunden Gewinnspiele oder Kataloganfragen etc. automatisiert ausfüllen. Ein auf diese Art an deinem Gewinnspiel teilnehmende “Kunde“ kennt also weder dich noch hat er deine Website angesehen noch hat er einem Newsletterversand zugestimmt und ist somit für dich weitgehend wertlos.
Auch im Bereich Formulare für Kataloganforderung könnten durch solche Anbieter hohe Kosten ohne Nutzen generiert werden, da keine wirklich an eurem Angebot interessierte Kunden die Kataloge erhalten würden.
Vor dem Absenden eines Formulars werden die erforderlichen Eingabefelder geprüft, ob sie ausgefüllt sind.
Wird das Formular unvollständig ausgefüllt, so wird die Formularseite erneut mit Hinweisen zu den fehlenden Feldern angezeigt. Alle bis dahin gemachten Eingaben bleiben voll erhalten. Dies ergibt eine angenehme Benutzerführung und die u. U. fehlerträchtige Verwendung des "Back-Button" des Browsers ist nicht erforderlich.
Für die SPAM-Vermeidung stellen wir Ihnen verschiedene Möglichkeiten zur Verfügung:
Verschiedene, optionale CAPTCHA-Funktionen zur SPAM-Vermeidung können verwendet werden:
CAPTCHA-Funktion der WEBSALE AG. Kein JavaScript erforderlich und stets verfügbar.
Der Anfragende muss eine kleine Rechenaufgabe lösen, um die Anfrage abzusenden
Externe CAPTCHA-Funktion „ReCaptcha“ mittels Bilderkennung und höchster Sicherheitsstufe. JavaScript ist erforderlich. Die Verfügbarkeit wird jedoch nicht garantiert. Der Anfragende muss eine Zeichenkette aus einem Bild ablesen und korrekt in ein Eingabefeld eingeben, um die Anfrage abzusenden.
Friendly Captcha - Sie können das Friendly Captcha-Widget in Ihre Webanwendung einbauen, um Spam zu bekämpfen, ohne die Benutzerfreundlichkeit zu beeinträchtigen.
Friendly Captcha sendet dem Benutzer ein kryptografisches Rätsel, das Gerät des Benutzers benötigt einige Sekunden, um dieses zu lösen, der Benutzer muss nichts tun.
captcha.eu - Datenschutzfreundliches CAPTCHA-System aus der EU. Es setzt auf eine non-intrusive Verifizierung, die vollständig ohne Benutzereingriff funktioniert. Es gibt keine sichtbaren Aufgaben für den Nutzer. Zudem werden keine Tracking-Technologien eingesetzt, sodass captcha.eu höchste Datenschutzstandards gemäß der DSGVO erfüllt.
Zur SPAM-Vermeidung können unterschiedliche Blacklists (z. B. auf Basis der IP-Adresse oder des MX-Records) verwendet werden, um bestimmten, unerwünschten Anfragenden bzw. automatisierten Programmen das Absenden einer Anfrage zu unterbinden.
Zur SPAM-Vermeidung kann die IP-Adresse des Anfragenden mit frei verfügbaren IP-Reputationslisten abgeglichen werden. Dadurch werden bekannte Spam- oder Angriffsbots automatisch erkannt und blockiert.
Wir haben uns entschieden, drei große, frei verfügbare Anbieter zu unterstützen:
blocklist.de – Erkennt IP-Adressen, die mit Brute-Force-Angriffen auf Server, Mailserver und Webdienste in Verbindung stehen.
firehol.org – Aggregiert verschiedene IP-Blocklisten und stellt optimierte Firewall-Regeln bereit.
stopforumspam.com – Spezialisiert auf die Identifikation von Spam-Bots, die in Foren, Blogs und Kommentarbereichen aktiv sind.
Durch die Aktivierung dieser Funktion kann der Schutz vor Spam und automatisierten Angriffen weiter verbessert werden.
→ Detaillierte Dokumentation zur Konfiguration von IP Reputationslisten
Zusätzlich können verschärfte Web Application Firewall (WAF)-Regeln für Inquiry4 aktiviert werden. Diese erweiterten Prüfungen helfen, Angriffsversuche frühzeitig zu erkennen und zu blockieren, indem sie z. B. SQL-Injections, Cross-Site Scripting (XSS) und andere bekannte Angriffsmuster automatisch identifizieren.
Die aktivierte WAF-Policy setzt die aktuellen Sicherheitsregeln des OWASP Core Rule Set (CRS) ein. Da die Sicherheitsregeln regelmäßig aktualisiert werden, empfehlen wir die offizielle Dokumentation des OWASP CRS-Projekts für detaillierte Informationen: 🔗 OWASP Core Rule Set (CRS) Project
→ Detaillierte Dokumentation zur Konfiguration Web Application Firewall (WAF)-Prüfungen
Da es zahlreiche Anbieter mit unterschiedlichen Preismodellen für SPAM-Erkennung gibt, bieten wir eine einfache REST-Schnittstelle für eine individuelle Server-to-Server-Prüfung. So können Sie eine eigene Lösung integrieren, um Anfragen anhand externer Dienste oder interner Algorithmen zu bewerten, bevor diese weiterverarbeitet werden. Dies bietet maximale Flexibilität für Ihre persönliche SPAM-Erkennung.
→ Detaillierte Dokumentation zur Konfiguration eigener Prüfungsmechanismen über REST-Schnittstelle
Es können bestimmte Zeichen definiert werden, die automatisch aus Benutzereingaben herausgefiltert werden. Dies verhindert die Verarbeitung unerwünschter oder potenziell schädlicher Inhalte und verbessert die Sicherheit und Datenintegrität.
→ Detaillierte Dokumentation zur Konfiguration für das Herausfiltern bestimmter Zeichen aus Eingaben
Es können benutzerdefinierte Regular Expressions (RegEx) definiert werden, um unerwünschte Zeichenketten oder Muster in den Eingaben zu erkennen und zu blockieren. Dies ermöglicht eine flexible Anpassung an spezifische Anforderungen, wie das Filtern von bestimmten Keywords, verdächtigen Mustern oder schadhaften Skripten.
→ Detaillierte Dokumentation zur Konfiguration zusätzlicher Inhaltsfilter mittels Regular Expressions
Benutzerdaten, die in einem WEBSALE-Shop z. B. aufgrund eines Benutzer-Logins bereits bekannt sind, können an das Formularprogramm übergeben werden, um dem Benutzer das erneute Ausfüllen z. B. von Adressfeldern zu ersparen.
Nach Absenden des Formulars kann dem Benutzer angeboten werden, seine Anfrage als PDF herunterzuladen. Das Template, aus dem die PDF-Datei erzeugt wird, ist frei designbar.
Optional können zu einer Anfrage Dateien vom Benutzer hochgeladen werden. Dies wird durch Verwendung des WEBSALE-Upload-Moduls realisiert. Die hochgeladenen Dateien werden an die E-Mail angehängt, die dem Angefragten zugesendet wird, oder in einem eigenen FTP-Verzeichnis gespeichert.
Ein ausführliches Beispiel für ein Anmeldeformular mit Datei-Upload finden Sie in der Frontend-Dokumentation:
https://doku.websale.net/index.html?guide_uploadmodulfuerformulareinquiry.html
Wenn Sie das WEBSALE-Upload-Modul mit INQUIRY4 verwenden wollen müssen Sie dies für jedes Anfrageformular einzeln beauftragen!
Wenn Sie das WEBSALE-Upload-Modul mit INQUIRY4 verwenden wollen müssen Sie dies für jedes Anfrageformular einzeln beauftragen!
Der Aufruf eines Formulars erfolgt über
den Aufruf des Inquiry-Programms
mit Angabe einer Shop- und SubshopID und
Angabe einer Konfigurationsdatei.
In der Konfigurationsdatei (s. Kapitel Konfigurationsdatei) ist angegeben, welches Formular-Template für das Formular verwendet werden soll.
Beispiel:
https://www.ihre-domain.de/cgi/inquiry4.cgi?inq4=<ihre-shopid>.<ihre subshopid>&cfg=<ihre-config> |
Parameter | Beschreibung |
---|---|
inq4 | Erforderlicher Aufruf-Parameter. In diesem Parameter müssen Sie ihre ShopID und ihre SubShopID durch einen Punkt getrennt angeben. |
cfg (veraltet: ".ini") | Erforderlicher Aufruf-Parameter. Den Namen der Konfigurationsdatei, z. B. „anfrage.config". |
m | Optionaler Parameter Wenn Sie INQUIRY4 in Verbindung mit einem WEBSALE E-Commerce-Testshop oder DevPack verwenden wollen, müssen Sie im Parameter "m" die MallID angeben, z. B. m=test oder m=devpack. |
In INQUIRY4 können bereits beim Aufruf ein Teil oder alle Daten der Formularfelder übergeben werden.
Dies wird häufig in Kombination mit dem WEBSALE-Shop verwendet.
Als Parametername wird der HTML-Name des entsprechenden Feldes angegeben. Eine Ausnahme stellt hierbei das Geburtsdatum dar (siehe nächstes Kapitel, “Spezielle Parameter“).
Inquiry-URL:
.../cgi/inquiry4.cgi?inq4=<ihre-shopid>.<ihre-subshopid>&cfg=<ihre-config>&first_name=Wolfgang |
Wichtig: Bei eingeschaltetem aktivem Refererschutz (s. Kapitel “Refererschutz“) und dabei übergebenem ungültigem Referer werden keine Parameter übernommen. |
Parameter | Beschreibung |
---|---|
a_dateofbirth_day | Geburtsdatum der Rechnungsadresse Diese Parameter werden verwendet, um Geburtsdaten zu übergeben, wenn automatisch generierte Listboxen zum Einsatz kommen. |
d_dateofbirth_day | Geburtsdatum der Lieferadresse Diese Parameter werden verwendet, um Geburtsdaten zu übergeben, wenn automatisch generierte Listboxen zum Einsatz kommen. |
ref | Angabe eines Referers Dient statistischen Zwecken. Dieser Aufrufparameter sollte nicht verwechselt werden mit dem Konfigurationsparameter “Referer“, der sich auf den HTTP-Referer bezieht (siehe Kapitel „Konfigurationsdatei“ und Kapitel „Refererschutz“). |
subref | Angabe eines SubReferers. Dient statistischen Zwecken |
a-userindex | Angabe des Userindexes, nur in Verbindung mit dem WEBSALE-Shop. |
a-userid | Angabe der User-ID, nur in Verbindung mit dem WEBSALE-Shop. |
immediate | Erlaubt “One-Klick“-Anfragen. Wenn dieser Parameter auf „yes“ gesetzt ist, werden die mit dem Aufruf des Formularprogramms übergebenen Parameter auf Vollständigkeit geprüft und dann die Anfrage sofort ausgeführt, ohne dass der Anfragende ein Anfrageformular zum Ausfüllen sieht. Er bekommt also unmittelbar die Bestätigungsseite angezeigt. WICHTIG: Der Parameter “immediate“ wird nur bei aktivem Refererschutz (siehe 3.1 Refererschutz) verarbeitet! |
Je Formular benötigen Sie:
ein HTML-Formular-Template (*.htm)
ein HTML-Antwort-Template (*.htm)
ein HTML-Antwort-Template für die Erzeugung eines PDFs (*.htm)
eine Konfigurationsdatei (*.config)
ein HTML-E-MailTemplate (*.hmail)
Definitionsdateien für Anrede, Titel und Länderauswahl (*.dat)
Üblicherweise gehört zu einem Formular immer ein kompletter Satz mit den oben genannten Dateien.
Sie können auch für unterschiedliche Anfrageformulare z. B. stets das gleiche Antwort-Template und/oder die gleiche Anrede-Definition usw. verwenden.
Ob und welche Dateien jeweils verwendet werden, legen Sie nach Ihrem Ermessen in der dem Formular zugehörigen Konfigurationsdatei (.config) fest.
Dieser Dokumentation liegen folgende Beispiele bei:
Fallbeispiel | Beispieldateien |
Standardanfrage in eigener Seite mit Download der Anfrage als PDF, Popup oder iFrame | anfrage.config |
Standardanfrage integriert in WEBSALE E-Commerce mit WS-ExternInclude | externinclude_anfrage.config |
Standardanfrage in eigener Seite, Popup oder iFrame mit CAPTCHA-Funktion Rechenaufgabe zur SPAM-Vermeidung | anfrage_captcha_rechnen.config |
Erläuterung der einzelnen Beispieldateien:
Datei | Beschreibung |
anfrage.config | Konfigurationsdatei einer Standardanfrage |
anfrage.htm | Anfrageseite einer Standardanfrage |
antwort.htm | Antwortseite einer Standardanfrage |
antwort_pdf.htm | HTML-Template für die Erzeugung der PDF-Datei |
antwort.hmail | HTML-E-Mail-Template an den Anfragenden einer Standardanfrage |
anfrage.hmail | HTML-E-Mail-Template an den Angefragten einer Standardanfrage |
externinclude_anfrage.htm | Anfrageseite einer Standardanfrage, welche mit ExternInclude eingebunden wird |
externinclude_anfrage.config | Konfigurationsdatei einer Standardanfrage, welche mit ExternInclude eingebunden wird |
externinclude_antwort.htm | Antwortseite einer Standardanfrage, welche mit ExternInclude eingebunden wird |
tpl_externinclude_anfrage.htm | Shoptemplate auf dem eine Standardanfrage mit ExternInclude eingebunden wird |
anfrage_captcha_rechnen.config | Konfigurationsdatei einer Standardanfrage mit CAPTCHA-Funktion Rechenaufgabe |
anfrage_captcha_rechnen.htm | Anfrageseite einer Standardanfrage mit CAPTCHA-Funktion Rechenaufgabe |
Die benötigten Dateien müssen innerhalb des WEBSALE E-Commerce Shops abgelegt werden.
Alle Konfigurationsdateien (config-Dateien, Länder-, Titel- und Anredeauswahldateien sowie Blacklist-Dateien) müssen im zugehörigen Konfigurationsverzeichnis des Subshops im Unterverzeichnis inquiry gespeichert werden:
/websale8_shop-<ihre-shopid>/konfiguration/<ihre-subshopid>/inquiry/ |
Alle Template-Dateien (E-Mail- und Formular-Templates) müssen im zugehörigen Template-Verzeichnis des Subshops gespeichert werden:
/websale8_shop-<ihre-shopid>/benutzer/templates/<ihre-subshopid>/ |
Ein Template für ein Anfrageformular können Sie mit einem HTML-Editor Ihrer Wahl erstellen.
INQUIRY4 verarbeitet und kontrolliert folgende Eingabefelder:
Checkboxen
Radio Buttons
Listboxen
einzeilige Textfelder
mehrzeilige Textfelder (max. 4048 Zeichen)
Wie bereits erwähnt, bleiben alle gemachten Eingaben voll erhalten. Um dies zu erreichen, muss INQUIRY4 die bereits gemachten Eingaben in die entsprechenden Felder auf dem Template integrieren.
Es ist daher notwendig, dass die HTML-Syntax im Formular einigen Regeln entspricht, die im Folgenden erläutert werden. Diese Regeln werden üblicherweise auch von allen gängigen HTML-Editoren eingehalten.
Alle Feldnamen müssen in Anführungszeichen stehen. Es darf kein Leerzeichen zwischen "name=" und Feldname sein.
<input type="text" name="Feldname" ...> |
<input type="text" name= "Feldname" ...> |
<input type="text" name=Feldname ...> |
Alle Feldwerte müssen in Anführungszeichen stehen. Es darf kein Leerzeichen zwischen "value=" und Feldwert sein.
<input type="text" ... value="Feldwert"> |
<input type="text" ... value= "Feldwert"> |
<input type="text" ... value=Feldwert> |
Listboxen können mit und ohne Feldwert (value=“...“) angegeben werden.
INQUIRY4 unterstützt beide Methoden. Wenn ein Feldwert vorhanden ist, wird der entsprechende Eintrag ausgewählt, ansonsten der passende Eintrag ohne Feldwert gesucht und ausgewählt.
Ohne Feldwert:
<select name="Feldname"> <option></option> <option>Herr</option> <option>Frau</option> </select> |
Mit Feldwert:
<select name="Feldname"> <option value=""></option> <option value="Herr">Herr</option> <option value="Frau">Frau</option> </select> |
Verwenden Sie Listboxen mit Feldwert, dies erleichtert die Arbeit insbesondere bei fremdsprachigen Formularseiten, da Sie dann stets den gleichen value (z. B. value=“Herr“) verwenden können und lediglich im lesbaren Text die Übersetzung (z. B. “Monsieur“) |
In der Konfigurationsdatei wird angegeben,
an welche E-Mail-Adresse die Anfragen gesendet werden,
welche Templates verwendet werden sollen,
welche Fehlermeldungen ausgegeben werden,
welche Formularfelder von INQUIRY4 abgefragt und kontrolliert werden sollen.
Code-Beispiele finden Sie in diesem Dokument unter „Fehler: Verweis nicht gefunden“
Die allgemeinen Angaben finden Sie in der Sektion <Basic>
.
<Basic> InquiryPage = anfrage.htm ConfirmPage = antwort.htm CommonInputRequired = yes Language = DEU EMailCheckMethod = domain # [none][syntax][domain] CountryDat = ../country.dat SalutationDat = ../salutation.dat TitleDat = ../title.dat Referer = www.ihr-shop.de WSOMAllow = yes TransferEmptyValues = no # [yes][no], Std: no Charset = ISO-8859-1 TextAreaWrap = 30 NoEmptyCountryListboxEntry = no # [yes|no], Std: no PresetSTC = yes # [yes|no], Std: yes VS4Allow = yes # [yes|no], Std: yes InquiryFormatMinorVersion = # Std: 1 </Basic> |
Parameter | Beschreibung | Werte |
---|---|---|
InquiryPage | Name der HTML-Anfrageseite. | Dateiname z. B. anfrage.htm |
ConfirmPage | Name der HTML-Antwortseite. | Dateiname z. B. antwort.htm |
CommonInputRequired | Wenn Sie diesen Parameter auf "yes" setzen, dann muß mindestens ein allgemeines Anfragefeld vom Anfragenden ausgefüllt worden sein, ansonsten erfolgt eine entsprechende Fehlermeldung. | [yes][no] |
Language | Die gewünschte Sprache für Anrede und Titel im ISO-Code. | 3-stelliger Länder ISO-Code, z. B. DEU |
CountryDat | Optionaler Parameter Hier können Sie die Länder-Konfigurationsdatei aus ihrem WEBSALE-Shop verwenden. | Dateiname, z. B. country.dat |
SalutationDat | Optionaler Parameter Hier können Sie die Anrede-Konfigurationsdatei aus ihrem WEBSALE-Shop verwenden. | Dateiname, z. B. salutation.dat |
TitleDat | Optionaler Parameter Hier können Sie die Titel-Konfigurationsdateiaus ihrem Websale-Shop verwenden. | Dateiname, z. B. title.dat |
Referer | Optionaler Parameter Hier können Sie verschiedeneURLs, jeweils durch Komma getrennt, angeben. Eine Referer-URL dient dem Schutz vor unerwünschten automatisierten Anfragen und ist von der Behandlung her einzustufen wie ein Passwort, d. h. ein Referer ist vertraulich zu behandeln. (s. Kapitel “Refererschutz“) Durch Angabe einer oder mehrerer URLs wird der Refererschutz eingeschaltet. Wenn nichts angegeben wird, nimmt INQUIRY4 alle übergebenen Parameter an, der Refererschutz ist damit ausgeschaltet! | URL, www.ihr-shop.de |
WSOMAllow | Wenn Sie diesen Parameter auf „yes“ setzen, dann werden alle erzeugten Anfragen vom WSOM (WEBSALE Order Manager) verarbeitet und können somit über den WSOM in Warenwirtschaftssysteme automatisiert eingelesen werden. Anwendungsbeispiel: Anfrage zur Zusendung eines Katalogs. | [yes][no] |
TransferEmptyValues | Wenn Sie diesen Parameter auf „yes“ setzen werden alle leeren Felder der Anfrage mit übergeben. Steht dieser Parameter auf "no" so werden leere Felder nicht mit übergeben. Dies betrifft die Tags AUTOGENERATE-Full, AUTOGENERATE-Addr, AUTOGENERATE-Common, AUTOGENERATE-Readable und AUTOGENERATE-Technical sowie die Datenübergabe an den WSOM. Wenn die Anfragedaten durch den WSOM abgeholt werden und optionale Felder in dem Anfrageformular vorhanden sind kann durch die Übertragung der leeren Felder eine einheitliche Felderdefinition erreicht werden. | [yes][no] |
Charset | Hier geben Sie den Zeichensatz der Anfrage an. Dieser Zeichensatz wird auch für die erzeugten E-Mails verwendet, wenn in den entsprechenden Sektionen kein anderer Zeichensatz angegeben ist. Der Parameter muss vorhanden sein, um Konvertierungen in UTF-8 per Tag durchführen zu können. | Zeichensatz, z. B. ISO-8859-1 |
TextAreaWrap | Hier können Sie angeben nach wie vielen Zeichen die Ausgabe einer Textarea in den E-Mails umgebrochen werden soll. Ist dieser Wert 0 erfolgt kein automatischer Umbruch. | Zeichenanzahl, z. B. 30 |
NoEmptyCountryListboxEntry | Hier können Sie festlegen ob der erste Eintrag in der Listbox zur Länderauswahl ein leerer Eintrag sein soll. yes: Es wird kein leerer Eintrag erzeugt, der erste Eintrag ist "vorausgewählt". no: Der erste Eintrag wird als leerer (nicht ausgewählter) Eintrag erzeugt. | [yes][no] |
PresetSTC | Hier können Sie festlegen ob Anrede, Titel und Land vorausgefüllt sein sollen, wenn INQUIRY per ExternInclude eingebunden wird. | [yes][no] |
VS4Allow | Hier können Sie festlegen ob Anfragen an das VS/4 weitergeleitet werden sollen. | [yes][no] |
InquiryFormatMinorVersion | Parameter zur Beeinflussung von nicht abwärtskompatiblen Änderungen des technischen Ausgabeformats. Momentan max. verwendet: Wert 2. Für Werte >= 2 gilt: In der technischen Übergabe von Textarea-Daten wird als Sektionsname <Value> anstelle von <value> verwendet. | [1][2] |
Alle Definitionen zur E-Mail an den Anfragenden finden Sie in der Sektion <ConfirmEmail>
.
<ConfirmEmail> SendEmail = yes EmailSubject = Ihre Anfrage SenderEmail = abc@domain.de SenderName = Firma XYZ charset = ISO-8859-1 EmailTemplate = confirm.hmail UseExternMailSystem = no ExternMailTemplate = </ConfirmEmail> |
Parameter | Beschreibung | Werte |
---|---|---|
SendEmail | Legt fest, ob an den Anfragenden eine Bestätigungsemail geschickt wird. Wenn der Wert von SendEmail userselect ist, muss die Sektion <SendUserEmail> vorhanden sein, in welcher das zugehörige HTML-Element zur Auswahl definiert ist. | [yes][no][userselect] |
EmailSubject | Der Betreff der E-Mail. | Text, z. B. Ihre Anfrage |
SenderEmail | Die E-Mail-Adresse des Absenders. | E-Mail-Adresse, abc@domain.de |
SenderName | Der Name des Absenders. | Text, z. B. Firma XYZ |
Charset | Optionaler Parameter Der in der E-Mail verwendete Zeichensatz. Wichtig für die sprachabhängig korrekte Darstellung der Mailtexte beim Empfänger. Ist der Parameter nicht angegeben wird der globale Zeichensatz (Parameter Charset in der Sektion Basic) verwendet. | ISO-Zeichensatz, z. B. ISO-8859-1 |
EmailTemplate | Das HTML-Template der E-Mail. Weitere Informationen zu “Tags und Templates“ finden Sie im entsprechenden Abschnitt dieses Dokuments. | Dateiname, z. B. confirm.hmail |
UseExternMailSystem | Bei Verwendung eines Drittanbieters für den E-Mail-Versand wird dieser Anbieter hier angegeben. Standard ist „no“, d. h., das Shop-eigene Mail-System wird verwendet. | [no][InxMail], |
ExternMailTemplate | Template, auf dem das JSON-Objekt zur Übergabe an den externen Mail-Anbieter, z. B. InxMail, angelegt wird | Dateiname |
Alle Angaben zur E-Mail an den Angefragten finden Sie in der Sektion <InquiryEmail>
.
<InquiryEmail> SendEMail = yes EmailSubject = Anfrage EmailAddress = ihreAdresse@ihre-domain.de charset = ISO-8859-1 EmailTemplate = templates/request.hmail SenderAddress = optionaleAnfrageadresse@ihre-domain.de UseExternMailSystem = no ExternMailTemplate = </InquiryEmail> |
Parameter | Beschreibung | Werte |
---|---|---|
SendEmail | Legt fest, ob an den Angefragten eine Bestätigungs-E-Mail geschickt wird. | [yes][no] |
EmailSubject | Der Betreff der E-Mail. | Text, z. B. Ihre Anfrage |
EmailAddress | Die E-Mail-Adresse zu der die Anfrage gesendet wird. Es können auch mehrere Adressen, durch Komma getrennt, angegeben werden. | E-Mail-Adresse, abc@domain.de |
Charset | Optionaler Parameter Der in der E-Mail verwendete Zeichensatz. Ist der Parameter nicht angegeben, so wird der globale Zeichensatz (Parameter Charset in der Sektion „Basic“) verwendet. | ISO-Zeichensatz, z. B. ISO-8859-1 |
EmailTemplate | Das HTML-Template der E-Mail. Weitere Informationen zu Tags und Templates finden Sie in dieser Dokumentation. | Dateiname, z. B. confirm.hmail |
SenderAddress | Optionale Absenderadresse. Ist diese Adresse angegeben, so wird sie als Absenderadresse verwendet. Die vom Benutzer eingegebene Adresse wird dann als Antwortadresse verwendet. | E-Mail-Adresse, abc@domain.de |
UseExternMailSystem | Bei Verwendung eines Drittanbieters für den E-Mail-Versand wird dieser Anbieter hier angegeben. Standard ist „no“, d. h., das Shop-eigene Mail-System wird verwendet. | [no][InxMail], Standard: no |
ExternMailTemplate | Template, auf dem das JSON-Objekt zur Übergabe an den externen Mail-Anbieter, z. B. InxMail, angelegt wird | Dateiname |
Alle Einstellungen zur PDF-Erzeugung sind in der Sektion <PDF> zu finden.
<PDF> Allow = yes Template = antwort_pdf.htm Filename = anfrage.pdf </PDF> |
Parameter | Beschreibung | Werte |
---|---|---|
Allow | Legt fest ob die Anfrage als PDF heruntergeladen werden kann. | [yes][no], Standard: no |
Template | Name des HTML-Templates welches für die PDF-Erzeugung verwendet wird. | Dateiname, z. B. antwort_pdf.htm |
Filename | Der Dateiname der erzeugten PDF-Datei. | Dateiname, z. B. anfrage.pdf |
Alle Einstellungen zur Verwendung des WEBSALE-Upload-Moduls sind in der Sektion <Upload>
zu finden.
<Upload> Allow = yes UploadIni = upload.config UploadDescr = Anhänge AttachUploadsToInquiryEMail-Allow = yes </Upload> |
Parameter | Beschreibung | Werte |
---|---|---|
Allow | Legt fest, ob die Uploadfunktion verwendet werden soll | [yes][no], Standard: no |
UploadIni | Konfigurationsdatei des WEBSALE-Upload-Moduls | Dateiname, |
UploadDescr | Dieser Text erscheint in den automatisch erzeugten Anfragedaten als Text über der Liste der hochgeladenen/angehängten Dateien. | Text, z. B. Anhänge |
AttachUploadsToInquiryEMail-Allow | Erlaubt Datei-Anhänge an Mails | [yes][no], Standard: no |
Ein ausführliches Beispiel für ein Anmeldeformular mit Datei-Upload finden Sie in der Frontend-Dokumentation:
https://doku.websale.net/index.html?guide_uploadmodulfuerformulareinquiry.html
Die Einstellungen zur CAPTCHA-Funktion sind in der Sektion <Captcha> zu finden.
<Captcha> UseArithmeticCaptcha = yes UseReCaptchaV3 = yes CaptchaDescription = Eine kleine Rechenaufgabe CaptchaNotFilledIn = Bitte lösen Sie die Rechenaufgabe CaptchaError = Die Rechenaufgabe wurde nicht gelöst </Captcha> |
Sie können als CAPTCHA-Funktionalität entweder die Rechenaufgabe, das ReCaptcha- oder das Friendly-Captcha-Verfahren verwenden.
Parameter | Beschreibung | Werte |
---|---|---|
UseArithmeticCaptcha | Legt fest ob die CAPTCHA-Funktion in Form einer Rechenaufgabe verwendet werden soll. | [yes][no], Standard: no |
UseRecaptchaCaptcha | Wenn Sie als CAPTCHA-Funktion die Rechenaufgabe verwenden möchten, muss dieser Parameter auf "no" stehen! | [yes][no], Standard: no |
CaptchaDescription | Dieser String beschreibt die CAPTCHA-Funktionalität und kann auf dem Template ausgegeben werden. | Text, z. B. Eine kleine Rechenaufgabe |
CaptchaNotFilledIn | Dieser Fehlerstring wird angezeigt, wenn das CAPTCHA-Eingabefeld nicht ausgefüllt wurde. | Text, z. B. Bitte lösen Sie die Rechenaufgabe |
CaptchaError | Dieser Fehlerstring wird angezeigt, wenn das CAPTCHA-Eingabefeld falsch ausgefüllt wurde. | Text, z. B. Die Rechenaufgabe wurde nicht gelöst |
Die CAPTCHA-Funktion in Form einer Rechenaufgabe stellt die drei Grundrechenarten Addition, Subtraktion und Multiplikation zur Verfügung. Diese drei Grundrechenarten werden standardmäßig mit vorgegebenen Wertebereichen verwendet. Sie können allerdings die Einstellungen für jede dieser Grundrechenarten individuell konfigurieren. Dazu können Sie folgende drei Sektionen verwenden:
Parameter | Beschreibung | Werte |
---|---|---|
CaptchaOperation+ | Addition |
|
CaptchaOperation- | Subtraktion |
|
CaptchaOperation* | Multiplikation |
|
Beispiel:
<CaptchaOperation+> Allow = yes Operand1RangeStart = 1 Operand1RangeEnd = 9 Operand2RangeStart = 1 Operand2RangeEnd = 9 +Sign = plus +Sign = + +Sign = und </CaptchaOperation+> |
Parameter | Beschreibung | Werte |
---|---|---|
Allow | Legt fest ob diese Grundrechenart verwendet wird. | [yes][no], Standard: yes |
Operand1RangeStart | Legt den kleinsten Wert des ersten Operanden fest. (optional) | Zeichenanzahl, z. B. 1 |
Operand1RangeEnd | Legt den größten Wert des ersten Operanden fest. (optional) | Zeichenanzahl, z. B. 9 |
Operand2RangeStart | Legt den kleinsten Wert des zweiten Operanden fest. (optional) | Zeichenanzahl, z. B. 1 |
Operand2RangeEnd | Legt den größten Wert des zweiten Operanden fest. (optional) | Zeichenanzahl, z. B. 9 |
+Sign | Bis zu 10 Einträge je Grundrechenart werden unterstützt. Ist mindestens ein Eintrag einer Grundrechenart vorhanden werden die standardmäßig konfigurierten Strings nicht mehr verwendet! Eine textuelle Repräsentation der Rechenoperation. | Text, z. B. plus |
Google ReCaptcha Version 2 wurde deaktiviert und funktioniert daher nicht mehr. INQUIRY4 unterstützt derzeit Google ReCaptcha Version 3.
<Captcha> ... UseReCaptchaV3 = yes Site-Key = # z. B. 6Le0SJsUxxxxxxxxxxxxxxxxx_xxxxxxxxxxxxxx Secret-Key = # z. B. 6Le0SJsUxxxxxx_xxxxxxxxxxxxxxxxxx_xxxxxx Api-Url = https://www.google.com/recaptcha/api.js Verify-Url = https://www.google.com/recaptcha/api/siteverify CaptchaV3EmptyToken = Token ist leer # CaptchaV3EmptySecretKey = Secret-Key ist nicht gesetzt # CaptchaV3ResponseError = Recaptcha Response ist false # CaptchaV3ScoreError = Score ist weniger als 0.5 # CaptchaV3ActionName = # z. B. kontakt CaptchaV3TechnicalProblem = Techn. Problem, keine Verbindung CustomScore = # Wert von 0.1 – 1.0; Standard: 0.5 ... </Captcha> |
Parameter | Beschreibung | Werte |
---|---|---|
UseReCaptchaV3 |
| [yes|no]; Standard: no |
Site-Key | Site-Key, wird von Google bezogen |
|
Secret-Key | Secret-Key, wird von Google bezogen |
|
Api-Url | Standardwert von Google | |
Verify-Url | Standardwert von Google | |
CaptchaV3EmptyToken | Fehlermeldung, wenn Token leer ist | Text, z. B. Token ist leer |
CaptchaV3EmptySecretKey | Fehlermeldung, wenn Secret-Key nicht gesetzt ist | Text, z. B. Secret-Key ist nicht gesetzt |
CaptchaV3ResponseError | „Success“-Parameter in Response ist "false" | Text, z. B. Recaptcha Response ist false |
CaptchaV3ScoreError | „Score“-Parameter in Response ist weniger als 0.5 | Text, z. B. Score ist weniger als 0.5 |
CaptchaV3ActionName | ActionName für Seite (z. B homepage, login ...) | Text, z. B. Kontakt |
CaptchaV3TechnicalProblem | Fehlermeldung bei technischem Problem | Text, z. B. Techn. Problem, keine Verbindung |
CustomScore | Recaptcha Custom Score (0.1 – 1.0), wir vergleichen diesen Wert mit der Response von Google, um zu prüfen, ob Form gültig ist | Zeichenanzahl, z. B. 30 Standard: 0.5. |
Friendly Captcha sendet dem Benutzer ein kryptografisches Rätsel, das Gerät des Benutzers benötigt einige Sekunden, um dieses zu lösen, der Benutzer muss nichts tun.
<Captcha> ... UseFriendlyCaptchaV1 = yes FriendlyCaptchaV1ApplicationID = #ApplicationID aus FriendlyCaptcha Backend FriendlyCaptchaV1APIKey = #API-Key aus FriendlyCaptcha FriendlyCaptchaV1ApiUrl = https://eu-api.friendlycaptcha.eu/api/v1/puzzle #Endpoint (bei FC dokumentiert, global oder EU Endpoint) FriendlyCaptchaV1VerifyUrl = https://eu-api.friendlycaptcha.eu/api/v1/siteverify #Endpoint (bei FC dokumentiert, global oder EU Endpoint) FriendlyCaptchaV1TechnicalProblem = # FriendlyCaptchaV1Denied = # FriendlyCaptchaV1EmptySolution = # ... </Captcha> |
Parameter | Beschreibung | Werte |
---|---|---|
UseFriendlyCaptchaV1 |
| [yes|no]; Standard: no |
FriendlyCaptchaV1ApplicationID | ApplicationID, wird von FriendlyCaptcha bezogen |
|
FriendlyCaptchaV1APIKey | API-Key, wird von FriendlyCaptcha bezogen |
|
FriendlyCaptchaV1ApiUrl | Standardwert von FriendlyCaptcha | |
FriendlyCaptchaV1VerifyUrl | Standardwert von FriendlyCaptcha | |
FriendlyCaptchaV1TechnicalProblem | Fehlermeldung bei technischem Problem | Text, z. B. Techn. Problem, keine Verbindung |
FriendlyCaptchaV1Denied | Fehlermeldung, wenn Zugriff verweigert wird | Text |
FriendlyCaptchaV1EmptySolution | Fehlermeldung, wenn Captcha nicht gelöst wurde | Text |
<Captcha> ... UseCaptchaEu = CaptchaEuPublic-Key = CaptchaEuREST-Key = CaptchaEuValidation-Url = CaptchaEuJS-Url = CaptchaEuEmptySolution = CaptchaEuTechnicalProblem = CaptchaEuResponseError = ... </Captcha> |
Parameter | Beschreibung | Werte |
---|---|---|
UseCaptchaEu | Aktiverung / Deaktivierung für die Verwendung des CAPTCHA-Systems captcha.eu |
|
CaptchaEuPublic-Key | Public-Key für das Captcha, der von captcha.eu bezogen werden muss |
|
CaptchaEuREST-Key | REST-API-Key für das Captcha, der von captcha.eu bezogen werden muss |
|
CaptchaEuValidation-Url | Standardwert von captcha.eu | |
CaptchaEuJS-Url | Standardwert von captcha.eu | |
CaptchaEuEmptySolution | Hinweismeldung, wenn keine Lösung des Captchas übergeben werden konnte, d.h. das Captcha konnte nicht gelöst werden | Text |
CaptchaEuTechnicalProblem | Fehlermeldung, wenn ein technisches Problem vorliegt, zum Beispiel captcha.eu ist nicht erreichbar oder der Zugriff verweigert wird | Text |
CaptchaEuResponseError | Hinweismeldung, wenn das Captcha der Menung ist, dass der Nutzer ein “robot” ist. | Text |
Nach der Konfiguration müssen Sie noch die entsprechenden Anpassungen am InquiryPage-Template vornehmen. Die entsprechende Anleitung dazu finden Sie hier.
Alle Einstellungen zu verwendeten Blacklists sind in der Sektion <Filter> zu finden.
Wenn eigene, lokale Blacklists verwendet werden sollen, werden diese im Online-Servicebereich (OSB) in der INQUIRY-Konfiguration als eigenen config-Dateien angelegt (Format siehe unten).
<Filter> IP-Blacklisting = both IP-Blacklist = ip.blacklist.config MX-Blacklisting = both MX-Blacklist = mx.blacklist.config ErrorMessage = Ihre IP-Adresse ist gesperrt </Filter> |
Parameter | Beschreibung | Werte |
---|---|---|
IP-Blacklisting | Legt fest ob geprüft werden soll, ob die IP-Adresse des Anfragenden auf einer none: keine Prüfung global: Es wird nur die globale, von der WEBSALE AG gepflegte Blacklist verwendet (Für weitere Informationen kontaktieren Sie bitte WEBSALE AG) local: Es wird nur die lokal angegebene Blacklist verwendet both: Es wird die lokale und die globale Blacklist verwendet | [none][global][local][both] |
IP-Blacklist | Name der lokalen Blacklist-Datei für IP-Adressen | Beispiel: |
MX-Blacklisting | Legt fest, ob geprüft werden soll, ob einer der MX-Einträge der E-Mail-Adressen des Anfragenden (soweit vorhanden) auf einer Blacklist steht. Ist dies der Fall, kann der Anfragende die Anfrage nicht absenden. Dies ist vor allem gegen sogenannte "Gewinnspielclubs" ein Ansatz, Spam zu vermeiden! none: keine Prüfung global: Es wird nur die globale, von der WEBSALE AG gepflegte Blacklist verwendet (Für weitere Informationen kontaktieren Sie bitte WEBSALE AG) local: Es wird nur die lokal angegebene Blacklist verwendet both: Es wird die lokale und die globale Blacklist verwendet | [none][global][local][both] |
MX-Blacklist | Name der lokalen Blacklist mit MX-Einträgen, | Beispiel: |
ErrorMessage | Dieser Fehlerstring wird angezeigt, wenn der Anfragende aufgrund einer Blacklist die Anfrage nicht absenden kann. | Text, z. B. Ihre IP-Adresse ist gesperrt |
Format der Blacklist-Dateien Domains IP-Adressen |
Beispiel:
########################## # Blacklist für MX-Records ########################## ########################## # Sperren von Domains: ########################## # Sperre der Domain xyz.de (Achtung hier wird auch abcxyz.de mit gesperrt!): xyz.de # Sperren der Subdomains von xyz.de (Achtung xyz.de wird nicht mitgesperrt, aber z. B. mx0.xyz.de): .xyz.de # Sperren von *.abc.xyz.de .abc.xyz.de ####################### # Sperren von IP-Adressen ####################### # Sperre des IP-Bereichs von 13.0.0.0 - 13.255.255.255 13. # Sperre des IP-Bereichs von 172.16.1.0 - 172.16.1.255 172.16.1. # Sperren der einzelnen IP-Adresse 172.16.1.10 172.16.1.10 # Teilbereichssperren wie z. B. 172.16.5.12 - 172.16.7.22 sind nicht möglich! |
Alle konfigurierbaren Fehlermeldungen sind in der Sektion <ErrorMessages> zu finden.
<ErrorMessages> Error = Um Ihre Anfrage bearbeiten zu können, prüfen Sie bitte folgende Angaben: AddressEmailError = Rechnungsanschrift: Ungültige E-Mail-Adresse DeliverEmailError = Lieferanschrift: Ungültige E-Mail-Adresse CommonInputMissing = Treffen Sie bitte ihre Wahl / machen Sie folgende Angaben NoInput = Füllen sie bitte mindestens ein Feld aus </ErrorMessages> |
Parameter | Beschreibung | Werte | |
---|---|---|---|
Error | Dieser Fehlerstring wird immer angezeigt, wenn mindestens eine Eingabe fehlt oder falsch ist. Darunter werden dann die Details zu dem (den) Fehler(n) gezeigt. | Text, z. B. Um Ihre Anfrage bearbeiten zu können, prüfen Sie bitte folgende Angaben: | |
AddressEmailError | Dieser Fehlerstring wird angezeigt, wenn die Überprüfung der E-Mail-Adresse der Rechnungsadresse fehlschlug. | Text, z. B. Rechnungsanschrift: Ungültige E-Mail-Adresse | |
DeliverEmailError | Dieser Fehlerstring wird angezeigt, wenn die Überprüfung der E-Mail-Adresse der Lieferadresse fehlschlug. | Text, z. B. Lieferanschrift: Ungültige E-Mail-Adresse | |
CommonInputMissing | Dieser Fehlerstring wird angezeigt, wenn der Benutzer keine Eingaben in einem allgemeinen Anfragefeld (keine Adressdaten) gemacht hat und die Option
gesetzt ist. Dieser Fehlerstring kann auch leer sein. Die Fehlermeldung wird dann nie angezeigt. | Text, z. B. Treffen Sie bitte ihre Wahl / machen Sie folgende Angaben | |
NoInput | Dieser Fehlerstring wird angezeigt, wenn überhaupt keine Eingabe gemacht wurde, weder in allgemeinen Feldern noch in Adressfeldern. Dieser Fehlerstring kann auch leer sein. Die Fehlermeldung wird dann nie angezeigt. | Text, z. B. Füllen Sie bitte mindestens ein Feld aus |
INQUIRY4 kann in einem Formular bis zu 1000 allgemeine Anfragefelder bearbeiten. Ein allgemeines Anfragefeld hat folgende Form:
<+CommonInput> Allow = yes Type = CheckBox Name = beratung Descr = Ich möchte Beratung Required = no Hide = yes Max = 100 </+CommonInput> |
Parameter | Beschreibung | Werte |
---|---|---|
Allow | Wenn Sie diesen Parameter auf "yes" setzen, dann wird das Feld von INQUIRY4 bearbeitet und kontrolliert. Bei "no" wird das Eingabefeld nicht bearbeitet bzw. ignoriert. | [yes|no]; Standard: yes |
Type | Typ des Eingabefeldes. |
|
Name | Name des Eingabefeldes, welches Sie im HTML-Formular vergeben. Bitte beachten Sie: Die Namen der Eingabefelder müssen für das gesamte Formular eindeutig sein. Ein Feldname, z. B. "beratung", darf somit nicht mehrmals vorkommen. Die Namen der allgemeinen Anfragefelder dürfen nicht mi „A-“ oder „D-“ beginnen. | Text, z. B. beratung |
Descr | Textuelle Beschreibung des Feldes. Dieser Text erscheint in den E-Mails. | Text, z. B. Ich möchte Beratung |
Required | Wenn Sie diesen Parameter auf "yes" setzen, dann muß dieses Feld vom Anfragenden ausgefüllt oder markiert werden. | [yes][no]; Standard: no |
Hide | Wenn dieser Parameter auf „yes“ gesetzt wird, wird dieses Feld NICHT in einer automatisch generierten E-Mail erzeugt. | [yes][no]; Standard: no |
Max | Optional, maximale Länge der Eingabe | Zeichenanzahl, z. B. 100
|
Adressfelder werden prinzipiell wie die allgemeinen Anfragefelder behandelt, besitzen jedoch jeweils eine eigene, fest definierte Sektion. Der Grund hierfür liegt u.a. darin, dass INQUIRY4 diese Felder der Adresse bzw. einer optionalen Lieferadresse zuordnet und diese gesondert behandelt.
Felder der Adressdaten beginnen mit „A-“, die der Lieferadresse mit „D-“ (für Delivery). Es werden dabei alle von WEBSALE V8 verwendeten Felder von INQUIRY4 unterstützt.
z. B.
Wert | Feld |
---|---|
Vorname |
|
Nachname (Lieferadresse) |
|
Anrede |
|
usw.
Spezialfeld: Das Feld <A-MerchantEmail>
verhält sich wie ein normales Eingabefeld. Der eingegebene/übergebene Wert wird allerdings als Liste von E-Mail-Adressen (die einzelnen E-Mail-Adressen müssen durch ein Komma voneinander getrennt sein) interpretiert. An diese E-Mail-Adressen wird zusätzlich zu der konfigurierten E-Mail-Adresse die Anfrage-E-Mail gesendet.
Dies ist ein spezielles, fest definiertes Feld, welches vorhanden sein muss, wenn der Parameter SendEmail in der Sektion <ConfirmEmail>
den Wert userselect hat.
Mit diesem Feld wird definiert, über welches HTML-Element der Benutzer steuern kann, ob er eine E-Mail erhält oder nicht.
Das Feld hat die Form:
<SendUserEmail> Type = CheckBox Name = confirmemail Descr = Ich möchte eine Bestätigungsemail erhalten UseInput = A </SendUserEmail> |
Parameter | Beschreibung | Werte |
---|---|---|
Type | Typ des Eingabefeldes. |
|
Name | Name des Eingabefeldes, welches Sie im HTML-Formular vergeben haben. | Text, z. B. confirmemail |
Descr | Textuelle Beschreibung des Feldes. | Text, z. B. Ich möchte eine Bestätigungs-E-Mail erhalten |
UseInput | Wenn dieser Parameter „A“ ist, wird die E-Mail-Adresse zwingend benötigt, wenn der Benutzer eine Bestätigungsemail wünscht. Wenn dieser Parameter „D“ ist, wird die optionale E-Mail-Adresse der Lieferadresse zwingend benötigt, wenn der Benutzer eine Bestätigungsemail wünscht. Wenn dieser Parameter „AD“ ist wird sowohl die E-Mail-Adresse als auch die optionale E-Mail-Adresse der Lieferadresse zwingend benötigt, wenn der Benutzer eine Bestätigungsemail wünscht. | [A][D][AD] Standard: A |
Zusätzlich zu den individuellen Formular-Konfigurationsdateien kann auch eine globale Konfigurationsdatei angelegt werden, deren Einstellungen sich im Standard auf alle Formulare des Shops beziehen. Innerhalb der Datei kann definiert werden, ob die Einstellungen tatsächlich für alle Formulare des Shops gelten oder nur für bestimmte Formulare.
Diese Konfigurationsdatei muss inquiry-global.config
heißen.
Sie muss im Online Servicebereich im Service Konfiguration unterhalb des Tabs Konfiguration > Shop im Abschnitt Global.
<Protection> <+Entry> ID = Action = Standard = Type = RegEx = IPReputationList = WAF = CheckExtern = CheckExternBasicAuth = FilterSigns = </+Entry> </Protection> |
Über den Abschnitt <Protection>
können erweiterte Sicherheitsmechanismen zur Vermeidung von SPAM für die Formulare hinterlegt werden, die über das WEBSALE Formular-Modul Inquiry4 erstellt worden sind.
Parameter | Beschreibung | Werte |
---|---|---|
+Entry |
|
Parameter | Beschreibung | Werte |
---|---|---|
ID |
|
|
Standard |
|
|
Action |
|
|
Type |
|
|
RegEx |
|
|
IPReputationList |
|
|
WAF |
|
|
CheckExtern |
|
|
CheckExternBasicAuth |
|
|
CheckExternOnErrorBehavior |
|
|
CheckExternBearerToken |
|
|
FilterSigns |
|
|
Die Einschränkung bestimmter Zeichenfolgen – beispielsweise das Untersagen der Eingabe von „ABCDE“ – wird in der Datei inquiry-global.config
definiert. Diese Einschränkung ist jedoch standardmäßig nicht für alle Formulare aktiv (Standard = inactive
).
<Protection> ... <+Entry> ID = deleteRule Standard = inactive Type = FilterSigns FilterSigns = ABCDE </+Entry> ... </Protection> |
Um die Zeichenfolgenprüfung gezielt für ein bestimmtes Formular – beispielsweise das Kontaktformular (contact.config) – zu aktivieren, muss der folgende Eintrag in der zugehörigen Formular-Konfigurationsdatei vorgenommen werden:
<Protection> +ID = deleteRule </Protection> |
Innerhalb des <Protection>
-Abschnitts können über den Parameter +ID gezielt Sicherheitsmechanismen aus der globalen Konfigurationsdatei eingebunden und aktiviert werden. Dadurch lässt sich flexibel steuern, welche Schutzmaßnahmen für welche Formulare gelten.
In der Datei inquiry-global.config
wird die Zeichenfolgenprüfung – z. B. das Untersagen der Eingabe von „ABCDE“ – standardmäßig für alle Formulare aktiviert (Standard = active).
<Protection> ... <+Entry> ID = deleteRule Standard = active Type = FilterSigns FilterSigns = ABCDE </+Entry> ... </Protection> |
Falls diese Zeichenfolgenprüfung für ein bestimmtes Formular – beispielsweise das Kontaktformular (contact.config) – deaktiviert werden soll, muss in der jeweiligen Formular-Konfigurationsdatei folgender Eintrag vorgenommen werden:
<Protection> -ID = deleteRule </Protection> |
Innerhalb des <Protection>
-Abschnitts können über den Parameter -ID gezielt Sicherheitsmechanismen aus der globalen Konfigurationsdatei deaktiviert werden. Dadurch lässt sich flexibel steuern, welche Schutzmaßnahmen für welche Formulare gelten.
Die IPReputationList ermöglicht den Abgleich eingehender Anfragen mit bekannten IP-Reputationslisten. Dadurch können Anfragen von als schädlich oder verdächtig eingestuften IP-Adressen automatisch blockiert werden.
In der globalen Konfigurationsdatei inquiry-global.config
muss der folgende +Entry
hinzugefügt werden, um die Überprüfung gegen bestimmte IP-Reputationslisten zu aktivieren.
<Protection> ... <+Entry> ID = IPListValditation Standard = active Action = block Type = IPReputationList IPReputationList = blocklist.de, firehol.org-1, firehol.org-2, firehol.org-3, firehol.org-4, stopforumspam.com </+Entry> ... </Protection> |
Attribute
ID = IPListValidation
: Eindeutige ID für diesen Sicherheitsmechanismus.
Standard = active
: Die Regel ist standardmäßig aktiv, sofern sie nicht explizit in einem bestimmten Formular deaktiviert wird.
Action = block
: Gibt an, dass Anfragen von einer gelisteten IP blockiert werden. Alternativ kann ignore
gesetzt werden
Type = IPReputationList
: Definiert den Sicherheitsmechanismus als IP-Reputationsprüfung.
IPReputationList =
: Liste der externen IP-Blocklisten, die zur Prüfung herangezogen werden. Mehrere Werte werden durch Kommas getrennt.
Alle Parameter und deren Beschreibung sind unter "Parameter und Erklärungen für +Entry" noch einmal ausführlich aufgeführt.
Die Web Application Firewall (WAF) schützt vor bekannten Angriffsvektoren, indem verdächtige oder schädliche Anfragen automatisch erkannt und blockiert werden.
In der globalen Konfigurationsdatei inquiry-global.config
muss der folgende +Entry
hinzugefügt werden, um die WAF-Prüfung zu aktivieren:
<Protection> ... <+Entry> ID = WAFValidation Standard = active Action = block Type = RestrictiveWAFPolicies WAF = </+Entry> ... </Protection> |
Attribute
ID = WAFValidation
: Eindeutige ID für diesen Sicherheitsmechanismus.
Standard = active
: Die Regel ist standardmäßig aktiv, sofern sie nicht explizit in einem bestimmten Formular deaktiviert wird.
Action = block
: Gibt an, dass Anfragen, die gegen WAF-Regeln verstoßen, blockiert werden. Alternativ kann ignore
gesetzt werden.
Type = RestrictiveWAFPolicies
: Definiert den Sicherheitsmechanismus als restriktive WAF-Policy.
WAF =
: Platzhalter für zukünftige spezifische WAF-Regeln. Aktuell leer, da die Standardregeln des OWASP Core Rule Set angewendet werden (Stand: 03/2025)
Alle Parameter und deren Beschreibung sind unter "Parameter und Erklärungen für +Entry" noch einmal ausführlich aufgeführt.
Die CheckExtern-Funktion ermöglicht es, eine externe Prüfungs-API einzubinden, um Formulareingaben vor der Verarbeitung zu validieren. Alle relevanten Eingabedaten werden per Server-zu-Server-POST-Anfrage als JSON an die angegebene URL gesendet. Die Antwort entscheidet, ob die Anfrage weiterverarbeitet oder blockiert wird.
In der globalen Konfigurationsdatei inquiry-global.config
muss der folgende +Entry
hinzugefügt werden, um eine externe Prüfung zu aktivieren:
<Protection> ... <+Entry> ID = externValidation Standard = active Action = block Type = CheckExtern CheckExternURL = https://example.com/api/check CheckExternOnErrorBehavior = block CheckExternBasicAuth = user:pass CheckExternBearerToken = secrettoken123 </+Entry> ... </Protection> |
Attribute
ID = externValidation
: Eindeutige ID für diesen Sicherheitsmechanismus.
Standard = active
: Die Regel ist standardmäßig aktiv, sofern sie nicht explizit in einem bestimmten Formular deaktiviert wird
Action = block
: Gibt an, dass Anfragen, die gegen WAF-Regeln verstoßen, blockiert werden. Alternativ kann ignore
gesetzt werden
Type = CheckExtern
Definiert den Sicherheitsmechanismus als externe Prüfungsanfrage per REST-API
CheckExternURL =
: Ziel-URL für die externe Prüfung. Muss eine gültige HTTPS-Adresse sein
CheckExternOnErrorBehavior =
: Fehlverhalten der externen Prüfung: block
(Standard) verhindert Anfragen bei technischen Fehlern, pass
erlaubt sie trotzdem
CheckExternBasicAuth =
: Optionale Basic Authentication für die API (Format: user:pass
).
CheckExternBearerToken =
: Optionaler Bearer-Token für API-Authentifizierung. Wird im Header als Authorization: Bearer <Token>
gesendet.
Alle Parameter und deren Beschreibung sind unter "Parameter und Erklärungen für +Entry" noch einmal ausführlich aufgeführt.
Das Modul sendet alle erfassten Eingaben sowie zusätzliche Informationen als JSON-Objekt per POST an die konfigurierte URL (CheckExternURL
), z.B.
{ "IPAddress": "", "Referer": "", "SubReferer": "", "CustomerAddress": { ... }, "DeliveryAddress": { ... }, "CommonInput": { ... }, "Upload": { "UploadID": "", "FileNames": [ { "FileName": "" }, ... ] } } |
Parameter oder Strukturen können fehlen, wenn sie nicht für das Formular vorhanden oder definiert sind.
Die externe API muss eine gültige JSON-Antwort mit einem HTTP-Statuscode 200 OK zurückgeben. Wichtig ist, dass das externe System innerhalb von 3 Sekunden antwortet, ansonsten wird dies als Kommunikationfehler interpretiert.
Die Anfrage wird als erfolgreich gewertet und weiterverarbeitet:
{ "result": "OK" } |
Die Anfrage wird blockiert:
{ "result": "failed" } -> oder beliebiger anderer Wert |
Andere HTTP-Statuscodes oder ungültige Antworten werden als Kommunikationsfehler betrachtet, und das Verhalten wird gemäß CheckExternOnErrorBehavior
angewendet (block
oder pass
).
Die FilterSigns-Funktion ermöglicht das automatische Entfernen unerwünschter Zeichen aus Benutzereingaben. Dadurch können unerwünschte oder sicherheitskritische Zeichen gefiltert werden, bevor die Eingaben weiterverarbeitet werden.
In der globalen Konfigurationsdatei inquiry-global.config
muss der folgende +Entry
hinzugefügt werden, um eine externe Prüfung zu aktivieren:
<Protection> ... <+Entry> ID = deleteSignsValidation Standard = active Active = block Type = FilterSigns FilterSigns = !$% </+Entry> ... </Protection> |
Attribute
ID = deleteSignsValidation
: Eindeutige ID für diesen Sicherheitsmechanismus.
Standard = active
: Die Regel ist standardmäßig aktiv, sofern sie nicht explizit in einem bestimmten Formular deaktiviert wird
Action = block
: Gibt an, dass Anfragen, die gegen WAF-Regeln verstoßen, blockiert werden. Alternativ kann ignore
gesetzt werden
Type = FilterSigns
: Definiert den Sicherheitsmechanismus als Zeichenfilterung.
FilterSigns = !$%
: Liste der zu entfernenden Zeichen. Mehrere Zeichen werden ohne Trennzeichen angegeben.
Alle Parameter und deren Beschreibung sind unter "Parameter und Erklärungen für +Entry" noch einmal ausführlich aufgeführt.
Die RegEx-Filterung ermöglicht das Blockieren oder Ignorieren von Anfragen, wenn eine bestimmte Zeichenfolge oder ein bestimmtes Muster in den Eingaben erkannt wird. Dies dient zum Schutz vor Injection-Angriffen, Spam oder unerwünschten Eingaben.
In der globalen Konfigurationsdatei inquiry-global.config
muss der folgende +Entry
hinzugefügt werden, um eine externe Prüfung zu aktivieren:
<Protection> ... <+Entry> ID = RegExValidation Standard = active Action = block Type = RegEx RegEx = (if\(|\bsysdate\b|sleep\(|SELECT\(|SELECT\s\*|PG_SLEEP|example\.com) </+Entry> ... </Protection> |
Attribute
ID = RegExValidation
: Eindeutige ID für diesen Sicherheitsmechanismus.
Standard = active
: Die Regel ist standardmäßig aktiv, sofern sie nicht explizit in einem bestimmten Formular deaktiviert wird
Action = block
: Gibt an, dass Anfragen, die gegen WAF-Regeln verstoßen, blockiert werden. Alternativ kann ignore
gesetzt werden
Type = RegEx
: Definiert den Sicherheitsmechanismus als Regulären Ausdruck zur Inhaltsprüfung
RegEx =
: Regulärer Ausdruck, der auf die Eingabe angewendet wird. Wird ein Treffer gefunden, wird die Anfrage gemäß Action
behandelt
Alle Parameter und deren Beschreibung sind unter "Parameter und Erklärungen für +Entry" noch einmal ausführlich aufgeführt.
Die im Beispiel verwendete RegEx prüft auf typische SQL-Injection- und Spam-Muster:
RegEx-Ausdruck | Erklärung |
---|---|
| Erkennt die Verwendung von |
| Erkennt |
| Erkennt die |
| Erkennt SQL- |
| Erkennt |
| Erkennt PostgreSQL-spezifische |
| Erkennt Referenzen zu |
Falls eine Anfrage aufgrund einer Protection-Regel blockiert wurde, kann eine entsprechende Fehlermeldung im InquiryPage-Template ausgegeben werden.
Allgemeine Fehlerausgabe für alle Protection
-Regeln:
... {INQUIRY-ProtectionTriggered} <!-- Liste der fehlgeschlagenen IDs aus den +Entry Abschnitten --> ~INQUIRY-ProtectionTriggered~ {/INQUIRY-ProtectionTriggered} ... |
Das Einzeltag gibt die Liste der IDs aus den +Entry-Einträgen aus, die zur Ablehnung der Anfrage geführt haben.
Die Ausgabe gilt für alle Sicherheitsmechanismen
Falls eine spezifische Fehlermeldung für eine bestimmte Regel erwünscht ist, muss dies über eine dedizierte ID im Template definiert werden, z.B. über einen DC-(DesignControl)-Tags, z.B.
... {INQUIRY-ProtectionTriggered} <!-- Liste der fehlgeschlagenen IDs aus den +Entry Abschnitten --> ~DC-FPProtectionID_set($INQUIRY-ProtectionTriggered$)~ ... {DC-FPProtectionID(RegExValidation)} Fehlermeldung für RegEx Regel {/DC-FPProtectionID(RegExValidation)} ... {DC-FPProtectionID(deleteSignsValidation)} Fehlermeldung für FilterSigns-Regel {/DC-FPProtectionID(deleteSignsValidation)} ... {/INQUIRY-ProtectionTriggered} ... |
INQUIRY4 bietet Ihnen die Möglichkeit, in Ihren Templates durch bestimmte, wohldefinierte „Tags“ Informationen entsprechend den Benutzereingaben einzufügen bzw. bestimmte Bereiche ein- oder auszublenden.
Es existieren 3 Arten von Tags:
Einfache Ersetzungs-Tags | Diese haben die Form ~TAG-Name~. Das Tag wird durch den entsprechenden Wert ersetzt. |
Bereichs-Tags | Ein Bereich wird mit {TAG-Name} geöffnet und mit {/TAG-Name} geschlossen. Dieser Bereich wird nur angezeigt, wenn das TAG irgendeinen Wert hat. |
Negative Bereichs-Tags | Ein negativer Bereich wird mit {!TAG-Name} geöffnet und mit {/!TAG-Name} geschlossen. Dieser Bereich wird nur angezeigt, wenn kein Wert für dieses TAG existiert. |
Ein Tag kann im Template entweder in Form eines einfachen Ersetzungs-Tags und/oder eines Bereichs-Tags und/oder eines negativen Bereichs-Tags eingesetzt werden. Folgende Kodierung soll hierzu gelten:
Kodierung der Einsatzmöglichkeiten, z. B.: 100
Die erste Stelle „1“ bezieht sich auf Ersetzungstags. Die 2. Stelle „0“ bezieht sich auf Bereichs-Tags und die 3. Stelle „0“ auf negative Bereichs-Tags.
1 bedeutet: wird unterstützt
0 bedeutet: keine Unterstützung
Unterstützt | Einfaches Tag | Bereichs-Tag | neg. Bereichs-Tag |
---|---|---|---|
100 | ja | nein | nein |
011 | nein | ja | ja |
111 | ja | ja | ja |
Beispiel 1:
Tag | Unterstützt | Beschreibung | Besonderheit |
---|---|---|---|
Beispiel | 100 | Tag für das Feld ABCDE | Dieser Text wird nicht beim ersten Aufruf des Formulars mit INQUIRY4 angezeigt, sondern nur, wenn beim Absenden des Formulars ein Fehler festgestellt wurde. |
Dieses Tag können Sie im Template wie folgt verwenden:
~ABCDE~ ok, weil 100 |
Sie können dieses Tag allerdings nicht wie folgt verwenden:
{ABCDE} falsch! weil 100 Text Text Text Text Text Text {/ABCDE} |
Dieses Beispiel-Tag unterstützt mit 100 also nur die Möglichkeiten eines “Einfachen Tags“, ist aber kein “Bereichs-Tag“ bzw. kein “Negatives Bereichs-Tag“.
Beispiel 2:
Tag | Unterstützt | Beschreibung |
---|---|---|
INFO-Referer | 111 | Zeigt den als Parameter |
Dieses Tag können Sie im Template wie folgt verwenden:
~INFO-Referer~ ok, weil 111 |
Dadurch wird dieses Tag durch den übergebenen Wert ersetzt.
Sie können dieses Tag allerdings auch als Bereichs-Tag oder Negatives Bereichs-Tag verwenden:
(a)
{INFO-Referer} ok, weil 111 Folgender Referer wurde übergeben: ~INFO-Referer~. {/INFO-Referer} |
(b)
{!INFO-Referer} ok, weil 111 Es wurde kein Referer übergeben. {/!INFO-Referer} |
Wenn ein Referer übergeben wurde, wird nur der Bereich (a) angezeigt. Wurde kein Referer übergeben, wird nur der Bereich (b) angezeigt.
In einem Bereich (Anzeigebereich auf der erzeugten Webseite) dürfen wiederum beliebige andere Tags vorkommen.
Beispiel:
{A-LastName_value} Der von Ihnen eingegebene Nachname lautet: ~A-LastName_value~ {/A-LastName_value} |
Im Fehlerfall wäre auf der Formularseite z. B. zu lesen:
Herr <Name>, die Eingabe der folgenden Punkte war nicht korrekt:
INQUIRY4 kennt hierbei folgende Tags:
Die Tags der Adressdaten beginnen alle mit „A-“ und haben die gleiche Bezeichnung wie die zugehörige Sektion in der Konfigurationsdatei.
Es existieren drei Suffixe, die in Kombination mit dem Sektionsnamen ein gültiges Tag ergeben:
Suffix | Beschreibung |
---|---|
_value | Der vom Nutzer eingegebene Wert |
_descr | Die Beschreibung, wie in der Konfigurationsdatei angegeben |
_name | Der HTML-Name, wie in der Konfigurationsdatei angegeben. |
_max | Die in der Konfigurationsdatei angegebene maximale Eingabelänge |
_error | Fehlerhafte Eingabe:
|
Jedes so erzeugte Tag unterstützt dabei alle drei Arten von Tags.
{A-LastName_value} Eingegebener Nachname: ~A-LastName_value~ {/A-LastName_value} |
Dadurch wird der vom Benutzer eingegebene Nachname, wenn vorhanden, angezeigt.
~A-FirstName_descr~: <input type=“text“ name=“~A-FirstName_name~“ size=32 maxlength="~A-FirstName_max~"> |
Hier wird ein Eingabefeld für den Vornamen erstellt, wobei der HTML-Name wie in der Konfigurationsdatei angegeben eingefügt und die Beschreibung aus der Konfigurationsdatei vorangestellt wird.
Zusätzlich können die Bereichs- und negativen Bereichs-Tags mit dem Suffix _value auf bestimmte eingegebene Werte geklammert werden.
{A-Country_value(DEU)} Dieser Bereich wird nur angezeigt, wenn als Land Deutschland ausgewählt wurde. {/A-Country_value(DEU)} |
Daneben können Zusatzfelder (sog. Suffix-Felder) verwendet werden.
Auch die Tags der Suffix-Felder beginnen mit „A-“ und haben die gleiche Bezeichnung wie die zugehörige Sektion in der Konfigurationsdatei.
Achtung: Im INQUIRY können maximal 10 Suffix-Felder (<A-Suffix1>
bis <A-Suffix10>
) genutzt werden. Wenn Sie mehr Zusatzfelder einsetzen möchten, müssen diese mit <+CommonInput>
realisiert werden. (Siehe oben Allgemeine Anfragefelder)
Zusätzliche Tags:
Tag | Unterstützt | Beschreibung | Besonderheit |
---|---|---|---|
A-Salutation_list | 100 | Generiert automatisch eine Listbox mit Anreden. Dabei wird die Datei aus der Sektion |
|
A-Salutation_complete | 100 | Die vollständige Anrede. Zur Erzeugung dieser wird die Datei aus der Sektion |
|
A-Title_list | 100 | Generiert automatisch eine Listbox mit Titeln. Dabei wird die Datei aus der Sektion | Die erzeugte Listbox besitzt die Styles-klasse |
A-Country_list | 100 | Generiert automatisch eine Listbox mit Ländern. Dabei wird die Datei aus der Sektion | Die erzeugte Listbox besitzt die Styles-klasse |
A-DateOfBirth_list | 100 | Generiert automatisch drei Listboxen zur Auswahl des Geburtsdatums. | Die erzeugten Listboxen besitzen die Styles-klasse |
Die Tags der Lieferadresse werden analog zu denen der Adressdaten gebildet.
Die Tags der Lieferadresse beginnen alle mit „D-“ und haben die gleiche Bezeichnung wie die zugehörige Sektion in der Konfigurationsdatei.
Es existieren drei Suffixe, die in Kombination mit dem Sektionsnamen einen gültigen Tag ergeben:
Suffix | Beschreibung |
---|---|
_value | Der vom Nutzer eingegebene Wert |
_descr | Die Beschreibung, wie in der Konfigurationsdatei angegeben |
_name | Der HTML-Name, wie in der Konfigurationsdatei angegeben. |
_max | Die in der Konfigurationsdatei angegebene maximale Eingabelänge |
_error | Fehlerhafte Eingabe:
|
Jedes so erzeugte Tag unterstützt dabei alle drei Arten von Tags.
{D-LastName_value} Eingegebener Nachname: ~D-LastName_value~ {/D-LastName_value} |
Dadurch wird der vom Benutzer eingegebene Nachname, wenn vorhanden, angezeigt.
~D-FirstName_descr~: <input type=“text“ name=“~D-FirstName_name~“ size=32 maxlength="~D-FirstName_max~"> |
Hier wird ein Eingabefeld für den Vornamen erstellt, wobei der HTML-Name wie in der Konfigurationsdatei angegeben eingefügt und die Beschreibung aus der Konfigurationsdatei vorangestellt wird.
Zusätzlich können die Bereichs- und negativen Bereichs-Tags mit dem Suffix _value
auf bestimmte eingegebene Werte geklammert werden.
{D-Country_value(DEU)} Dieser Bereich wird nur angezeigt, wenn als Land der Lieferadresse Deutschland ausgewählt wurde. {/D-Country_value(DEU)} |
Daneben können Zusatzfelder (sog. Suffix-Felder) verwendet werden.
Auch die Tags der Suffix-Felder beginnen mit „D-“ und haben die gleiche Bezeichnung wie die zugehörige Sektion in der Konfigurationsdatei.
Achtung: Im INQUIRY können maximal 10 Suffix-Felder (<D-Suffix1>
bis <D-Suffix10>
) genutzt werden. Wenn Sie mehr Zusatzfelder einsetzen möchten, müssen diese mit <+CommonInput>
realisiert werden (Siehe oben Allgemeine Anfragefelder).
Zusätzliche Tags:
Tag | Unterstützt | Beschreibung | Besonderheit |
---|---|---|---|
D-Salutation_list | 100 | Generiert automatisch eine Listbox mit Anreden. Dabei wird die Datei aus der Sektion <Basic>, Parameter SalutationDat verwendet. | Die erzeugte Listbox besitzt die Styles-klasse „select_d_salut“. |
D-Salutation_complete | 100 | Die vollständige Anrede. Zur Erzeugung dieser wiird die Datei aus der Sektion |
|
D-Title_list | 100 | Generiert automatisch eine Listbox mit Titeln. Dabei wird die Datei aus der Sektion | Die erzeugte Listbox besitzt die Styles-klasse |
D-Country_list | 100 | Generiert automatisch eine Listbox mit Ländern. Dabei wird die Datei aus der Sektion | Die erzeugte Listbox besitzt die Styles-klasse |
D-DateOfBirth_list | 100 | Generiert automatisch drei Listboxen zur Auswahl des Geburtsdatums. | Die erzeugten Listboxen besitzen die Styles-klasse |
Die Tags der allgemeinen Eingabefelder beginnen alle mit „C-“ und werden aus diesem Prefix, dem HTML-Namen und dem entsprechenden Suffix gebildet.
Es existieren drei Suffixe, die in Kombination mit dem Prefix „C-“ und dem HTML-Namen ein gültiges Tag ergeben:
Suffix | Beschreibung |
---|---|
_value | Der vom Nutzer eingegebene Wert |
_descr | Die Beschreibung, wie in der Konfigurationsdatei angegeben |
_name | Der HTML-Name, wie in der Konfigurationsdatei angegeben. |
_max | Die in der Konfigurationsdatei angegebene maximale Eingabelänge |
_error | Fehlerhafte Eingabe:
|
Jedes so erzeugte Tag unterstützt dabei alle drei Arten von Tags.
Konfigurationsdatei:
<+CommonInput> Allow = yes Type = TextArea Name = field2 Descr = Bemerkungen Required = no </+CommonInput> |
Template Anfrage:
~C-field2_descr~: <textarea name="~C-field2_name~"></textarea> |
Template E-Mail:
{C-field2_value} Usereingabe bei ~C-field2_descr~: ~C-field2_value~ {/C-field2_value} {!C-field2_value} User machte keine Angabe zu ~C-field2_descr~ {/!C-field2_value} |
Hier wird eine Textarea als allgemeines Eingabefeld erstellt, im HTML-Template angezeigt und bei einer Benutzereingabe der Wert bzw. bei keiner Eingabe eine alternative Nachricht in der E-Mail verschickt.
Zusätzlich können die Bereichs- und negativen Bereichs-Tags mit dem Suffix _value
auf bestimmte eingegebene Werte geklammert werden.
{C-field2_value(anfrage)} Dieser Bereich wird nur angezeigt, wenn der Kunde im Feld field2 „anfrage“ eingegeben hat. {/C-field2_value(anfrage)} |
Tag | Unterstützt | Beschreibung |
---|---|---|
CAPTCHA-Description | 111 | Gibt die Beschreibung der CAPTCHA-Funktionalität aus. (Konfigurationsdatei: Abschnitt Parameter |
Tag | Unterstützt | Beschreibung | Besonderheit |
---|---|---|---|
CAPTCHA-Input_name | 100 | Der HTML-Name des CAPTCHA-Eingabefelds |
|
CAPTCHA-Input_error | 111 | Fehlerhafte Eingabe im CAPTCHA-Eingabefeld
|
|
CAPTCHA-Input_value | 111 | Der vom Anfragenden eingegebene Wert im CAPTCHA-Eingabefeld | Dieser Wert wird nur nach korrekter Eingabe des CAPTCHA- Eingabefelds ausgegeben! |
CAPTCHA-Result | 111 | Die korrekte erwartete CAPTCHA-Eingabe
| NUR ZU TESTZWECKEN VERWENDEN! |
CAPTCHA-ArithmeticOperand1 | 111 | Der erste Operand der Rechenaufgabe |
|
CAPTCHA-ArithmeticOperand2 | 111 | Der zweite Operand der Rechenaufgabe |
|
CAPTCHA-ArithmeticOperation | 111 | Die Rechenoperation der Rechenaufgabe |
|
Beispiel:
~CAPTCHA-ArithmeticOperand1~ ~CAPTCHA-ArithmeticOperation~ ~CAPTCHA-ArithmeticOperand2~ = <input type="text" class="stdinput~CAPTCHA-Input_error~" value="~CAPTCHA-Input_value~" name="~CAPTCHA-Input_name~" size="10" maxlength="10"> |
Hierbei wird das Eingabefeld im Fall einer fehlerhaften Eingabe markiert.
Wurde versucht, das Formular mit richtig gelöster Rechenaufgabe abzusenden, aber andere Eingaben wurden nicht korrekt ausgeführt, muss der Anfragende keine neue Rechenaufgabe lösen, sondern die bereits gelöste Aufgabe wird inklusive korrekt ausgefüllten Eingabefeldes wieder angezeigt.
Tag | Unterstützt | Beschreibung |
---|---|---|
CAPTCHA-RecaptchaV3SiteKey | 100 | Site-Key, der von Google bezogen und in |
CAPTCHA-RecaptchaV3ApiUrl | 100 | URL von Google bezogen und in |
CAPTCHA-RecaptchaV3ActionName | 100 | z. B. homepage, login usw., in |
CAPTCHA-RecaptchaV3Error | 111 | Fehlermeldung von |
CAPTCHA-RecaptchaV3Score | 111 | Recaptcha Score von Google |
CAPTCHA-RecaptchaV3Response | 111 | technische Antwort von Google, kann zur Fehleranalyse verwendet werden |
CAPTCHA-RecaptchaV3ErrorCode | 111 | interner Fehlercode, kann zur Fehleranalyse verwendet werden |
JavaScript-Code, der auf dem Template eingefügt werden muss:
<script src="~CAPTCHA-RecaptchaV3ApiUrl~?render=~CAPTCHA-RecaptchaV3SiteKey~"></script> <script> grecaptcha.ready(function() { grecaptcha.execute('~CAPTCHA-RecaptchaV3SiteKey~', {action: '~CAPTCHA-RecaptchaV3ActionName~'}).then(function(token) { $("[name='g_recaptcha_token']").val(token); //Token wird bezogen und sein Wert im input-Element im Formular gespeichert }); }); </script> |
HTML-Code, der auf dem Formular eingefügt werden muss:
<form> ... <input type="hidden" name="g_recaptcha_token"> ... </form> |
Tag | Unterstützt | Beschreibung |
---|---|---|
CAPTCHA-FriendlyCaptchaV1ApiUrl | 111 | URL von Friendly Captcha bezogen und in |
CAPTCHA-FriendlyCaptchaV1ApplicationID | 111 | ApplicationID aus FriendlyCaptcha Backend |
CAPTCHA-FriendlyCaptchaV1Error | 111 | Fehlermeldung von |
CAPTCHA-FriendlyCaptchaV1Response | 111 | technische Antwort von Friendly Captcha, kann zur Fehleranalyse verwendet werden |
CAPTCHA-FriendlyCaptchaV1ErrorCode | 111 | interner Fehlercode, kann zur Fehleranalyse verwendet werden |
Code, der auf dem Template eingefügt werden muss:
<script type="module" src="https://cdn.jsdelivr.net/npm/friendly-challenge@0.9.14/widget.module.min.js" async defer ></script> <script nomodule src="https://cdn.jsdelivr.net/npm/friendly-challenge@0.9.14/widget.min.js" async defer></script> <div class="frc-captcha" data-sitekey="~CAPTCHA-FRIENDLYCAPTCHAV1-ApplicationID~" data-puzzle-endpoint="~CAPTCHA-FRIENDLYCAPTCHAV1-APIUrl~" data-start="focus"></div> |
Bitte beachten Sie, dass Sie vor der Integration der Tags in das InquiryPage-Template die entsprechende Konfiguration in der Formular-Konfiguration vorgenommen haben.
Tag | Unterstützt | Beschreibung |
---|---|---|
CAPTCHA-CaptchaEuPublicKey | 1110 | Tag für die Ausgabe des in der Konfiguration hinterlegten Public-Keys |
CAPTCHA-CaptchaEuValidationURL | 1110 | Tag für die Ausgabe einer URL für das benötigte CAPTCHA-Javascript |
CAPTCHA-CaptchaEuErrorCode | 1110 | Tag für die Ausgabe der technischen Fehlercode, die dann für die Ausgabe entsprechender Fehlermeldungen oder zum Debuggen verwendet werden können. |
CAPTCHA-CaptchaEuError | 1110 | Tag für die Ausgabe der in der Formular-Konfiguration hinterlegten Fehlermeldungen. |
CAPTCHA-CaptchaEuResponse | 1110 | Tag für die Ausgabe der Server-to-Server Antwort von captcha.eu zum Debuggen. |
Die Integration von captcha.eu erfolgt über ein JavaScript-SDK, das sicherstellt, dass die CAPTCHA-Verifizierung erfolgreich durchgeführt wird, bevor das Formular gesendet wird. Es gibt zwei Möglichkeiten, das CAPTCHA in ein Formular einzubinden:
Automatische Überprüfung beim Absenden des Formulars
Asynchrone Lösung mit einem versteckten Eingabefeld
1. Automatische Prüfung beim Absenden (Intercept Submit-Button)
In dieser Variante wird das Captcha-Skript automatisch beim Absenden des Formulars ausgeführt. Es fängt den Submit-Button ab, prüft das Captcha und sendet das Formular erst nach erfolgreicher Validierung.
<script type="text/javascript" src="~CAPTCHA-CaptchaEuValidationURL~"></script> <script type="text/javascript"> KROT.setup("~CAPTCHA-CaptchaEuPublicKey~"); var form = document.getElementById("<ID Ihres Formulars>"); KROT.interceptForm(form); </script> |
2. Asynchrone Prüfung mit verstecktem Eingabefeld
Hierbei wird die CAPTCHA-Lösung nach dem Laden der Seite per JavaScript asynchron vom Server abgerufen und in ein verstecktes Feld (captcha_at_solution
) geschrieben. Beim Absenden des Formulars wird die im Hintergrund gelöste CAPTCHA-Antwort übermittelt.
<body> ... <form action="~FORM-SSLTemplate(<IHR TEMPLATE>)~" method="POST"> <input type="hidden" name="captcha_at_solution" id="captcha_at_solution"> ~INQUIRY-Link~ ... <!-- Ihre Eingabefelder --> ... </form> ... <script type="text/javascript" src="~CAPTCHA-CaptchaEuValidationURL~"></script> <script type="text/javascript"> KROT.setup("~CAPTCHA-CaptchaEuPublicKey~"); KROT.getSolution() .then((solution) => { // Die CAPTCHA-Lösung wird als JSON gespeichert document.getElementById("captcha_at_solution").value = JSON.stringify(solution); }); </script> ... </body> |
Tag | Unterstützt | Beschreibung | Werte / Beispiele | |
---|---|---|---|---|
PDF-Form | 111 | Form zur Erzeugung eines PDFs der Anfrage. Wird nur auf der ConfirmPage unterstützt. Der Bereich wird nicht angezeigt, wenn der Parameter Allow in der Sektion PDF auf no steht. |
| |
PDF-Button | 111 | Buttonname zur Erzeugung eines PDFs der Anfrage. Wird nur auf der ConfirmPage unterstützt. Der Bereich wird nicht angezeigt, wenn der Parameter Allow in der Sektion PDF auf no steht. Muss innerhalb der PDF-Form stehen. |
|
Tag | Unterstützt | Beschreibung | Werte / Beispiele | |
---|---|---|---|---|
INQUIRY-Upload | 011 | Der Bereich wird angezeigt, wenn das WEBSALE-Upload-Modul mit diesem Anfrageformular verwendet werden kann. Dies beinhaltet auch, dass der Upload in der Konfigurationsdatei aktiviert ist (Parameter Allow in der Sektion Upload) |
| |
UPLOAD-Link | 100 | Link zum Upload-Modul. Dieser Link kann als Popup oder als iFrame (als iFrame auch innerhalb einer Colorbox) verwendet werden. |
| |
UPLOAD-SSLLink | 100 | Link zum Upload-Modul im SSL-Modus. Dieser Link kann als Popup oder als iFrame (als iFrame auch innerhalb einer Colorbox) verwendet werden. |
| |
UPLOAD-Data | 111 | Gibt die Anzahl der hochgeladenen Dateien aus bzw. zeigt an, ob Dateien hochgeladen wurden. | Dieses Tag kann auch als Schleifentag verwendet werden, um Informationen zu den hochgeladenen Dateien anzuzeigen. Beispiel: Anzeige der hochgeladenen Dateien als Schleife:
Dies erzeugt bei 3 hochgeladenen Dateien (Datei1.txt, Datei2.txt und Datei3.pdf):
| |
UPLOAD-File | 100 | Der Dateiname der hochgeladenen Datei. Kann nur innerhalb der Schleife des Tags UPLOAD-Data verwendet werden. |
| |
UPLOAD-Position | 100 | Die Position der hochgeladenen Datei. Kann nur innerhalb der Schleife des Tags UPLOAD-Data verwendet werden. |
| |
UPLOAD-Descr | 100 | Die Beschreibung der hochgeladenen Dateien (festgelegt in der Konfigurationsdatei, Sektion Upload, Parameter UploadDescr) |
| |
UPLOAD-ID | 111 | Das Einzel-Tag gibt die ID des Uploads aus. |
|
INQUIRY4 unterstützt folgende INQDC-FP-Tags, inkl. Tag-in-Tag-Unterstützung. Hinsichtlich Funktionalität und Arbeitsweise entsprechen diese den DC-FP-Tags im Shop (vgl. WEBSALE-Designer-Dokumentation):
Tag | Unterstützt | Beschreibung |
---|---|---|
INQDC-FPX | 111 | X ist frei wählbar, darf aber ausschließlich aus alphanumerischen Zeichen bestehen |
INQDC-FPX_set | 100 |
|
INQDC-FPX_reset | 100 |
|
INQDC-FPX_replace | 100 |
|
INQDC-FPX_append | 100 |
|
INQDC-FPX_truncate | 100 |
|
INQDC-FPX_contains | 011 |
|
INQDC-FPX_urlencoding | 100 |
|
INQDC-FPX_slice | 100 |
|
INQDC-FPX_convertToEncoding | 100 |
|
INQDC-FPX_extractTaggedData | 100 |
|
INQDC-FPX_length | 100 |
|
INQDC-FPX_jsonencoding | 100 |
|
INQDC-CompareDigitLT | 011 |
|
INQDC-CompareDigitLTE | 011 |
|
INQDC-CompareDigitGT | 011 |
|
INQDC-CompareDigitGTE | 011 |
|
INQDC-CompareDigitIB | 011 |
|
INQDC-CompareDigitIBE | 011 |
|
INQDC-CompareStringInList | 011 |
|
INQDC-IntX | 111 | X = 1...3 |
INQDC-IntX_set | 100 |
|
INQDC-IntX_add | 100 |
|
INQDC-IntX_sub | 100 |
|
INQDC-IntX_mul | 100 |
|
INQDC-IntX_div | 100 |
|
INQDC-IntX_mod | 100 |
|
INQDC-IntX_inc | 100 |
|
INQDC-LoopX | 111 | X = 1...3 |
INQDC-LoopX_set | 100 |
|
INQDC-LoopX_position | 100 |
|
INQDC-DateTime_set | 100 |
|
INQDC-DateTime_hours | 111 |
|
INQDC-DateTime_minutes | 111 |
|
INQDC-DateTime_seconds | 111 |
|
INQDC-DateTime_year | 111 |
|
INQDC-DateTime_month | 111 |
|
INQDC-DateTime_day | 111 |
|
INQDC-DateTime_setunixtimestamp | 100 |
|
INQDC-DateTime_dayofweek | 111 |
|
INQDC-DateTime_unixtimestamp | 111 |
|
INQDC-ZeroLoopX | 111 |
|
INQDC-ZeroLoopX_set | 100 |
|
INQDC-ZeroLoopX_position | 100 |
|
INQDC-DynamicLoopX | 111 | X = 1...3 |
INQDC-DynamicLoopX_set | 100 |
|
INQDC-DynamicLoopX_settaggeddata | 100 |
|
INQDC-DynamicLoopX_setseparator | 100 |
|
INQDC-DynamicLoopX_setSeparatorTags | 100 |
|
INQDC-DynamicLoopX_position | 100 |
|
INQDC-DynamicLoopX_data | 100 |
|
Es existieren noch folgende, zusätzliche Tags:
Tag | Unterstützt | Beschreibung | Werte / Beispiel | ||
---|---|---|---|---|---|
AUTOGENERATE-full | 100 | Erzeugt automatisch alle Informationen zu einer Anfrage. Zur Benutzung in E-Mail-Templates vorgesehen. |
Erzeugt folgenden Inhalt in einer E-Mail:
| ||
AUTOGENERATE-header | 100 | Erzeugt automatisch nur den Header einer Anfrage. Zur Benutzung in E-Mail-Templates vorgesehen. |
Erzeugt folgenden Inhalt in einer E-Mail:
| ||
AUTOGENERATE-addr | 111 | Erzeugt automatisch nur die Adress-Informationen. Zur Benutzung in E-Mail-Templates vorgesehen. |
Erzeugt folgenden Inhalt in einer E-Mail:
| ||
AUTOGENERATE-common | 111 | Erzeugt automatisch nur die allgemeinen Anfrageinformationen. Zur Benutzung in E-Mail-Templates vorgesehen. |
Erzeugt folgenden Inhalt in einer E-Mail:
| ||
AUTOGENERATE-upload | 111 | Erzeugt automatisch nur die Liste der hochgeladenen Dateien. Zur Benutzung in E-Mail-Templates vorgesehen. |
Erzeugt folgenden Inhalt in einer E-Mail:
| ||
AUTOGENERATE-technical | 111 | Erzeugt alle Anfrageinformationen in einem Format, welches von technischen Systemen gelesen werden kann. Zur Benutzung in E-Mail-Templates vorgesehen. |
Erzeugt folgenden Inhalt in einer E-Mail:
| ||
INFO-ShopID | 100 | Die beim ersten Aufruf übergebene ShopID. |
| ||
INFO-SubShopID | 100 | Die beim ersten Aufruf übergebene SubShopID. |
| ||
INFO-MallID | 100 | Die verwendete MallID. |
| ||
INFO-Reference | 100 | Die eindeutige Referenznummer der Anfrage. |
| ||
INFO-Subject | 100 | Der Betreff der Anfrage-E-Mail. (Konfigurationsdatei: Sektion <InquiryEmail>, Parameter:EMailSubject) |
| ||
INFO-Date | 100 | Datum der Anfrage. Format: TT.MM.JJJJ |
| ||
INFO-Time | 100 | Uhrzeit der Anfrage. Format: HH:MM |
| ||
INFO-Referer | 111 | Der beim ersten Aufruf übergebene Referer |
| ||
INFO-Subreferer | 111 | Der beim ersten Aufruf übergebene SubReferer. |
| ||
INFO-IPAddr | 100 | Die IP-Adresse des Users Bei Integration eines Inquiry über die ExternInclude-Technologie gibt der Tag immer die Adresse des WEBSALE Servers aus. |
| ||
INFO-ExternIPAddr | 100 | Die IP-Adresse des Users Bei Integration eines Inquiry über die ExternInclude-Technologie gibt dieses Tag die IP-Adresse des Users aus. |
| ||
INFO-ExternIPAddrTimeStamp | 111 | Der zugehörige Zeitstempel bei Verwendung von ExternInclude |
| ||
INFO-ExternSessionID | 111 | SessionID des WEBSALE-Shops bei Verwendung von ExternInclude |
| ||
INFO-ATitleCode | 100 | Der zum Titel der Rechnungsanschrift gehörende Code. |
| ||
INFO-DTitleCode | 100 | Der zum Titel der Lieferanschrift gehörende Code. |
| ||
INFO-ASalutationCode | 100 | Der zur Anrede der Rechnungsanschrift gehörende Code. |
| ||
INFO-DSalutationCode | 100 | Der zur Anrede der Lieferanschrift gehörende Code. |
| ||
INQUIRY-SendUserEmail_name | 100 | Der Name des HTML-Elements zur Steuerung der Bestätigungsemail durch den Benutzer wie in der Konfigurationsdatei festgelegt. |
| ||
INQUIRY-SendUserEmail_descr | 100 | Die textuelle Beschreibung des HTML-Elements zur Steuerung der Bestätigungsemail durch den Benutzer wie in der Konfigurationsdatei angegeben. |
| ||
INQUIRY-SendUserEmail_value | 111 | Der vom Benutzer ausgewählte Wert. |
| ||
INQUIRY-AlreadySent | 011 | Hiermit kann auf dem Antworttemplate geklammert werden, ob eine Anfrage bereits abgesendet wurde bzw. der Benutzer zu lange inaktiv war. Fehlt dieser Bereich auf dem Antworttemplate und dieser Fall tritt ein, wird ein Standardfehlertemplate angezeigt. |
| ||
INQUIRY-NewInquiryLink | 111 | WICHTIG: Dieses Tag wird nur angezeigt bzw. der Link erzeugt, wenn INQUIRY4 NICHT im per ExternInclude eingebunden wird! Soll ein Link dieser Art per ExternInclude eingebunden werden, so kann ein WEBSALE-Link verwendet werden:
Erzeugt einen Link zum erneuten Aufruf von INQUIRY4 mit der aktuellen Konfiguration. |
| ||
INQUIRY-Link | 100 | Die Form-URL zum Aufruf von INQUIRY4 . |
| ||
INQUIRY-ReloadButton | 100 | Buttonname zum Aktualisieren der Anfrage. Es werden alle eingegebenen Daten aufgenommen und die Liste der hochgeladenen Dateien aktualisiert. Die eingegebenen Daten werden nicht geprüft und die Anfrage wird nicht abgesendet. |
| ||
MSG-Notify | 100 | Zeigt den allgemeinen Fehlertext an. (Konfigurationsdatei: Sektion | Dieser Text wird nicht beim ersten Aufruf von INQUIRY4 angezeigt. | ||
MSG-Input_error | 111 | Erzeugt eine detaillierte Liste der fehlerhaften Eingaben. | Es wird eine ul/li Liste erzeugt. Verwendete Stylesheet-Klassen: Die Reihenfolge der Meldungen in dieser Liste ist dieselbe wie die der zugehörigen Sektionen in der Konfigurationsdatei. | ||
URL-Template | 100 | Wird durch die URL auf das Template-Verzeichnis ersetzt. |
|
Damit eine HTML-E-Mail versendet werden kann, müssen beim Erstellen eines HTML-E-Mail-Templates folgende Regeln beachtet werden:
Die Adressbasis (base href) innerhalb des <head>-Elements muss vorhanden sein und mit „http://“ oder ″https://″ beginnen,
Die Adressbasis (base href) innerhalb des <head>-Elements muss vorhanden sein und mit „http://“ oder ″https://″ beginnen,
<html> <head> ... <base href=″http://websale-ag.de″> ... </head> <body> ... </body> </html> |
Alle relativen Links und Links zu Bildern oder Style-Dateien müssen in Anführungszeichen stehen.
<html> ... <link rel=″stylesheet″ href=″styles.css″> ... <img src=″pic1.png″> … <a href=″site2.htm″>Link</a> ... </html> |
Alle absoluten Links müssen mit ″http://″ oder ″https://″ beginnen
Alle absoluten Links müssen mit ″http://″ oder ″https://″ beginnen
Alle Bilder werden als Anhänge mitgeschickt, da das Verlinken von externen Bildern in einer HTML-E-Mail das Risiko, dass diese E-Mail als Spam eingestuft wird, wesentlich erhöht!
Alle Bilder werden als Anhänge mitgeschickt, da das Verlinken von externen Bildern in einer HTML-E-Mail das Risiko, dass diese E-Mail als Spam eingestuft wird, wesentlich erhöht!
INQUIRY4 verwendet folgende Namen für Stylesheet-Klassen und Buttons:
Klasse |
|
---|---|
.input_error_ul | Liste der Fehlermeldungen |
.select_a_dateofbirth | SelectBox des Geburtsdatums der Rechnungsadresse |
.select_d_dateofbirth | SelectBox des Geburtsdatums der Lieferadresse |
.select_a_country | SelectBox der Länderauswahl der Rechnungsadresse |
.select_d_country | SelectBox der Länderauswahl der Lieferadresse |
.select_a_title | SelectBox der Titelauswahl der Rechnungsadresse |
.select_d_title | SelectBox der Titelauswahl der Lieferadresse |
.select_a_salut | SelectBox der Anredeauswahl der Rechnungsadresse |
.select_d_salut | SelectBox der Anredeauswahl der Lieferadresse |
INQUIRY4 lässt sich auf verschiedene Arten in WEBSALE E-Commerce integrieren. So kann INQUIRY4 per Popup, iFrame oder ExternInclude eingebunden werden. Sollen einzelne Eingabefelder auf vielen oder allen Shopseiten eingebunden werden, so kann eine einfache Integrationsweise ohne zusätzlichen Leistungs- und Laufzeitbedarf angewandt werden.
INQUIRY4 unterstützt das von WEBSALE angebotene Feature des externen Includes. Dadurch kann INQUIRY4 ohne iFrame auf einem Shop-Template eingebunden werden.
Siehe dazu die Beispieldateien in der Frontend-Dokumentation:
https://doku.websale.net/index.html?mats_materialien_zu_inquiry4.html
Der Aufruf von INQUIRY4 muss mit allen benötigten Parametern auf einem Template des WEBSALE Shops erfolgen. |
Beispiel-INQUIRY4-Aufruf auf einem Shop-Template
... <body> ... ~WS-ExternInclude(https://$URL-Homepage$/cgi/inquiry4.cgi?inq4=$WS-ShopID$.$WS-SubshopID$&cfg=<Name-Ihrer-Config-Datei>.config)~ ... </body> ... |
Die Tags in der angegebenen URL werden vor dem Aufruf von INQUIRY4 ersetzt
Änderungen am Anfragetemplate
Da mit jedem Aufruf von INQUIRY4 auch der WEBSALE Shop aufgerufen werden muss, muss die URL zum Abschicken eines Templates eine andere sein, als wenn INQUIRY4 im Popup oder eigenständig aufgerufen wird.
Beispiel InquiryPage-Template im Direktaufruf bzw. PopUp
... <form action="~INQUIRY-Link~" method="POST"> ... </form> ... |
Beispiel InquiryPage-Template über ExternInclude
... <form action="~Form-Template(<Ihr-Shop-Templatename.htm>)~" method="POST"> ~INQUIRY-Link~ ... </form> ... |
Das Tag ~INQUIRY-Link~ muss innerhalb der Form stehen! Wenn INQUIRY4 über ExternInclude auf einem Shop-Template integriert worden ist, müssen bestimmte Werte als versteckte Parameter übergeben werden. Das Tag ~INQUIRY-Link~ sorgt automatisiert für die Übergabe dieser Parameter. |
Durch das direkte Einbinden haben alle relativen Adressierungen auf den Inquiry-Templates den Basispfad des WEBSALE Templates!
Durch das direkte Einbinden von INQUIRY4 in den WEBSALE-Shop können WEBSALE-Tags auf den Inquiry-Templates eingesetzt werden. Diese werden durch WEBSALE entsprechend ersetzt.
Um das Formular anzeigen zu lassen, muss das Template des Shops geladen werden.
Beispiel:
|
ReCaptcha ver 2 wird von Google nicht mehr unterstützt. Die folgenden Angaben dienen lediglich zur Information.
Die Einstellungen zur CAPTCHA-Funktion „ReCaptcha“ sind in der Sektion <Captcha>
zu finden.
<Captcha> Use ArithmeticCaptcha = no UseRecaptchaCaptcha = yes RecaptchaPublicKey = RecaptchaPrivateKey = RecaptchaTheme = clean # red|white|blackglass|clean CaptchaNotFilledIn = Dieses Formular ist vor Missbrauch geschützt. Um das Formular absenden zu können, muss die angezeigte Zeichenkette eingegeben werden. CaptchaError = Dieses Formular ist vor Missbrauch geschützt. Um das Formular absenden zu können, muss die angezeigte Zeichenkette korrekt eingegeben werden. CaptchaTechnicalProblem = Die Anfrage kann im Moment aus technischen Gründen nicht bearbeitet werden. Bitte versuchen Sie es zu einem späteren Zeitpunkt noch einmal. </Captcha> |
Parameter | Beschreibung | Werte |
---|---|---|
UseArithmeticCaptcha | Wenn Sie als CAPTCHA-Funktion ReCaptcha verwenden möchten, muss dieser Parameter auf "no" stehen! | [yes][no] |
UseRecaptchaCaptcha | Legt fest, ob die CAPTCHA-Funktion ReCaptcha verwendet werden soll. | [yes][no] |
RecaptchaPublicKey | Für die Nutzung von “ReCaptcha” notwendiger und kostenlos bei Google zu beantragender Schlüssel |
|
RecaptchaPrivateKey | Für die Nutzung von “ReCaptcha” notwendiger und kostenlos bei Google zu beantragender Schlüssel |
|
RecaptchaTheme | Legt die gewünschte Farbgestaltung des ReCaptcha-Widgets fest. | [red][white][blackglass][clean], |
CaptchaNotFilledIn | Dieses Formular ist vor Missbrauch geschützt. Um das Formular absenden zu können, muss die angezeigte Zeichenkette eingegeben werden. Dieser Fehlerstring wird angezeigt, wenn die Zeichenkette nicht eingegeben wurde. |
|
CaptchaError | Dieses Formular ist vor Missbrauch geschützt. Um das Formular absenden zu können, muss die angezeigte Zeichenkette korrekt eingegeben werden. Dieser Fehlerstring wird angezeigt, wenn die Zeichenkette falsch eingegeben wurde. |
|
CaptchaTechnicalProblem | Die Anfrage kann im Moment aus technischen Gründen nicht bearbeitet werden. Bitte versuchen Sie es zu späteren Zeitpunkt noch einmal. Dieser Fehlerstring wird angezeigt, wenn der externe Dienst nicht verfügbar ist. |
|
Parameter "UseRecaptchaCaptcha ="
ist veraltet, wird ersetzt durch "UseReCaptchaV3 ="
.
Die folgenden Angaben dienen lediglich zur Information.
Tag | Unterstützt | Beschreibung |
---|---|---|
CAPTCHA-Description | 111 | Gibt die Beschreibung der CAPTCHA-Funktionalität aus. (Konfigurationsdatei: Sektion <Captcha>, Parameter CaptchaDescription). |
CAPTCHA-RecaptchaPublicKey | 111 | Gibt den PublicKey der ReCaptcha-Funktionalität aus.(Konfigurationsdatei: Sektion <Captcha>, Parameter RecaptchaPublicKey). |
CAPTCHA-RecaptchaTheme | 111 | Gibt die gewünschte Farbgestaltung des ReCaptcha-Widgets aus (Konfigurationsdatei: Sektion <Captcha>, Parameter RecaptchaTheme). |
Die Nutzung des Programms erfolgt auf Grundlage der dem Nutzer bekannten allgemeinen Geschäftsbedingungen der WEBSALE AG unter ausdrücklichem Ausschluss jeglicher Haftung oder Gewährleistung. Die Geschäftsbedingungen können jederzeit bei der WEBSALE AG angefordert werden. Durch die Nutzung des Programms erkennen Sie diese Bedingungen an.
Copyright © WEBSALE AG
Gutenstetter Str. 2, 90449 Nürnberg, +49 (0)911-63 221-0, kontakt@websale.de, www.websale.de
Haftungsausschluss
Alle Inhalte werden von der WEBSALE AG ausschließlich zu allgemeinen Informationszwecken veröffentlicht. Für die Richtigkeit, Vollständigkeit und Aktualität der Inhalte können wir jedoch keine Gewähr übernehmen.
Disclaimer
All content is published by WEBSALE AG for general information purposes only. However, we cannot guarantee the correctness, completeness and actuality of the contents.