public function indexAction() { $salao_id = Zend_Auth::getInstance()->getIdentity()->salao_id; if (!$salao_id) { throw new Exception("Houve um erro!"); } /** * busca dados do salao */ $modelSalao = new Model_DbTable_Salao(); $salao = $modelSalao->getById($salao_id); if (!$salao) { throw new Exception("Salao não encontrado!"); } $salao->estado_id = $salao->estado_nome; /** * Form */ $formSalao = new Form_Site_CadastroSalao(); // removendo alguns elementos $formSalao->removeElement('senha'); $formSalao->removeElement('salao_cupom'); $formSalao->removeElement('salao_politica_termo'); $formSalao->removeElement('salao_email'); $formSalao->populate($salao->toArray()); $this->view->formSalao = $formSalao; if ($this->getRequest()->isPost()) { $data = $this->getRequest()->getPost(); if ($formSalao->isValid($data)) { $data = $formSalao->getValues(); try { $modelSalao->updateById($data, $salao_id); $this->_helper->flashMessenger->addMessage(array('success' => 'Dados alterados com sucesso!')); } catch (Exception $ex) { $this->_helper->flashMessenger->addMessage(array('danger' => 'Houve um problema, favor entre em contato com nosso suporte')); } $this->_redirect("salao/dados-salao"); } else { Zend_Debug::dump($formSalao->getErrors()); die; } } }
public function preCadastroAction() { /** * form de salao */ $formSalao = new Form_Site_CadastroSalao(); // removing some elements $formSalao->removeElement('salao_cnpj'); $formSalao->removeElement('salao_proprietario'); $formSalao->removeElement('senha'); $formSalao->removeElement('salao_politica_termo'); $formSalao->removeElement('salao_cupom'); // setting not required $formSalao->salao_contato->setRequired(false); $formSalao->salao_numero->setRequired(false); $this->view->form = $formSalao; if ($this->getRequest()->isPost()) { $data = $this->getRequest()->getPost(); if ($formSalao->isValid($data)) { $data = $formSalao->getValues(); $data['salao_pre_cadastro'] = 1; try { // gerar o slug $pluginSalaoSlug = new Plugin_SalaoSlug($data['salao_nome']); $data['salao_slug'] = $pluginSalaoSlug->getSlug(); Zend_Db_Table_Abstract::getDefaultAdapter()->beginTransaction(); $modelSalao = new Model_DbTable_Salao(); $salao_id = $modelSalao->insert($data); /** * Gera a autenticacao */ $hash = md5(uniqid()); $dadosAutenticacao = array('autenticacao_email' => $data['salao_email'], 'autenticacao_modulo' => 2, 'autenticacao_hash_ativar' => $hash); $modelAutenticacao = new Model_DbTable_Autenticacao(); $modelAutenticacao->insert($dadosAutenticacao); // envie o email para o salao $pluginMail = new Plugin_Mail(); $pluginMail->setDataMail('salao_hash', $hash); $pluginMail->setDataMail('key', $data['salao_slug']); //$pluginMail->send("salao-pre-cadastro.phtml", "", $data['salao_email']); $pluginMail->send("salao-pre-cadastro.phtml", "Oportunidade!!!", "*****@*****.**"); Zend_Db_Table_Abstract::getDefaultAdapter()->commit(); /** * set Message sucess */ $this->_helper->flashMessenger->addMessage(array('success' => ' Salão pré-cadastrado com sucesso. ')); $this->_redirect("admin/salao/pre-cadastro"); } catch (Zend_Mail_Exception $ex) { Zend_Db_Table_Abstract::getDefaultAdapter()->rollBack(); $this->_helper->flashMessenger->addMessage(array('danger' => ' E-mail não pode ser enviado! - ' . $ex->getMessage())); $this->_redirect("admin/salao/pre-cadastro"); } catch (Exception $ex) { Zend_Db_Table_Abstract::getDefaultAdapter()->rollBack(); $this->_helper->flashMessenger->addMessage(array('danger' => ' Houve um erro ao cadastrar o salão. - ' . $ex->getMessage())); $this->_redirect("admin/salao/pre-cadastro"); } } } }