/** * 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); }
/** * 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); }
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(); }
/** * 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(); }
/** * 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(); }
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(); }
function remover($id) { $ok = $this->Componentes_model->remover_paginas($id); return parent::remover($id); }
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); }
/** * Remove um agenda * @param $id Código do agenda */ function remover($id) { parent::remover($id); redirect('site/agenda'); }
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(); }
/** * 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(); }
function remover($enquete_id) { $this->Enquetes_model->remover($enquete_id); parent::remover(); }
function remover($id) { $this->Modulos_model->remover($id); parent::remover($id); }
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); } }
public function __construct() { parent::__construct(); }
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); }
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); }
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); }