function renderHTML() { session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); foreach ($_POST as $key => $value) { $this->{$key} = $value; } $this->ref_cod_serie = $this->ref_ref_cod_serie; $fonte = 'arial'; $corTexto = '#000000'; if (!is_numeric($this->ref_cod_instituicao) || !is_numeric($this->ref_cod_escola) || !is_numeric($this->ref_cod_curso) || !is_numeric($this->ref_cod_serie) || !is_numeric($this->ref_cod_turma) || !is_numeric($this->ano)) { echo ' <script> alert("A turma não possui nenhum aluno com situação final definida"); window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1)); </script>'; return TRUE; } $sql = sprintf("\n SELECT\n cod_matricula,\n aprovado,\n ref_ref_cod_serie,\n (SELECT\n nome\n FROM\n pmieducar.aluno a,\n cadastro.pessoa p\n WHERE\n a.cod_aluno = m.ref_cod_aluno\n AND p.idpes = a.ref_idpes\n ) AS nome\n FROM\n pmieducar.matricula m,\n pmieducar.matricula_turma mt\n WHERE\n mt.ref_cod_turma = %d\n AND mt.ref_cod_matricula = m.cod_matricula\n AND m.ativo = 1\n AND mt.ativo = 1\n AND aprovado IN (1, 2)\n AND ano = %d\n ORDER BY\n ref_ref_cod_serie, nome", $this->ref_cod_turma, $this->ano); //verificar se a turma é multiseriada $obj_turma = new clsPmieducarTurma($this->ref_cod_turma); $det_turma = $obj_turma->detalhe(); $ref_ref_cod_serie_mult = $det_turma['ref_ref_cod_serie_mult']; $db = new clsBanco(); $db->Consulta($sql); if (!$db->numLinhas()) { echo ' <script> alert("A turma não possui nenhum aluno com situação final definida"); window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length - 1)); </script>'; return TRUE; } $numAlunos = $db->numLinhas(); // Nome da instituição $obj_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao); $det_instituicao = $obj_instituicao->detalhe(); $this->nm_instituicao = $det_instituicao['nm_instituicao']; // Nome da escola $obj_escola = new clsPmieducarEscola($this->ref_cod_escola); $det_escola = $obj_escola->detalhe(); $this->nm_escola = $det_escola['nome']; // Nome do curso $obj_curso = new clsPmieducarCurso($this->ref_cod_curso); $det_curso = $obj_curso->detalhe(); $this->nm_curso = $det_curso['nm_curso']; // Série $obj_serie = new clsPmieducarSerie($this->ref_cod_serie); $obj_serie->setOrderby('nm_serie'); $det_serie = $obj_serie->detalhe(); $this->nm_serie = $det_serie['nm_serie']; // Seleciona a regra de avaliação da série $regraMapper = new RegraAvaliacao_Model_RegraDataMapper(); $this->regra = $regraMapper->find($det_serie['regra_avaliacao_id']); // Carrega as definições de disciplina $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_cod_serie, $this->ref_cod_escola, $this->ref_cod_turma); foreach ($componentes as $id => $componente) { $this->componentes[$id] = $componente; } $this->presencaGeral = $this->regra->get('tipoPresenca') == RegraAvaliacao_Model_TipoPresenca::GERAL; $obj_turma = new clsPmieducarTurma($this->ref_cod_turma); $obj_turma->setCamposLista('nm_turma, hora_inicial'); $det_turma = $obj_turma->detalhe(); if ($det_turma['hora_inicial'] < '12:00') { $this->nm_turno = 'Matutino'; } elseif ($det_turma['hora_inicial'] < '18:00') { $this->nm_turno = 'Vespertino'; } else { $this->nm_turno = 'Noturno'; } $this->nm_turma = $det_turma["nm_turma"]; $this->buscaDiasLetivos(); asort($this->componentes); $this->pdf = new clsPDF('Ata de Resultado Final - ' . $this->ano, 'Ata de Resultado Final', 'A4', '', FALSE, FALSE); $this->pdf->largura = 842.0; $this->pdf->altura = 595.0; $this->pdf->OpenPage(); $this->addCabecalho(); $esquerda = 3; $direita = 834; $tam_texto = 10; $altura = 130; $altura += 50; $espessura_linha = 0.3; $alunos_matriculados = array(); while ($db->ProximoRegistro()) { list($cod_matricula, $aprovado, $ref_cod_serie, $nome) = $db->Tupla(); $alunos_matriculados[$cod_matricula] = array('aprovado' => $aprovado, 'nome' => $nome, 'ref_cod_serie' => $ref_cod_serie); } if (is_array($alunos_matriculados) && count($alunos_matriculados)) { $this->getAlunoNotasFaltasTable($alunos_matriculados, $det_curso, $curso_conceitual); } $this->rodape(); $this->pdf->CloseFile(); $this->get_link = $this->pdf->GetLink(); echo sprintf("\n <script>\n window.onload=function() {\n parent.EscondeDiv('LoadImprimir');\n window.location='download.php?filename=%s'\n }\n </script>", $this->get_link); echo sprintf("\n <html>\n <center>\n Se o download não iniciar automaticamente <br /><a target='_blank' href='%s' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n <span style='font-size: 10px;'>\n Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n Clique na Imagem para Baixar o instalador<br><br>\n <a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br>\n <img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\">\n </a>\n </span>\n </center>\n </html>", $this->get_link); }
function Gerar() { if ($_POST) { foreach ($_POST as $campo => $val) { $this->{$campo} = $this->{$campo} ? $this->{$campo} : $val; } } $obrigatorio = TRUE; $desabilitado = TRUE; $get_escola = TRUE; $get_curso = TRUE; $get_escola_curso_serie = TRUE; $get_turma = TRUE; include 'include/pmieducar/educar_campo_lista.php'; $this->campoQuebra(); /** * Campos a serem preenchidos com os dados necessários para a inclusão de horários */ // foreign keys $opcoes_disc = array('' => 'Selecione uma disciplina'); // Componentes curriculares da série $componentesTurma = array(); try { $componentesTurma = App_Model_IedFinder::getComponentesTurma($this->ref_ref_cod_serie, $this->ref_cod_escola, $this->ref_cod_turma); } catch (Exception $e) { } if (0 == count($componentesTurma)) { $opcoes_disc = array('NULL' => 'A série dessa escola não possui componentes cadastrados'); } else { foreach ($componentesTurma as $componente) { $opcoes_disc[$componente->id] = $componente; } } $this->campoLista('ref_cod_disciplina', 'Componente curricular', $opcoes_disc, $this->ref_cod_disciplina, '', FALSE, '', '', FALSE, FALSE); $this->campoOculto('identificador', $this->identificador); $opcoesDias = array('' => 'Selecione um dia da semana', 1 => 'Domingo', 2 => 'Segunda-Feira', 3 => 'Terça-Feira', 4 => 'Quarta-Feira', 5 => 'Quinta-Feira', 6 => 'Sexta-Feira', 7 => 'Sábado'); $this->campoOculto('dia_semana', $this->dia_semana); $this->campoLista('dia_semana_', 'Dia da Semana', $opcoesDias, $this->dia_semana, '', FALSE, '', '', TRUE, FALSE); $this->campoHora('hora_inicial', 'Hora Inicial', $this->hora_inicial, FALSE); $this->campoHora('hora_final', 'Hora Final', $this->hora_final, FALSE); $this->campoListaPesq('ref_cod_servidor', 'Servidor', array('' => 'Selecione um servidor'), $this->ref_cod_servidor, '', '', FALSE, '', '', NULL, NULL, '', TRUE, FALSE, FALSE); $this->campoRotulo('bt_incluir_horario', 'Horário', "<a href='#' onclick=\"" . "if (document.getElementById('ref_cod_disciplina').value == '') {\n alert('Você deve escolher a disciplina!');\n return;\n }\n else if (document.getElementById('hora_inicial').value == '') {\n alert('Você deve preencher o campo Hora Inicial!');\n return;\n }\n else if (document.getElementById('hora_final').value == '') {\n alert('Você deve preencher o campo Hora Final!');\n return;\n }\n else if (document.getElementById('ref_cod_servidor').value == '') {\n alert('Você deve selecionar um servidor no campo Servidor');\n return;\n }\n else {\n if (verificaQuadroHorario()) {\n getElementById('incluir_horario').value = 'S';\n getElementById('tipoacao').value = '';\n {$this->__nome}.submit();\n }\n }\"><img src='imagens/nvp_bot_adiciona.gif' title='Incluir' border=0></a>"); $this->campoOculto('incluir_horario', ''); /** * Inclui horários */ if ($_POST['quadro_horario']) { $this->quadro_horario = unserialize(urldecode($_POST['quadro_horario'])); } $qtd_horario = count($this->quadro_horario) == 0 ? 1 : count($this->quadro_horario) + 1; // primary keys if ($this->incluir_horario) { if (is_numeric($_POST['ref_cod_servidor']) && is_string($_POST['hora_inicial']) && is_string($_POST['hora_final']) && is_numeric($_POST['dia_semana']) && is_numeric($_POST['ref_cod_disciplina'])) { $this->quadro_horario[$qtd_horario]['ref_cod_quadro_horario_'] = $this->ref_cod_quadro_horario; $this->quadro_horario[$qtd_horario]['ref_ref_cod_serie_'] = $this->ref_ref_cod_serie; $this->quadro_horario[$qtd_horario]['ref_ref_cod_escola_'] = $this->ref_cod_escola; $this->quadro_horario[$qtd_horario]['ref_ref_cod_disciplina_'] = $_POST['ref_cod_disciplina']; $this->quadro_horario[$qtd_horario]['ref_cod_instituicao_servidor_'] = $this->ref_cod_instituicao; $this->quadro_horario[$qtd_horario]['ref_servidor_'] = $_POST['ref_cod_servidor']; $this->quadro_horario[$qtd_horario]['ref_servidor_substituto_'] = $_POST['ref_servidor_substituto']; $this->quadro_horario[$qtd_horario]['hora_inicial_'] = $_POST['hora_inicial']; $this->quadro_horario[$qtd_horario]['hora_final_'] = $_POST['hora_final']; $this->quadro_horario[$qtd_horario]['ativo_'] = 1; $this->quadro_horario[$qtd_horario]['dia_semana_'] = $_POST['dia_semana']; $this->quadro_horario[$qtd_horario]['qtd_horario_'] = $qtd_horario; $qtd_horario++; /** * salva os dados em uma tabela temporaria * para realizar consulta na listagem */ $obj_quadro_horario = new clsPmieducarQuadroHorarioHorariosAux($this->ref_cod_quadro_horario, NULL, $this->ref_cod_disciplina, $this->ref_cod_escola, $this->ref_ref_cod_serie, $this->ref_cod_instituicao, $this->ref_cod_servidor, $this->dia_semana, $this->hora_inicial, $this->hora_final, $this->identificador); $obj_quadro_horario->cadastra(); unset($this->ref_cod_servidor); unset($this->ref_cod_disciplina); unset($this->hora_inicial); unset($this->hora_final); echo "\n <script>\n window.onload = function() {\n document.getElementById('ref_cod_servidor').value = '';\n document.getElementById('ref_cod_disciplina').value = '';\n document.getElementById('hora_inicial').value = '';\n document.getElementById('hora_final').value = '';\n }\n </script>"; } } echo "<script>\n quadro_horario = " . count($this->quadro_horario) . ";\n </script>"; $this->campoOculto('excluir_horario', ''); $qtd_horario = 1; $this->lst_matriculas = urldecode($this->lst_matriculas); $this->min_mat = $this->min_ves = $this->min_not = 0; if ($this->quadro_horario) { foreach ($this->quadro_horario as $campo) { if ($this->excluir_horario == $campo['qtd_horario_']) { $obj_horario = new clsPmieducarQuadroHorarioHorarios(); $lst_horario = $obj_horario->lista($campo['ref_cod_quadro_horario_'], $campo['ref_ref_cod_serie_'], $campo['ref_ref_cod_escola_'], $campo['ref_ref_cod_disciplina_'], NULL, NULL, NULL, $campo['ref_cod_instituicao_servidor_'], NULL, $campo['ref_servidor_'], $campo['hora_inicial_'], NULL, $campo['hora_final_'], NULL, NULL, NULL, NULL, NULL, 1, $campo['dia_semana_']); if (is_array($lst_horario)) { $campo['ativo_'] = 0; if (isset($this->lst_matriculas)) { $this->lst_matriculas .= '' . $campo['ref_servidor_'] . ''; } else { $this->lst_matriculas .= ', ' . $campo['ref_servidor_'] . ''; } } else { $campo['ativo_'] = 2; if (isset($this->lst_matriculas)) { $this->lst_matriculas .= '' . $campo['ref_servidor_'] . ''; } else { $this->lst_matriculas .= ', ' . $campo['ref_servidor_'] . ''; } } $this->excluir_horario = NULL; $obj_horario = new clsPmieducarQuadroHorarioHorariosAux(); $lst_horario = $obj_horario->excluiRegistro($campo['ref_cod_quadro_horario_'], $campo['ref_ref_cod_serie_'], $campo['ref_ref_cod_escola_'], $campo['ref_ref_cod_disciplina_'], $campo['ref_cod_instituicao_servidor_'], $campo['ref_servidor_'], $this->identificador); } else { switch ($campo['dia_semana_']) { case 1: $campo['nm_dia_semana_'] = 'Domingo'; break; case 2: $campo['nm_dia_semana_'] = 'Segunda-Feira'; break; case 3: $campo['nm_dia_semana_'] = 'Terça-Feira'; break; case 4: $campo['nm_dia_semana_'] = 'Quarta-Feira'; break; case 5: $campo['nm_dia_semana_'] = 'Quinta-Feira'; break; case 6: $campo['nm_dia_semana_'] = 'Sexta-Feira'; break; case 7: $campo['nm_dia_semana_'] = 'Sábado'; break; } } if ($campo['ativo_'] == 1) { $this->campoTextoInv($campo['qtd_horario_'] . '_nm_dia_semana', '', $campo['nm_dia_semana_'], 13, 255, FALSE, FALSE, TRUE); $this->campoOculto($campo['qtd_horario_'] . '_dia_semana', $campo['dia_semana_']); $this->campoTextoInv($campo['qtd_horario_'] . '_hora_inicial', '', $campo['hora_inicial_'], 5, 255, FALSE, FALSE, TRUE); $this->campoTextoInv($campo['qtd_horario_'] . '_hora_final', '', $campo['hora_final_'], 5, 255, FALSE, FALSE, TRUE); $componenteMapper = new ComponenteCurricular_Model_ComponenteDataMapper(); $componente = $componenteMapper->find($campo['ref_ref_cod_disciplina_']); $this->campoTextoInv($campo['qtd_horario_'] . '_ref_cod_disciplina', '', $componente->nome, 30, 255, FALSE, FALSE, TRUE); $obj_pes = new clsPessoa_($campo['ref_servidor_']); $det_pes = $obj_pes->detalhe(); if (is_numeric($campo['ref_servidor_substituto_'])) { $this->campoTextoInv($campo['qtd_horario_'] . '_ref_cod_servidor', '', $det_pes['nome'], 30, 255, FALSE, FALSE, FALSE, '', ''); } else { $this->campoTextoInv($campo['qtd_horario_'] . '_ref_cod_servidor', '', $det_pes['nome'], 30, 255, FALSE, FALSE, FALSE, '', "<a href='#' onclick=\"getElementById('excluir_horario').value = '{$campo["qtd_horario_"]}'; getElementById('tipoacao').value = ''; {$this->__nome}.submit();\"><img src='imagens/nvp_bola_xis.gif' title='Excluir' border=0></a>"); } } if ($campo['ativo_'] != 2) { $horarios_incluidos[$qtd_horario]['ref_cod_quadro_horario_'] = $campo['ref_cod_quadro_horario_']; $horarios_incluidos[$qtd_horario]['ref_ref_cod_serie_'] = $campo['ref_ref_cod_serie_']; $horarios_incluidos[$qtd_horario]['ref_ref_cod_escola_'] = $campo['ref_ref_cod_escola_']; $horarios_incluidos[$qtd_horario]['ref_ref_cod_disciplina_'] = $campo['ref_ref_cod_disciplina_']; $horarios_incluidos[$qtd_horario]['sequencial_'] = $campo['sequencial_']; $horarios_incluidos[$qtd_horario]['ref_cod_instituicao_servidor_'] = $campo['ref_cod_instituicao_servidor_']; $horarios_incluidos[$qtd_horario]['ref_servidor_'] = $campo['ref_servidor_']; $horarios_incluidos[$qtd_horario]['ref_servidor_substituto_'] = $campo['ref_servidor_substituto_']; $horarios_incluidos[$qtd_horario]['hora_inicial_'] = $campo['hora_inicial_']; $horarios_incluidos[$qtd_horario]['hora_final_'] = $campo['hora_final_']; $horarios_incluidos[$qtd_horario]['ativo_'] = $campo['ativo_']; $horarios_incluidos[$qtd_horario]['dia_semana_'] = $campo['dia_semana_']; $horarios_incluidos[$qtd_horario]['qtd_horario_'] = $qtd_horario; $qtd_horario++; } } unset($this->quadro_horario); $this->quadro_horario = $horarios_incluidos; } $this->campoOculto('ref_cod_turma', $this->ref_cod_turma); $this->campoOculto('quadro_horario', serialize($this->quadro_horario)); $this->campoOculto('ref_cod_curso_', $this->ref_cod_curso); $this->campoOculto('lst_matriculas', urlencode($this->lst_matriculas)); $this->campoOculto('min_mat', $this->min_mat); $this->campoOculto('min_ves', $this->min_ves); $this->campoOculto('min_not', $this->min_not); $this->campoQuebra(); }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); // Helper para url $urlHelper = CoreExt_View_Helper_UrlHelper::getInstance(); $this->titulo = 'Dispensa Componente Curricular - Listagem'; // passa todos os valores obtidos no GET para atributos do objeto foreach ($_GET as $var => $val) { $this->{$var} = $val === '' ? NULL : $val; } if (!$_GET['ref_cod_matricula']) { header('Location: educar_matricula_lst.php'); die; } $this->ref_cod_matricula = $_GET['ref_cod_matricula']; $obj_matricula = new clsPmieducarMatricula(); $lst_matricula = $obj_matricula->lista($this->ref_cod_matricula); if (is_array($lst_matricula)) { $det_matricula = array_shift($lst_matricula); $this->ref_cod_instituicao = $det_matricula['ref_cod_instituicao']; $this->ref_cod_escola = $det_matricula['ref_ref_cod_escola']; $this->ref_cod_serie = $det_matricula['ref_ref_cod_serie']; $obj_matricula_turma = new clsPmieducarMatriculaTurma(); $lst_matricula_turma = $obj_matricula_turma->lista($this->ref_cod_matricula, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_serie, NULL, $this->ref_cod_escola); if (is_array($lst_matricula_turma)) { $det = array_shift($lst_matricula_turma); $this->ref_cod_turma = $det['ref_cod_turma']; $this->ref_sequencial = $det['sequencial']; } } $this->campoOculto('ref_cod_turma', $this->ref_cod_turma); $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet'); $this->addCabecalhos(array('Disciplina', 'Tipo Dispensa', 'Data Dispensa')); // Filtros de Foreign Keys $opcoes = array('' => 'Selecione'); $objTemp = new clsPmieducarTipoDispensa(); if ($this->ref_cod_instituicao) { $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao); } else { $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); } if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { $opcoes[$registro['cod_tipo_dispensa']] = $registro['nm_tipo']; } } $this->campoLista('ref_cod_tipo_dispensa', 'Motivo', $opcoes, $this->ref_cod_tipo_dispensa, '', FALSE, '', '', FALSE, FALSE); $this->campoOculto('ref_cod_matricula', $this->ref_cod_matricula); // outros Filtros $opcoes = array('' => 'Selecione'); // Escola série disciplina $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_cod_serie, $this->ref_cod_escola, $this->ref_cod_turma); foreach ($componentes as $componente) { $opcoes[$componente->id] = $componente->nome; } $this->campoLista('ref_cod_disciplina', 'Disciplina', $opcoes, $this->ref_cod_disciplina, '', FALSE, '', '', FALSE, FALSE); // Paginador $this->limite = 20; $this->offset = $_GET['pagina_' . $this->nome] ? $_GET['pagina_' . $this->nome] * $this->limite - $this->limite : 0; $obj_dispensa_disciplina = new clsPmieducarDispensaDisciplina(); $obj_dispensa_disciplina->setOrderby('data_cadastro ASC'); $obj_dispensa_disciplina->setLimite($this->limite, $this->offset); $lista = $obj_dispensa_disciplina->lista($this->ref_cod_matricula, NULL, NULL, $this->ref_cod_disciplina, NULL, NULL, $this->ref_cod_tipo_dispensa, NULL, NULL, NULL, NULL, 1); $total = $obj_dispensa_disciplina->_total; // Mapper de componente curricular $componenteMapper = new ComponenteCurricular_Model_ComponenteDataMapper(); // monta a lista if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { // muda os campos data $registro['data_cadastro_time'] = strtotime(substr($registro['data_cadastro'], 0, 16)); $registro['data_cadastro_br'] = date('d/m/Y', $registro['data_cadastro_time']); // Tipo da dispensa $obj_ref_cod_tipo_dispensa = new clsPmieducarTipoDispensa($registro['ref_cod_tipo_dispensa']); $det_ref_cod_tipo_dispensa = $obj_ref_cod_tipo_dispensa->detalhe(); $registro['ref_cod_tipo_dispensa'] = $det_ref_cod_tipo_dispensa['nm_tipo']; // Componente curricular $componente = $componenteMapper->find($registro['ref_cod_disciplina']); // Dados para a url $url = 'educar_dispensa_disciplina_det.php'; $options = array('query' => array('ref_cod_matricula' => $registro['ref_cod_matricula'], 'ref_cod_serie' => $registro['ref_cod_serie'], 'ref_cod_escola' => $registro['ref_cod_escola'], 'ref_cod_disciplina' => $registro['ref_cod_disciplina'])); $this->addLinhas(array($urlHelper->l($componente->nome, $url, $options), $urlHelper->l($registro['ref_cod_tipo_dispensa'], $url, $options), $urlHelper->l($registro['data_cadastro_br'], $url, $options))); } } $this->addPaginador2('educar_dispensa_disciplina_lst.php', $total, $_GET, $this->nome, $this->limite); $obj_permissoes = new clsPermissoes(); if ($obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7)) { $this->array_botao_url[] = 'educar_dispensa_disciplina_cad.php?ref_cod_matricula=' . $this->ref_cod_matricula; $this->array_botao[] = 'Novo'; } $this->array_botao_url[] = 'educar_matricula_det.php?cod_matricula=' . $this->ref_cod_matricula; $this->array_botao[] = 'Voltar'; $this->largura = '100%'; }
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 renderHTML() { if ($_POST) { foreach ($_POST as $key => $value) { $this->{$key} = $value; } } if ($this->ref_ref_cod_serie) { $this->ref_cod_serie = $this->ref_ref_cod_serie; } $this->ref_cod_modulo = explode('-', $this->ref_cod_modulo); $this->ref_cod_modulo = array_pop($this->ref_cod_modulo); $fonte = 'arial'; $corTexto = '#000000'; if (empty($this->ref_cod_turma)) { echo '<script> alert("Erro ao gerar relatório!\\nNenhuma turma selecionada!"); window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1)); </script>'; return TRUE; } if ($this->ref_cod_escola) { $obj_escola = new clsPmieducarEscola($this->ref_cod_escola); $det_escola = $obj_escola->detalhe(); $this->nm_escola = $det_escola['nome']; $obj_instituicao = new clsPmieducarInstituicao($det_escola['ref_cod_instituicao']); $det_instituicao = $obj_instituicao->detalhe(); $this->nm_instituicao = $det_instituicao['nm_instituicao']; } $obj_calendario = new clsPmieducarEscolaAnoLetivo(); $lista_calendario = $obj_calendario->lista($this->ref_cod_escola, $this->ano, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL); $obj_turma = new clsPmieducarTurma($this->ref_cod_turma); $det_turma = $obj_turma->detalhe(); $this->nm_turma = $det_turma['nm_turma']; $obj_serie = new clsPmieducarSerie($this->ref_cod_serie); $det_serie = $obj_serie->detalhe(); $this->nm_serie = $det_serie['nm_serie']; $obj_pessoa = new clsPessoa_($det_turma['ref_cod_regente']); $det = $obj_pessoa->detalhe(); $this->nm_professor = $det['nome']; // $regraMapper = new RegraAvaliacao_Model_RegraDataMapper(); $this->regra = $regraMapper->find($det_serie['regra_avaliacao_id']); if (!$lista_calendario) { echo '<script> alert("Escola não possui calendário definido para este ano"); window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1)); </script>'; return TRUE; } $obj = new clsPmieducarSerie(); $obj->setOrderby('cod_serie, etapa_curso'); $lista_serie_curso = $obj->lista(NULL, NULL, NULL, $this->ref_cod_curso, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao); $obj_curso = new clsPmieducarCurso($this->ref_cod_curso); $det_curso = $obj_curso->detalhe(); $this->nm_curso = $det_curso['nm_curso']; // Seleciona os alunos da turma $obj_matricula_turma = new clsPmieducarMatriculaTurma(); $obj_matricula_turma->setOrderby('nome_ascii'); $lst_matricula_turma = $obj_matricula_turma->lista($this->ref_cod_matricula, $this->ref_cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_serie, $this->ref_cod_curso, $this->ref_cod_escola, $this->ref_cod_instituicao, NULL, NULL, array(1, 2, 3), NULL, NULL, $this->ano, NULL, NULL, NULL, NULL, TRUE, NULL, NULL, TRUE, NULL, $this->semestre); $componentes = $array_disc = $array_cab = array(); if ('f' == $this->tipo && $this->regra->get('tipoPresenca') == RegraAvaliacao_Model_TipoPresenca::GERAL) { $array_disc = $array_cab = array("FALTAS"); } else { try { $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_cod_serie, $this->ref_cod_escola, $this->ref_cod_turma); } catch (App_Model_Exception $e) { } } if ($lst_matricula_turma) { $titulo = sprintf('Espelho de Notas Bimestral %dº Bimestre Ano %d', $this->ref_cod_modulo, $this->ano); $subtitulo = sprintf("%s\n%s\n%s\n%s - Turma: %s %s", $this->nm_instituicao, $this->nm_escola, $this->nm_curso, $this->nm_serie, $this->nm_turma, date('d/m/Y')); $relatorio = new relatorios($titulo, 210, FALSE, 'Espelho de Notas Bimestral', 'A4', $subtitulo); $relatorio->setMargem(20, 20, 50, 50); $relatorio->exibe_produzido_por = FALSE; if (0 == count($array_disc) && 0 < count($componentes)) { foreach ($componentes as $componente) { $array_disc[$componente->id] = $componente; $array_cab[] = str2upper($componente->abreviatura); } asort($array_disc); sort($array_cab); } $array_cab = array_merge(array('Cód.', 'Nome do Aluno'), $array_cab); $divisoes = array(40, 165); $divisoes_texto = array(40, 165); $tamanho_divisao = 32 + (10 - count($array_disc)) * 5; for ($ct = 0; $ct < 20; $ct++) { $divisoes[] = $tamanho_divisao; $divisoes_texto[] = $tamanho_divisao; } $relatorio->novalinha($array_cab, 0, 16, TRUE, 'arial', $divisoes, '#515151', '#D3D3D3', '#FFFFFF', FALSE, TRUE); foreach ($lst_matricula_turma as $matricula) { $boletim = new Avaliacao_Service_Boletim(array('matricula' => $matricula['ref_cod_matricula'], 'RegraDataMapper' => $regraMapper)); $tam_fonte = NULL; $tam_linha = 16; $componentes = $boletim->getComponentes(); foreach ($array_disc as $cid => $componente) { // Presença geral, seleciona apenas a quantidade de faltas da etapa if (0 == $cid) { $faltas[$cid] = $boletim->getFalta($this->ref_cod_modulo); break; } if (!in_array($cid, array_keys($componentes))) { $notas[$cid] = 'D'; $faltas[$cid] = 'D'; continue; } $notas[$cid] = $boletim->getNotaComponente($cid, $this->ref_cod_modulo); $faltas[$cid] = $boletim->getFalta($this->ref_cod_modulo, $cid); } // @todo WTF?! if (strlen($matricula['nome']) > 24) { $matricula['nome'] = explode(' ', $matricula['nome']); if (is_array($matricula['nome'])) { $nome_aluno = array_shift($matricula['nome']); } if (is_array($matricula['nome'])) { $nome_aluno .= ' ' . array_shift($matricula['nome']); } if (is_array($matricula['nome'])) { $nome_aluno .= ' ' . array_pop($matricula['nome']); } $matricula['nome'] = $nome_aluno; } unset($array_val); $array_val = array(); $array_val[] = $matricula['ref_cod_aluno']; $array_val[] = $matricula['nome']; foreach ($array_disc as $cid => $disc) { if ($this->tipo == 'n') { $array_val[] = $notas[$cid]->notaArredondada; continue; } else { $array_val[] = $faltas[$cid]->quantidade; continue; } $array_val[] = ''; } $relatorio->novalinha($array_val, 0, $tam_linha, FALSE, 'arial', $divisoes_texto, '#515151', '#d3d3d3', '#FFFFFF', FALSE, TRUE, NULL, $tam_fonte); } $this->get_link = $relatorio->fechaPdf(); } echo sprintf(' <script> window.onload=function() { parent.EscondeDiv("LoadImprimir"); window.location="download.php?filename=%s" } </script>', $this->get_link); echo sprintf(' <html> <center> Se o download não iniciar automaticamente <br> <a target="blank" href="%s" style="font-size: 16px; color: #000000; text-decoration: underline;">clique aqui!</a><br><br> <span style="font-size: 10px;"> Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br> Clique na Imagem para Baixar o instalador<br><br> <a href="http://www.adobe.com.br/products/acrobat/readstep2.html" target="new"><br><img src="imagens/acrobat.gif" width="88" height="31" border="0"></a> </span> </center> </html>', $this->get_link); }
function Gerar() { /** * Busca dados da matricula */ $obj_ref_cod_matricula = new clsPmieducarMatricula(); $detalhe_aluno = array_shift($obj_ref_cod_matricula->lista($this->ref_cod_matricula)); $obj_aluno = new clsPmieducarAluno(); $det_aluno = array_shift($det_aluno = $obj_aluno->lista($detalhe_aluno['ref_cod_aluno'], NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1)); $obj_escola = new clsPmieducarEscola($this->ref_cod_escola, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); $det_escola = $obj_escola->detalhe(); $this->ref_cod_instituicao = $det_escola['ref_cod_instituicao']; $obj_matricula_turma = new clsPmieducarMatriculaTurma(); $lst_matricula_turma = $obj_matricula_turma->lista($this->ref_cod_matricula, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_serie, NULL, $this->ref_cod_escola); if (is_array($lst_matricula_turma)) { $det = array_shift($lst_matricula_turma); $this->ref_cod_turma = $det['ref_cod_turma']; $this->ref_sequencial = $det['sequencial']; } $this->campoRotulo('nm_aluno', 'Nome do Aluno', $det_aluno['nome_aluno']); if (!isset($this->ref_cod_turma)) { $this->mensagem = 'Para dispensar um aluno de um componente curricular, é necessário que este esteja enturmado.'; return; } // primary keys $this->campoOculto('ref_cod_matricula', $this->ref_cod_matricula); $this->campoOculto('ref_cod_serie', $this->ref_cod_serie); $this->campoOculto('ref_cod_escola', $this->ref_cod_escola); $opcoes = array('' => 'Selecione'); // Seleciona os componentes curriculares da turma try { $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_cod_serie, $this->ref_cod_escola, $this->ref_cod_turma); } catch (App_Model_Exception $e) { $this->mensagem = $e->getMessage(); return; } foreach ($componentes as $componente) { $opcoes[$componente->id] = $componente->nome; } if ($this->ref_cod_disciplina) { $this->campoRotulo('nm_disciplina', 'Disciplina', $opcoes[$this->ref_cod_disciplina]); $this->campoOculto('ref_cod_disciplina', $this->ref_cod_disciplina); } else { $this->campoLista('ref_cod_disciplina', 'Disciplina', $opcoes, $this->ref_cod_disciplina); } $opcoes = array('' => 'Selecione'); $objTemp = new clsPmieducarTipoDispensa(); if ($this->ref_cod_instituicao) { $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao); } else { $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); } if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { $opcoes[$registro['cod_tipo_dispensa']] = $registro['nm_tipo']; } } $this->campoLista('ref_cod_tipo_dispensa', 'Tipo Dispensa', $opcoes, $this->ref_cod_tipo_dispensa); $this->campoMemo('observacao', 'Observação', $this->observacao, 60, 10, FALSE); }
function renderHTML() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; @session_write_close(); if ($_POST) { foreach ($_POST as $key => $value) { $this->{$key} = $value; } } if ($this->ref_ref_cod_serie) { $this->ref_cod_serie = $this->ref_ref_cod_serie; } $fonte = 'arial'; $corTexto = '#000000'; if (empty($this->ref_cod_turma)) { echo '<script> alert("Erro ao gerar relatório!\\nNenhuma turma selecionada!"); window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1)); </script>'; return TRUE; } if ($this->ref_cod_escola) { $obj_escola = new clsPmieducarEscola($this->ref_cod_escola); $det_escola = $obj_escola->detalhe(); $this->nm_escola = $det_escola['nome']; $obj_instituicao = new clsPmieducarInstituicao($det_escola['ref_cod_instituicao']); $det_instituicao = $obj_instituicao->detalhe(); $this->nm_instituicao = $det_instituicao['nm_instituicao']; } $obj_calendario = new clsPmieducarEscolaAnoLetivo(); $lista_calendario = $obj_calendario->lista($this->ref_cod_escola, $this->ano, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL); $obj_turma = new clsPmieducarTurma($this->ref_cod_turma); $det_turma = $obj_turma->detalhe(); $this->nm_turma = $det_turma['nm_turma']; $obj_serie = new clsPmieducarSerie($this->ref_cod_serie); $det_serie = $obj_serie->detalhe(); $this->nm_serie = $det_serie['nm_serie']; // Regra da série $regraMapper = new RegraAvaliacao_Model_RegraDataMapper(); $this->regra = $regraMapper->find($det_serie['regra_avaliacao_id']); $obj_pessoa = new clsPessoa_($det_turma['ref_cod_regente']); $det = $obj_pessoa->detalhe(); $this->nm_professor = $det['nome']; if (!$lista_calendario) { echo '<script> alert("Escola não possui calendário definido para este ano"); window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1)); </script>'; return TRUE; } $obj_curso = new clsPmieducarCurso($this->ref_cod_curso); $det_curso = $obj_curso->detalhe(); $this->nm_curso = $det_curso['nm_curso']; $obj_tipo_avaliacao = new clsPmieducarTipoAvaliacao($det_curso['ref_cod_tipo_avaliacao']); $det_tipo_avaliacao = $obj_tipo_avaliacao->detalhe(); $conceitual = $det_tipo_avaliacao['conceitual']; $obj_matricula_turma = new clsPmieducarMatriculaTurma(); $obj_matricula_turma->setOrderby('nome_ascii'); $lst_matricula_turma = $obj_matricula_turma->lista($this->ref_cod_matricula, $this->ref_cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_serie, $this->ref_cod_curso, $this->ref_cod_escola, $this->ref_cod_instituicao, NULL, NULL, array(1, 2, 3), NULL, NULL, $this->ano, NULL, NULL, NULL, NULL, TRUE); // Recupera os componentes curriculares da turma $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_cod_serie, $this->ref_cod_escola, $this->ref_cod_turma); // Recupera a quantidade de módulos e o nome do módulo da escola/turma $modulo = App_Model_IedFinder::getModulo($this->ref_cod_escola, $this->ref_cod_curso, $this->ref_cod_turma, $this->ano); $nomeModulo = $modulo['nome'][0]; $modulos = $modulo['total']; if ($lst_matricula_turma) { $relatorio = new relatorios('Espelho de Notas Ano - ' . $this->ano, 210, FALSE, 'Espelho de Notas', 'A4', "{$this->nm_instituicao}\n{$this->nm_escola}\n{$this->nm_curso}\n{$this->nm_serie} - Turma: {$this->nm_turma} " . date('d/m/Y')); $relatorio->setMargem(20, 20, 20, 20); $relatorio->exibe_produzido_por = FALSE; $array_val = array(array(40, 'Cód.'), array(160, 'Nome do Aluno')); foreach (range(1, $modulos) as $num) { $array_val[] = array(30, $num . $nomeModulo); } $array_val[] = array(55, 'M.Parcial'); $array_val[] = array(50, 'Exame'); $array_val[] = array(50, 'M.Final'); $array_val[] = array(38, 'Faltas'); $arrFuncBody = ' $values = array(); foreach ($data as $d) { $values[] = $d[$index]; } return $values; '; $arrFunc = create_function('$data, $index', $arrFuncBody); foreach ($componentes as $componente) { $relatorio->novalinha(array($componente->nome), 0, 16, TRUE, 'arial', array(400), '#515151', '#D3D3D3', '#FFFFFF', FALSE, TRUE); $relatorio->novalinha($arrFunc($array_val, 1), 0, 16, TRUE, 'arial', $arrFunc($array_val, 0), '#515151', '#D3D3D3', '#FFFFFF', FALSE, TRUE); foreach ($lst_matricula_turma as $matricula) { $codMatricula = $matricula['ref_cod_matricula']; if (!isset($this->boletim[$codMatricula])) { $boletim = new Avaliacao_Service_Boletim(array('matricula' => $codMatricula, 'RegraDataMapper' => $regraMapper)); } else { $boletim = $this->boletim[$codMatricula]; } $media_final = $media_parcial = $nota_exame = ''; $medias = $boletim->getMediasComponentes(); $notas = $boletim->getNotasComponentes(); if ($boletim->getRegra()->get('tipoPresenca') == RegraAvaliacao_Model_TipoPresenca::GERAL) { $faltas = array_sum(CoreExt_Entity::entityFilterAttr($boletim->getFaltasGerais(), 'id', 'quantidade')); } else { $faltas = $boletim->getFaltasComponentes(); if (isset($faltas[$componente->id])) { $faltas = array_sum(CoreExt_Entity::entityFilterAttr($faltas[$componente->id], 'id', 'quantidade')); } else { $faltas = ''; } } $etapas = range(1, count($notas[$componente->id])); // Se tiver mais etapas nas notas lançadas, significa que prestou exame if (count($etapas) > $modulos) { array_pop($etapas); } $data = array(array(40, $matricula['ref_cod_aluno']), array(160, $matricula['nome'])); foreach ($etapas as $i) { $data[] = array(30, $boletim->getNotaComponente($componente->id, $i)->notaArredondada); $media_parcial = $medias[$componente->id][0]->mediaArredondada; if ($i == $modulos) { $media_final = $media_parcial; $media_parcial = ''; $nota_exame = $boletim->getNotaComponente($componente->id, 'Rc')->notaArredondada; } } // Adiciona entradas em branco no array de dados for ($i = 0, $loop = $modulos - count($etapas); $i < $loop; $i++) { $data[] = array(30, ''); } $data[] = array(55, $media_parcial); $data[] = array(50, $nota_exame); $data[] = array(50, $media_final); $data[] = array(38, $faltas); $relatorio->novalinha($arrFunc($data, 1), 0, 12, FALSE, 'arial', $arrFunc($data, 0), '#515151', '#D3D3D3', '#FFFFFF', FALSE, TRUE); } $relatorio->quebraPagina(); } $this->get_link = $relatorio->fechaPdf(); } echo sprintf(' <script> window.onload=function() { parent.EscondeDiv("LoadImprimir"); window.location="download.php?filename=%s" } </script>', $this->get_link); echo sprintf(' <html> <center> Se o download não iniciar automaticamente <br> <a target="blank" href="%s" style="font-size: 16px; color: #000000; text-decoration: underline;">clique aqui!</a><br><br> <span style="font-size: 10px;"> Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br> Clique na Imagem para Baixar o instalador<br><br> <a href="http://www.adobe.com.br/products/acrobat/readstep2.html" target="new"><br><img src="imagens/acrobat.gif" width="88" height="31" border="0"></a> </span> </center> </html>', $this->get_link); }
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%'; }
public function testGetComponentesTurma() { $mocks = $this->_getComponentesTurmaMock(); $componentes = App_Model_IedFinder::getComponentesTurma(1, 1, 1, $mocks['turmaMock'], $mocks['componenteMock']); $this->assertEquals($mocks['expected'], $componentes, '::getComponentesTurma() retorna os componentes de uma turma.'); }