function Gerar() { $this->campoOculto("ref_cod_matricula", $this->ref_cod_matricula); $this->campoOculto("ref_cod_turma", $this->ref_cod_turma); $this->campoOculto("ref_ref_cod_escola", $this->ref_ref_cod_escola); $this->campoOculto("ref_ref_cod_serie", $this->ref_ref_cod_serie); $this->campoOculto("ref_cod_curso", $this->ref_cod_curso); $this->campoOculto("ref_cod_aluno", $this->ref_cod_aluno); $this->campoOculto("ref_sequencial_matricula_turma", $this->ref_sequencial_matricula_turma); $this->campoOculto("reprova_falta", $this->reprova_falta); $obj_matricula = new clsPmieducarMatricula($this->ref_cod_matricula); $det_matricula = $obj_matricula->detalhe(); $this->mat_modulo = $det_matricula["modulo"]; $this->situacao = $det_matricula["aprovado"]; if ($this->ref_ref_cod_serie) { $ano_matricula = $det_matricula["ano"]; // busca o ano em q a escola esta em andamento $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo(); $lst_ano_letivo = $obj_ano_letivo->lista($this->ref_ref_cod_escola, null, null, null, 1, null, null, null, null, 1); if (is_array($lst_ano_letivo)) { $det_ano_letivo = array_shift($lst_ano_letivo); $ano_letivo = $det_ano_letivo["ano"]; if ($ano_letivo != $ano_matricula) { header("Location: educar_falta_nota_aluno_lst.php"); die; } } else { $this->mensagem = "Não foi possível encontrar o Ano Letivo."; return false; } } $obj_aluno = new clsPmieducarAluno(); $lst_aluno = $obj_aluno->lista($this->ref_cod_aluno, null, null, null, null, null, null, null, null, null, 1); if (is_array($lst_aluno)) { $det_aluno = array_shift($lst_aluno); $this->nm_aluno = $det_aluno["nome_aluno"]; $this->campoRotulo("nm_aluno", "Aluno", $this->nm_aluno); } $obj_curso = new clsPmieducarCurso($this->ref_cod_curso); $det_curso = $obj_curso->detalhe(); $this->ref_cod_instituicao = $det_curso["ref_cod_instituicao"]; $this->ref_cod_tipo_avaliacao = $det_curso["ref_cod_tipo_avaliacao"]; $this->media = $det_curso["media"]; $this->media_exame = $det_curso["media_exame"]; $this->falta_ch_globalizada = $det_curso["falta_ch_globalizada"]; $this->campoOculto("ref_cod_instituicao", $this->ref_cod_instituicao); $this->campoOculto("ref_cod_tipo_avaliacao", $this->ref_cod_tipo_avaliacao); $this->campoOculto("media", $this->media); $this->campoOculto("media_exame", $this->media_exame); $this->campoOculto("falta_ch_globalizada", $this->falta_ch_globalizada); // verifico qual o tipo de avaliacao usado no curso $obj_tipo_avaliacao = new clsPmieducarTipoAvaliacao($this->ref_cod_tipo_avaliacao); $det_tipo_avaliacao = $obj_tipo_avaliacao->detalhe(); $this->conceitual = $det_tipo_avaliacao["conceitual"]; $this->campoOculto("conceitual", $this->conceitual); // lista todos os valores do tipo de avaliacao do curso $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores(); $obj_avaliacao_valores->setOrderby("valor ASC"); $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao); if (is_array($lst_avaliacao_valores)) { $opcoes_valores = array("" => "Selecione"); $opcoes_valores_remover = array("-1" => "Remover Nota"); foreach ($lst_avaliacao_valores as $valores) { $opcoes_valores[$valores['sequencial']] = $valores["nome"]; $opcoes_valores_remover[$valores['sequencial']] = $valores["nome"]; } $opcoes_valores_ = $opcoes_valores; } //************************************* MATRICULADO NUMA SERIE *************************************// if ($this->ref_ref_cod_serie) { // busca o ano em q a escola esta em andamento $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo(); $lst_ano_letivo = $obj_ano_letivo->lista($this->ref_ref_cod_escola, null, null, null, 1, null, null, null, null, 1); if (is_array($lst_ano_letivo)) { $det_ano_letivo = array_shift($lst_ano_letivo); $this->ano_letivo = $det_ano_letivo["ano"]; $this->campoOculto("ano_letivo", $this->ano_letivo); } $this->padrao_ano_escolar = $det_curso["padrao_ano_escolar"]; $this->campoOculto("padrao_ano_escolar", $this->padrao_ano_escolar); // Caso o curso siga o padrao da escola if ($this->padrao_ano_escolar) { $obj_ano_letivo_modulo = new clsPmieducarAnoLetivoModulo(); $lst_ano_letivo_modulo = $obj_ano_letivo_modulo->lista($this->ano_letivo, $this->ref_ref_cod_escola); if (is_array($lst_ano_letivo_modulo)) { // guarda a qtd de modulos a serem cursados $this->qtd_modulos = count($lst_ano_letivo_modulo); } } else { $obj_turma_modulo = new clsPmieducarTurmaModulo(); $lst_turma_modulo = $obj_turma_modulo->lista($this->ref_cod_turma); if (is_array($lst_turma_modulo)) { // guarda a qtd de modulos a serem cursados $this->qtd_modulos = count($lst_turma_modulo); } } // Armazena as disciplinas em que o aluno esta dispensado $obj_dispensa = new clsPmieducarDispensaDisciplina(); $lst_dispensa = $obj_dispensa->lista($this->ref_cod_matricula, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, null, null, null, null, null, null, null, 1); if (is_array($lst_dispensa)) { foreach ($lst_dispensa as $key => $disciplina) { $dispensa[$disciplina["ref_cod_disciplina"]] = $disciplina["ref_cod_disciplina"]; } } $obj_esd = new clsPmieducarEscolaSerieDisciplina(); $obj_esd->setOrderby("nm_disciplina"); $lst_disciplinas = $obj_esd->lista($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, 1, true); // CASO SEJA EDITAR if ($this->modulo) { $obj_nota_aluno = new clsPmieducarNotaAluno(); $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, $this->ref_cod_matricula, null, null, null, null, null, null, 1, $this->modulo); if (is_array($lst_nota_aluno)) { foreach ($lst_nota_aluno as $key => $campo) { $lst_disciplina[$campo['ref_cod_disciplina']]['cod_nota_aluno'] = $campo['cod_nota_aluno']; if ($campo['nota']) { $lst_disciplina[$campo['ref_cod_disciplina']]['nota'] = $campo['nota']; } else { $lst_disciplina[$campo['ref_cod_disciplina']]['nota'] = $campo['ref_sequencial']; } } } if ($this->falta_ch_globalizada) { $obj_faltas = new clsPmieducarFaltas(); $lst_faltas = $obj_faltas->lista($this->ref_cod_matricula, $this->modulo); if (is_array($lst_faltas)) { $det_faltas = array_shift($lst_faltas); $faltas = $det_faltas['falta']; } } else { $obj_falta_aluno = new clsPmieducarFaltaAluno(); $lst_falta_aluno = $obj_falta_aluno->lista(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, $this->ref_cod_matricula, null, null, null, null, null, 1, $this->modulo); if (is_array($lst_falta_aluno)) { foreach ($lst_falta_aluno as $key => $campo) { $lst_disciplina[$campo['ref_cod_disciplina']]['cod_falta_aluno'] = $campo['cod_falta_aluno']; $lst_disciplina[$campo['ref_cod_disciplina']]['faltas'] = $campo['faltas']; } } } } else { // Armazena as disciplinas que estao ainda sem nota no modulo $com_nota = array(); if (is_array($lst_disciplinas)) { foreach ($lst_disciplinas as $key => $disciplinas) { if (!$dispensa[$disciplinas["ref_cod_disciplina"]]) { $obj_nota_aluno = new clsPmieducarNotaAluno(); $qtd_notas = $obj_nota_aluno->getQtdNotas($this->ref_ref_cod_escola, $this->ref_ref_cod_serie, $disciplinas["ref_cod_disciplina"], $this->ref_cod_matricula); if ($qtd_notas >= $this->mat_modulo) { $com_nota[$disciplinas["ref_cod_disciplina"]] = $qtd_notas; } } } } // $this->mat_modulo++; $this->modulo = $this->mat_modulo; } $this->campoOculto("mat_modulo", $this->mat_modulo); $this->campoRotulo("modulo_", "Módulo", $this->modulo); $this->campoOculto("modulo", $this->modulo); // caso o aluno esteja de EXAME if ($this->qtd_modulos < $this->modulo) { if (is_array($lst_disciplinas)) { foreach ($lst_disciplinas as $valor) { $obj_nota_aluno = new clsPmieducarNotaAluno(); $obj_nota_aluno->setOrderby("modulo ASC"); // lista todas as notas do aluno em uma determinada disciplina $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $valor["ref_cod_disciplina"], $this->ref_cod_matricula, null, null, null, null, null, null, 1); if (is_array($lst_nota_aluno)) { // guarda as notas do aluno foreach ($lst_nota_aluno as $key => $nota_aluno) { if ($this->qtd_modulos > $key) { $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"]); $det_avaliacao_valores = $obj_avaliacao_valores->detalhe(); $soma_notas[$valor["ref_cod_disciplina"]][$key] = $det_avaliacao_valores["valor"]; } } } } } // calcula a nota media do aluno if (is_array($soma_notas)) { foreach ($soma_notas as $disciplina => $notas) { foreach ($notas as $nota) { $nota_media_aluno[$disciplina] += $nota; } $nota_media_aluno[$disciplina] /= $this->modulo - 1; } // verifica se o aluno esta a baixo da media, // caso positivo e o curso possua exame, dexa aluno em exame foreach ($nota_media_aluno as $disciplina => $nota) { /* $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores(); $lst_avaliacao_valores = $obj_avaliacao_valores->lista( $this->ref_cod_tipo_avaliacao,null,null,null,$nota,$nota ); if ( is_array($lst_avaliacao_valores) ) { $det_avaliacao_valores = array_shift($lst_avaliacao_valores); $valor = $det_avaliacao_valores["valor"]; if ($valor < $this->media && $this->media_exame) $aluno_exame_disciplina[] = $disciplina; } */ if ($nota < $this->media && $this->media_exame) { $aluno_exame_disciplina[] = $disciplina; } } } } // caso aluno esteja de EXAME e a avaliacao NAO eh conceitual if ($this->qtd_modulos < $this->modulo && !$this->conceitual) { $qtd_disciplinas_aluno_exame = 0; foreach ($aluno_exame_disciplina as $key => $disciplina) { if (!$dispensa[$disciplina] && !$com_nota[$disciplina]) { $qtd_disciplinas_aluno_exame++; $obj_disciplina = new clsPmieducarDisciplina($disciplina); $det_disciplina = $obj_disciplina->detalhe(); $nm_disciplina = $det_disciplina["nm_disciplina"]; if ($lst_disciplina[$disciplina]['nota']) { $lst_disciplina[$disciplina]['nota'] = number_format($lst_disciplina[$disciplina]['nota'], 2, ",", "."); } $this->campoTextoInv("nm_disciplina_{$det_disciplina["nm_disciplina"]}", "Disciplina", $nm_disciplina, 30, 255, false, false, true); $this->campoOculto("disciplina_modulo[{$key}][ref_cod_disciplina]", $disciplina, ""); $this->campoOculto("disciplina_modulo[{$key}][cod_nota_aluno]", $lst_disciplina[$disciplina]['cod_nota_aluno']); // $this->campoLista( "disciplina_modulo[{$key}][nota]", " Nota Exame", $opcoes_valores, $lst_disciplina[$disciplina]['nota'] ); /** * deixa obrigatorio em caso de edicao somente as notas que ja tinham sido * preenchidas */ $prenche_edicao_obrigatorio = $lst_disciplina[$disciplina]['nota'] || strtolower($this->tipoacao) == 'novo' ? true : false; $this->campoMonetario("disciplina_modulo[{$key}][nota]", " Nota Exame", $lst_disciplina[$disciplina]['nota'], 5, 5, $prenche_edicao_obrigatorio); } $this->campoOculto("qtd_disciplinas_aluno_exame", $qtd_disciplinas_aluno_exame); $this->campoOculto("aluno_esta_em_exame", 1); } } else { // echo "<br> NORMAL"; if (is_array($lst_disciplinas)) { // falta na chamada EH globalizada if ($this->falta_ch_globalizada) { // echo "<br> FALTA GLOBALIZADA"; foreach ($lst_disciplinas as $key => $disciplinas) { if (!$dispensa[$disciplinas["ref_cod_disciplina"]] && !$com_nota[$disciplinas["ref_cod_disciplina"]]) { $obj_disciplina = new clsPmieducarDisciplina($disciplinas["ref_cod_disciplina"]); $det_disciplina = $obj_disciplina->detalhe(); $nm_disciplina = $det_disciplina["nm_disciplina"]; $this->campoTextoInv("nm_disciplina_{$nm_disciplina}", "Disciplina", $nm_disciplina, 30, 255, false, false, true); $this->campoOculto("disciplina_modulo[{$key}][ref_cod_disciplina]", $disciplinas["ref_cod_disciplina"]); $this->campoOculto("disciplina_modulo[{$key}][cod_nota_aluno]", $lst_disciplina[$disciplinas["ref_cod_disciplina"]]['cod_nota_aluno']); /** * deixa obrigatorio em caso de edicao somente as notas que ja tinham sido * preenchidas */ $prenche_edicao_obrigatorio = $lst_disciplina[$disciplinas["ref_cod_disciplina"]]['nota'] || strtolower($this->tipoacao) == 'novo' ? true : false; /** * existe nota? mostra a opção para remove-la */ if ($lst_disciplina[$disciplinas["ref_cod_disciplina"]]['nota'] && $this->mat_modulo <= $this->modulo + 1) { $opcoes_valores = $opcoes_valores_remover; } $this->campoLista("disciplina_modulo[{$key}][nota]", " Nota", $opcoes_valores, $lst_disciplina[$disciplinas["ref_cod_disciplina"]]['nota'], "", false, "", "", false, $prenche_edicao_obrigatorio); $opcoes_valores = $opcoes_valores_; } } $this->campoNumero("total_faltas", " Faltas", $faltas, 2, 2, true); } else { // echo "<br> FALTA NAO GLOBALIZADA"; foreach ($lst_disciplinas as $key => $disciplinas) { if (!$dispensa[$disciplinas["ref_cod_disciplina"]] && !$com_nota[$disciplinas["ref_cod_disciplina"]]) { $obj_disciplina = new clsPmieducarDisciplina($disciplinas["ref_cod_disciplina"]); $det_disciplina = $obj_disciplina->detalhe(); $nm_disciplina = $det_disciplina["nm_disciplina"]; $apura_falta = $det_disciplina["apura_falta"]; $this->campoTextoInv("nm_disciplina_{$det_disciplina["nm_disciplina"]}", "Disciplina", $nm_disciplina, 30, 255, false, false, true); $this->campoOculto("disciplina_modulo[{$key}][ref_cod_disciplina]", $disciplinas["ref_cod_disciplina"]); $this->campoOculto("disciplina_modulo[{$key}][cod_nota_aluno]", $lst_disciplina[$disciplinas["ref_cod_disciplina"]]['cod_nota_aluno']); /** * deixa obrigatorio em caso de edicao somente as notas que ja tinham sido * preenchidas */ $prenche_edicao_obrigatorio = $lst_disciplina[$disciplinas["ref_cod_disciplina"]]['nota'] || strtolower($this->tipoacao) == 'novo' ? true : false; /** * existe nota? mostra a opção para remove-la */ if ($lst_disciplina[$disciplinas["ref_cod_disciplina"]]['nota'] && $this->mat_modulo <= $this->modulo + 1) { $opcoes_valores = $opcoes_valores_remover; } if ($apura_falta) { $this->campoLista("disciplina_modulo[{$key}][nota]", " Nota", $opcoes_valores, $lst_disciplina[$disciplinas["ref_cod_disciplina"]]['nota'], "", true, "", "", false, $prenche_edicao_obrigatorio); $this->campoOculto("disciplina_modulo[{$key}][cod_falta_aluno]", $lst_disciplina[$disciplinas["ref_cod_disciplina"]]['cod_falta_aluno']); $this->campoNumero("disciplina_modulo[{$key}][faltas]", " Faltas", $lst_disciplina[$disciplinas["ref_cod_disciplina"]]['faltas'], 2, 2, $prenche_edicao_obrigatorio); } else { $this->campoLista("disciplina_modulo[{$key}][nota]", " Nota", $opcoes_valores, $lst_disciplina[$disciplinas["ref_cod_disciplina"]]['nota'], "", false, "", "", false, $prenche_edicao_obrigatorio); } $opcoes_valores = $opcoes_valores_; } } } } // caso seja o ultimo modulo e a avaliacao seja conceitual if ($this->qtd_modulos == $this->modulo && $this->conceitual) { $opcoes = array("" => "Selecione", 1 => "Aprovado", 2 => "Reprovado"); $this->campoLista("aprovado", "Situação", $opcoes, $this->situacao); } } } else { $obj_turma_modulo = new clsPmieducarTurmaModulo(); $obj_turma_modulo->setOrderby("data_fim DESC"); $lst_turma_modulo = $obj_turma_modulo->lista($this->ref_cod_turma); if (is_array($lst_turma_modulo)) { // guarda a qtd de modulos a serem cursados $this->qtd_modulos = count($lst_turma_modulo); // armazena o ano letivo pela maior data do modulo $det_turma_modulo = array_shift($lst_turma_modulo); $this->ano_letivo = dataFromPgToBr($det_turma_modulo["data_fim"], "Y"); $this->campoOculto("ano_letivo", $this->ano_letivo); } $this->campoOculto("qtd_modulos", $this->qtd_modulos); $obj_disciplinas = new clsPmieducarDisciplina(); $lst_disciplinas = $obj_disciplinas->lista(null, null, null, null, null, null, null, null, null, null, null, null, 1, null, $this->ref_cod_curso); if ($this->modulo) { $obj_nota_aluno = new clsPmieducarNotaAluno(); $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, null, null, null, $this->ref_cod_matricula, null, null, null, null, null, null, 1, $this->modulo); if (is_array($lst_nota_aluno)) { foreach ($lst_nota_aluno as $key => $campo) { $lst_disciplina[$campo['ref_cod_curso_disciplina']]['cod_nota_aluno'] = $campo['cod_nota_aluno']; if ($campo['nota']) { $lst_disciplina[$campo['ref_cod_curso_disciplina']]['nota'] = $campo['nota']; } else { $lst_disciplina[$campo['ref_cod_curso_disciplina']]['nota'] = $campo['ref_sequencial']; } } } if ($this->falta_ch_globalizada) { $obj_faltas = new clsPmieducarFaltas(); $lst_faltas = $obj_faltas->lista($this->ref_cod_matricula, $this->modulo); if (is_array($lst_faltas)) { $det_faltas = array_shift($lst_faltas); $faltas = $det_faltas['falta']; } } else { $obj_falta_aluno = new clsPmieducarFaltaAluno(); $lst_falta_aluno = $obj_falta_aluno->lista(null, null, null, null, null, null, $this->ref_cod_matricula, null, null, null, null, null, 1, $this->modulo); if (is_array($lst_falta_aluno)) { foreach ($lst_falta_aluno as $key => $campo) { $lst_disciplina[$campo['ref_cod_curso_disciplina']]['cod_falta_aluno'] = $campo['cod_falta_aluno']; $lst_disciplina[$campo['ref_cod_curso_disciplina']]['faltas'] = $campo['faltas']; } } } } else { // Armazena as disciplinas que estao ainda sem nota no modulo $com_nota = array(); if (is_array($lst_disciplinas)) { foreach ($lst_disciplinas as $key => $disciplinas) { $obj_nota_aluno = new clsPmieducarNotaAluno(); $qtd_notas = $obj_nota_aluno->getQtdNotas(null, null, null, $this->ref_cod_matricula, $disciplinas["cod_disciplina"]); if ($qtd_notas >= $this->mat_modulo) { $com_nota[$disciplinas["cod_disciplina"]] = $qtd_notas; } } } // $this->mat_modulo++; $this->modulo = $this->mat_modulo; } $this->campoOculto("mat_modulo", $this->mat_modulo); $this->campoRotulo("modulo_", "Módulo", $this->modulo); $this->campoOculto("modulo", $this->modulo); // caso o aluno esteja de EXAME if ($this->qtd_modulos < $this->modulo) { if (is_array($lst_disciplinas)) { foreach ($lst_disciplinas as $valor) { $obj_nota_aluno = new clsPmieducarNotaAluno(); $obj_nota_aluno->setOrderby("modulo ASC"); // lista todas as notas do aluno em uma determinada disciplina $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, null, null, null, $this->ref_cod_matricula, null, null, null, null, null, null, 1, null, $valor["cod_disciplina"]); if (is_array($lst_nota_aluno)) { // guarda as notas do aluno foreach ($lst_nota_aluno as $key => $nota_aluno) { if ($this->qtd_modulos > $key) { $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"]); $det_avaliacao_valores = $obj_avaliacao_valores->detalhe(); $soma_notas[$valor["cod_disciplina"]][$key] = $det_avaliacao_valores["valor"]; } } } } } // calcula a nota media do aluno if (is_array($soma_notas)) { foreach ($soma_notas as $disciplina => $notas) { foreach ($notas as $nota) { $nota_media_aluno[$disciplina] += $nota; } $nota_media_aluno[$disciplina] /= $this->modulo - 1; } // verifica se o aluno esta a baixo da media, // caso positivo e o curso possua exame, dexa aluno em exame foreach ($nota_media_aluno as $disciplina => $nota) { /* $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores(); $lst_avaliacao_valores = $obj_avaliacao_valores->lista( $this->ref_cod_tipo_avaliacao,null,null,null,$nota,$nota ); if ( is_array($lst_avaliacao_valores) ) { $det_avaliacao_valores = array_shift($lst_avaliacao_valores); $valor = $det_avaliacao_valores["valor"]; if ($valor < $this->media && $this->media_exame) $aluno_exame_disciplina[] = $disciplina; } */ if ($nota < $this->media && $this->media_exame) { $aluno_exame_disciplina[] = $disciplina; } } } } // caso aluno esteja de EXAME e a avaliacao NAO eh conceitual if ($this->qtd_modulos < $this->modulo && !$this->conceitual) { // echo "<br> EXAME CONCEITUAL"; foreach ($aluno_exame_disciplina as $key => $disciplina) { if (!$com_nota[$disciplina]) { $obj_disciplina = new clsPmieducarDisciplina($disciplina); $det_disciplina = $obj_disciplina->detalhe(); $nm_disciplina = $det_disciplina["nm_disciplina"]; if ($lst_disciplina[$disciplina]['nota']) { $lst_disciplina[$disciplina]['nota'] = number_format($lst_disciplina[$disciplina]['nota'], 2, ",", "."); } $this->campoTextoInv("nm_disciplina_{$det_disciplina["nm_disciplina"]}", "Disciplina", $nm_disciplina, 30, 255, false, false, true); $this->campoOculto("disciplina_modulo[{$key}][ref_cod_disciplina]", $disciplina, ""); $this->campoOculto("disciplina_modulo[{$key}][cod_nota_aluno]", $lst_disciplina[$disciplina]['cod_nota_aluno']); // $this->campoLista( "disciplina_modulo[{$key}][nota]", " Nota Exame", $opcoes_valores, $lst_disciplina[$disciplina]['nota'] ); /** * deixa obrigatorio em caso de edicao somente as notas que ja tinham sido * preenchidas */ $prenche_edicao_obrigatorio = $lst_disciplina[$disciplina]['nota'] || strtolower($this->tipoacao) == 'novo' ? true : false; /** * existe nota? mostra a opção para remove-la */ if ($lst_disciplina[$disciplina]['nota'] && $this->mat_modulo <= $this->modulo + 1) { $opcoes_valores = $opcoes_valores_remover; } $this->campoMonetario("disciplina_modulo[{$key}][nota]", " Nota Exame", $lst_disciplina[$disciplina]['nota'], 5, 5, $prenche_edicao_obrigatorio); $opcoes_valores = $opcoes_valores_; } } } else { if (is_array($lst_disciplinas)) { // falta na chamada EH globalizada if ($this->falta_ch_globalizada) { foreach ($lst_disciplinas as $key => $disciplinas) { if (!$com_nota[$disciplinas["cod_disciplina"]]) { $this->campoTextoInv("nm_disciplina_{$disciplinas["nm_disciplina"]}", "Disciplina", $disciplinas["nm_disciplina"], 30, 255, false, false, true); $this->campoOculto("disciplina_modulo[{$key}][ref_cod_disciplina]", $disciplinas["cod_disciplina"]); $this->campoOculto("disciplina_modulo[{$key}][cod_nota_aluno]", $lst_disciplina[$disciplinas["cod_disciplina"]]['cod_nota_aluno']); /** * deixa obrigatorio em caso de edicao somente as notas que ja tinham sido * preenchidas */ $prenche_edicao_obrigatorio = $lst_disciplina[$disciplinas["cod_disciplina"]]['nota'] || strtolower($this->tipoacao) == 'novo' ? true : false; /** * existe nota? mostra a opção para remove-la */ if ($lst_disciplina[$disciplinas["cod_disciplina"]]['nota'] && $this->mat_modulo <= $this->modulo + 1) { $opcoes_valores = $opcoes_valores_remover; } $this->campoLista("disciplina_modulo[{$key}][nota]", " Nota", $opcoes_valores, $lst_disciplina[$disciplinas["cod_disciplina"]]['nota'], "", false, "", "", false, $prenche_edicao_obrigatorio); $opcoes_valores = $opcoes_valores_; } } $this->campoNumero("total_faltas", " Faltas", $faltas, 2, 2, true); } else { foreach ($lst_disciplinas as $key => $disciplinas) { if (!$com_nota[$disciplinas["cod_disciplina"]]) { $this->campoTextoInv("nm_disciplina_{$disciplinas["nm_disciplina"]}", "Disciplina", $disciplinas["nm_disciplina"], 30, 255, false, false, true); $this->campoOculto("disciplina_modulo[{$key}][ref_cod_disciplina]", $disciplinas["cod_disciplina"]); $this->campoOculto("disciplina_modulo[{$key}][cod_nota_aluno]", $lst_disciplina[$disciplinas["cod_disciplina"]]['cod_nota_aluno']); /** * deixa obrigatorio em caso de edicao somente as notas que ja tinham sido * preenchidas */ $prenche_edicao_obrigatorio = $lst_disciplina[$disciplinas["cod_disciplina"]]['nota'] || strtolower($this->tipoacao) == 'novo' ? true : false; /** * existe nota? mostra a opção para remove-la */ if ($lst_disciplina[$disciplinas["cod_disciplina"]]['nota'] && $this->mat_modulo <= $this->modulo + 1) { $opcoes_valores = $opcoes_valores_remover; } if ($disciplinas["apura_falta"]) { $this->campoLista("disciplina_modulo[{$key}][nota]", " Nota", $opcoes_valores, $lst_disciplina[$disciplinas["cod_disciplina"]]['nota'], "", true, "", "", false, $prenche_edicao_obrigatorio); $this->campoOculto("disciplina_modulo[{$key}][cod_falta_aluno]", $lst_disciplina[$disciplinas["cod_disciplina"]]['cod_falta_aluno']); $this->campoNumero("disciplina_modulo[{$key}][faltas]", " Faltas", $lst_disciplina[$disciplinas["cod_disciplina"]]['faltas'], 2, 2, $prenche_edicao_obrigatorio); } else { $this->campoLista("disciplina_modulo[{$key}][nota]", " Nota", $opcoes_valores, $lst_disciplina[$disciplinas["cod_disciplina"]]['nota'], "", false, "", "", false, $prenche_edicao_obrigatorio); } $opcoes_valores = $opcoes_valores_; } } } } // caso seja o ultimo modulo e a avaliacao seja conceitual if ($this->qtd_modulos == $this->modulo && $this->conceitual) { $opcoes = array("" => "Selecione", 1 => "Aprovado", 2 => "Reprovado"); $this->campoLista("aprovado", "Situação", $opcoes, $this->situacao); } } } $this->campoOculto("qtd_modulos", $this->qtd_modulos); }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = 'Turma - Detalhe'; $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet'); $this->cod_turma = $_GET['cod_turma']; $tmp_obj = new clsPmieducarTurma(); $lst_obj = $tmp_obj->lista($this->cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, array('true', 'false')); $registro = array_shift($lst_obj); foreach ($registro as $key => $value) { $this->{$key} = $value; } if (!$registro) { header('Location: educar_turma_lst.php'); die; } if (class_exists('clsPmieducarTurmaTipo')) { $obj_ref_cod_turma_tipo = new clsPmieducarTurmaTipo($registro['ref_cod_turma_tipo']); $det_ref_cod_turma_tipo = $obj_ref_cod_turma_tipo->detalhe(); $registro['ref_cod_turma_tipo'] = $det_ref_cod_turma_tipo['nm_tipo']; } else { $registro['ref_cod_turma_tipo'] = 'Erro na geração'; } if (class_exists('clsPmieducarInfraPredioComodo')) { $obj_ref_cod_infra_predio_comodo = new clsPmieducarInfraPredioComodo($registro['ref_cod_infra_predio_comodo']); $det_ref_cod_infra_predio_comodo = $obj_ref_cod_infra_predio_comodo->detalhe(); $registro['ref_cod_infra_predio_comodo'] = $det_ref_cod_infra_predio_comodo['nm_comodo']; } else { $registro['ref_cod_infra_predio_comodo'] = 'Erro na geração'; } if (class_exists('clsPmieducarInstituicao')) { $obj_cod_instituicao = new clsPmieducarInstituicao($registro['ref_cod_instituicao']); $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe(); $registro['ref_cod_instituicao'] = $obj_cod_instituicao_det['nm_instituicao']; } else { $registro['ref_cod_instituicao'] = 'Erro na geração'; } if (class_exists('clsPmieducarEscola')) { $this->ref_ref_cod_escola = $registro['ref_ref_cod_escola']; $obj_ref_cod_escola = new clsPmieducarEscola($registro['ref_ref_cod_escola']); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $registro['ref_ref_cod_escola'] = $det_ref_cod_escola['nome']; } else { $registro['ref_cod_escola'] = 'Erro na geração'; } if (class_exists('clsPmieducarCurso')) { $obj_ref_cod_curso = new clsPmieducarCurso($registro['ref_cod_curso']); $det_ref_cod_curso = $obj_ref_cod_curso->detalhe(); $registro['ref_cod_curso'] = $det_ref_cod_curso['nm_curso']; $padrao_ano_escolar = $det_ref_cod_curso['padrao_ano_escolar']; } else { $registro['ref_cod_curso'] = 'Erro na geração'; } if (class_exists('clsPmieducarSerie')) { $this->ref_ref_cod_serie = $registro['ref_ref_cod_serie']; $obj_ser = new clsPmieducarSerie($registro['ref_ref_cod_serie']); $det_ser = $obj_ser->detalhe(); $registro['ref_ref_cod_serie'] = $det_ser['nm_serie']; } else { $registro['ref_ref_cod_serie'] = 'Erro na geração'; } $obj_permissoes = new clsPermissoes(); $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { if ($registro['ref_cod_instituicao']) { $this->addDetalhe(array('Instituição', $registro['ref_cod_instituicao'])); } } if ($nivel_usuario == 1 || $nivel_usuario == 2) { if ($registro['ref_ref_cod_escola']) { $this->addDetalhe(array('Escola', $registro['ref_ref_cod_escola'])); } } if ($registro['ref_cod_curso']) { $this->addDetalhe(array('Curso', $registro['ref_cod_curso'])); } if ($registro['ref_ref_cod_serie']) { $this->addDetalhe(array('Série', $registro['ref_ref_cod_serie'])); } if ($registro['ref_cod_regente']) { $obj_pessoa = new clsPessoa_($registro['ref_cod_regente']); $det = $obj_pessoa->detalhe(); $this->addDetalhe(array('Professor/Regente', $det['nome'])); } if ($registro['ref_cod_infra_predio_comodo']) { $this->addDetalhe(array('Sala', $registro['ref_cod_infra_predio_comodo'])); } if ($registro['ref_cod_turma_tipo']) { $this->addDetalhe(array('Tipo de Turma', $registro['ref_cod_turma_tipo'])); } if ($registro['nm_turma']) { $this->addDetalhe(array('Turma', $registro['nm_turma'])); } if ($registro['sgl_turma']) { $this->addDetalhe(array('Sigla', $registro['sgl_turma'])); } if ($registro['max_aluno']) { $this->addDetalhe(array('Máximo de Alunos', $registro['max_aluno'])); } $this->addDetalhe(array('Situação', dbBool($registro['visivel']) ? 'Ativo' : 'Desativo')); if ($registro['multiseriada'] == 1) { if ($registro['multiseriada'] == 1) { $registro['multiseriada'] = 'sim'; } else { $registro['multiseriada'] = 'não'; } $this->addDetalhe(array('Multi-Seriada', $registro['multiseriada'])); $obj_serie_mult = new clsPmieducarSerie($registro['ref_ref_cod_serie_mult']); $det_serie_mult = $obj_serie_mult->detalhe(); $this->addDetalhe(array('Série Multi-Seriada', $det_serie_mult['nm_serie'])); } if ($padrao_ano_escolar == 1) { if ($registro['hora_inicial']) { $registro['hora_inicial'] = date('H:i', strtotime($registro['hora_inicial'])); $this->addDetalhe(array('Hora Inicial', $registro['hora_inicial'])); } if ($registro['hora_final']) { $registro['hora_final'] = date('H:i', strtotime($registro['hora_final'])); $this->addDetalhe(array('Hora Final', $registro['hora_final'])); } if ($registro['hora_inicio_intervalo']) { $registro['hora_inicio_intervalo'] = date('H:i', strtotime($registro['hora_inicio_intervalo'])); $this->addDetalhe(array('Hora Início Intervalo', $registro['hora_inicio_intervalo'])); } if ($registro['hora_fim_intervalo']) { $registro['hora_fim_intervalo'] = date('H:i', strtotime($registro['hora_fim_intervalo'])); $this->addDetalhe(array('Hora Fim Intervalo', $registro['hora_fim_intervalo'])); } } elseif ($padrao_ano_escolar == 0) { $obj = new clsPmieducarTurmaModulo(); $obj->setOrderby('data_inicio ASC'); $lst = $obj->lista($this->cod_turma); if ($lst) { $tabela = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Data Início</b></td> <td bgcolor="#A1B3BD"><b>Data Fim</b></td> </tr>'; $cont = 0; foreach ($lst as $valor) { if ($cont % 2 == 0) { $color = ' bgcolor="#E4E9ED" '; } else { $color = ' bgcolor="#FFFFFF" '; } $obj_modulo = new clsPmieducarModulo($valor['ref_cod_modulo']); $det_modulo = $obj_modulo->detalhe(); $nm_modulo = $det_modulo['nm_tipo']; $valor['data_inicio'] = dataFromPgToBr($valor['data_inicio']); $valor['data_fim'] = dataFromPgToBr($valor['data_fim']); $tabela .= sprintf(' <tr> <td %s align=left>%s</td> <td %s align=left>%s</td> <td %s align=left>%s</td> </tr>', $color, $nm_modulo, $color, $valor['data_inicio'], $color, $valor['data_fim']); $cont++; } $tabela .= '</table>'; } if ($tabela) { $this->addDetalhe(array('Módulo', $tabela)); } $dias_da_semana = array('' => 'Selecione', 1 => 'Domingo', 2 => 'Segunda', 3 => 'Terça', 4 => 'Quarta', 5 => 'Quinta', 6 => 'Sexta', 7 => 'Sábado'); $obj = new clsPmieducarTurmaDiaSemana(); $lst = $obj->lista(NULL, $this->cod_turma); if ($lst) { $tabela1 = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Hora Inicial</b></td> <td bgcolor="#A1B3BD"><b>Hora Final</b></td> </tr>'; $cont = 0; foreach ($lst as $valor) { if ($cont % 2 == 0) { $color = ' bgcolor="#E4E9ED" '; } else { $color = ' bgcolor="#FFFFFF" '; } $valor['hora_inicial'] = date('H:i', strtotime($valor['hora_inicial'])); $valor['hora_final'] = date('H:i', strtotime($valor['hora_final'])); $tabela1 .= sprintf("\n <tr>\n <td %s align=left>%s</td>\n <td %s align=left>%s</td>\n <td %s align=left>%s</td>\n </tr>", $color, $dias_da_semana[$valor['dia_semana']], $color, $valor['hora_inicial'], $color, $valor['hora_final']); $cont++; } $tabela1 .= '</table>'; } if ($tabela1) { $this->addDetalhe(array('Dia da Semana', $tabela1)); } } // Recupera os componentes curriculares da turma $componentes = array(); try { $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->cod_turma); } catch (Exception $e) { } $tabela3 = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Carga horária</b></td> </tr>'; $cont = 0; foreach ($componentes as $componente) { $color = $cont++ % 2 == 0 ? ' bgcolor="#E4E9ED" ' : ' bgcolor="#FFFFFF" '; $tabela3 .= sprintf(' <tr> <td %s align="left">%s</td> <td %s align="center">%.0f h</td> </tr>', $color, $componente, $color, $componente->cargaHoraria); } $tabela3 .= '</table>'; $this->addDetalhe(array('Componentes curriculares', $tabela3)); if ($obj_permissoes->permissao_cadastra(586, $this->pessoa_logada, 7)) { $this->url_novo = 'educar_turma_cad.php'; $this->url_editar = 'educar_turma_cad.php?cod_turma=' . $registro['cod_turma']; } $this->url_cancelar = 'educar_turma_lst.php'; $this->largura = '100%'; $localizacao = new LocalizacaoSistema(); $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "Início", "educar_index.php" => "i-Educar - Escola", "" => "Detalhe da turma")); $this->enviaLocalizacao($localizacao->montar()); $this->array_botao[] = 'Reclassificar alunos alfabeticamente'; $this->array_botao_url_script[] = "if(confirm(\"Deseja realmente reclassificar os alunos alfabeticamente?\\nAo utilizar esta opção para esta turma, a ordenação dos alunos no diário e em relatórios que é controlada por ordem de chegada após a data de fechamento da turma (campo Data de fechamento), passará a ter o controle novamente alfabético, desconsiderando a data de fechamento.\"))reclassifica_matriculas({$registro['cod_turma']})"; Portabilis_View_Helper_Application::loadJQueryLib($this); $scripts = array('/modules/Portabilis/Assets/Javascripts/Utils.js', '/modules/Portabilis/Assets/Javascripts/ClientApi.js', '/modules/Cadastro/Assets/Javascripts/TurmaDet.js'); Portabilis_View_Helper_Application::loadJavascript($this, $scripts); }
function Gerar() { $obj_curso = new clsPmieducarCurso($this->ref_cod_curso); $det_curso = $obj_curso->detalhe(); // Carrega as informações necessárias do curso if ($det_curso) { $this->ref_cod_tipo_avaliacao = $det_curso["ref_cod_tipo_avaliacao"]; $this->media = $det_curso["media"]; $this->media_exame = $det_curso["media_exame"]; $this->frequencia_minima = $det_curso["frequencia_minima"]; $this->falta_ch_globalizada = $det_curso["falta_ch_globalizada"]; $this->padrao_ano_escolar = $det_curso["padrao_ano_escolar"]; $this->carga_horaria = $det_curso["carga_horaria"]; $this->hora_falta = $det_curso["hora_falta"]; } // Verifica se vai seguir o padrão do ano escolar da escola if ($this->padrao_ano_escolar == 1) { $obj_escola_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_ref_cod_escola, null, null, null, 1, null, null, 1); $det_escola_ano_letivo = $obj_escola_ano_letivo->detalhe(); // Carrega o ano letivo if (is_array($det_escola_ano_letivo)) { $this->ano_letivo = $det_escola_ano_letivo["ano"]; } $obj_ano_letivo_modulo = new clsPmieducarAnoLetivoModulo(); $obj_ano_letivo_modulo->setOrderby("data_fim"); $lst_ano_letivo_modulo = $obj_ano_letivo_modulo->lista($this->ano_letivo, $this->ref_ref_cod_escola); if (is_array($lst_ano_letivo_modulo)) { $obj_turma_disciplina = new clsPmieducarTurmaDisciplina(); $lst_turma_disciplina = $obj_turma_disciplina->lista($this->ref_cod_turma); // Carrega a quantidade de disciplinas da turma $this->qtd_disciplinas = count($lst_turma_disciplina); // echo "<pre>"; // print_r($lst_turma_disciplina); if ($lst_turma_disciplina) { foreach ($lst_turma_disciplina as $disciplina) { // Carrega o código das disciplinas da turma $this->cod_disciplinas[] = $disciplina["ref_cod_disciplina"]; } // Carrega a quantidade de módulos do ano letivo $this->qtd_modulos = count($lst_ano_letivo_modulo); $cont = 1; if (is_array($lst_ano_letivo_modulo)) { // Busca em qual módulo a turma está //$resultado = $obj_turma_modulo->numModulo( $cont, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->cod_disciplinas, $this->ref_cod_turma, $this->ref_cod_turma ); $obj_matriculas = new clsPmieducarMatriculaTurma(); $lst_matriculas = $obj_matriculas->lista(null, $this->ref_cod_turma, null, null, null, null, null, null, 1, $this->ref_ref_cod_serie, $this->ref_cod_curso, $this->ref_ref_cod_escola); $resultado = 0; if (is_array($lst_matriculas)) { foreach ($lst_matriculas as $registro) { $obj_nota_aluno = new clsPmieducarNotaAluno(); $aux_min = $obj_nota_aluno->retornaModuloAluno($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $registro["ref_cod_matricula"]); $aux_min = $aux_min + 1; if ($resultado == 0) { $resultado = $aux_min; } else { if ($resultado > $aux_min) { $resultado = $aux_min; } } } } $this->num_modulo = $resultado; foreach ($lst_ano_letivo_modulo as $registro) { // Verifica se a turma está num módulo da turma if ($resultado == $registro["sequencial"]) { $obj_modulo = new clsPmieducarModulo($registro["ref_cod_modulo"]); $det_modulo = $obj_modulo->detalhe(); // Carrega o nome do módulo no qual a turma se encontra $this->modulo = $det_modulo["nm_tipo"]; $obj_turma_disciplina = new clsPmieducarTurmaDisciplina(); $obj_turma_disciplina->setOrderby("ref_cod_disciplina"); // Carrega o código das disciplinas da turma $lst_turma_disciplina = $obj_turma_disciplina->lista($this->ref_cod_turma); if (is_array($lst_turma_disciplina)) { $cont = 0; foreach ($lst_turma_disciplina as $valores) { $obj_disciplina = new clsPmieducarDisciplina($valores["ref_cod_disciplina"]); $det_disciplina = $obj_disciplina->detalhe(); if ($det_disciplina) { // Carrega a informação se a disciplina apura falta ou não $this->lst_apura_falta["{$det_disciplina["cod_disciplina"]}"] = $det_disciplina["apura_falta"]; $obj_notas = new clsPmieducarNotaAluno(); // Carrega a quantidade de notas por aluno de uma turma numa determinada disciplina $lst_notas = $obj_notas->retornaDiscMod($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $det_disciplina["cod_disciplina"], $this->ref_cod_turma, $this->ref_cod_turma, null, true); if ($cont == 0) { $num_aux = $lst_notas; } else { if ($lst_notas < $num_aux) { $num_aux = $lst_notas; } } } $cont++; } /*if ( is_numeric( $lst_notas ) ) { $this->num_modulo = $lst_notas + 1; } else { $this->num_modulo = 1; }*/ } // Carrega o número do módulo em que a turma está // $this->num_modulo = ( $resultado + 1 ); break; } else { if ($resultado > $this->qtd_modulos) { // Carrega o nome do módulo no qual a turma se encontra como "Exame" $this->modulo = "Exame"; // Carrega o número do módulo igual a quantidade de módulos da turma mais 1 $this->num_modulo = $resultado + 1; break; } } $cont++; } } } } } else { $obj_turma_modulo = new clsPmieducarTurmaModulo(); $obj_turma_modulo->setOrderby("data_fim"); $lst_turma_modulo = $obj_turma_modulo->lista($this->ref_cod_turma); $obj_matriculas = new clsPmieducarMatriculaTurma(); $lst_matriculas = $obj_matriculas->lista(null, $this->ref_cod_turma, null, null, null, null, null, null, 1, $this->ref_ref_cod_serie, $this->ref_cod_curso, $this->ref_ref_cod_escola); $resultado = 0; if (is_array($lst_matriculas)) { foreach ($lst_matriculas as $registro) { $obj_nota_aluno = new clsPmieducarNotaAluno(); $aux_min = $obj_nota_aluno->retornaModuloAluno($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $registro["ref_cod_matricula"]); $aux_min = $aux_min + 1; if ($resultado == 0) { $resultado = $aux_min; } else { if ($resultado > $aux_min) { $resultado = $aux_min; } } } } $this->num_modulo = $resultado; if (is_array($lst_turma_modulo)) { $obj_turma_disciplina = new clsPmieducarTurmaDisciplina(); $lst_turma_disciplina = $obj_turma_disciplina->lista($this->ref_cod_turma); // Carrega a quantidade de disciplinas da turma $this->qtd_disciplinas = count($lst_turma_disciplina); if ($lst_turma_disciplina) { foreach ($lst_turma_disciplina as $disciplina) { // Carrega o código das disciplinas da turma $this->cod_disciplinas[] = $disciplina["ref_cod_disciplina"]; $obj_notas = new clsPmieducarNotaAluno(); // Carrega a quantidade de notas por aluno de uma turma numa determinada disciplina $lst_notas = $obj_notas->retornaDiscMod($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $disciplina["ref_cod_disciplina"], $this->ref_cod_turma, $this->ref_cod_turma, null, true); if ($cont == 0) { $num_aux = $lst_notas; } else { if ($lst_notas < $num_aux) { $num_aux = $lst_notas; } } } // Carrega a quantidade de módulos da turma $this->qtd_modulos = count($lst_turma_modulo); $cont = 1; foreach ($lst_turma_modulo as $registro) { $obj_turma_modulo = new clsPmieducarTurmaModulo(); // Busca em qual módulo a turma está // $resultado = $obj_turma_modulo->numModulo( $cont, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->cod_disciplinas, $this->ref_cod_turma, $this->ref_cod_turma ); // Verifica se a turma está num módulo da turma if ($resultado == $cont) { $obj_modulo = new clsPmieducarModulo($registro["ref_cod_modulo"]); $det_modulo = $obj_modulo->detalhe(); // Carrega o nome do módulo no qual a turma se encontra $this->modulo = $det_modulo["nm_tipo"]; // Carrega o número do módulo no qual a turma se encontra $this->num_modulo = $resultado; break; } else { if ($resultado > $this->qtd_modulos) { // Carrega o nome do módulo no qual a turma se encontra como "Exame" $this->modulo = "Exame"; // Carrega o número do módulo no qual a turma se encontra igual ao número de módulos da turma mais 1 $this->num_modulo = $resultado + 1; break; } } $cont++; } } } } // echo "<pre>"; // print_r( $this->cod_disciplinas ); $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo(); $lst_ano_letivo = $obj_ano_letivo->lista($this->ref_ref_cod_escola, null, null, null, 1, null, null, null, null, 1); if (is_array($lst_ano_letivo)) { $det_ano_letivo = array_shift($lst_ano_letivo); // Carrega o ano letivo em que a turma se encontra $this->ano_letivo = $det_ano_letivo["ano"]; } $obj_tipo_avaliacao = new clsPmieducarTipoAvaliacao($this->ref_cod_tipo_avaliacao); $det_tipo_avaliacao = $obj_tipo_avaliacao->detalhe(); // Carrega o tipo de avaliação if ($det_tipo_avaliacao) { $this->conceitual = $det_tipo_avaliacao["conceitual"]; } // Carrega todos os valores do tipo de avaliação do curso $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores(); $obj_avaliacao_valores->setOrderby("valor ASC"); $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao); if (is_array($lst_avaliacao_valores)) { $opcoes_valores = array("" => "Selecione"); foreach ($lst_avaliacao_valores as $valores) { $opcoes_valores[$valores['sequencial']] = $valores["nome"]; } } $obj_turma_disciplina = new clsPmieducarTurmaDisciplina(); $obj_turma_disciplina->setOrderby("ref_cod_disciplina"); // Carrega o código das disciplinas da turma $lst_turma_disciplina = $obj_turma_disciplina->lista($this->ref_cod_turma); //echo "<pre>"; //print_r( $lst_turma_disciplina ); if (is_array($lst_turma_disciplina)) { // Carrega a quantidade de disciplinas da turma $this->qtd_disciplinas = count($lst_turma_disciplina); $opcoes_disciplinas = array("" => "Selecione"); foreach ($lst_turma_disciplina as $valores) { $obj_disciplina = new clsPmieducarDisciplina($valores["ref_cod_disciplina"]); $det_disciplina = $obj_disciplina->detalhe(); if ($det_disciplina) { // Carrega a informação se a disciplina apura falta ou não $this->lst_apura_falta["{$det_disciplina["cod_disciplina"]}"] = $det_disciplina["apura_falta"]; //$obj_notas = new clsPmieducarNotaAluno(); // Carrega a quantidade de notas por aluno de uma turma numa determinada disciplina //$lst_notas = $obj_notas->retornaDiscMod( $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $det_disciplina["cod_disciplina"], $this->ref_cod_turma, $this->ref_cod_turma, null, true ); // Verifica se a quantidade de notas por aluno é diferente do número do módulo em que a turma se encontra //echo "{$lst_notas} != {$this->num_modulo}<br>"; //if ( $lst_notas != $this->num_modulo ) //{ $opcoes_disciplinas[$det_disciplina["cod_disciplina"]] = $det_disciplina["nm_disciplina"]; //} } } } //echo "<pre>"; //print_r( $opcoes_disciplinas ); // Verifica se deve ser exibida a página para classificar os alunos if ($this->classifica == "S") { // Verifica se a turma terminou o último módulo ou se está no último módulo if ($this->num_modulo >= $this->qtd_modulos) { $obj_nota_aluno = new clsPmieducarNotaAluno(); // Carrega as médias de cada disciplina de cada aluno $lst_exame = $obj_nota_aluno->listaMedias($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $this->qtd_modulos, $this->ref_cod_curso, true, true, true); if (is_array($lst_exame)) { $lst_disciplina_aprovacao = array("" => "Selecione"); foreach ($lst_exame as $exame) { // Verifica se o aluno possui freqüência abaixo da freqüência mínima if (100 - $exame["faltas"] < $this->frequencia_minima) { $obj_disciplina = new clsPmieducarDisciplina($exame["disc_ref_ref_cod_disciplina"]); $det_disciplina = $obj_disciplina->detalhe(); if ($det_disciplina) { // Carrega a disciplina que possui alunos com freqüência abaixo da freqüência mínima $lst_disciplina_aprovacao["{$exame["disc_ref_ref_cod_disciplina"]}"] = $det_disciplina["nm_disciplina"]; // Carrega as informações referentes a disciplina e ao aluno que possui freqüência abaixo da freqüência mínima $lst_aprovacao[] = $exame; } } } foreach ($lst_aprovacao as $classificacao) { if ($classificacao["media"] < $this->media) { $lst_classificacao[$classificacao["ref_ref_cod_matricula"]]["ref_ref_cod_matricula"] = $classificacao["ref_ref_cod_matricula"]; $lst_classificacao[$classificacao["ref_ref_cod_matricula"]]["exibe"] = "S"; } else { if ($lst_classificacao[$classificacao["ref_ref_cod_matricula"]]) { if ($lst_classificacao[$classificacao["ref_ref_cod_matricula"]]["exibe"] != "S") { $lst_classificacao[$classificacao["ref_ref_cod_matricula"]]["ref_ref_cod_matricula"] = $classificacao["ref_ref_cod_matricula"]; $lst_classificacao[$classificacao["ref_ref_cod_matricula"]]["exibe"] = "N"; } } else { $lst_classificacao[$classificacao["ref_ref_cod_matricula"]]["ref_ref_cod_matricula"] = $classificacao["ref_ref_cod_matricula"]; $lst_classificacao[$classificacao["ref_ref_cod_matricula"]]["exibe"] = "N"; } } } foreach ($lst_classificacao as $registro) { foreach ($lst_exame as $exame) { if ($exame["ref_ref_cod_matricula"] == $registro["ref_ref_cod_matricula"]) { if ($exame["media"] < $this->media) { if ($registro["exibe"] == "N") { $lst_classificacao[$registro["ref_ref_cod_matricula"]]["ref_ref_cod_matricula"] = $registro["ref_ref_cod_matricula"]; $lst_classificacao[$registro["ref_ref_cod_matricula"]]["exibe"] = "S"; } } } } } $opcoes_disciplinas = array_unique($lst_disciplina_aprovacao); } // Verifica se existem alunos com a freqüência abaixo da freqüência mínima if (is_array($lst_aprovacao)) { foreach ($lst_classificacao as $registro) { $obj_matricula = new clsPmieducarMatricula($registro["ref_ref_cod_matricula"], null, null, null, null, null, null, null, null, null, 1, null, 1, $this->modulo); $det_matricula = $obj_matricula->detalhe(); if ($det_matricula) { $obj_aluno = new clsPmieducarAluno($det_matricula["ref_cod_aluno"]); $det_aluno = $obj_aluno->detalhe(); if ($det_aluno) { $obj_pessoa = new clsPessoa_($det_aluno["ref_idpes"]); $det_pessoa = $obj_pessoa->detalhe(); $obj_dispensa = new clsPmieducarDispensaDisciplina($this->ref_cod_turma, $det_matricula["cod_matricula"], $this->ref_cod_turma, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, null, null, null, null, null, 1); $det_dispensa = $obj_dispensa->detalhe(); if (is_numeric($this->ref_cod_tipo_avaliacao)) { $obj_tipo_avaliacao = new clsPmieducarTipoAvaliacao($this->ref_cod_tipo_avaliacao, null, null, null, null, null, 1, null, $this->ref_cod_instituicao); $det_tipo_avaliacao = $obj_tipo_avaliacao->detalhe(); // Verifica se o tipo de avaliação não é conceitual if ($det_tipo_avaliacao["conceitual"] == 0) { $this->campoOculto("nm_aluno_{$det_pessoa["idpes"]}", $det_pessoa["nome"]); $this->campoTextoInv("nm_aluno_{$det_pessoa["idpes"]}_", "Aluno", $det_pessoa["nome"], 30, 255, false, false, true); $this->lst_matriculas[] = array("{$det_matricula["ref_cod_aluno"]}", "{$det_pessoa["idpes"]}", "{$det_matricula["cod_matricula"]}"); // Verifica se a falta não é globalizada e se não está na última disciplina if (!($this->falta_ch_globalizada == 1 && $this->qtd_disciplinas > 1)) { //$this->campoTextoInv( "faltas_{$det_pessoa["idpes"]}_", "Faltas", $registro["faltas"], 5, 5, false, false, true ); // Verifica se a média é maior ou igual a média mínima if ($registro["exibe"] == "N") { $this->campoCheck("aprovacao_{$det_pessoa["idpes"]}_", " ", 0, "Aprovado"); } else { $this->campoCheck("aprovacao_{$det_pessoa["idpes"]}_", " ", 0, "Exame"); } } } else { $this->campoTexto("nm_aluno_{$det_pessoa["idpes"]}", "Aluno", $det_pessoa["nome"], 30, 255, false, false, false, "", "", "", "onKeyUp", true); } } else { $this->campoTexto("nm_aluno_{$det_pessoa["idpes"]}", "Aluno", $det_pessoa["nome"], 30, 255, false, false, false, "", "", "", "onKeyUp", true); } } } } } } } else { // Verifica se a turma terminou o último módulo if ($this->num_modulo > $this->qtd_modulos) { $obj_nota_aluno = new clsPmieducarNotaAluno(); // Carrega as médias de cada disciplina de cada aluno $lst_exame = $obj_nota_aluno->listaMedias($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $this->qtd_modulos, $this->ref_cod_curso, true, true, false, true); if (is_array($lst_exame)) { $lst_disciplina_aprovacao = array("" => "Selecione"); foreach ($lst_exame as $exame) { $obj_notas = new clsPmieducarNotaAluno(); // Carrega a quantidade de notas por aluno de uma turma numa determinada disciplina $lst_notas = $obj_notas->retornaDiscMod($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $exame["disc_ref_ref_cod_disciplina"], $this->ref_cod_turma, $this->ref_cod_turma, $exame["ref_ref_cod_matricula"]); $obj_dispensa = new clsPmieducarDispensaDisciplina($this->ref_cod_turma, $exame["ref_ref_cod_matricula"], $this->ref_cod_turma, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $exame["disc_ref_ref_cod_disciplina"], null, null, null, null, null, 1); $det_dispensa = $obj_dispensa->detalhe(); // Verifica se a quantiade de notas da disciplina é diferente da quantidade de módulos, se não foi dispensado da disciplina e se a média é menor que a média mínima if ($lst_notas != $this->num_modulo && !is_array($det_dispensa) && $exame["media"] < $this->media) { $obj_disciplina = new clsPmieducarDisciplina($exame["disc_ref_ref_cod_disciplina"]); $det_disciplina = $obj_disciplina->detalhe(); if ($det_disciplina) { // Carrega a disciplina que possui alunos com média abaixo da média mínima $lst_disciplina_aprovacao["{$exame["disc_ref_ref_cod_disciplina"]}"] = $det_disciplina["nm_disciplina"]; } } } $opcoes_disciplinas = array_unique($lst_disciplina_aprovacao); } } $this->campoRotulo("tipo_modulo", "Módulo", $this->modulo); $this->campoRotulo("numero_modulo", "Número do Módulo", $this->num_modulo); // $this->campoTexto( "tipo_modulo", "Módulo", $this->modulo, 30, 255, false, false, false, "", "", "", "onKeyUp", true ); $this->campoLista("ref_cod_disciplina", "Disciplina", $opcoes_disciplinas, $this->ref_cod_disciplina); if (is_numeric($this->ref_cod_disciplina)) { $this->tipoacao = "Novo"; // Verifica se a turma terminou o último módulo if ($this->qtd_modulos < $this->num_modulo) { $obj_nota_aluno = new clsPmieducarNotaAluno(); // Carrega as médias dos alunos por disciplina $lst_exame = $obj_nota_aluno->listaMedias($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $this->qtd_modulos, $this->ref_cod_curso, true, true, false, true); if (is_array($lst_exame)) { foreach ($lst_exame as $registro) { $obj_matricula = new clsPmieducarMatricula($registro["ref_ref_cod_matricula"], null, null, null, null, null, null, null, null, null, 1, null, 1, $this->modulo); $det_matricula = $obj_matricula->detalhe(); if ($registro["disc_ref_ref_cod_disciplina"] == $this->ref_cod_disciplina) { // Verifica se a média do aluno em uma disciplina está abaixo da média mínima if ($registro["media"] < $this->media) { if ($det_matricula) { $obj_aluno = new clsPmieducarAluno($det_matricula["ref_cod_aluno"]); $det_aluno = $obj_aluno->detalhe(); if ($det_aluno) { $obj_pessoa = new clsPessoa_($det_aluno["ref_idpes"]); $det_pessoa = $obj_pessoa->detalhe(); $obj_dispensa = new clsPmieducarDispensaDisciplina($this->ref_cod_turma, $det_matricula["cod_matricula"], $this->ref_cod_turma, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, null, null, null, null, null, 1); $det_dispensa = $obj_dispensa->detalhe(); // Verifica se o aluno não foi dispensado da disciplina if (!$det_dispensa) { if (is_numeric($this->ref_cod_tipo_avaliacao)) { $obj_tipo_avaliacao = new clsPmieducarTipoAvaliacao($this->ref_cod_tipo_avaliacao, null, null, null, null, null, 1, null, $this->ref_cod_instituicao); $det_tipo_avaliacao = $obj_tipo_avaliacao->detalhe(); // Verifica se o tipo de avaliação não é conceitual if ($det_tipo_avaliacao["conceitual"] == 0) { $this->campoOculto("nm_aluno_{$det_pessoa["idpes"]}", $det_pessoa["nome"]); $this->campoTextoInv("nm_aluno_{$det_pessoa["idpes"]}_", "Aluno", $det_pessoa["nome"], 30, 255, false, false, true); $this->lst_matriculas[] = array("{$det_matricula["ref_cod_aluno"]}", "{$det_pessoa["idpes"]}", "{$det_matricula["cod_matricula"]}"); $this->campoLista("nota_{$det_pessoa["idpes"]}", " Nota", $opcoes_valores, "", "", true); $this->exame = "S"; // Verifica se a falta não é globalizada e se não está na última disciplina if (!($this->falta_ch_globalizada == 1 && $this->qtd_disciplinas > 1)) { // Verifica se a disciplina apura faltas if ($this->lst_apura_falta[$this->ref_cod_disciplina] == 1) { // Verifica se o ano letivo ainda está em andamento if (!($this->num_modulo > $this->qtd_modulos)) { $this->campoNumero("faltas_{$det_pessoa["idpes"]}", " Faltas", "", 3, 3, true); } else { $this->exame = "S"; } } else { $this->campoLista("nota_{$det_pessoa["idpes"]}", " Nota", $opcoes_valores, "", "", false); } } } else { $this->campoTexto("nm_aluno_{$det_pessoa["idpes"]}", "Aluno", $det_pessoa["nome"], 30, 255, false, false, false, "", "", "", "onKeyUp", true); } } else { $this->campoTexto("nm_aluno_{$det_pessoa["idpes"]}", "Aluno", $det_pessoa["nome"], 30, 255, false, false, false, "", "", "", "onKeyUp", true); } } } } } } } } else { } } else { if (is_array($this->lst_matricula_turma)) { foreach ($this->lst_matricula_turma as $registro) { $obj_notas = new clsPmieducarNotaAluno(); // Carrega a quantidade de notas por aluno de uma turma numa determinada disciplina $lst_notas = $obj_notas->retornaDiscMod($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $this->ref_cod_turma, $this->ref_cod_turma, $registro["ref_cod_matricula"]); //echo "matrc.: {$registro["ref_cod_matricula"]}<br>"; // echo "1 {$this->num_modulo} == ".( $lst_notas + 1 )."<br>"; if ($this->num_modulo == $lst_notas + 1) { $obj_matricula = new clsPmieducarMatricula(); $modulo_matric = $obj_matricula->numModulo($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $registro["ref_cod_matricula"]); $obj_matricula = new clsPmieducarMatricula($registro["ref_cod_matricula"], null, null, null, null, null, null, null, null, null, 1, null, 1, $this->modulo); $det_matricula = $obj_matricula->detalhe(); if ($det_matricula) { // echo "2 ".( $modulo_matric + 1 )." == {$this->num_modulo}<br>"; if ($modulo_matric + 1 == $this->num_modulo) { $obj_aluno = new clsPmieducarAluno($det_matricula["ref_cod_aluno"]); $det_aluno = $obj_aluno->detalhe(); if ($det_aluno) { $obj_pessoa = new clsPessoa_($det_aluno["ref_idpes"]); $det_pessoa = $obj_pessoa->detalhe(); $obj_dispensa = new clsPmieducarDispensaDisciplina(); $det_dispensa = $obj_dispensa->lista($this->ref_cod_turma, $det_matricula["cod_matricula"], $this->ref_cod_turma, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, null, null, null, null, null, null, null, 1); $det_disciplina = $det_disciplina[0]; // Verifica se o aluno não foi dispensado da disciplina if (!$det_dispensa) { if (is_numeric($this->ref_cod_tipo_avaliacao)) { $obj_tipo_avaliacao = new clsPmieducarTipoAvaliacao($this->ref_cod_tipo_avaliacao, null, null, null, null, null, 1, null, $this->ref_cod_instituicao); $det_tipo_avaliacao = $obj_tipo_avaliacao->detalhe(); $this->campoOculto("nm_aluno_{$det_pessoa["idpes"]}", $det_pessoa["nome"]); $this->campoTextoInv("nm_aluno_{$det_pessoa["idpes"]}_", "Aluno", $det_pessoa["nome"], 30, 255, false, false, true); $this->lst_matriculas[] = array("{$det_matricula["ref_cod_aluno"]}", "{$det_pessoa["idpes"]}", "{$det_matricula["cod_matricula"]}"); $obj_nota_aluno = new clsPmieducarNotaAluno(); $disc_nota = $obj_nota_aluno->retornaDiscNota($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $det_matricula["cod_matricula"], $this->num_modulo); $obj_disciplina_serie = new clsPmieducarDisciplinaSerie(); $qtd_disc = $obj_disciplina_serie->retornaQtdDiscMat($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $det_matricula["cod_matricula"]); if ($this->falta_ch_globalizada == 1 && $disc_nota == $qtd_disc - 1) { $this->campoLista("nota_{$det_pessoa["idpes"]}", " Nota", $opcoes_valores, "", "", true); } else { $this->campoLista("nota_{$det_pessoa["idpes"]}", " Nota", $opcoes_valores, "", "", false); } // Verifica se a falta não é globalizada e se não está na última disciplina if (!($this->falta_ch_globalizada == 1 && $this->qtd_disciplinas > 1)) { // Verifica se a disciplina apura faltas if ($this->lst_apura_falta[$this->ref_cod_disciplina] == 1) { // Verifica se o ano letivo ainda está em andamento if (!($this->num_modulo > $this->qtd_modulos)) { $this->campoNumero("faltas_{$det_pessoa["idpes"]}", " Faltas", "", 3, 3, true); } else { $this->exame = "S"; } } else { $this->campoLista("nota_{$det_pessoa["idpes"]}", " Nota", $opcoes_valores, "", "", false); } } else { if ($this->falta_ch_globalizada == 1 && $disc_nota == $qtd_disc - 1) { // Verifica se o ano letivo ainda está em andamento if (!($this->num_modulo > $this->qtd_modulos)) { if ($this->num_modulo == $this->qtd_modulos) { $this->campoNumero("faltas_{$det_pessoa["idpes"]}", " Faltas", "", 3, 3, true, "", "", false, false, true); $this->campoLista("aprovacao_{$det_pessoa["idpes"]}", "", array("" => "Selecione", "S" => "Aprovado", "N" => "Reprovado"), ""); } else { $this->campoNumero("faltas_{$det_pessoa["idpes"]}", " Faltas", "", 3, 3, true); } } } } } else { $this->campoTexto("nm_aluno_{$det_pessoa["idpes"]}", "Aluno", $det_pessoa["nome"], 30, 255, false, false, false, "", "", "", "onKeyUp", true); } } } } } } } } } } } $this->lst_matriculas = serialize($this->lst_matriculas); $this->cod_disciplinas = serialize($this->cod_disciplinas); $this->lst_apura_falta = serialize($this->lst_apura_falta); $this->campoOculto("ref_cod_turma", $this->ref_cod_turma); $this->campoOculto("ref_ref_cod_escola", $this->ref_ref_cod_escola); $this->campoOculto("ref_ref_cod_serie", $this->ref_ref_cod_serie); $this->campoOculto("ref_cod_curso", $this->ref_cod_curso); $this->campoOculto("ref_cod_tipo_avaliacao", $this->ref_cod_tipo_avaliacao); $this->campoOculto("media", $this->media); $this->campoOculto("media_exame", $this->media_exame); $this->campoOculto("ano_letivo", $this->ano_letivo); $this->campoOculto("conceitual", $this->conceitual); $this->campoOculto("lst_matriculas", $this->lst_matriculas); $this->campoOculto("falta_ch_globalizada", $this->falta_ch_globalizada); $this->campoOculto("qtd_modulos", $this->qtd_modulos); $this->campoOculto("num_modulo", $this->num_modulo); $this->campoOculto("frequencia_minima", $this->frequencia_minima); $this->campoOculto("carga_horaria", $this->carga_horaria); $this->campoOculto("cod_disciplinas", $this->cod_disciplinas); $this->campoOculto("lst_apura_falta", $this->lst_apura_falta); $this->campoOculto("qtd_disciplinas", $this->qtd_disciplinas); $this->campoOculto("exame", $this->exame); $this->campoOculto("classifica", $this->classifica); }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = 'Turma - Detalhe'; $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet'); $this->cod_turma = $_GET['cod_turma']; $tmp_obj = new clsPmieducarTurma(); $lst_obj = $tmp_obj->lista($this->cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, array('true', 'false')); $registro = array_shift($lst_obj); foreach ($registro as $key => $value) { $this->{$key} = $value; } if (!$registro) { header('Location: educar_turma_lst.php'); die; } if (class_exists('clsPmieducarTurmaTipo')) { $obj_ref_cod_turma_tipo = new clsPmieducarTurmaTipo($registro['ref_cod_turma_tipo']); $det_ref_cod_turma_tipo = $obj_ref_cod_turma_tipo->detalhe(); $registro['ref_cod_turma_tipo'] = $det_ref_cod_turma_tipo['nm_tipo']; } else { $registro['ref_cod_turma_tipo'] = 'Erro na geração'; } if (class_exists('clsPmieducarInfraPredioComodo')) { $obj_ref_cod_infra_predio_comodo = new clsPmieducarInfraPredioComodo($registro['ref_cod_infra_predio_comodo']); $det_ref_cod_infra_predio_comodo = $obj_ref_cod_infra_predio_comodo->detalhe(); $registro['ref_cod_infra_predio_comodo'] = $det_ref_cod_infra_predio_comodo['nm_comodo']; } else { $registro['ref_cod_infra_predio_comodo'] = 'Erro na geração'; } if (class_exists('clsPmieducarInstituicao')) { $obj_cod_instituicao = new clsPmieducarInstituicao($registro['ref_cod_instituicao']); $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe(); $registro['ref_cod_instituicao'] = $obj_cod_instituicao_det['nm_instituicao']; } else { $registro['ref_cod_instituicao'] = 'Erro na geração'; } if (class_exists('clsPmieducarEscola')) { $this->ref_ref_cod_escola = $registro['ref_ref_cod_escola']; $obj_ref_cod_escola = new clsPmieducarEscola($registro['ref_ref_cod_escola']); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $registro['ref_ref_cod_escola'] = $det_ref_cod_escola['nome']; } else { $registro['ref_cod_escola'] = 'Erro na geração'; } if (class_exists('clsPmieducarCurso')) { $obj_ref_cod_curso = new clsPmieducarCurso($registro['ref_cod_curso']); $det_ref_cod_curso = $obj_ref_cod_curso->detalhe(); $registro['ref_cod_curso'] = $det_ref_cod_curso['nm_curso']; $padrao_ano_escolar = $det_ref_cod_curso['padrao_ano_escolar']; } else { $registro['ref_cod_curso'] = 'Erro na geração'; } if (class_exists('clsPmieducarSerie')) { $this->ref_ref_cod_serie = $registro['ref_ref_cod_serie']; $obj_ser = new clsPmieducarSerie($registro['ref_ref_cod_serie']); $det_ser = $obj_ser->detalhe(); $registro['ref_ref_cod_serie'] = $det_ser['nm_serie']; } else { $registro['ref_ref_cod_serie'] = 'Erro na geração'; } $obj_permissoes = new clsPermissoes(); $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { if ($registro['ref_cod_instituicao']) { $this->addDetalhe(array('Instituição', $registro['ref_cod_instituicao'])); } } if ($nivel_usuario == 1 || $nivel_usuario == 2) { if ($registro['ref_ref_cod_escola']) { $this->addDetalhe(array('Escola', $registro['ref_ref_cod_escola'])); } } if ($registro['ref_cod_curso']) { $this->addDetalhe(array('Curso', $registro['ref_cod_curso'])); } if ($registro['ref_ref_cod_serie']) { $this->addDetalhe(array('Série', $registro['ref_ref_cod_serie'])); } if ($registro['ref_cod_regente']) { $obj_pessoa = new clsPessoa_($registro['ref_cod_regente']); $det = $obj_pessoa->detalhe(); $this->addDetalhe(array('Professor/Regente', $det['nome'])); } if ($registro['ref_cod_infra_predio_comodo']) { $this->addDetalhe(array('Sala', $registro['ref_cod_infra_predio_comodo'])); } if ($registro['ref_cod_turma_tipo']) { $this->addDetalhe(array('Tipo de Turma', $registro['ref_cod_turma_tipo'])); } if ($registro['nm_turma']) { $this->addDetalhe(array('Turma', $registro['nm_turma'])); } if ($registro['sgl_turma']) { $this->addDetalhe(array('Sigla', $registro['sgl_turma'])); } if ($registro['max_aluno']) { $this->addDetalhe(array('Máximo de Alunos', $registro['max_aluno'])); } $this->addDetalhe(array('Situação', dbBool($registro['visivel']) ? 'Ativo' : 'Desativo')); if ($registro['multiseriada'] == 1) { if ($registro['multiseriada'] == 1) { $registro['multiseriada'] = 'sim'; } else { $registro['multiseriada'] = 'não'; } $this->addDetalhe(array('Multi-Seriada', $registro['multiseriada'])); $obj_serie_mult = new clsPmieducarSerie($registro['ref_ref_cod_serie_mult']); $det_serie_mult = $obj_serie_mult->detalhe(); $this->addDetalhe(array('Série Multi-Seriada', $det_serie_mult['nm_serie'])); } if ($padrao_ano_escolar == 1) { if ($registro['hora_inicial']) { $registro['hora_inicial'] = date('H:i', strtotime($registro['hora_inicial'])); $this->addDetalhe(array('Hora Inicial', $registro['hora_inicial'])); } if ($registro['hora_final']) { $registro['hora_final'] = date('H:i', strtotime($registro['hora_final'])); $this->addDetalhe(array('Hora Final', $registro['hora_final'])); } if ($registro['hora_inicio_intervalo']) { $registro['hora_inicio_intervalo'] = date('H:i', strtotime($registro['hora_inicio_intervalo'])); $this->addDetalhe(array('Hora Início Intervalo', $registro['hora_inicio_intervalo'])); } if ($registro['hora_fim_intervalo']) { $registro['hora_fim_intervalo'] = date('H:i', strtotime($registro['hora_fim_intervalo'])); $this->addDetalhe(array('Hora Fim Intervalo', $registro['hora_fim_intervalo'])); } } elseif ($padrao_ano_escolar == 0) { $obj = new clsPmieducarTurmaModulo(); $obj->setOrderby('data_inicio ASC'); $lst = $obj->lista($this->cod_turma); if ($lst) { $tabela = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Data Início</b></td> <td bgcolor="#A1B3BD"><b>Data Fim</b></td> </tr>'; $cont = 0; foreach ($lst as $valor) { if ($cont % 2 == 0) { $color = ' bgcolor="#E4E9ED" '; } else { $color = ' bgcolor="#FFFFFF" '; } $obj_modulo = new clsPmieducarModulo($valor['ref_cod_modulo']); $det_modulo = $obj_modulo->detalhe(); $nm_modulo = $det_modulo['nm_tipo']; $valor['data_inicio'] = dataFromPgToBr($valor['data_inicio']); $valor['data_fim'] = dataFromPgToBr($valor['data_fim']); $tabela .= sprintf(' <tr> <td %s align=left>%s</td> <td %s align=left>%s</td> <td %s align=left>%s</td> </tr>', $color, $nm_modulo, $color, $valor['data_inicio'], $color, $valor['data_fim']); $cont++; } $tabela .= '</table>'; } if ($tabela) { $this->addDetalhe(array('Módulo', $tabela)); } $dias_da_semana = array('' => 'Selecione', 1 => 'Domingo', 2 => 'Segunda', 3 => 'Terça', 4 => 'Quarta', 5 => 'Quinta', 6 => 'Sexta', 7 => 'Sábado'); $obj = new clsPmieducarTurmaDiaSemana(); $lst = $obj->lista(NULL, $this->cod_turma); if ($lst) { $tabela1 = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Hora Inicial</b></td> <td bgcolor="#A1B3BD"><b>Hora Final</b></td> </tr>'; $cont = 0; foreach ($lst as $valor) { if ($cont % 2 == 0) { $color = ' bgcolor="#E4E9ED" '; } else { $color = ' bgcolor="#FFFFFF" '; } $valor['hora_inicial'] = date('H:i', strtotime($valor['hora_inicial'])); $valor['hora_final'] = date('H:i', strtotime($valor['hora_final'])); $tabela1 .= sprintf("\n <tr>\n <td %s align=left>%s</td>\n <td %s align=left>%s</td>\n <td %s align=left>%s</td>\n </tr>", $color, $dias_da_semana[$valor['dia_semana']], $color, $valor['hora_inicial'], $color, $valor['hora_final']); $cont++; } $tabela1 .= '</table>'; } if ($tabela1) { $this->addDetalhe(array('Dia da Semana', $tabela1)); } } // Recupera os componentes curriculares da turma $componentes = array(); try { $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->cod_turma); } catch (Exception $e) { } $tabela3 = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Carga horária</b></td> </tr>'; $cont = 0; foreach ($componentes as $componente) { $color = $cont++ % 2 == 0 ? ' bgcolor="#E4E9ED" ' : ' bgcolor="#FFFFFF" '; $tabela3 .= sprintf(' <tr> <td %s align="left">%s</td> <td %s align="center">%.0f h</td> </tr>', $color, $componente, $color, $componente->cargaHoraria); } $tabela3 .= '</table>'; $this->addDetalhe(array('Componentes curriculares', $tabela3)); if ($obj_permissoes->permissao_cadastra(586, $this->pessoa_logada, 7)) { $this->url_novo = 'educar_turma_cad.php'; $this->url_editar = 'educar_turma_cad.php?cod_turma=' . $registro['cod_turma']; } $this->url_cancelar = 'educar_turma_lst.php'; $this->largura = '100%'; }