Exemplo n.º 1
0
 public function cadastrar_responsavel_busca()
 {
     $msg = null;
     $data = $this->getParametroVisao();
     $data['page'] = 'home';
     $data['msg'] = $this->getMsg();
     $data['abaAtiva'] = 5;
     $data['abaPage'] = 'cadastrar_responsavel_busca';
     $data['alias'] = 'responsavel';
     $data['total'] = 0;
     $data['tema'] = 'geral';
     // $data['tema'] != '' ? $this->load->setTheme($data['tema']) : '';
     // O segmento 8 significa que o usuário optou por concluir o cadastro e se a sessão de cadastro de usuário existir e for igual ao código do usuário, habilita do status do responsável
     if ($this->uri->segment(8) == 1) {
         $data['noForm'] = 1;
         $data['msg'] = '<div class="alert ok">Cadastro concluído!</div>';
         $senha = isset($_SESSION['senha_pai_cadastro']) && $_SESSION['senha_pai_cadastro'] != '' ? $_SESSION['senha_pai_cadastro'] : 'gge' . date('Y');
         $sqlUsuario = new SqlUsuario();
         $result = $sqlUsuario->get_nome($this->uri->segment(4));
         // atualiza a senha
         $sqlUsuario = new SqlUsuario();
         $sqlUsuario->editar_login($this->uri->segment(4), $result['registros'][0]['email'], $senha);
         $nomeDestinatario = $result['registros'][0]['nome'];
         $emailDestinatario = $result['registros'][0]['email'];
         $assunto = "Dados de acesso GGE";
         $headers = 'MIME-Version: 1.0' . "\r\n";
         $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
         $headers .= "From: Colégio GGE <*****@*****.**>" . "\r\n";
         $headers .= "Bcc: <*****@*****.**>\n";
         $mensagem = 'Ol&aacute; ' . $nomeDestinatario . '<br /><br />
                      Seguem seus dados atualizados de acesso &agrave; &Aacute;rea Restrita do site do Col&eacute;gio GGE:<br/><br />
                      Email: ' . $emailDestinatario . '<br />
                      Senha: ' . $senha . '<br /><br />
                      Atenciosamente,<br />
                      Col&eacute;gio GGE';
         $enviar = mail($emailDestinatario, $assunto, $mensagem, $headers);
         unset($_SESSION['senha_pai_cadastro']);
         $data['msg'] = '<div class="alert ok">' . $mensagem . '</div>
                         <a href="' . base_url() . 'usuario/responsavel/cadastrar_responsavel" class="submit">Cadastrar outro responsável</a>';
         $this->load->view($this->load->getUrlTema(), $data);
         unset($_SESSION['senha_pai_cadastro']);
         return false;
     }
     if ($_SERVER['REQUEST_METHOD'] == "POST") {
         try {
             // View::validarFormAntInjection('responsavel');
             $i = 0;
             foreach ($this->input->post('pk_usuario') as $pk_usuario) {
                 $sqlVinculaDependente = new SqlUsuario();
                 $sqlVinculaDependente->vincula_dependente($this->input->post('fk_usuario_responsavel'), $pk_usuario, 1);
                 $i++;
             }
             if ($i > 0) {
                 $sqlHabilitaResponsavel = new SqlUsuario();
                 $sqlHabilitaResponsavel->habilita_responsavel($this->uri->segment(6));
             }
             $data['noForm'] = 1;
             $data['msg'] = '<div class="alert ok">Dependente(s) incluído(s) com sucesso!<ul class="square normal"><li>Caso não falte nenhum dependente, <a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/cadastrar_responsavel_busca/' . $this->uri->segment(4) . '/' . $this->uri->segment(5) . '/' . $this->uri->segment(6) . '/1/1"><strong>clique aqui para finalizar o cadastro</strong></a>.</li><li>Caso falte algum dependente, <a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/cadastrar_responsavel_busca_dependentes/' . $this->uri->segment(4) . '/' . $this->uri->segment(5) . '/' . $this->uri->segment(6) . '/' . $this->uri->segment(7) . '"><strong>clique aqui</strong></a>.</li></ul></div>';
             $this->load->view($this->load->getUrlTema(), $data);
             return false;
         } catch (Exception $e) {
             $this->session->set_flashdata('msg', '<p class="alert erro">' . $e->getMessage() . '</p>');
             redirect(base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/cadastrar_responsavel_busca/' . $this->uri->segment(4) . '/' . $this->uri->segment(5) . '/' . $this->uri->segment(6) . '/' . $this->uri->segment(7));
         }
     } else {
         $sqlUsuario = new SqlUsuario();
         $getUsuario = $sqlUsuario->listar_usuario($this->uri->segment(4));
         $data['nome'] = $getUsuario['registros'][0]['nome'];
         $data['pk_usuario'] = $getUsuario['registros'][0]['pk_usuario'];
         $usuarioResponsavel = new SqlUsuario();
         $result = $usuarioResponsavel->buscar_responsavel($data['nome']);
         $data['total'] = $result['total'];
         if ($result['total'] > 0) {
             $this->load->library('table');
             $arrHead[] = '';
             $arrHead[] = 'Aluno';
             $arrHead[] = 'Turma';
             $arrHead[] = 'Pai';
             $arrHead[] = 'Mãe';
             $arrHead[] = 'Responsável';
             $this->table->set_heading($arrHead);
             $count = 0;
             $i = 0;
             foreach ($result['registros'] as $row) {
                 $count++;
                 $tmpl = Util::zebrar($count, count($result['registros']));
                 similar_text($data['nome'], $row['alu_pai'], $percent1);
                 similar_text($data['nome'], $row['alu_mae'], $percent2);
                 similar_text($data['nome'], $row['alu_resp'], $percent3);
                 if ($percent1 > 90 || $percent2 > 90 || $percent3 > 90) {
                     $this->table->add_row('<input type="checkbox" name="pk_usuario[]" value="' . $row['fk_usuario'] . '"  class="required" minlength="1" checked>', $row['alu_nom'], $row['turma_nome'], $row['alu_pai'], $row['alu_mae'], $row['alu_resp']);
                     $i++;
                 }
             }
             $this->table->set_template($tmpl);
             $data['total'] = (int) $i;
         }
         if ($data['total'] > 0) {
             if ($data['idUsuario'] == 0) {
                 if ($data['total'] == 1) {
                     $data['msg'] = '<div class="alert atencao">Confirma a inclusão do dependente listado abaixo?<ul class="square normal"><li>Caso o aluno listado abaixo seja seu dependente, clique no botão "Concluir". Caso contrário, clique no botão "Buscar".</li></ul></div>';
                 } else {
                     $data['msg'] = '<div class="alert atencao">Confirma a inclusão dos dependentes listados abaixo?<ul class="square normal"><li>Caso algum deles não seja seu dependente, desmarque-o e inclua os demais.</li><li>Caso nenhum deles seja seu dependente, <a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/cadastrar_responsavel_busca_dependentes/' . $this->uri->segment(4) . '/' . $this->uri->segment(5) . '/' . $this->uri->segment(6) . '/' . $this->uri->segment(7) . '">clique aqui</a> para buscar pelos seus nomes.</li></ul>';
                 }
             } else {
                 if ($data['total'] == 1) {
                     $data['msg'] = '<div class="alert atencao">Confirma a inclusão do dependente listado abaixo?<ul class="square normal"><li>Caso o mesmo não seja dependente do responsável cadastrado, <a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/cadastrar_responsavel_busca_dependentes/' . $this->uri->segment(4) . '/' . $this->uri->segment(5) . '/' . $this->uri->segment(6) . '/' . $this->uri->segment(7) . '"><strong>clique aqui</strong></a> para buscar pelo nome do dependente.</li></ul></div>';
                 } else {
                     $data['msg'] = '<div class="alert atencao">Confirma a inclusão dos dependentes listados abaixo?<ul class="square normal"><li>Caso algum deles não seja dependente do responsável cadastrado, desmarque-o e inclua os demais.</li><li>Caso nenhum deles seja dependente do responsável, <a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/cadastrar_responsavel_busca_dependentes/' . $this->uri->segment(4) . '/' . $this->uri->segment(5) . '/' . $this->uri->segment(6) . '/' . $this->uri->segment(7) . '">clique aqui</a> para buscar pelos nomes dos dependentes.</li></ul></div>';
                 }
             }
         } else {
             redirect(base_url() . 'usuario/responsavel/cadastrar_responsavel_busca_dependentes/' . $this->uri->segment(4) . '/' . $this->uri->segment(5) . '/' . $this->uri->segment(6) . '/' . $this->uri->segment(7));
         }
     }
     $this->load->view($this->load->getUrlTema(), $data);
 }
Exemplo n.º 2
0
 public function cadastrar_responsavel()
 {
     $msg = null;
     $data = $this->getParametroVisao();
     $data['page'] = 'home';
     $data['tema'] != '' ? $this->load->setTheme($data['tema']) : '';
     $data['msg'] = $msg;
     $data['abaAtiva'] = 24;
     $data['abaPage'] = 'cadastrar_responsavel';
     $data['alias'] = 'cadastrar_responsavel';
     $data['busca'] = 0;
     $data['resultado_busca'] = '';
     if ($_SERVER['REQUEST_METHOD'] == "POST") {
         try {
             // View::validarFormAntInjection($data['alias']);
             if ($this->input->post('Enviar') == 'Pesquisar') {
                 $sqlAtendimento = new SqlAtendimento();
                 $result = $sqlAtendimento->buscar_cliente($this->input->post('nome'));
                 if ($result['total'] > 0) {
                     $resultado_busca = '<div class="alert atencao">Consta(m) no sistema cadastro(s) com nome(s) semelhante(s) ao que você está tentando cadastrar. Caso a pessoa que você está tentando cadastrar conste abaixo, clique no nome respectivo. Caso contrário, <a class="link" href="' . base_url() . 'telemarketing/atendimento/cadastrar_responsavel?nome=' . $this->input->post('nome') . '">clique aqui</a>.</div>';
                     $resultado_busca .= '<table>';
                     $resultado_busca .= '<tr><th>Responsável</th><th>Dependente</th><th>Série</th><th>Unidade</th><th>Atendente</th></tr>';
                     foreach ($result['registros'] as $row) {
                         $resultado_busca .= '<tr>';
                         $resultado_busca .= '<td><a rel="shadowbox[mix]" class="link" href="' . base_url() . 'telemarketing/atendimento/detalhe_cliente/' . $row['pk_tmk_cliente'] . '/' . $row['pk_tmk_aluno'] . '?shadowbox=1">' . $row['nome'] . '</td>';
                         $resultado_busca .= '<td>' . $row['nome_aluno'] . '</td>';
                         $resultado_busca .= '<td>' . $row['serie_nome'] . '</td>';
                         $resultado_busca .= '<td>' . $row['unidade_nome'] . '</td>';
                         $resultado_busca .= '<td>' . $row['atendente_nome'] . '</td>';
                         $resultado_busca .= '</tr>';
                     }
                     $resultado_busca .= '</table>';
                     $data['resultado_busca'] = $resultado_busca;
                     $data['cadastro_existente'] = 1;
                     $this->load->view($this->load->getUrlTema(), $data);
                     return FALSE;
                 }
             }
             if ($this->input->post('Cadastrar') == 'Cadastrar') {
                 $sqlAtendimento = new SqlAtendimento();
                 $pk_tmk_cliente = $sqlAtendimento->cadastrar_cliente($this->input->post('nome'), $this->input->post('telefone'), $this->input->post('celular'), $this->input->post('email'), $this->input->post('obs'), $this->input->post('tipo_contato'), $data['idUsuario'], date("Y-m-d"));
                 // registra primeiro contato
                 $sqlAtendimento = new SqlAtendimento();
                 $sqlAtendimento->cadastrar_contato($pk_tmk_cliente, date("Y-m-d H:i:s"), $this->input->post('nivel_interesse'), 1);
                 // registra próximo contato
                 if ($this->input->post('data_evento') != '') {
                     $data_proximo_contato = View::converteDataEUA($this->input->post('data_evento')) . ' ' . date("H:i:s");
                     $sqlAtendimento = new SqlAtendimento();
                     $sqlAtendimento->cadastrar_contato($pk_tmk_cliente, $data_proximo_contato, $this->input->post('nivel_interesse'), 1);
                 }
                 for ($i = 0; $i < 6; $i++) {
                     if ($this->input->post('aluno_unidade_' . $i) != '') {
                         $serie = $this->input->post('aluno_serie_' . $i) == '' ? 0 : $this->input->post('aluno_serie_' . $i);
                         $sqlAtendimento = new SqlAtendimento();
                         $sqlAtendimento->cadastrar_dependente($pk_tmk_cliente, $this->input->post('aluno_nome_' . $i), $serie, $this->input->post('aluno_unidade_' . $i), $this->input->post('escola_origem_' . $i));
                     }
                 }
                 $this->session->set_flashdata('msg', '<div class="alert ok">Registro incluído com sucesso!</div>');
                 redirect(base_url() . 'telemarketing/atendimento/listar_responsaveis');
             }
             if ($this->input->post('var_aluno') != FALSE) {
                 $_SESSION['cad_alunos'] = $this->input->post('var_aluno');
                 redirect(base_url() . 'telemarketing/atendimento/cadastrar_responsavel?nome=' . $this->input->post('nome'));
             }
             if ($this->input->post('busca') == 1) {
                 $usuarioResponsavel = new SqlUsuario();
                 $result = $usuarioResponsavel->buscar_responsavel($this->input->post('nome'));
                 if ($result['total'] > 0) {
                     $resultado_busca = '<div class="alert informacao">Selecione os dependentes correspondentes. Se o resultado da busca abaixo não corresponder ao nome procurado, <a class="link" href="' . base_url() . 'telemarketing/atendimento/cadastrar_responsavel?nome=' . $this->input->post('nome') . '">clique aqui</a>.</div>';
                     $resultado_busca .= '<table>';
                     $resultado_busca .= '<tr><th></th><th>Pai</th><th>Mãe</th><th>Aluno</th><th>Turma atual</th></tr>';
                     foreach ($result['registros'] as $row) {
                         $resultado_busca .= '<tr>';
                         $resultado_busca .= '<td><input type="checkbox" name="var_aluno[]" value="' . $row['alu_nom'] . '#' . $row['fk_serie'] . '#' . $row['fk_unidade'] . '" /></td>';
                         $resultado_busca .= '<td>' . $row['alu_pai'] . '</td>';
                         $resultado_busca .= '<td>' . $row['alu_mae'] . '</td>';
                         $resultado_busca .= '<td>' . $row['alu_nom'] . '</td>';
                         $resultado_busca .= '<td>' . $row['turma_nome'] . '</td>';
                         $resultado_busca .= '</tr>';
                     }
                     $resultado_busca .= '</table>';
                     $resultado_busca .= '<input type="hidden" name="nome" value="' . $this->input->post('nome') . '" />';
                     $resultado_busca .= '<input type="submit" name="Enviar" value="Avançar" class="submit">';
                 } else {
                     unset($_SESSION['cad_alunos']);
                     $resultado_busca = '<div class="alert atencao">Não foi encontrado nenhum responsável com o nome "' . $this->input->post('nome') . '". Algumas vezes os nomes dos responsáveis são incluídos no sistema de forma abreviada ou sem acentuação, o que influi diretamente nos resultados da busca. Altere os nomes da pesquisa no campo abaixo ou <a class="link" href="' . base_url() . 'telemarketing/atendimento/cadastrar_responsavel?nome=' . $this->input->post('nome') . '">clique aqui</a> para efetuar um novo cadastro com o nome digitado.</div>
                                         <p class="left"><label for="nome">Nome</label><br /> 
                                             <input type="text" name="nome" class="w450" value="' . $this->input->post('nome') . '">
                                             <input type="hidden" name="busca" value="1">
                                         </p>
                                         <br class="clear" />
                                         <input type="submit" name="Enviar" value="Pesquisar novamente" class="submit">';
                 }
                 $data['busca'] = 1;
                 $data['resultado_busca'] = $resultado_busca;
             }
             $this->load->view($this->load->getUrlTema(), $data);
             return false;
         } catch (Exception $e) {
             $msg = '<p class="alert erro">' . $e->getMessage() . '</p>';
         }
     }
     $sqlAtendimento = new SqlAtendimento();
     $unidades = $sqlAtendimento->get_unidades();
     $sqlAtendimento = new SqlAtendimento();
     $series = $sqlAtendimento->get_series();
     $dependentes = '<h3>Dependentes</h3><table>';
     $dependentes .= '<tr><td>Nome</td><td>Série que cursará</td><td>Unidade</td><td>Escola de orígem</td></tr>';
     $i = 0;
     if (isset($_SESSION['cad_alunos'])) {
         foreach ($_SESSION['cad_alunos'] as $row) {
             $i++;
             $divide = explode('#', $row);
             $dependentes .= '<tr>';
             $dependentes .= '<td><input type="text" name="aluno_nome_' . $i . '" value="' . $divide[0] . '" class="w250"></td>';
             $dependentes .= '<td><select name="aluno_serie_' . $i . '" class="w200">';
             $selected = '';
             foreach ($series as $item) {
                 $selected = $divide[1] == $item['pk_serie'] ? 'selected' : '';
                 $dependentes .= '<option value="' . $item['pk_serie'] . '" ' . $selected . '>' . $item['serie_nome'] . '</option>';
             }
             $dependentes .= '</select></td>';
             $dependentes .= '<td><select name="aluno_unidade_' . $i . '" class="w200">';
             $selected = '';
             foreach ($unidades as $item) {
                 $selected = $divide[2] == $item['pk_unidade'] ? 'selected' : '';
                 $dependentes .= '<option value="' . $item['pk_unidade'] . '" ' . $selected . '>' . $item['unidade_nome'] . '</option>';
             }
             $dependentes .= '</select><input type="hidden" name="aluno_origem_' . $i . '" value="GGE"></td>';
             $dependentes .= '</tr>';
         }
     }
     // campos adicionais
     for ($i2 = 0; $i2 < 3; $i2++) {
         $i++;
         $dependentes .= '<tr>';
         $dependentes .= '<td><input type="text" name="aluno_nome_' . $i . '" value="" class="w250"></td>';
         $dependentes .= '<td><select name="aluno_serie_' . $i . '" class="w200">';
         $dependentes .= '<option value=""></option>';
         foreach ($series as $item) {
             $dependentes .= '<option value="' . $item['pk_serie'] . '">' . $item['serie_nome'] . '</option>';
         }
         $dependentes .= '</select></td>';
         $dependentes .= '<td><select name="aluno_unidade_' . $i . '" class="w150">';
         $dependentes .= '<option value=""></option>';
         foreach ($unidades as $item) {
             $dependentes .= '<option value="' . $item['pk_unidade'] . '">' . $item['unidade_nome'] . '</option>';
         }
         $dependentes .= '</select></td>';
         $dependentes .= '<td><input type="text" name="escola_origem_' . $i . '" class="w150"></td>';
         $dependentes .= '</tr>';
     }
     $dependentes .= '</table>';
     $data['dependentes'] = $dependentes;
     $this->load->view($this->load->getUrlTema(), $data);
 }