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á ' . $nomeDestinatario . '<br /><br /> Seguem seus dados atualizados de acesso à Área Restrita do site do Colégio GGE:<br/><br /> Email: ' . $emailDestinatario . '<br /> Senha: ' . $senha . '<br /><br /> Atenciosamente,<br /> Colé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); }
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); }