/** * Retorna lista dos bairros * * Aviso: * - Se o codigo da prefeitura for igual retorna parametro para mostrar campo texto * * @param string $municipio * @return JSON $aBairros[] */ public function getBairrosAction() { $iCodigoIbge = Administrativo_Model_Prefeitura::getDadosPrefeituraBase()->getIbge(); $iMunicipio = $this->_getParam('municipio', NULL); if ($iCodigoIbge == $iMunicipio) { $aBairros = Default_Model_Cadenderbairro::getBairros($iMunicipio); echo $this->getHelper('json')->sendJson($aBairros); } else { echo $this->getHelper('json')->sendJson(array('mostra_campo_texto' => TRUE)); } }
public function init() { $oBaseUrlHelper = new Zend_View_Helper_BaseUrl(); // pega codigo do IBGE do municipio no arquivo de configuracao $iCodigoIbge = Administrativo_Model_Prefeitura::getDadosPrefeituraBase()->getIbge(); $this->setAction($oBaseUrlHelper->baseUrl($this->sAction)); $this->setMethod(Zend_Form::METHOD_POST); $this->setAttrib('id', 'formTomador'); $oElm = $this->createElement('hidden', 'endereco_fora'); $oElm->setValue('1'); $this->addElement($oElm); $oElm = $this->createElement('text', 'z01_cgccpf'); $oElm->setLabel('CNPJ: '); $oElm->addValidator(new DBSeller_Validator_Cnpj()); $oElm->addValidator(new Zend_Validate_StringLength(array('min' => 14, 'max' => 18))); $oElm->addFilter(new Zend_Filter_Digits()); $oElm->setRequired(TRUE); $oElm->removeDecorator('errors'); $this->addElement($oElm); $oElm = $this->createElement('text', 'z01_nome'); $oElm->setLabel('Razão Social: '); $oElm->setRequired(TRUE); $oElm->removeDecorator('errors'); $this->addElement($oElm); $aEstados = Default_Model_Cadenderestado::getEstados('01058'); $oElm = $this->createElement('select', 'z01_uf', array('multiOptions' => $aEstados)); $oElm->setLabel('Estado: '); $oElm->setAttrib('class', 'select-estados'); $oElm->setAttrib('select-munic', 'z01_munic'); $oElm->setAttrib('ajax-url', '/endereco/get-municipios/'); $oElm->setAttrib('key', FALSE); $oElm->setRequired(TRUE); $oElm->addValidator(new Zend_Validate_Alpha()); $oElm->removeDecorator('errors'); $this->addElement($oElm); $oElm = $this->createElement('select', 'z01_munic'); $oElm->setLabel('Cidade: '); $oElm->setAttrib('key', TRUE); $oElm->setRequired(TRUE); $oElm->addValidator(new Zend_Validate_Digits()); $oElm->addValidator(new Zend_Validate_GreaterThan(array('min' => 0))); $oElm->removeDecorator('errors'); $this->addElement($oElm); $oElm = $this->createElement('text', 'z01_cep'); $oElm->setLabel('CEP: '); $oElm->setAttrib('maxlength', 8); $oElm->setRequired(TRUE); $oElm->addValidator(new Zend_Validate_Digits()); $oElm->addValidator(new Zend_Validate_StringLength(array('min' => 8))); $oElm->removeDecorator('errors'); $this->addElement($oElm); $aBairros = Default_Model_Cadenderbairro::getBairros(); $oElm = $this->createElement('select', 'z01_bairro_munic', array('multiOptions' => $aBairros)); $oElm->setLabel('Bairro: '); $oElm->setAttrib('municipio', $iCodigoIbge); $oElm->setRequired(TRUE); $oElm->addValidator(new Zend_Validate_Digits()); $oElm->addValidator(new Zend_Validate_GreaterThan(array('min' => 0))); $oElm->removeDecorator('errors'); $this->addElement($oElm); $aMunicipios = Default_Model_Cadenderrua::getRuas(); $oElm = $this->createElement('select', 'z01_ender_munic', array('multiOptions' => $aMunicipios)); $oElm->setLabel('Endereço: '); $oElm->setAttrib('municipio', $iCodigoIbge); $oElm->setRequired(TRUE); $oElm->addValidator(new Zend_Validate_Digits()); $oElm->addValidator(new Zend_Validate_GreaterThan(array('min' => 0))); $oElm->removeDecorator('errors'); $this->addElement($oElm); $oElm = $this->createElement('text', 'z01_bairro_fora'); $oElm->setLabel('Bairro: '); $oElm->setRequired(TRUE); $oElm->removeDecorator('errors'); $this->addElement($oElm); $oElm = $this->createElement('text', 'z01_ender_fora'); $oElm->setLabel('Endereço: '); $oElm->setRequired(TRUE); $oElm->removeDecorator('errors'); $this->addElement($oElm); $oElm = $this->createElement('text', 'z01_numero'); $oElm->setLabel('Número: '); $oElm->setRequired(TRUE); $oElm->removeDecorator('errors'); $this->addElement($oElm); $oElm = $this->createElement('text', 'z01_compl'); $oElm->setLabel('Complemento: '); $this->addElement($oElm); $oElm = $this->createElement('text', 'z01_telef'); $oElm->setLabel('Telefone: '); $oElm->addFilter(new Zend_Filter_Digits()); $this->addElement($oElm); $oElm = $this->createElement('text', 'z01_email'); $oElm->setLabel('Email: '); $oElm->setRequired(TRUE); $oElm->addValidator(new Zend_Validate_EmailAddress()); $oElm->removeDecorator('errors'); $this->addElement($oElm); if ($this->bSubmit) { $this->addElement(new Zend_Form_Element_Submit('Cadastrar', 'Cadastrar', array('label' => 'Criar'))); } return $this; }
/** * Carrega a lista de bairros no elemento, seta o bairro do elemento se informado * * @param integer $iIdMunicipio * @param integer $iIdBairro [opcional] */ public function carregarBairros($iIdMunicipio, $iIdBairro = NULL) { $iCodigoIbge = Administrativo_Model_Prefeitura::getDadosPrefeituraBase()->getIbge(); if ($iCodigoIbge == $iIdMunicipio) { $aBairros = Default_Model_Cadenderbairro::getBairros($iIdMunicipio); $this->cod_bairro->addMultiOptions($aBairros); } $this->cod_bairro->setValue($iIdBairro); }
public function preenche($aDados = NULL) { // Preenche campo cidade pelo estado if (isset($aDados['estado'])) { $aCidades = Default_Model_Cadendermunicipio::getByEstado($aDados['estado']); $elmCidade = $this->getElement('cidade'); if (is_array($aCidades)) { $elmCidade->setMultiOptions($aCidades); } } // Exibe/Oculta campos de bairro e endereco quando o codigo da cidade da prefeitura for igual ao escolhido $elmBairroTexto = $this->getElement('cod_bairro'); $elmBairroTexto->setAttrib('class', 'campo-oculto'); $elmEndTexto = $this->getElement('cod_endereco'); $elmEndTexto->setAttrib('class', 'campo-oculto'); // Classe "campo-oculto" no javascript // Codigo da cidade da prefeitura $iCodigoIbge = Administrativo_Model_Prefeitura::getDadosPrefeituraBase()->getIbge(); if (isset($aDados['cidade'])) { if ($iCodigoIbge == $aDados['cidade']) { $aDados['bairro'] = NULL; $elmBairroTexto = $this->getElement('bairro'); $elmBairroTexto->setAttrib('class', 'campo-oculto'); $elmBairroTexto->clearValidators(); $elmBairroTexto->setRequired(FALSE); $elmBairroCombo = $this->getElement('cod_bairro'); $elmBairroCombo->setAttrib('class', ''); $aBairros = Default_Model_Cadenderbairro::getBairros(); if (is_array($aBairros)) { $elmBairroCombo->setMultiOptions($aBairros); } $aDados['endereco'] = NULL; $elmEndTexto = $this->getElement('endereco'); $elmEndTexto->setAttrib('class', 'campo-oculto'); $elmEndTexto->clearValidators(); $elmEndTexto->setRequired(FALSE); $elmEndCombo = $this->getElement('cod_endereco'); $elmEndCombo->setAttrib('class', ''); $aEnderecos = Default_Model_Cadenderrua::getRuas(); if (is_array($aEnderecos)) { $elmEndCombo->setMultiOptions($aEnderecos); } } } $this->populate($aDados); return $this; }