/** * Erzeugt die Formularelemente. * * Die Informationen für den Link mit dem Dokument werden als Unterformular hinzugefügt. */ public function init() { parent::init(); $linkForm = new Admin_Form_PersonLink(); $linkForm->setLegend('admin_person_assign_document_options'); // Für neue Personen kann das Link-Formular noch keine ID haben $linkForm->getElement(Admin_Form_Person::ELEMENT_PERSON_ID)->setRequired(false); $this->addSubForm($linkForm, self::SUBFORM_DOCUMENT, 20); $next = $this->createElement('submit', self::ELEMENT_NEXT, array('decorators' => array('ViewHelper', array(array('liWrapper' => 'HtmlTag'), array('tag' => 'li', 'class' => 'save-element'))))); $this->getDisplayGroup('actions')->setElements(array($this->getElement(self::ELEMENT_SAVE), $next, $this->getElement(self::ELEMENT_CANCEL))); }
/** * Überschreibt setOrder damit das Feld 'SortOrder' auf den gleichen Wert + 1 gesetzt wird. * * Bei jedem POST werden die Personen in die richtige Reihenfolge gebracht, dadurch entspriche der Wert von * 'SortOrder' dem Wert von Order (0..n) der Unterformulare erhöht um Eins. * * @param int $order */ public function setOrder($order) { parent::setOrder($order); $this->getElement(self::ELEMENT_SORT_ORDER)->setValue($order + 1); }
public function testUpdateModelBadModel() { $form = new Admin_Form_PersonLink(); $logger = new MockLogger(); $form->setLog($logger); $form->updateModel($this->createTestDocument()); $messages = $logger->getMessages(); $this->assertEquals(1, count($messages)); $this->assertContains('not instance of', $messages[0]); }