public function indexAction() { $this->view->headTitle('Home'); $produtoModel = new Application_Model_Produto(); $busca = $this->_request->getParam('busca'); $produto = $produtoModel->fetchAll($produtoModel->select()->where('nome LIKE :busca')->where('promocao = 1')->where('excluido = 0')->bind(array('busca' => '%' . $busca . '%'))); $this->view->produtos = $produto; }
protected function validaPost() { $error = array(); $prodModel = new Application_Model_Produto($this->getRequest()->getParams()); if (!$prodModel->getLocal_id() || !is_numeric($prodModel->getLocal_id())) { $error['local_id'] = 'Por Favor Insira um local válido.'; } if (!$prodModel->getNome()) { $error['nome'] = 'Por Favor Insira um nome válido.'; } return $error; }
public function detalhesAction() { $categoriaModel = new Application_Model_Categoria(); $nome_categorias = $categoriaModel->fetchAll($categoriaModel->select()->from($categoriaModel->info(Zend_Db_Table_Abstract::NAME))->columns(array('nome_categoria'))); $this->view->categorias = $nome_categorias; $busca = $this->_request->getParam('id'); $produtoModel = new Application_Model_Produto(); $this->view->produto = $produtoModel->fetchAll($produtoModel->select()->where('id_produto = ?', $busca)->where('excluido = 0')); $ingredientes = array(); $ingredModel = new Application_Model_Relacionamentos(); $dados = $ingredModel->fetchAll($ingredModel->select()->where('excluido = 0')->where('id_produto = ?', $busca)); foreach ($dados as $chave => $valor) { $ingredientes[] = $dados[$chave]; } $this->view->ingredientes = $ingredientes; }
public function init() { $produtoModel = new Application_Model_Produto(); $produto = $produtoModel->fetchAll($produtoModel->select()->from($produtoModel->info(Zend_Db_Table_Abstract::NAME))->columns(array('id_produto', 'nome'))); $produtoArr = array(); foreach ($produto as $produto) { $produtoArr[$produto['id_produto']] = $produto['nome']; } $this->addElement('select', 'id_produto', array('label' => 'Produto: ', 'multiple' => false, 'multiOptions' => $produtoArr, 'registerInArrayValidator' => false)); $this->addElement('checkbox', 'opcional', array('label' => 'Opcional?', 'checkedValue' => 1, 'uncheckedValue' => 0)); $this->addElement('checkbox', 'adicional', array('label' => 'Adicional?', 'checkedValue' => 1, 'uncheckedValue' => 0)); $this->addElement('text', 'qtd_padrao', array('label' => 'Quantidade Padrão', 'required' => true)); $this->addElement('text', 'qtd_max', array('label' => 'Quantidade Máxima', 'required' => true)); $this->addElement('text', 'qtd_min', array('label' => 'Quantidade Mínima', 'required' => true)); $this->addElement('text', 'valor', array('label' => 'Valor', 'class' => 'campo-txt')); $this->addElement('submit', 'submit_button', array('label' => 'Salvar', 'ignore' => true)); }
public function init() { $produtoModel = new Application_Model_Produto(); $produtos = $produtoModel->fetchAll($produtoModel->select()->from($produtoModel->info(Zend_Db_Table_Abstract::NAME))->columns(array('id_produto', 'nome'))); $produtosArr = array(); $produtosArr[0] = 'nenhum'; foreach ($produtos as $produto) { $produtosArr[$produto['id_produto']] = $produto['nome']; } $this->addElement('select', 'id_produto1', array('label' => 'Produto 1: ', 'class' => 'campo-txt', 'multiple' => false, 'multiOptions' => $produtosArr, 'registerInArrayValidator' => false)); $this->addElement('select', 'id_produto2', array('label' => 'Produto 2: ', 'class' => 'campo-txt', 'multiple' => false, 'multiOptions' => $produtosArr, 'registerInArrayValidator' => false)); $this->addElement('select', 'id_produto3', array('label' => 'Produto 3: ', 'class' => 'campo-txt', 'multiple' => false, 'multiOptions' => $produtosArr, 'registerInArrayValidator' => false)); $this->addElement('select', 'id_produto4', array('label' => 'Produto 4: ', 'class' => 'campo-txt', 'multiple' => false, 'multiOptions' => $produtosArr, 'registerInArrayValidator' => false)); $this->addElement('select', 'id_produto5', array('label' => 'Produto 5: ', 'class' => 'campo-txt', 'multiple' => false, 'multiOptions' => $produtosArr, 'registerInArrayValidator' => false)); $this->addElement('text', 'preco', array('label' => 'Preço*', 'class' => 'campo-txt', 'required' => true)); $this->addElement('submit', 'submit_button', array('label' => 'Salvar', 'class' => 'bt-enviar', 'ignore' => true)); }
public function editarAction() { $id = $this->_request->getParam('id'); require_once APPLICATION_PATH . '/modules/admin/forms/Produto.php'; $this->view->form = new admin_Form_Produto(); $produtoModel = new Application_Model_Produto(); if ($this->_request->isPost()) { $upload = $this->view->form->pFoto->getTransferAdapter(); $upload->addValidator('Size', false, array('0kB', '2mB')); $upload->addValidator('Extension', false, array('gif', 'jpg', 'png')); $uploaded = false; if ($upload->isValid()) { if ($upload->receive()) { $uploaded = true; } } $this->view->form->setDefaults($this->_request->getPost()); $data = $this->view->form->getValues(); if ($this->view->form->isValid($data)) { unset($data['pFoto']); $data['preco'] = str_replace(array(',', '.'), '', $data['preco']); $produtoModel->update($data, 'id_produto = ' . $id); if ($uploaded) { $filter = new Zend_Filter_File_Rename(array('target' => APPLICATION_PATH . '/../public/img/produtos/' . $id . '.jpg', 'overwrite' => true)); $filter->filter($upload->getFileName()); Zend_Loader::loadClass('Imagem'); $Pasta = "img/produtos/"; $nomeArquivo = $id . '.jpg'; $Largura = '250'; $Altura = '250'; $MetodoRedimencionar = 2; $CorFundo = null; $Imagem = new Imagem($Pasta . $nomeArquivo); $Imagem->Ponteiro = ''; $Imagem->Redimencionar($Largura, $Altura, $MetodoRedimencionar, $CorFundo); $Imagem->Salvar($Pasta . $nomeArquivo); } return $this->_helper->redirector('index'); } } $produto = $produtoModel->find($id)->current(); $this->view->form->setDefaults($produto->toArray()); }
public function init() { $produtoModel = new Application_Model_Produto(); $produtos = $produtoModel->fetchAll($produtoModel->select()->from($produtoModel->info(Zend_Db_Table_Abstract::NAME))->columns(array('id_produto', 'nome'))->where('excluido = 0')->where('not categoria = "Combo"')); $produtosArr = array(); $produtosArr[0] = 'nenhum'; foreach ($produtos as $produto) { $produtosArr[$produto['id_produto']] = $produto['nome']; } $this->addElement('text', 'nome', array('label' => 'Nome*', 'class' => 'campo-txt', 'required' => true)); $this->addElement('file', 'pFoto', array('label' => 'Foto')); $this->addElement('select', 'id_produto1', array('label' => 'Produto 1: ', 'class' => 'campo-txt', 'multiple' => false, 'multiOptions' => $produtosArr, 'registerInArrayValidator' => false)); $this->addElement('select', 'id_produto2', array('label' => 'Produto 2: ', 'class' => 'campo-txt', 'multiple' => false, 'multiOptions' => $produtosArr, 'registerInArrayValidator' => false)); $this->addElement('select', 'id_produto3', array('label' => 'Produto 3: ', 'class' => 'campo-txt', 'multiple' => false, 'multiOptions' => $produtosArr, 'registerInArrayValidator' => false)); $this->addElement('select', 'id_produto4', array('label' => 'Produto 4: ', 'class' => 'campo-txt', 'multiple' => false, 'multiOptions' => $produtosArr, 'registerInArrayValidator' => false)); $this->addElement('select', 'id_produto5', array('label' => 'Produto 5: ', 'class' => 'campo-txt', 'multiple' => false, 'multiOptions' => $produtosArr, 'registerInArrayValidator' => false)); $validate = new Zend_Validate_Callback('validaPreco'); $validate->setMessage('Valor negativo!'); $this->addElement('text', 'preco', array('label' => 'Preço*', 'class' => 'campo-txt', 'required' => true, 'validators' => array($validate))); $this->addElement('submit', 'submit_button', array('label' => 'Salvar', 'class' => 'bt-enviar', 'ignore' => true)); }
public function cadastrarAction() { $local = new Application_Model_DbTable_Local(); $this->view->locals = $local->fetchAll(null, 'nome asc'); if ($this->getRequest()->isPost()) { $error = array(); $prodModel = new Application_Model_Produto($this->getRequest()->getParams()); if (!$prodModel->getLocal_id()) { $error['local_id'] = 'Por Favor Insira um local válido.'; } if (!$prodModel->getNome()) { $error['nome'] = 'Por Favor Insira um nome válido.'; } if (count($error) > 0) { $this->view->msg = "Cadastro não realizado"; $this->view->errors = $error; return; } $proDB = new Application_Model_DbTable_Produto(); $proDB->insert($prodModel->__toArray()); $this->view->msg = "Produto Cadastrado com sucesso."; $this->renderScript('produto/salvar.phtml'); } }
public function principalAction() { $modelProduto = new Application_Model_Produto(); $this->view->produtos = $modelProduto->listar(); }
public function detalhesAction() { $busca = $this->_request->getParam('id'); $produtoModel = new Application_Model_Produto(); $this->view->produto = $produtoModel->fetchAll($produtoModel->select()->where('id_produto LIKE :busca')->where('excluido = 0')->bind(array('busca' => '%' . $busca . '%'))); }
public function listaCarrinho() { try { // Pega id dos produtos na sessão foreach ($_SESSION['carrinho'] as $key => $value) { $where .= $key . ','; } $where = explode(',', $where); // seleciona dados do produto $produto = new Application_Model_Produto(); $dados = $produto->listar($where); // Completo array de produtos com quanidade de itens e preço total por item foreach ($dados as $key => $prod) { foreach ($_SESSION['carrinho'] as $key2 => $value) { if ($key2 == $prod['cod_produto']) { $dados[$key]['quantidade'] = $value['qtd']; $dados[$key]['preco_total'] = $prod['preco'] * $value['qtd']; } } } return $dados; } catch (Exception $ex) { throw new Exception($ex->getMessage()); } }