Example #1
0
 /**
  * Função chamada quando entrar no módulo (lista os registros)
  */
 function listar()
 {
     // Aplica um ORDER BY na listagem
     $this->ordens = array('nome ASC');
     // Define as colunas da tabela de listagem (Default já tem ID, Ativo, Ações)
     $this->colunas = array(array('descricao' => 'Nome', 'coluna' => 'nome', 'coluna_filtravel' => false, 'tipo' => 'string'), array('descricao' => 'Sigla', 'coluna' => 'sigla', 'tipo' => 'string'), array('descricao' => 'País', 'coluna' => 'pais', 'coluna_sql' => "COALESCE((SELECT nome FROM site_paises WHERE id = site_estados.pais_id),'-')", 'coluna_filtravel' => true, 'tamanho' => 45));
     parent::listar($dados);
 }
Example #2
0
 /**
  * Função chamada quando entrar no módulo (lista os registros)
  */
 function listar()
 {
     // Aplica um ORDER BY na listagem
     $this->ordens = array('nome ASC');
     // Define as colunas da tabela de listagem (Default já tem ID, Ativo, Ações)
     $this->colunas = array(array('descricao' => 'Nome', 'coluna' => 'nome', 'coluna_filtravel' => false, 'tipo' => 'string'), array('descricao' => 'Sigla', 'coluna' => 'sigla', 'tipo' => 'string'));
     parent::listar($dados);
 }
Example #3
0
 function listar($pagina_atual = 1)
 {
     // Define a página que está
     $this->pagina_atual = $pagina_atual;
     // ORDER BY titulo
     $this->ordens = array('titulo ASC');
     // Define as colunas da tabela de listagem (Default já tem ID, Ativo, Ações)
     $this->colunas = array(array('descricao' => 'Título', 'coluna' => 'titulo', 'coluna_filtravel' => true, 'tipo' => 'string'));
     parent::listar();
 }
Example #4
0
 /**
  * Função chamada quando entrar no módulo (lista os registros)
  */
 function listar($pagina_atual = 1)
 {
     // Define a página que está
     $this->pagina_atual = $pagina_atual;
     // Ordenar por ID decrescente
     $this->ordens = array('id DESC');
     // Define as colunas da tabela de listagem (Default já tem ID, Ativo, Ações)
     $this->colunas = array(array('descricao' => 'Tabela', 'coluna' => 'tabela', 'coluna_filtravel' => true), array('descricao' => 'Campo', 'coluna' => 'campo', 'coluna_filtravel' => true), array('descricao' => 'Registro (ID)', 'coluna' => 'id_registro', 'coluna_filtravel' => true), array('descricao' => 'Data', 'coluna' => 'data_hora', 'coluna_sql' => 'data_hora', 'sql' => "TO_CHAR(data_hora, 'DD/MM/YYYY HH24:MI:SS')", 'tipo' => 'date', 'coluna_filtravel' => true), array('descricao' => 'Usuário', 'coluna' => 'usuario', 'coluna_sql' => 'usuario_id', 'sql' => "(SELECT nome FROM cms_usuarios WHERE usuario_id = cms_usuarios.id) || '(' || usuario_id || ')'"));
     parent::listar();
 }
Example #5
0
 /**
  * Função chamada quando entrar no módulo (lista os registros)
  */
 function listar($pagina_atual = 1)
 {
     // Define a página que está
     $this->pagina_atual = $pagina_atual;
     // Remove o template default (id = 0) e filtra pelos templates do site
     $this->where = array('site_id = ' . $this->site_id);
     // Aplica um ORDER BY na listagem
     $this->ordens = array('titulo ASC');
     // Define as colunas da tabela de listagem (Default já tem ID, Ativo, Ações)
     $this->colunas = array(array('descricao' => 'Título', 'coluna' => 'titulo', 'coluna_filtravel' => true, 'tipo' => 'string'));
     parent::listar();
 }
Example #6
0
 function listar($pagina_atual = 1)
 {
     // Define a página que está
     $this->pagina_atual = $pagina_atual;
     // Where default
     $this->where = array('site_id = ' . $this->site_id);
     // Aplica um ORDER BY na listagem
     $this->ordens = array('titulo ASC');
     // Define as colunas da tabela de listagem (Default já tem ID, Ativo, Ações)
     $this->colunas = array(array('descricao' => 'Título', 'tamanho' => null, 'coluna' => 'titulo', 'coluna_filtravel' => true, 'tipo' => 'string'));
     //retira campo ativo da busca
     unset($this->colunas_default[parent::COLUNA_ATIVO]);
     parent::listar();
 }
