public function init() { parent::init(); // initialize form $this->setName('editActionForm')->setAction('/projects/action/edit')->setMethod('post'); $id = new Zend_Form_Element_Hidden('id'); $id->addValidator('Int')->addFilter('StringTrim'); $this->addElement($id); $this->removeElement('submit'); $status = new Zend_Form_Element_Select('status'); $status->setLabel('Status'); $statusTypes = C3op_Projects_ActionStatusTypes::AllStatus(); while (list($key, $title) = each($statusTypes)) { $status->addMultiOption($key, $title); } $this->addElement($status); // create submit button $submit = new Zend_Form_Element_Submit('submit'); $submit->setLabel('Salvar')->setOptions(array('class' => 'submit')); $this->addElement($submit); }
private function populateRequirementForReceivingField($projectId, C3op_Form_ActionCreate $form, $setedReceivableId = 0) { $validator = new C3op_Util_ValidId(); if ($validator->isValid($projectId)) { $requirementForReceivingField = $form->getElement('requirementForReceiving'); if (!isset($this->projectMapper)) { $this->projectMapper = new C3op_Projects_ProjectMapper($this->db); } if (!isset($this->receivableMapper)) { $this->receivableMapper = new C3op_Projects_ReceivableMapper($this->db); } $theProject = $this->projectMapper->findById($projectId); $allReceivables = $this->projectMapper->getAllReceivables($theProject); while (list($key, $receivableId) = each($allReceivables)) { $eachReceivable = $this->receivableMapper->findById($receivableId); $requirementForReceivingField->addMultiOption($receivableId, $eachReceivable->GetTitle()); } $requirementForReceivingField->setValue($setedReceivableId); } else { throw new C3op_Projects_ActionException("Action needs a positive integer project id to find possible receivables to to be a requirement."); } }