/** * Monta o formulário de cadastro de perfis * * @param string $sAction * @param null $iId * @param array $values * @return Twitter_Bootstrap_Form_Horizontal */ private function formPerfil($sAction = 'novo', $iId = null, $values = array()) { $oForm = new Twitter_Bootstrap_Form_Horizontal(); $oBaseUrlHelper = new Zend_View_Helper_BaseUrl(); if ($iId !== NULL) { $sAction .= "/id/{$iId}"; } $oForm->setAction($oBaseUrlHelper->baseUrl('/administrativo/perfil/' . $sAction))->setMethod('post'); if ($iId !== NULL) { $oElm = $oForm->createElement('hidden', 'id'); $oElm->setValue($iId); $oForm->addElement($oElm); } $aTipos = Administrativo_Model_TipoUsuario::getLista(); $oElm = $oForm->createElement('select', 'tipo', array('multiOptions' => $aTipos)); $oElm->setLabel('Tipo:'); $oElm->setAttrib('ajax-url', $oBaseUrlHelper->baseUrl('/administrativo/usuario/get-contadores')); $oElm->setRequired(TRUE); if (isset($values['tipo'])) { $oElm->setValue($values['tipo']); } $oForm->addElement($oElm); $oElm = $oForm->createElement('text', 'nome'); $oElm->setLabel('Nome'); $oElm->setRequired(); if (isset($values['nome'])) { $oElm->setValue($values['nome']); } $oForm->addElement($oElm); $oElm = $oForm->createElement('select', 'administrativo', array('multiOptions' => array('1' => 'Sim', '0' => 'Não'))); $oElm->setLabel('Administrativo'); if (isset($values['administrativo']) and $values['administrativo'] == true) { $oElm->setValue('1'); } else { $oElm->setValue('0'); } $oForm->addElement($oElm); $oForm->addElement('submit', 'submit', array('label' => 'Salvar', 'buttonType' => Twitter_Bootstrap_Form_Element_Submit::BUTTON_SUCCESS)); return $oForm; }
/** * Sobrescreve o método para setar a action com a url base do sistema * * (non-PHPdoc) * @see Zend_Form::setAction() */ public function setAction($sUrl = NULL) { parent::setAction(self::$oBaseUrlHelper->baseUrl($sUrl)); }