The usage of preg_replace had two errors:
1) The regular expression was wrong
2) $matches[0] always contains the full matched string, not the first parenthesized subpattern
The correct version of preg_replace would've been:
if (preg_match('/^Icinga\\\\Module\\\\([A-Za-z]+)\\\\/', get_called_class(), $matches) === 1) {
return strtolower($matches[1]);
}
But since there's no benefit of using a regular expression here except less speed, I replaced it
with using explode.
refs #7551
If an element has a description, the description is now added to the element's label as title.
The CSS class has-feedback ensurers that the help icon is rendererd. If everything is working fine,
I'll the remove the super duper Help decorator.
This works by "disabling" hidden elements which causes the browser not
to submit them. Due to a bug in Zend we need to manually ensure that
Form::isValid does not overwrite the value of disabled elements with null.
fixes#7717
In case createElements() would still return the elements while requiring
the caller to add them to the form all form dependent configurations get
lost. (displaygroups, belongTo, ...) Wizards or parent forms can still
retrieve only input relevant fields by just calling createElements() and
getElements().
refs #5525
Replaced `ElementWrapper' and `HelpText' with Zend's `HtmlTag' and `Label' respectively.
Instances of Zend_Form_Element returned by `Form::createElements()' now receive our desired default decorators.
refs #5525
`Form::getName()' auto-detects the form's name if it's not set and sets the form's name using `Zend_Form::setName()'.
`Zend_Form::setName()' then filters the form name stripping backslash '\' characters. The first call to `Form::getName()'
did not regard the filtering and thus returned the unfiltered name which led to `Form::wasSent()' returning `false'.
refs #5525
This allows us to write generic forms like the ConfirmRemoval form but to
utilize handleRequest() while providing a closure in the array that is passed
to a form's constructor.
refs #5525
We require forms to set autosubmit=true on elements which are supposed
to be submitted automatically now. The base form then ensures that this
works in JS environments and non-JS environments as well by applying the
right changes to the HTML.
refs #5525
There is currently no usecase for onFailure() but for onShow() wherewith
the case is covered when a form needs to be prepared before showing it
to the user while the form was not submitted in any way.
refs #5525
This way concrete form implementations can also simply fetch form
dependent request values without referring to the form's submission
method.
refs #5525