setPluginLoader($loader, $type): $loader ist das
Plugin Loader Objekt selbst, während $type eine der oben spezifizierten
Typen ist. Das setzt den Plugin Loader für den gegebenen Typ auf das neu
spezifizierte Loader Objekt.
getPluginLoader($type): Empfängt den mit $type
assoziierten Plugin Loader.
addPrefixPath($prefix, $path, $type = null): Fügt eine Präfix/Pfad
Assoziation hinzu, Wenn $type null ist, wird versucht den Pfad zu
allen Loadern hinzuzufügen durch anhängen des Präfix von jedem "_Validate",
"_Filter", und "_Decorator"; und anhängen des Pfades an "Validate/", "Filter/",
und "Decorator/". Wenn alle extra Formular Elementklassen unter einer üblichen
Hirarchie stehen, ist das die bequemste Methode für das Setzen von grundsätzlichen
Präfixen.
addPrefixPaths(array $spec): Erlaubt es viele Pfade auf einmal zu
einem oder mehreren Plugin Loadern hinzuzufügen. Sie erwartet das jedes
Arrayelement ein Array mit den Sclüsseln 'path', 'prefix' und 'type' ist.
getValue() geholt
wird:
addPrefixPath() verwendet wird. Wenn man zum Beispiel eigene Filter
unter dem 'My_Filter' Präfix hat, kann getUnfilteredValue() Methode verwendet werden:
addFilter($nameOfFilter, array $options = null)
addFilters(array $filters)
setFilters(array $filters) (Überschreibt alle Filter)
getFilter($name) (Empfängt ein Filterobjekt durch seinen Namen)
getFilters() (Empfängt alle Filter)
removeFilter($name) (Entfernt einen Filter durch seinen Namen)
clearFilters() (Entfernt alle Filter)
addPrefixPath() verwendet wird. Wenn man zum Beispiel eigene Prüfungen
unter dem 'My_Validator' Präfix hat, kann addValidator() als Array übergeben werden:
$min und
$max Parametern:
$options
Argument erlaubt es das zu tun, indem der Schlüssel 'messages' angegeben wird und
ein Array mit Schlüssel/Wert Paaren genutzt wird für das Setzen der
Nachrichten Templates. Man muss die Fehlermeldungen der betreffenden Prüfung
für die verschiedenen Fehlertypen von Prüfungen kennen.
addValidators() verwendet wird. Die grundsätzliche Verwendung ist es ein
Array von Arrays zu übergeben, wobei jedes Array ein bis drei Werte enthält, die dem
Konstruktor von addValidator() entsprechen:
isValid() übergeben werden:
$context. $context, wenn
ein Formular geprüft wird und breakChainOnFailure
bei Ihrer Prüfung fehlschlägt. Man sollte sichergehen, dass Prüfungen in einer
begründeten Reihenfolge definiert werden.
setRequired(true) verwendet wird. Standardmäßig ist dieses Flag
isValid() übergeben wird. Dieses Verhalten kann auf verschiedene Weisen
geändert werden:
isValid() übergeben wird, die Prüfung übersprungen
wird. Dieses Flag kann gewechselt werden mit Hilfe der Zugriffsmethode
setAllowEmpty($flag); Wenn das Flag isValid() eine an oberster Stelle im Stack
platzieren. Das heißt, dass das Flag folgende semantische Bedeutung bekommt:
Wenn kein Wert übergeben wird, wird die Übertragung sofort ungülig und der
Benutzer wird informiert, was die anderen Prüfungen davon abhält, ausgeführt
zu werden, auf Daten, von denen wir bereits wissen, dass sie ungültig sind.
setAutoInsertNotEmptyValidator($flag)
ausgeschaltet werden; das verhindert, dass isValid() die 'NotEmpty'
Prüfung in der Prüfkette platziert.
setRequired($flag) und isRequired() erlauben es den
Status des 'required' Flag zu setzen und zu empfangen. Wenn der Wert auf
setAllowEmpty($flag) und getAllowEmpty() erlauben es
das Verhalten von optionalen Elementen (z.B. Elementen in denen das 'required'
Flag setAutoInsertNotEmptyValidator($flag) erlaubt es zu definieren ob
eine 'NotEmpty' Prüfung der Prüfkette vorangestellt wird wenn das Element
benötigt wird. Standardmäßig ist dieses Flag addValidator($nameOrValidator, $breakChainOnFailure = false, array $options =
null)
addValidators(array $validators)
setValidators(array $validators) (Überschreibt alle Prüfer)
getValidator($name) (Empfängt ein Prüfobjekt durch seinen Namen)
getValidators() (Empfängt alle Prüfer)
removeValidator($name) (Entfernt einen Prüfer durch seinen Namen)
clearValidators() (Entfernt alle Prüfer)
addErrorMessage($message): Fügt eine Fehlermeldung hinzu, die bei
Formular-Überprüfungs-Fehlern angezeigt wird. Sie kann mehr als einmal
aufgerufen werden, und neue Meldungen werden dem Stack angehängt.
addErrorMessages(array $messages): Fügt mehrere Fehlermeldungen
hinzu, die bei Formular-Überprüfungs-Fehlern angezeigt werden.
setErrorMessages(array $messages): Fügt mehrere Fehlermeldungen
hinzu, die bei Formular-Überprüfungs-Fehlern angezeigt werden, und überschreibt
alle vorher gesetzten Fehlermeldungen.
getErrorMessages(): Empfängt eine Liste von selbstdefinierten
Fehlermeldungen, die vorher definiert wurden.
clearErrorMessages(): Entfernt alle eigenen Fehlermeldungen, die
vorher definiert wurden.
markAsError(): Markiert das Element, wie, wenn die Überprüfung
fehlgeschlagen wäre.
hasErrors(): Erkennt, ob ein Element eine Überprüfung nicht
bestanden hat oder, ob es als ungültig markiert wurde.
addError($message): Fügt einen Fehler zum eigenen Stack der
Fehlermeldungen hinzu und markiert das Element als ungültig.
addErrors(array $messages): Fügt mehrere Nachrichten zum eigenen
Stack der Fehlermeldungen hinzu und markiert das Element als ungültig.
setErrors(array $messages): Überschreibt den eigenen Stack der
Fehlermeldungen mit den angegebenen Meldungen und markiert das Element als
ungültig.
Das ist etwas beschreibender Text betreffend dem Element.
addDecorator(), kann ein Array mit einem einzelnen Element übergeben
werden, mit dem Alias der auf das Dekoratorobjekt oder -namen zeigt:
addDecorators() und setDecorators() Methoden
muss die 'decorator' Option im Array übergeben werden, welche den Dekorator
repräsentiert:
addDecorator($nameOrDecorator, array $options = null)
addDecorators(array $decorators)
setDecorators(array $decorators) (Überschreibt alle Dekoratoren)
getDecorator($name) (Empfängt ein Dekoratorobjekt durch seinen Namen)
getDecorators() (Empfängt alle Dekoratoren)
removeDecorator($name) (Entfernt einen Dekorator durch seinen Namen)
clearDecorators() (Entfernt alle Dekoratoren)
__call() interagiert mit Methoden
auf mit dem Text 'render' anfangen und verwendet den Rest des Methodennamens dazu um
nach einen Dekorator zu suchen; wenn er gefunden wird, wird er diesen
render() Methode des Dekorators verwendet. Als Beispiel:
setName() und getName().
setLabel() und getLabel().
setOrder() und
getOrder().
setValue() und getValue().
setDescription() und getDescription().
setRequired() und getRequired(). Dieses
Flag ist standardmäßig setAllowEmpty() und getAllowEmpty().
Dieses Flag ist standardmäßig setAutoInsertNotEmptyValidator($flag) gesetzt und der Wert mit
autoInsertNotEmptyValidator() ermittelt werden.
setOptions(array $options)setConfig(Zend_Config $config)setTranslator(Zend_Translate_Adapter $translator = null)
getTranslator()setDisableTranslator($flag)translatorIsDisabled()setName($name)getName()setValue($value)getValue()getUnfilteredValue()setLabel($label)getLabel()setDescription($description)getDescription()setOrder($order)getOrder()setRequired($flag)getRequired()setAllowEmpty($flag)getAllowEmpty()setAutoInsertNotEmptyValidator($flag)
autoInsertNotEmptyValidator()setIgnore($flag)getIgnore()getType()setAttrib($name, $value)setAttribs(array $attribs)getAttrib($name)getAttribs()setPluginLoader(Zend_Loader_PluginLoader_Interface $loader,
$type)
getPluginLoader($type)addPrefixPath($prefix, $path, $type = null)addPrefixPaths(array $spec)addValidator($validator, $breakChainOnFailure = false, $options =
array())
addValidators(array $validators)setValidators(array $validators)getValidator($name)getValidators()removeValidator($name)clearValidators()isValid($value, $context = null)getErrors()getMessages()addFilter($filter, $options = array())addFilters(array $filters)setFilters(array $filters)getFilter($name)getFilters()removeFilter($name)clearFilters()setView(Zend_View_Interface $view = null)getView()addDecorator($decorator, $options = null)addDecorators(array $decorators)setDecorators(array $decorators)getDecorator($name)getDecorators()removeDecorator($name)clearDecorators()render(Zend_View_Interface $view = null)setOptions() oder
setConfig() konfiguriert werden. Generell, werden die Schlüssel wie folgt
benannt:
prefixPath wird an addPrefixPaths() übergeben
setAttrib (über setAttribs
setConfigsetOptionssetPluginLoadersetTranslatorsetViewinit(), was verwendet werden kannm um eine eigene Initialisierungs-Logik
zum Element hinzuzufügen, und loadDefaultDecorators(), was verwendet
werden kann um eine Liste von Standard Dekoratoren zu setzen, die vom Element
verwendet werden sollen.
StringTrim gefiltert werden müssen, mit einem gemeinsamen Regulären
Ausdruck und das ein eigener Dekorator 'My_Decorator_TextItem' verwendet werden soll,
der für die Darstellung von ihnen erstellt wurde; zusätzlich gibt es eine Anzahl an
Standardattributen, wie 'size', 'maxLength', und 'class', die spezifiziert werden
sollen. So ein Element könnte wie folgt definiert werden:
My_Element_Text sein, und dem beschriebenen
Verhalten entsprechen.
loadDefaultDecorators() Methode. Diese Methode lädt fallweise ein Set von
Standarddekoratoren für das Element; es kann gewünscht sein, eigene Dekoratoren in der
erweiterten Klasse zu verwenden: