/** * Implementação do método clsCadastro::Gerar() * @see ieducar/intranet/include/clsCadastro#Gerar() */ public function Gerar() { $this->campoOculto('ref_cod_servidor', $this->ref_cod_servidor); $this->campoOculto('sequencial', $this->sequencial); $this->campoOculto('ref_cod_instituicao', $this->ref_cod_instituicao); $opcoes = array('' => 'Selecione'); $objTemp = new clsPmieducarMotivoAfastamento(); $lista = $objTemp->lista(); if (is_array($lista) && count($lista) > 0) { foreach ($lista as $registro) { $opcoes[$registro['cod_motivo_afastamento']] = $registro['nm_motivo']; } } else { $opcoes = array('' => 'Nenhum motivo de afastamento cadastrado'); } if ($this->status == 'N') { $this->campoLista('ref_cod_motivo_afastamento', 'Motivo Afastamento', $opcoes, $this->ref_cod_motivo_afastamento); } elseif ($this->status == 'E') { $this->campoLista('ref_cod_motivo_afastamento', 'Motivo Afastamento', $opcoes, $this->ref_cod_motivo_afastamento, '', FALSE, '', '', TRUE); } // Datas para registro // Se novo registro if ($this->status == 'N') { $this->campoData('data_saida', 'Data de Afastamento', $this->data_saida, TRUE); } elseif ($this->status == 'E') { $this->campoRotulo('data_saida', 'Data de Afastamento', $this->data_saida); } // Se edição, mostra campo para entrar com data de retorno if ($this->status == 'E') { $this->campoData('data_retorno', 'Data de Retorno', $this->data_retorno, FALSE); } $obj_servidor = new clsPmieducarServidor($this->ref_cod_servidor, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao); $det_servidor = $obj_servidor->detalhe(); if ($det_servidor) { $obj_funcao = new clsPmieducarFuncao($det_servidor['ref_cod_funcao'], NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao); // Se for professor if (TRUE == $obj_servidor->isProfessor()) { $obj = new clsPmieducarQuadroHorarioHorarios(); // Pega a lista de aulas alocadas para este servidor $lista = $obj->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, $this->ref_cod_instituicao, NULL, $this->ref_cod_servidor, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL); if ($lista) { // Passa todos os valores obtidos no registro para atributos do objeto foreach ($lista as $campo => $val) { $temp = array(); $temp['hora_inicial'] = $val['hora_inicial']; $temp['hora_final'] = $val['hora_final']; $temp['dia_semana'] = $val['dia_semana']; $temp['ref_cod_escola'] = $val['ref_cod_escola']; $temp['ref_cod_disciplina'] = $val['ref_cod_disciplina']; $temp['ref_cod_substituto'] = $val['ref_servidor_substituto']; $this->alocacao_array[] = $temp; } if ($this->alocacao_array) { $tamanho = sizeof($alocacao); $script = "<script>\nvar num_alocacao = {$tamanho};\n"; $script .= "var array_servidores = Array();\n"; foreach ($this->alocacao_array as $key => $alocacao) { $script .= "array_servidores[{$key}] = new Array();\n"; $hora_ini = explode(":", $alocacao['hora_inicial']); $hora_fim = explode(":", $alocacao['hora_final']); $horas_utilizadas = $hora_fim[0] - $hora_ini[0]; $minutos_utilizados = $hora_fim[1] - $hora_ini[1]; $horas = sprintf('%02d', (int) $horas_utilizadas); $minutos = sprintf('%02d', (int) $minutos_utilizados); $str_horas_utilizadas = "{$horas}:{$minutos}"; $script .= "array_servidores[{$key}][0] = '{$str_horas_utilizadas}';\n"; $script .= "array_servidores[{$key}][1] = '';\n\n"; $obj_escola = new clsPmieducarEscola($alocacao['ref_cod_escola']); $det_escola = $obj_escola->detalhe(); $det_escola = $det_escola['nome']; $nm_dia_semana = $this->dias_da_semana[$alocacao['dia_semana']]; $obj_subst = new clsPessoa_($alocacao['ref_cod_substituto']); $det_subst = $obj_subst->detalhe(); if ($this->status == 'N') { $this->campoTextoInv("dia_semana_{$key}_", '', $nm_dia_semana, 8, 8, FALSE, FALSE, TRUE, '', '', '', '', 'dia_semana'); $this->campoTextoInv("hora_inicial_{$key}_", '', $alocacao['hora_inicial'], 5, 5, FALSE, FALSE, TRUE, '', '', '', '', 'ds_hora_inicial_'); $this->campoTextoInv("hora_final_{$key}_", '', $alocacao['hora_final'], 5, 5, FALSE, FALSE, TRUE, '', '', '', '', 'ds_hora_final_'); $this->campoTextoInv("ref_cod_escola_{$key}", '', $det_escola, 30, 255, FALSE, FALSE, TRUE, '', '', '', '', 'ref_cod_escola_'); $this->campoTextoInv("ref_cod_servidor_substituto_{$key}_", '', $det_subst['nome'], 30, 255, FALSE, FALSE, FALSE, '', "<span name=\"ref_cod_servidor_substituto\" id=\"ref_cod_servidor_substituicao_{$key}\"><img border='0' onclick=\"pesquisa_valores_popless('educar_pesquisa_servidor_lst.php?campo1=ref_cod_servidor_substituto[{$key}]&campo2=ref_cod_servidor_substituto_{$key}_&ref_cod_instituicao={$this->ref_cod_instituicao}&dia_semana={$alocacao["dia_semana"]}&hora_inicial={$alocacao["hora_inicial"]}&hora_final={$alocacao["hora_final"]}&ref_cod_servidor={$this->ref_cod_servidor}&professor=1&ref_cod_escola={$alocacao['ref_cod_escola']}&horario=S&ref_cod_disciplina={$alocacao['ref_cod_disciplina']}', 'nome')\" src=\"imagens/lupa.png\" ></span>", '', '', 'ref_cod_servidor_substituto'); } $this->campoOculto("dia_semana_{$key}", $alocacao['dia_semana']); $this->campoOculto("hora_inicial_{$key}", $alocacao['hora_inicial']); $this->campoOculto("hora_final_{$key}", $alocacao['hora_final']); $this->campoOculto("ref_cod_escola_{$key}", $alocacao['ref_cod_escola']); $this->campoOculto("ref_cod_servidor_substituto[{$key}]", $alocacao['ref_cod_substituto']); } $script .= "\n</script>"; // Print do Javascript print $script; } } } } }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = "Motivo Afastamento - Listagem"; foreach ($_GET as $var => $val) { // passa todos os valores obtidos no GET para atributos do objeto $this->{$var} = $val === "" ? null : $val; } $lista_busca = array("Motivo de Afastamento"); $obj_permissoes = new clsPermissoes(); $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { //$lista_busca[] = "Escola"; $lista_busca[] = "Instituição"; } $this->addCabecalhos($lista_busca); // Filtros de Foreign Keys // outros Filtros $get_escola = false; include "include/pmieducar/educar_campo_lista.php"; $this->campoTexto("nm_motivo", "Motivo de Afastamento", $this->nm_motivo, 30, 255, false); // Paginador $this->limite = 20; $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0; $obj_motivo_afastamento = new clsPmieducarMotivoAfastamento(); $obj_motivo_afastamento->setOrderby("nm_motivo ASC"); $obj_motivo_afastamento->setLimite($this->limite, $this->offset); $lista = $obj_motivo_afastamento->lista(null, null, null, $this->nm_motivo, null, null, null, null, null, 1, $this->ref_cod_instituicao); $total = $obj_motivo_afastamento->_total; // monta a lista if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { //$obj_ins = new clsPmieducarEscola( $registro["ref_cod_escola"] ); //$det_ins = $obj_ins->detalhe(); // $ref_cod_instituicao = $det_ins["ref_cod_instituicao"]; $obj_instituicao = new clsPmieducarInstituicao($registro['ref_cod_instituicao']); $det_instituicao = $obj_instituicao->detalhe(); $lista_busca = array("<a href=\"educar_motivo_afastamento_det.php?cod_motivo_afastamento={$registro["cod_motivo_afastamento"]}\">{$registro["nm_motivo"]}</a>"); if ($nivel_usuario == 1) { //$lista_busca[] = "<a href=\"educar_motivo_afastamento_det.php?cod_motivo_afastamento={$registro["cod_motivo_afastamento"]}\">{$det_ins["nome"]}</a>"; $lista_busca[] = "<a href=\"educar_motivo_afastamento_det.php?cod_motivo_afastamento={$registro["cod_motivo_afastamento"]}\">{$det_instituicao["nm_instituicao"]}</a>"; } $this->addLinhas($lista_busca); } } $this->addPaginador2("educar_motivo_afastamento_lst.php", $total, $_GET, $this->nome, $this->limite); $obj_permissoes = new clsPermissoes(); if ($obj_permissoes->permissao_cadastra(633, $this->pessoa_logada, 7)) { $this->acao = "go(\"educar_motivo_afastamento_cad.php\")"; $this->nome_acao = "Novo"; } $this->largura = "100%"; $localizacao = new LocalizacaoSistema(); $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "Início", "educar_index.php" => "i-Educar - Escola", "" => "Listagem de motivos de afastamento")); $this->enviaLocalizacao($localizacao->montar()); }
function Excluir() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; @session_write_close(); $obj_permissoes = new clsPermissoes(); $obj_permissoes->permissao_excluir(633, $this->pessoa_logada, 7, "educar_motivo_afastamento_lst.php"); $obj = new clsPmieducarMotivoAfastamento($this->cod_motivo_afastamento, $this->pessoa_logada, NULL, $this->nm_motivo, $this->descricao, NULL, NULL, 0, $this->ref_cod_instituicao); $excluiu = $obj->excluir(); if ($excluiu) { $this->mensagem .= "Exclusão efetuada com sucesso.<br>"; header("Location: educar_motivo_afastamento_lst.php"); die; return true; } $this->mensagem = "Exclusão não realizada.<br>"; echo "<!--\nErro ao excluir clsPmieducarMotivoAfastamento\nvalores obrigatorios\nif( is_numeric( {$this->cod_motivo_afastamento} ) && is_numeric( {$this->pessoa_logada} ) )\n-->"; return false; }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = "Motivo Afastamento - Detalhe"; $this->cod_motivo_afastamento = $_GET["cod_motivo_afastamento"]; $tmp_obj = new clsPmieducarMotivoAfastamento($this->cod_motivo_afastamento); $registro = $tmp_obj->detalhe(); if (!$registro) { header("location: educar_motivo_afastamento_lst.php"); die; } /* if( class_exists( "clsPmieducarEscola" ) ) { $obj_ref_cod_escola = new clsPmieducarEscola( $registro["ref_cod_escola"] ); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $nm_escola = $det_ref_cod_escola["nome"]; $ref_cod_instituicao = $det_ref_cod_escola["ref_cod_instituicao"]; } else { $registro["ref_cod_escola"] = "Erro na geracao"; echo "<!--\nErro\nClasse nao existente: clsPmieducarEscola\n-->"; }*/ if (class_exists("clsPmieducarInstituicao")) { $obj_ref_cod_instituicao = new clsPmieducarInstituicao($registro['ref_cod_instituicao']); $det_ref_cod_instituicao = $obj_ref_cod_instituicao->detalhe(); } else { $registro["ref_cod_escola"] = "Erro na geração"; echo "<!--\nErro\nClasse não existente: clsPmieducarEscola\n-->"; } $obj_permissao = new clsPermissoes(); $nivel_usuario = $obj_permissao->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { if ($det_ref_cod_instituicao["nm_instituicao"]) { $this->addDetalhe(array("Instituição", "{$det_ref_cod_instituicao["nm_instituicao"]}")); } } /* if ($nivel_usuario == 1 || $nivel_usuario == 2) { if( $nm_escola ) { $this->addDetalhe( array( "Escola", "{$nm_escola}") ); } }*/ if ($registro["nm_motivo"]) { $this->addDetalhe(array("Motivo de Afastamento", "{$registro["nm_motivo"]}")); } if ($registro["descricao"]) { $this->addDetalhe(array("Descrição", "{$registro["descricao"]}")); } $obj_permissoes = new clsPermissoes(); if ($obj_permissoes->permissao_cadastra(633, $this->pessoa_logada, 7)) { $this->url_novo = "educar_motivo_afastamento_cad.php"; $this->url_editar = "educar_motivo_afastamento_cad.php?cod_motivo_afastamento={$registro["cod_motivo_afastamento"]}"; } $this->url_cancelar = "educar_motivo_afastamento_lst.php"; $this->largura = "100%"; $localizacao = new LocalizacaoSistema(); $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "Início", "educar_index.php" => "i-Educar - Escola", "" => "Detalhe do motivo de afastamento")); $this->enviaLocalizacao($localizacao->montar()); }