Example #7
0
 function remover($id)
 {
     $ok = $this->Componentes_model->remover_paginas($id);
     return parent::remover($id);
 }
Example #8
0
 function ver_estoque($id = null)
 {
     // Array de dados para a view
     $dados = array();
     // Carrega a model
     $this->load->model('Produtos_model');
     // Define a tabela principal deste módulo
     $this->table_name = 'site_produtos_estoque';
     $this->Default_model->set_table_name($this->table_name);
     // Se tem código
     if ((int) $id > 0) {
         // Obtém os dados do produto
         $produto = $this->Produtos_model->obter($id);
         if (!$produto['id']) {
             // Volta para a listagem
             redirect('site/produtos');
         }
     } else {
         // Volta para a listagem
         redirect('site/produtos');
     }
     // Define botoes extra antes da busca
     $this->botoes = array(array('titulo' => '<i class="fa fa-search"></i> Voltar para produtos', 'atributos_html' => array('class' => 'btn btn-primary', 'title' => 'Voltar para produtos', 'style' => 'float:right;', 'href' => base_url('site/produtos/listar'))));
     // Desabilita coluna ordem, busca, paginacao, ordenação, bt inserir, ...
     $this->exibir_coluna_ordem = false;
     $this->desabilitar_buscar = true;
     $this->desabilitar_paginacao = true;
     $this->desabilitar_ordenacao = true;
     $this->desabilitar_inserir = true;
     $this->titulo = 'Ver estoque';
     $this->colunas_default = array();
     // Aplica um WHERE na listagem
     if ($produto['tipo_id'] == '2') {
         $this->where = array('produto_id IN (SELECT componente_id
                                                FROM site_produtos_kits
                                               WHERE produto_id = ' . $id . ')');
     } else {
         $this->where = array('produto_id = ' . $id);
     }
     // Aplica um ORDER BY na listagem
     $this->ordens = array('data_hora DESC');
     // Define as colunas da tabela de listagem (Default já tem ID, Ativo, Ações)
     $this->colunas = array(array('descricao' => 'Código', 'coluna' => 'produto_id'), array('descricao' => 'Produto', 'coluna' => 'produto', 'coluna_sql' => '(SELECT titulo FROM site_produtos WHERE id = site_produtos_estoque.produto_id)'), array('descricao' => 'Quantidade', 'coluna' => 'quantidade'), array('descricao' => 'Observação', 'coluna' => 'obs'), array('descricao' => 'Data/hora', 'coluna' => "DATE_FORMAT(data_hora, '%d/%m/%Y %H:%i:%s')"));
     $dados = array();
     $dados['function'] = 'ver_estoque';
     $dados['pagina_atual'] = $dados['pagina_atual'] ? $dados['pagina_atual'] : $_POST['pagina_atual'];
     // $dados ou $_POST
     $dados['pagina_atual'] = $dados['pagina_atual'] ? $dados['pagina_atual'] : $this->uri->segment(5);
     // $dados ou URI
     $dados['pagina_atual'] = $dados['pagina_atual'] ? $dados['pagina_atual'] : 1;
     // $dados ou 1
     parent::listar($dados);
     $total_estoque = $this->Produtos_model->obter_estoque($id);
     $html .= '<div class="row text-center">';
     $html .= 'Estoque atual: <b>' . $total_estoque . '</b>.';
     $html .= '</div>';
     $dados = array();
     $dados['html'] = $html;
     $this->load->view('html', $dados);
 }
Example #9
0
 /**
  * Remove um agenda
  * @param $id Código do agenda
  */
 function remover($id)
 {
     parent::remover($id);
     redirect('site/agenda');
 }
