Erstellen vordefinierter Formulare für den Einsatz am i-net HelpDesk

Bietet der i-net HelpDesk im Web Frontend ein Formular zur Erfassung von Tickets?

Eine oft erfragte Anforderung unserer Kunden ist, dass sie Aufträge über eine einfache Eingabemaske, z.B. von ihrer eigenen Webseite aus, erstellen lassen möchten. Der i-net HelpDesk bietet die programmtechnische Möglichkeit dafür. Es werden jedoch keine Ticket-Formulare mitgeliefert.

Das Ticket-Formular muss von Ihnen selbst erstellt und von Ihrem Webserver via E-Mail an ein Postfach gesendet werden, welches der i-net HelpDesk auslesen darf. Zum Erzeugen des neuen Tickets aus der Formular-E-Mail kommt Java-Script im i-net HelpDesk zum Einsatz. Das Script weist einzelne Einträge aus der Formular-E-Mail den Feldern des HelpDesk-Tickets zu.

Wir haben dazu eine beispielhafte Implementierung auf GitHub hinterlegt, die als Basis für den konkreten Anwendungsfall verwendet werden kann.

Erklärung des Formulars

Das Formular wird in unserem Beispiel anhand einer Objekt-Struktur erzeugt. Diese sieht wie folgt aus (siehe script.js):

// Liste der einzelnen Formular-Zeilen
var lines = [ <FORM LINE>, <FORM LINE>, ... ]

// Format einer Formular-Zeile
{
    name:     "<NAME>",
    type:     "<TYPE>",
    label:    "<LABEL>",
    value:    "<VALUE>",		
    multiple: "multiple",
    choices:  [ <CHOICE>, <CHOICE>, ... ]
}

// Format von <CHOICE>
{
    label:    "<LABEL>",
    subnodes: [ <FORM LINE>, <FORM LINE>, ... ]
}
Formular Element Bedingung Beschreibung
name zwingend Name des Formular Feldes
type zwingend Typ des Feldes: text, submit, file, textarea, choice
label optional Ein Text-Label vor dem Formularfeld; beim Typ choice ein Eintrag in der Auswahlliste
value optional Vorbelegter Wert eines Feldes. Wirkt nur bei den Typen text, submit
multiple optional Wirkt nur beim Typ file. Erlaubt das Auswählen mehrerer Dateien
description optional Beschreibung die nur bei Fehlern angezeigt wird
choices zwingend für Typ choice Liste der Auswahlmöglichkeiten
subnodes optional Liste weiterer Formular-Elemente und -Zeilen. Diese wird eingeblendet, wenn der entsrpechende Eintrag ausgewählt wurde. Dies kann beliebig verschachtelt werden.