/** * Přidá do action backlink, aby formulář i po odeslání věděl kam se má vrátit. * * @param Link|string * @return self */ public function setAction($url) { return parent::setAction(RequestButtonHelper::prepareAction($this, $url)); }
/** * Upraví formulář pro potřeby RequestButtonu. * Přidá do action backlink, aby formulář i po odeslání věděl kam se má vrátit. * Když je vráceno na určitý stav formuláře, nastaví mu data. * MUSÍ SE VOLAT PO přidání všech FormControlů do Formu a po připojení na Presenter. * MÍSTO VOLÁNÍ TÉTO FUNCKE SE MÚŽE POUŽÍT JAKO FORM RequestButtonReceiver * * @param AppForm * @see RequestButtonReceiver * */ public static function prepareForm(AppForm $form) { if (!$form instanceof RequestButtonReceiver) { if ($form->getPresenter(false)) { $form->setAction(RequestButtonHelper::prepareAction($form, $form->getAction())); $form->setValues(RequestButtonHelper::prepareHttpData($form, $form->getHttpData())); foreach ($form->getComponents(TRUE, 'RequestButton') as $rb) { $rb->formIsPrepared = true; } } else { throw new InvalidStateException("Form is not attached to Presenter."); } } }