Example #10
0
 function ajax_set_parent()
 {
     // Aplica um WHERE na listagem
     $this->where = array();
     $this->where[] = 'parent_id IS NULL';
     $this->where[] = 'site_id = ' . $this->session->userdata('site_id');
     $this->where[] = "ativo = '1'";
     $this->tem_hierarquia = true;
     // Aplica um ORDER BY na listagem
     $this->ordens = array('titulo ASC');
     // Define as colunas da tabela de listagem (Default já tem ID, Ativo, Ações)
     $this->colunas = array(array('descricao' => 'Título', 'coluna' => 'titulo', 'coluna_sql' => 'titulo', 'sql' => "titulo || '<br><small>' || url || '</small>'", 'coluna_filtravel' => true, 'tipo' => 'string', 'link' => true));
     unset($this->colunas_default[self::COLUNA_ORDEM]);
     unset($this->colunas_default[self::COLUNA_ATIVO]);
     unset($this->colunas_default[self::COLUNA_ACOES]);
     $this->view = 'paginas_selecao_pagina_pai';
     $this->view_linha = 'paginas_selecao_pagina_pai_linha';
     parent::listar();
 }
Example #11
0
 /**
  * Função que lista as categorias
  *
  * @param integer $pagina_atual - Número da página (na listagem)
  */
 function listar_categorias()
 {
     // Define botoes extra antes da busca
     $this->botoes = array(array('titulo' => 'Voltar para notícias', 'atributos_html' => array('class' => 'button search', 'title' => 'Alterar notícias', 'style' => 'float:right;', 'href' => site_url(($this->module ? $this->module : '') . '/' . $this->controller . '/listar'))));
     // Troca para _categorias
     $this->table_name = 'cms_noticias_categorias';
     $this->Noticias_model->set_table_name($this->table_name);
     unset($this->colunas_default[parent::COLUNA_ATIVO]);
     $this->desabilitar_paginacao = true;
     $this->desabilitar_buscar = true;
     $this->desabilitar_ordenacao = true;
     $this->funcao_inserir = 'inserir_categoria';
     $this->funcao_editar = 'editar_categoria';
     $this->funcao_remover = 'remover_categoria';
     $this->acoes[self::ACAO_EDITAR]['acao'] = $this->funcao_editar;
     $this->acoes[self::ACAO_REMOVER]['acao'] = $this->funcao_remover;
     $this->registros = $this->Noticias_model->listar_categorias(true);
     // Aplica um ORDER BY na listagem
     $this->ordens = array('titulo ASC');
     // Define as colunas da tabela de listagem (Default já tem ID, Ativo, Ações)
     $this->colunas = array(array('descricao' => 'Título', 'coluna' => 'titulo', 'coluna_filtravel' => true, 'tipo' => 'string'), array('descricao' => 'Categoria pai', 'coluna' => 'categoria_pai'));
     parent::listar();
 }
Example #12
0
 function remover($enquete_id)
 {
     $this->Enquetes_model->remover($enquete_id);
     parent::remover();
 }
Example #13
0
 function remover($id)
 {
     $this->Modulos_model->remover($id);
     parent::remover($id);
 }
Example #14
0
 function remover($id)
 {
     $banner = $this->Banners_model->obter($id);
     // Apaga o arquivo
     $ok = true;
     if (is_file($this->path . $banner['img_banner'])) {
         $ok = unlink($this->path . $banner['img_banner']);
     }
     if ($ok) {
         return parent::remover($id);
     } else {
         $dados = array();
         $dados['banner'] = $banner;
         $dados['categorias'] = $this->Banners_model->listar_categorias($this->site_id);
         $dados['path'] = $this->path;
         $dados['erros'][] = 'Desculpe, mas não foi possível remover o registo.';
         $this->load->view('banners_editar', $dados);
     }
 }
Example #15
0
 public function __construct()
 {
     parent::__construct();
 }
