Skip to content
This repository has been archived by the owner on Dec 18, 2021. It is now read-only.

09 Erweitern der XForm

Jan Kristinus edited this page Feb 9, 2015 · 1 revision

Es gibt folgende Möglichkeiten die XForm zu erweitern

  • Man möchte eigene value, validate oder action Klassen einbauen
  • Eigenes Markup für die verschiedenen Klassen soll eingebunden werden. (Ändern, Ergänzen der Templates)

in beiden Fällen muss man dies über das/ein eigenes AddOn lösen. Im eigenen AddON kann man nun über die
config.inc.php und folgenden Code die eigenen Klassen und Templates “reinhängen”.

Die eigenen Klassen

rex_register_extension(‘ADDONS_INCLUDED’, function () {
global $REX;
$REX[‘ADDON’][‘xform’][‘classpaths’][‘value’][] = rex_path::addonData(‘myaddon’, ‘xform/value/’);
$REX[‘ADDON’][‘xform’][‘classpaths’][‘validate’][] = rex_path::addonData(‘myaddon’, ‘xform/validate/’);
$REX[‘ADDON’][‘xform’][‘classpaths’][‘action’][] = rex_path::addonData(‘myaddon’, ‘xform/action/’);
});

Hinweis: Sofern man die identischen Klassennamen verwendet, kann man auch vorhandene Klassen, durch die eigene ersetzen.

Die eigenen XForm-Templates für die Formularverwaltung einbinden.

rex_register_extension(‘ADDONS_INCLUDED’, function () {
global $REX;
$REX[‘ADDON’][‘xform’][‘templatepaths’][] = rex_path::addonData(‘xform’, ‘templates/’);
}, array(), REX_EXTENSION_EARLY);

Man kann auch gezielt nur einzelne Templates ergänzen oder ersetzen, wenn man z.B. die selben Ordnernamen verwendet. (z.B. /templates/default/form.tpl.php) Sofern man eine eigene Skin einbindet (eigener neuer Ordnernamen), kann diese über den objparam definiert werden.

Clone this wiki locally