/** * Implementação do método clsCadastro::Editar() * * Esse método é chamado quando o usuário "Retorna um servidor". Dessa forma, * caso seja professor, precisa atualizar a sua alocação na tabela * pmieducar.quadro_horario_horarios, apagando os valores dos campos * ref_cod_instituicao_ e ref_cod_servidor_ -substituto * * @see ieducar/intranet/include/clsCadastro#Editar() */ public function Editar() { session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $urlPermite = sprintf('educar_servidor_det.php?cod_servidor=%d&ref_cod_instituicao=%d', $this->ref_cod_servidor, $this->ref_cod_instituicao); $obj_permissoes = new clsPermissoes(); $obj_permissoes->permissao_cadastra(635, $this->pessoa_logada, 7, $urlPermite); $obj = new clsPmieducarServidorAfastamento($this->ref_cod_servidor, $this->sequencial, $this->ref_cod_motivo_afastamento, $this->pessoa_logada, NULL, NULL, NULL, $this->data_retorno, unserialize($this->data_saida), 0, $this->ref_cod_instituicao); $editou = $obj->edita(); if ($editou) { if (is_array($_POST['ref_cod_servidor_substituto'])) { foreach ($_POST['ref_cod_servidor_substituto'] as $key => $valor) { $ref_cod_servidor_substituto = $valor; $ref_cod_escola = $_POST["ref_cod_escola_{$key}"]; $dia_semana = $_POST["dia_semana_{$key}"]; $hora_inicial = urldecode($_POST["hora_inicial_{$key}"]); $hora_final = urldecode($_POST["hora_final_{$key}"]); if (is_numeric($ref_cod_servidor_substituto) && is_numeric($ref_cod_escola) && is_numeric($dia_semana) && is_string($hora_inicial) && is_string($hora_final)) { $obj_horarios = new clsPmieducarQuadroHorarioHorarios(NULL, NULL, $ref_cod_escola, NULL, NULL, NULL, $this->ref_cod_instituicao, $ref_cod_servidor_substituto, $this->ref_cod_servidor, $hora_inicial, $hora_final, NULL, NULL, 1, $dia_semana); $det_horarios = $obj_horarios->detalhe($ref_cod_escola); // Os valores NULL apagam os campos ref_cod_instituicao_ e // ref_cod_servidor_ -substituto da tabela pmieducar. // quadro_horario_horarios $obj_horario = new clsPmieducarQuadroHorarioHorarios($det_horarios["ref_cod_quadro_horario"], $det_horarios["ref_cod_serie"], $det_horarios["ref_cod_escola"], $det_horarios["ref_cod_disciplina"], $det_horarios["sequencial"], NULL, $det_horarios["ref_cod_instituicao_servidor"], NULL, $this->ref_cod_servidor); if (!$obj_horario->edita()) { $this->mensagem = "Cadastro não realizado.<br>"; return FALSE; } } } } $this->mensagem .= "Edição efetuada com sucesso.<br>"; header("Location: educar_servidor_det.php?cod_servidor={$this->ref_cod_servidor}&ref_cod_instituicao={$this->ref_cod_instituicao}"); die; } $this->mensagem = "Edição não realizada.<br>"; return FALSE; }
function Editar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; @session_write_close(); $obj_permissoes = new clsPermissoes(); $obj_permissoes->permissao_cadastra(641, $this->pessoa_logada, 7, 'educar_quadro_horario_lst.php'); $this->quadro_horario = unserialize(urldecode($this->quadro_horario)); $verifica = TRUE; $parametros = ''; if (is_array($this->quadro_horario)) { foreach ($this->quadro_horario as $registro) { $parametros = "?ref_cod_instituicao={$registro["ref_cod_instituicao_servidor_"]}&ref_cod_escola={$registro["ref_ref_cod_escola_"]}&ref_cod_curso={$this->ref_cod_curso_}&ref_cod_serie={$registro["ref_ref_cod_serie_"]}&ref_cod_turma={$this->ref_cod_turma}&busca=S"; $obj_horario = new clsPmieducarQuadroHorarioHorarios($registro['ref_cod_quadro_horario_'], $registro['ref_ref_cod_serie_'], $registro['ref_ref_cod_escola_'], $registro['ref_ref_cod_disciplina_'], $registro['sequencial_'], NULL, $registro['ref_cod_instituicao_servidor_'], NULL, $registro['ref_servidor_'], NULL, NULL, NULL, NULL, $registro['ativo_'], NULL); if ($obj_horario->detalhe()) { $obj_horario = new clsPmieducarQuadroHorarioHorarios($registro['ref_cod_quadro_horario_'], $registro['ref_ref_cod_serie_'], $registro['ref_ref_cod_escola_'], $registro['ref_ref_cod_disciplina_'], $registro['sequencial_'], NULL, $registro['ref_cod_instituicao_servidor_'], NULL, $registro['ref_servidor_'], $registro['hora_inicial_'], $registro['hora_final_'], NULL, NULL, $registro['ativo_'], $registro['dia_semana_']); $editou = $obj_horario->edita(); if ($editou) { if ($verifica) { $verifica = TRUE; } } else { $verifica = FALSE; } } else { $obj_horario = new clsPmieducarQuadroHorarioHorarios($registro['ref_cod_quadro_horario_'], $registro['ref_ref_cod_serie_'], $registro['ref_ref_cod_escola_'], $registro['ref_ref_cod_disciplina_'], NULL, NULL, $registro['ref_cod_instituicao_servidor_'], NULL, $registro['ref_servidor_'], $registro['hora_inicial_'], $registro['hora_final_'], NULL, NULL, $registro['ativo_'], $registro['dia_semana_']); $cadastrou = $obj_horario->cadastra(); if ($cadastrou) { if ($verifica) { $verifica = TRUE; } } else { $verifica = FALSE; } } } } if ($verifica) { $obj_quadro_horarios_aux = new clsPmieducarQuadroHorarioHorariosAux(); $obj_quadro_horarios_aux->excluirTodos($this->identificador); $this->mensagem .= 'Cadastro editado com sucesso.<br>'; header("Location: educar_quadro_horario_lst.php{$parametros}"); die; } $this->mensagem = 'Cadastro não editado.<br>'; return FALSE; }
function Excluir() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; @session_write_close(); $obj_permissoes = new clsPermissoes(); $obj_permissoes->permissao_excluir(635, $this->pessoa_logada, 7, 'educar_servidor_lst.php'); $obj_quadro_horario = new clsPmieducarQuadroHorarioHorarios(NULL, NULL, NULL, NULL, NULL, NULL, $this->cod_servidor, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao); if ($obj_quadro_horario->detalhe()) { $this->mensagem = "Exclusão não realizada. O servidor está vinculado a um quadro de horários.<br>"; return FALSE; } else { $obj_quadro_horario = new clsPmieducarQuadroHorarioHorarios(NULL, NULL, NULL, NULL, NULL, NULL, NULL, $this->cod_servidor, NULL, NULL, NULL, NULL, NULL, 1, NULL, $this->ref_cod_instituicao); if ($obj_quadro_horario->detalhe()) { $this->mensagem = "Exclusão não realizada. O servidor está vinculado a um quadro de horários.<br>"; return FALSE; } else { $obj = new clsPmieducarServidor($this->cod_servidor, $this->ref_cod_deficiencia, $this->ref_idesco, $this->carga_horaria, NULL, NULL, 0, $this->ref_cod_instituicao_original); $excluiu = $obj->excluir(); if ($excluiu) { $this->excluiFuncoes(); $this->mensagem .= "Exclusão efetuada com sucesso.<br>"; header("Location: educar_servidor_lst.php"); die; } } } $this->mensagem = 'Exclusão não realizada.<br>'; return FALSE; }