Example #16
0
 function editar($id = NULL)
 {
     // Array de dados para a view
     $dados = array();
     // Carrega a model
     $this->load->model('Funcionarios_model');
     if ((int) $id > 0) {
         $dados['registro'] = $funcionario = $funcionario_old = $this->Funcionarios_model->obter($id);
     }
     // Obtém os dados
     if ($this->input->post('submit')) {
         // se tem post, obtém do formulário
         $dados = $this->input->post();
         $funcionario = $dados['registro'];
     }
     // Se tem post, salva os dados
     if ($this->input->post('submit')) {
         $this->form_validation->set_rules('registro[nome]', 'Nome', 'trim|required');
         $this->form_validation->set_rules('registro[telefone]', 'Telefone', 'trim|required');
         $this->form_validation->set_rules('registro[usuario]', 'Usuário', 'trim|required');
         if ($this->form_validation->run()) {
             // Converte tudo pra maiusculo
             foreach ($dados['registro'] as $k => $valor) {
                 if ($k != 'senha') {
                     $dados['registro'][$k] = strtoupper($valor);
                 }
             }
             $funcionario = $dados['registro'];
             // Se digitou senha, MD5
             if (strlen($funcionario['senha']) > 0) {
                 $funcionario['senha'] = md5($funcionario['senha']);
             } else {
                 unset($funcionario['senha']);
             }
             // Se não tem usuário
             if (strlen($funcionario_old['usuario_id']) == 0) {
                 if (!$funcionario['senha']) {
                     // Sem senha não permite
                     $dados['erro'] = 'Você deve informar uma senha!';
                 }
             }
             // Sem erro, segue o baile
             if (strlen($dados['erro']) == 0) {
                 //cria o usuario
                 $usuario = array();
                 if ($funcionario_old['usuario_id']) {
                     $usuario['id'] = $funcionario_old['usuario_id'];
                 }
                 $usuario['nome'] = $funcionario['nome'];
                 $usuario['email'] = $funcionario['email'];
                 $usuario['usuario'] = $funcionario['usuario'];
                 if ($funcionario['senha']) {
                     $usuario['senha'] = $funcionario['senha'];
                 }
                 $usuario_id = $this->Usuarios_model->salvar($usuario);
                 if ($usuario_id) {
                     // Permissoes padrao
                     $permissoes_padrao = $this->Modulos_model->listar(array('where' => array("padrao = '1'")));
                     foreach ($permissoes_padrao as $perm) {
                         // Remove a permissão
                         $this->Usuarios_model->remover_permissao($usuario_id, $perm['id']);
                         // Adiciona a permissão
                         $this->Usuarios_model->adicionar_permissao($usuario_id, $this->site_id, $perm['id']);
                     }
                     $funcionario['usuario_id'] = $usuario_id;
                     unset($funcionario['usuario']);
                     unset($funcionario['senha']);
                     // Compatibilização
                     $funcionario['diaria'] = str_replace(',', '.', $funcionario['diaria']);
                     $funcionario['comissao'] = str_replace(',', '.', $funcionario['comissao']);
                     $id = $this->Funcionarios_model->salvar($funcionario);
                     if ($id) {
                         redirect('site/funcionarios');
                     } else {
                         $dados['erro'] = 'Falha ao criar funcionário.';
                     }
                 } else {
                     $dados['erro'] = 'Falha ao criar usuário.';
                 }
             }
         } else {
             $dados['erro'] = validation_errors();
         }
     }
     // Cidades
     $cidades = $this->Cidades_model->listar();
     $dados['cidades'] = array();
     foreach ($cidades as $cidade) {
         $dados['cidades'][$cidade['id']] = $cidade['nome'];
     }
     // Compatibilização
     $dados['funcionario']['diaria'] = str_replace('.', ',', $dados['funcionario']['diaria']);
     $dados['funcionario']['comissao'] = str_replace('.', ',', $dados['funcionario']['comissao']);
     // Definição dos campos
     $campos = array();
     // Codigo
     $campo = array();
     $campo['id'] = 'id';
     $campo['name'] = 'registro[id]';
     $campo['tamanho'] = 2;
     $campo['type'] = 'text';
     $campo['label'] = 'Código';
     $campo['placeholder'] = 'Código do funcionario';
     $campo['value'] = $dados['registro']['id'];
     if ((int) $dados['registro']['id'] == 0) {
         $campo['attrs'] = 'readonly';
     }
     $campos[] = $campo;
     // Nome
     $campo = array();
     $campo['id'] = 'nome';
     $campo['name'] = 'registro[nome]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'Nome';
     $campo['placeholder'] = 'Nome do funcionário';
     $campo['value'] = $dados['registro']['nome'];
     $campo['required'] = true;
     $campos[] = $campo;
     // E-Mail
     $campo = array();
     $campo['id'] = 'email';
     $campo['name'] = 'registro[email]';
     $campo['tamanho'] = 4;
     $campo['type'] = 'text';
     $campo['label'] = 'E-Mail';
     $campo['placeholder'] = 'E-Mail do funcionário';
     $campo['value'] = $dados['registro']['email'];
     $campo['required'] = true;
     $campos[] = $campo;
     // RG
     $campo = array();
     $campo['id'] = 'rg';
     $campo['name'] = 'registro[rg]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'RG';
     $campo['placeholder'] = 'RG do funcionário';
     $campo['value'] = $dados['registro']['rg'];
     $campo['required'] = true;
     $campos[] = $campo;
     // CPF
     $campo = array();
     $campo['id'] = 'cpf';
     $campo['name'] = 'registro[cpf]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'CPF';
     $campo['placeholder'] = 'CPF do funcionário';
     $campo['value'] = $dados['registro']['cpf'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Data de nascimento
     $campo = array();
     $campo['id'] = 'data_nascimento';
     $campo['name'] = 'registro[data_nascimento]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'date';
     $campo['label'] = 'Data de Nascimento';
     $campo['placeholder'] = 'Data de nascimento do funcionário';
     $campo['value'] = $dados['registro']['data_nascimento'];
     $campos[] = $campo;
     // Telefone do funcionario
     $campo = array();
     $campo['id'] = 'telefone';
     $campo['name'] = 'registro[telefone]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'Telefone';
     $campo['placeholder'] = 'Telefone do funcionário';
     $campo['value'] = $dados['registro']['telefone'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Telefone secundario do funcionario
     $campo = array();
     $campo['id'] = 'telefone2';
     $campo['name'] = 'registro[telefone2]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'Telefone 2';
     $campo['placeholder'] = 'Telefone secundário do funcionário';
     $campo['value'] = $dados['registro']['telefone2'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Cidades
     $campo = array();
     $cidades = $this->Cidades_model->listar();
     $dados['cidades'] = array();
     foreach ($cidades as $cidade) {
         $dados['cidades'][$cidade['id']] = $cidade['nome'];
     }
     $campo['id'] = 'cidade_id';
     $campo['name'] = 'registro[cidade_id]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'dropdown';
     $campo['label'] = 'Cidade';
     $campo['placeholder'] = 'Cidade do funcionário';
     $campo['value'] = $dados['registro']['cidade_id'];
     $campo['options'] = $dados['cidades'];
     $campo['required'] = true;
     $campos[] = $campo;
     // CEP do funcionario
     $campo = array();
     $campo['id'] = 'cep';
     $campo['name'] = 'registro[cep]';
     $campo['tamanho'] = 2;
     $campo['type'] = 'text';
     $campo['label'] = 'CEP';
     $campo['placeholder'] = 'CEP funcionário';
     $campo['value'] = $dados['registro']['cep'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Bairro do funcionario
     $campo = array();
     $campo['id'] = 'bairro';
     $campo['name'] = 'registro[bairro]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'Bairro';
     $campo['placeholder'] = 'Bairro do funcionário';
     $campo['value'] = $dados['registro']['bairro'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Endereço do funcionario
     $campo = array();
     $campo['id'] = 'endereco';
     $campo['name'] = 'registro[endereco]';
     $campo['tamanho'] = 4;
     $campo['type'] = 'text';
     $campo['label'] = 'Endereço';
     $campo['placeholder'] = 'Endereço do funcionário';
     $campo['value'] = $dados['registro']['endereco'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Número do endereço do funcionario
     $campo = array();
     $campo['id'] = 'numero';
     $campo['name'] = 'registro[numero]';
     $campo['tamanho'] = 2;
     $campo['type'] = 'text';
     $campo['label'] = 'Número';
     $campo['placeholder'] = 'Número do endereço do funcionário';
     $campo['value'] = $dados['registro']['numero'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Complemento do endereço do funcionario
     $campo = array();
     $campo['id'] = 'complemento';
     $campo['name'] = 'registro[complemento]';
     $campo['tamanho'] = 6;
     $campo['type'] = 'text';
     $campo['label'] = 'Complemento';
     $campo['placeholder'] = 'Compemento do endereço do funcionário';
     $campo['value'] = $dados['registro']['complemento'];
     $campos[] = $campo;
     // Valor da diária
     $campo = array();
     $campo['id'] = 'diaria';
     $campo['name'] = 'registro[diaria]';
     $campo['tamanho'] = 2;
     $campo['type'] = 'number';
     $campo['label'] = 'Diária';
     $campo['placeholder'] = 'Valor da diaria do funcionário';
     $campo['value'] = $dados['registro']['diaria'];
     $campo['attrs'] = 'pattern="^\\d+(\\.|\\,)\\d{2}$" step="any"';
     $campo['required'] = true;
     $campo['pre'] = '<span class="input-group-addon">R$</span>';
     $campos[] = $campo;
     // Comissão
     $campo = array();
     $campo['id'] = 'comissao';
     $campo['name'] = 'registro[comissao]';
     $campo['tamanho'] = 2;
     $campo['type'] = 'number';
     $campo['label'] = 'Comissão';
     $campo['placeholder'] = 'Comissão do funcionário';
     $campo['value'] = $dados['registro']['comissao'];
     $campo['attrs'] = 'pattern="^\\d+(\\.|\\,)\\d{2}$" step="any"';
     $campo['required'] = true;
     $campo['pos'] = '<span class="input-group-addon">%</span>';
     $campos[] = $campo;
     // Nome de usuário
     $campo = array();
     $campo['id'] = 'usuario';
     $campo['name'] = 'registro[usuario]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'Usuário';
     $campo['placeholder'] = 'Nome de usuário funcionário';
     $campo['value'] = $dados['registro']['usuario'];
     $campo['required'] = true;
     $campo['attrs'] = 'autocomplete="off"';
     $campos[] = $campo;
     // Senha
     $campo = array();
     $campo['id'] = 'senha';
     $campo['name'] = 'registro[senha]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'password';
     $campo['label'] = 'Senha';
     $campo['placeholder'] = 'Senha do funcionário';
     $campo['required'] = true;
     $campo['attrs'] = 'autocomplete="off"';
     $campos[] = $campo;
     // Campos do formulário
     $dados['campos'] = $campos;
     parent::load_view($dados);
 }
Example #17
0
 function editar($id = NULL)
 {
     // Array de dados para a view
     $dados = array();
     // Carrega a model
     if ((int) $id > 0) {
         $dados['registro'] = $usuario = $usuario_old = $this->Usuarios_model->obter($id);
     }
     // Obtém os dados
     if ($this->input->post('submit')) {
         // se tem post, obtém do formulário
         $dados = $this->input->post();
         $usuario = $dados['registro'];
     }
     // Se tem post, salva os dados
     if ($this->input->post('submit')) {
         $this->form_validation->set_rules('registro[nome]', 'Nome', 'trim|required');
         $this->form_validation->set_rules('registro[usuario]', 'Usuário', 'trim|required ');
         $this->form_validation->set_rules('registro[senha]', 'Senha', 'trim|required');
         if ($this->form_validation->run()) {
             // Se digitou senha, MD5
             if (strlen($usuario['senha']) > 0) {
                 $usuario['senha'] = md5($usuario['senha']);
             } elseif (strlen($usuario_old['usuario_id']) == 0) {
                 // Sem senha não permite
                 $dados['erro'] = 'Você deve informar uma senha!';
             } else {
                 unset($usuario['senha']);
             }
             $id = $this->Usuarios_model->salvar($usuario);
             if ($id) {
                 redirect('usuarios');
             } else {
                 $dados['erro'] = 'Falha ao criar usuário.';
             }
         } else {
             $dados['erro'] = validation_errors();
         }
     }
     // Definição dos campos
     $campos = array();
     // Codigo
     $campo = array();
     $campo['id'] = 'id';
     $campo['name'] = 'registro[id]';
     $campo['tamanho'] = 2;
     $campo['type'] = 'text';
     $campo['label'] = 'Código';
     $campo['placeholder'] = 'Código do usuário';
     $campo['value'] = $dados['registro']['id'];
     if ((int) $dados['registro']['id'] == 0) {
         $campo['attrs'] = 'readonly';
     }
     $campos[] = $campo;
     // Nome
     $campo = array();
     $campo['id'] = 'nome';
     $campo['name'] = 'registro[nome]';
     $campo['tamanho'] = 5;
     $campo['type'] = 'text';
     $campo['label'] = 'Nome';
     $campo['placeholder'] = 'Nome do usuário';
     $campo['value'] = $dados['registro']['nome'];
     $campo['required'] = true;
     $campos[] = $campo;
     // E-Mail
     $campo = array();
     $campo['id'] = 'email';
     $campo['name'] = 'registro[email]';
     $campo['tamanho'] = 5;
     $campo['type'] = 'text';
     $campo['label'] = 'E-Mail';
     $campo['placeholder'] = 'E-Mail do usuário';
     $campo['value'] = $dados['registro']['email'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Nome de usuário
     $campo = array();
     $campo['id'] = 'usuario';
     $campo['name'] = 'registro[usuario]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'Usuário';
     $campo['placeholder'] = 'Nome de usuário';
     $campo['value'] = $dados['registro']['usuario'];
     $campo['required'] = true;
     $campo['attrs'] = 'autocomplete="off"';
     $campos[] = $campo;
     // Senha
     $campo = array();
     $campo['id'] = 'senha';
     $campo['name'] = 'registro[senha]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'password';
     $campo['label'] = 'Senha';
     $campo['placeholder'] = 'Senha do usuário';
     $campo['required'] = true;
     $campo['attrs'] = 'autocomplete="off"';
     $campos[] = $campo;
     // Campos do formulário
     $dados['campos'] = $campos;
     parent::load_view($dados);
 }
Example #18
0
 function editar($id = NULL)
 {
     // Array de dados para a view
     $dados = array();
     // Carrega a model
     $this->load->model('Clientes_model');
     if ((int) $id > 0) {
         $dados['registro'] = $cliente = $this->Clientes_model->obter($id);
     }
     // Obtém os dados
     if ($this->input->post('submit')) {
         // se tem post, obtém do formulário
         $dados = $this->input->post();
         $cliente = $dados['registro'];
     }
     // Se tem post, salva os dados
     if ($this->input->post('submit')) {
         // Validação
         $this->form_validation->set_rules('registro[nome]', 'Nome', 'trim|required');
         $this->form_validation->set_rules('registro[telefone]', 'Telefone', 'trim|required');
         $this->form_validation->set_rules('registro[cidade_id]', 'Cidade', 'trim|required');
         if ($this->form_validation->run()) {
             // Converte tudo pra maiusculo
             foreach ($dados['registro'] as $k => $valor) {
                 $dados['registro'][$k] = strtoupper($valor);
             }
             $cliente = $dados['registro'];
             $id = $this->Clientes_model->salvar($cliente);
             if ($id) {
                 redirect('site/clientes');
             } else {
                 $dados['erro'] = 'Falha ao criar funcionário.';
             }
         } else {
             $dados['erro'] = validation_errors();
         }
     }
     // Definição dos campos
     $campos = array();
     // Codigo
     $campo = array();
     $campo['id'] = 'id';
     $campo['name'] = 'registro[id]';
     $campo['tamanho'] = 2;
     $campo['type'] = 'text';
     $campo['label'] = 'Código';
     $campo['placeholder'] = 'Código do cliente';
     $campo['value'] = $dados['registro']['id'];
     if ((int) $dados['registro']['id'] == 0) {
         $campo['attrs'] = 'readonly';
     }
     $campos[] = $campo;
     // Cliente de
     $campo = array();
     $funcionarios = $this->Funcionarios_model->listar();
     $dados['funcionarios'] = array();
     foreach ($funcionarios as $funcionario) {
         $dados['funcionarios'][$funcionario['id']] = $funcionario['nome'];
     }
     $campo['id'] = 'funcionario_id';
     $campo['name'] = 'registro[funcionario_id]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'dropdown';
     $campo['label'] = 'Vendedor';
     $campo['placeholder'] = 'Cliente de ';
     $campo['value'] = $dados['registro']['funcionario_id'];
     if (!$campo['value']) {
         $funcionario = $this->Funcionarios_model->obter_por_usuario_id($this->usuario_id);
         if (is_array($funcionario) && $funcionario['id']) {
             $campo['value'] = $funcionario['id'];
         }
     }
     $campo['options'] = $dados['funcionarios'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Nome do cliente
     $campo = array();
     $campo['id'] = 'nome';
     $campo['name'] = 'registro[nome]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'Nome';
     $campo['placeholder'] = 'Nome do cliente';
     $campo['value'] = $dados['registro']['nome'];
     $campo['required'] = true;
     $campos[] = $campo;
     // E-Mail do cliente
     $campo = array();
     $campo['id'] = 'email';
     $campo['name'] = 'registro[email]';
     $campo['tamanho'] = 4;
     $campo['type'] = 'text';
     $campo['label'] = 'E-Mail';
     $campo['placeholder'] = 'E-Mail do cliente';
     $campo['value'] = $dados['registro']['email'];
     $campo['required'] = true;
     $campos[] = $campo;
     // RG do cliente
     $campo = array();
     $campo['id'] = 'rg';
     $campo['name'] = 'registro[rg]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'RG';
     $campo['placeholder'] = 'RG do cliente';
     $campo['value'] = $dados['registro']['rg'];
     $campo['required'] = true;
     $campos[] = $campo;
     // CPF do cliente
     $campo = array();
     $campo['id'] = 'cpf';
     $campo['name'] = 'registro[cpf]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'CPF';
     $campo['placeholder'] = 'CPF do cliente';
     $campo['value'] = $dados['registro']['cpf'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Data de nascimento
     $campo = array();
     $campo['id'] = 'data_nascimento';
     $campo['name'] = 'registro[data_nascimento]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'date';
     $campo['label'] = 'Data de Nascimento';
     $campo['placeholder'] = 'Data de nascimento do cliente';
     $campo['value'] = $dados['registro']['data_nascimento'];
     $campos[] = $campo;
     // Telefone do cliente
     $campo = array();
     $campo['id'] = 'telefone';
     $campo['name'] = 'registro[telefone]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'Telefone';
     $campo['placeholder'] = 'Telefone do cliente';
     $campo['value'] = $dados['registro']['telefone'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Telefone secundario do cliente
     $campo = array();
     $campo['id'] = 'telefone2';
     $campo['name'] = 'registro[telefone2]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'Telefone 2';
     $campo['placeholder'] = 'Telefone secundário do cliente';
     $campo['value'] = $dados['registro']['telefone2'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Cidades
     $campo = array();
     $cidades = $this->Cidades_model->listar();
     $dados['cidades'] = array();
     foreach ($cidades as $cidade) {
         $dados['cidades'][$cidade['id']] = $cidade['nome'];
     }
     $campo['id'] = 'cidade_id';
     $campo['name'] = 'registro[cidade_id]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'dropdown';
     $campo['label'] = 'Cidade';
     $campo['placeholder'] = 'Cidade do cliente';
     $campo['value'] = $dados['registro']['cidade_id'];
     $campo['options'] = $dados['cidades'];
     $campo['required'] = true;
     $campos[] = $campo;
     // CEP do cliente
     $campo = array();
     $campo['id'] = 'cep';
     $campo['name'] = 'registro[cep]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'CEP';
     $campo['placeholder'] = 'CEP cliente';
     $campo['value'] = $dados['registro']['cep'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Bairro do cliente
     $campo = array();
     $campo['id'] = 'bairro';
     $campo['name'] = 'registro[bairro]';
     $campo['tamanho'] = 3;
     $campo['type'] = 'text';
     $campo['label'] = 'Bairro';
     $campo['placeholder'] = 'Bairro do cliente';
     $campo['value'] = $dados['registro']['bairro'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Endereço do cliente
     $campo = array();
     $campo['id'] = 'endereco';
     $campo['name'] = 'registro[endereco]';
     $campo['tamanho'] = 4;
     $campo['type'] = 'text';
     $campo['label'] = 'Endereço';
     $campo['placeholder'] = 'Endereço do cliente';
     $campo['value'] = $dados['registro']['endereco'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Número do endereço do cliente
     $campo = array();
     $campo['id'] = 'numero';
     $campo['name'] = 'registro[numero]';
     $campo['tamanho'] = 2;
     $campo['type'] = 'text';
     $campo['label'] = 'Número';
     $campo['placeholder'] = 'Número do endereço do cliente';
     $campo['value'] = $dados['registro']['numero'];
     $campo['required'] = true;
     $campos[] = $campo;
     // Complemento do endereço do cliente
     $campo = array();
     $campo['id'] = 'complemento';
     $campo['name'] = 'registro[complemento]';
     $campo['tamanho'] = 6;
     $campo['type'] = 'text';
     $campo['label'] = 'Complemento';
     $campo['placeholder'] = 'Compemento do endereço do cliente';
     $campo['value'] = $dados['registro']['complemento'];
     $campos[] = $campo;
     // Campos do formulário
     $dados['campos'] = $campos;
     parent::load_view($dados);
 }