function Gerar() { if ($_POST) { foreach ($_POST as $campo => $val) { $this->{$campo} = $this->{$campo} ? $this->{$campo} : $val; } } $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); $obj_permissoes = new clsPermissoes(); $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { $obj_cod_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao); $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe(); $nm_instituicao = $obj_cod_instituicao_det['nm_instituicao']; $this->campoRotulo('nm_instituicao', 'Instituição', $nm_instituicao); } if ($nivel_usuario == 1 || $nivel_usuario == 2) { if ($this->ref_ref_cod_escola) { $obj_ref_cod_escola = new clsPmieducarEscola($this->ref_ref_cod_escola); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $nm_escola = $det_ref_cod_escola['nome']; $this->campoRotulo('nm_escola', 'Escola', $nm_escola); } } if ($this->ref_cod_curso) { $obj_ref_cod_curso = new clsPmieducarCurso($this->ref_cod_curso); $det_ref_cod_curso = $obj_ref_cod_curso->detalhe(); $nm_curso = $det_ref_cod_curso['nm_curso']; $this->campoRotulo('nm_curso', 'Curso', $nm_curso); } if ($this->ref_ref_cod_serie) { $obj_ref_cod_serie = new clsPmieducarSerie($this->ref_ref_cod_serie); $det_ref_cod_serie = $obj_ref_cod_serie->detalhe(); $nm_serie = $det_ref_cod_serie["nm_serie"]; $this->campoRotulo('nm_serie', 'Série', $nm_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); $ano_letivo = $det_ano_letivo['ano']; } else { $this->mensagem = 'Não foi possível encontrar o ano letivo em andamento da escola.'; return FALSE; } } if ($this->ref_cod_turma) { $obj_turma = new clsPmieducarTurma($this->ref_cod_turma); $det_turma = $obj_turma->detalhe(); $nm_turma = $det_turma['nm_turma']; $this->campoRotulo('nm_turma', 'Turma', $nm_turma); } // Inlui o aluno $this->campoQuebra(); if ($_POST['matriculas_turma']) { $this->matriculas_turma = unserialize(urldecode($_POST['matriculas_turma'])); } if (is_numeric($this->ref_cod_turma) && !$_POST) { $obj_matriculas_turma = new clsPmieducarMatriculaTurma(); $obj_matriculas_turma->setOrderby('nome_aluno'); $lst_matriculas_turma = $obj_matriculas_turma->lista(NULL, $this->ref_cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, array(1, 2, 3), NULL, NULL, $ano_letivo, NULL, TRUE, NULL, 1, TRUE); if (is_array($lst_matriculas_turma)) { foreach ($lst_matriculas_turma as $key => $campo) { $this->matriculas_turma[$campo['ref_cod_matricula']]['sequencial_'] = $campo['sequencial']; } } } if ($_POST['ref_cod_matricula']) { $obj_matriculas_turma = new clsPmieducarMatriculaTurma($_POST['ref_cod_matricula'], $this->ref_cod_turma); $sequencial = $obj_matriculas_turma->buscaSequencialMax(); $this->matriculas_turma[$_POST['ref_cod_matricula']]['sequencial_'] = $sequencial; unset($this->ref_cod_matricula); } if ($this->matriculas_turma) { foreach ($this->matriculas_turma as $matricula => $campo) { $obj_matricula = new clsPmieducarMatricula($matricula); $det_matricula = $obj_matricula->detalhe(); $obj_aluno = new clsPmieducarAluno(); $lst_aluno = $obj_aluno->lista($det_matricula['ref_cod_aluno']); $det_aluno = array_shift($lst_aluno); $nm_aluno = $det_aluno['nome_aluno']; $this->campoTextoInv('ref_cod_matricula_' . $matricula, '', $nm_aluno, 30, 255, FALSE, FALSE, FALSE, '', '', '', '', 'ref_cod_matricula'); } } $this->campoOculto('matriculas_turma', serialize($this->matriculas_turma)); // Aluno $opcoes = array(); $obj_matriculas_turma = new clsPmieducarMatriculaTurma(); $alunos = $obj_matriculas_turma->alunosNaoEnturmados($this->ref_ref_cod_escola, $this->ref_ref_cod_serie, $this->ref_cod_curso, $ano_letivo); if (is_array($alunos)) { for ($i = 0; $i < count($alunos); $i++) { $obj_matricula = new clsPmieducarMatricula($alunos[$i]); $det_matricula = $obj_matricula->detalhe(); $obj_aluno = new clsPmieducarAluno(); $lst_aluno = $obj_aluno->lista($det_matricula['ref_cod_aluno']); $det_aluno = array_shift($lst_aluno); $opcoes[$alunos[$i]] = $det_aluno['nome_aluno']; } } if (count($opcoes)) { asort($opcoes); foreach ($opcoes as $key => $aluno) { $this->campoCheck('ref_cod_matricula[' . $key . ']', 'Aluno', $key, $aluno, NULL, NULL, NULL); } } else { $this->campoRotulo('rotulo_1', '-', 'Todos os alunos matriculados na série já se encontram enturmados.'); } $this->campoQuebra(); }
function Gerar() { if ($_POST) { foreach ($_POST as $campo => $val) { $this->{$campo} = $this->{$campo} ? $this->{$campo} : $val; } } $this->campoOculto('cod_turma', $this->cod_turma); // foreign keys $obrigatorio = FALSE; $instituicao_obrigatorio = TRUE; $escola_curso_obrigatorio = TRUE; $curso_obrigatorio = TRUE; $get_escola = TRUE; $get_escola_curso_serie = FALSE; $sem_padrao = TRUE; $get_curso = TRUE; $bloqueia = false; $anoVisivel = false; if (isset($this->ano) || !is_numeric($this->cod_turma)) { $anoVisivel = true; } if (!isset($this->cod_turma)) { $bloqueia = false; } else { if (is_numeric($this->cod_turma)) { $obj_matriculas_turma = new clsPmieducarMatriculaTurma(); $obj_matriculas_turma->setOrderby('nome_aluno'); $lst_matriculas_turma = $obj_matriculas_turma->lista(NULL, $this->cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, array(1, 2, 3), NULL, NULL, NULL, NULL, TRUE, NULL, 1, TRUE); if (is_array($lst_matriculas_turma) && count($lst_matriculas_turma) > 0) { $bloqueia = true; } } } $desabilitado = $bloqueia; include 'include/pmieducar/educar_campo_lista.php'; if ($this->ref_cod_escola) { $this->ref_ref_cod_escola = $this->ref_cod_escola; } $opcoes_serie = array('' => 'Selecione'); // Editar if ($this->ref_cod_curso) { $obj_serie = new clsPmieducarSerie(); $obj_serie->setOrderby('nm_serie ASC'); $lst_serie = $obj_serie->lista(NULL, NULL, NULL, $this->ref_cod_curso, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); if (is_array($lst_serie) && count($lst_serie)) { foreach ($lst_serie as $serie) { $opcoes_serie[$serie['cod_serie']] = $serie['nm_serie']; } } } if ($bloqueia) { $this->campoOculto('serie_param', $this->serie_param = $this->ref_ref_cod_serie); $this->campoOculto('escola_param', $this->escola_param = $this->ref_cod_escola); } $this->campoLista('ref_ref_cod_serie', 'Série', $opcoes_serie, $this->ref_ref_cod_serie, '', FALSE, '', NULL, $bloqueia); // o campo ano somente é exibido para turmas novas ou cadastradas após inclusão deste campo. if ($anoVisivel) { $this->inputsHelper()->dynamic('anoLetivo', array('disabled' => $bloqueia)); if ($bloqueia) { $this->inputsHelper()->hidden('ano_hidden', array('value' => $this->ano)); } } // Infra prédio cômodo $opcoes = array('' => 'Selecione'); // Editar if ($this->ref_ref_cod_escola) { $obj_infra_predio = new clsPmieducarInfraPredio(); $obj_infra_predio->setOrderby('nm_predio ASC'); $lst_infra_predio = $obj_infra_predio->lista(NULL, NULL, NULL, $this->ref_ref_cod_escola, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); if (is_array($lst_infra_predio) && count($lst_infra_predio)) { foreach ($lst_infra_predio as $predio) { $obj_infra_predio_comodo = new clsPmieducarInfraPredioComodo(); $lst_infra_predio_comodo = $obj_infra_predio_comodo->lista(NULL, NULL, NULL, NULL, $predio['cod_infra_predio'], NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); if (is_array($lst_infra_predio_comodo) && count($lst_infra_predio_comodo)) { foreach ($lst_infra_predio_comodo as $comodo) { $opcoes[$comodo['cod_infra_predio_comodo']] = $comodo['nm_comodo']; } } } } } $this->campoLista('ref_cod_infra_predio_comodo', 'Sala', $opcoes, $this->ref_cod_infra_predio_comodo, NULL, NULL, NULL, NULL, NULL, FALSE); $array_servidor = array('' => 'Selecione um servidor'); if ($this->ref_cod_regente) { $obj_pessoa = new clsPessoa_($this->ref_cod_regente); $det = $obj_pessoa->detalhe(); $array_servidor[$this->ref_cod_regente] = $det['nome']; } $this->campoListaPesq('ref_cod_regente', 'Professor/Regente', $array_servidor, $this->ref_cod_regente, '', '', FALSE, '', '', NULL, NULL, '', TRUE, FALSE, FALSE); // Turma tipo $opcoes = array('' => 'Selecione'); // Editar if ($this->ref_cod_instituicao) { $objTemp = new clsPmieducarTurmaTipo(); $objTemp->setOrderby('nm_tipo ASC'); $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao); if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { $opcoes[$registro['cod_turma_tipo']] = $registro['nm_tipo']; } } } $this->campoLista('ref_cod_turma_tipo', 'Tipo de Turma', $opcoes, $this->ref_cod_turma_tipo, '', FALSE, '', NULL); $this->campoTexto('nm_turma', 'Turma', $this->nm_turma, 30, 255, TRUE); $this->campoTexto('sgl_turma', 'Sigla', $this->sgl_turma, 15, 15, FALSE); $this->campoNumero('max_aluno', 'Máximo de Alunos', $this->max_aluno, 3, 3, TRUE); $this->inputsHelper()->date('data_fechamento', array('required' => false, 'label' => 'Data de fechamento', 'value' => Portabilis_Date_Utils::pgSQLToBr($this->data_fechamento))); $ativo = isset($this->cod_turma) ? dbBool($this->visivel) : true; $this->campoCheck('visivel', 'Ativo', $ativo); $this->campoCheck('multiseriada', 'Multi-Seriada', $this->multiseriada, '', FALSE, FALSE); $this->campoLista('ref_ref_cod_serie_mult', 'Série', array('' => 'Selecione'), '', '', FALSE, '', '', '', FALSE); $this->campoOculto('ref_ref_cod_serie_mult_', $this->ref_ref_cod_serie_mult); $this->campoQuebra2(); // hora $this->campoHora('hora_inicial', 'Hora Inicial', $this->hora_inicial, FALSE); $this->campoHora('hora_final', 'Hora Final', $this->hora_final, FALSE); $this->campoHora('hora_inicio_intervalo', Portabilis_String_Utils::toLatin1('Hora Início Intervalo'), $this->hora_inicio_intervalo, FALSE); $this->campoHora('hora_fim_intervalo', 'Hora Fim Intervalo', $this->hora_fim_intervalo, FALSE); $this->inputsHelper()->turmaTurno(); // modelos boletim require_once 'Portabilis/Model/Report/TipoBoletim.php'; require_once 'Portabilis/Array/Utils.php'; $tiposBoletim = Portabilis_Model_Report_TipoBoletim::getInstance()->getEnums(); $tiposBoletim = Portabilis_Array_Utils::insertIn(null, "Selecione um modelo", $tiposBoletim); $this->campoLista('tipo_boletim', Portabilis_String_Utils::toLatin1('Modelo relatório boletim'), $tiposBoletim, $this->tipo_boletim); $this->campoQuebra2(); if ($this->ref_ref_cod_serie) { require_once 'ComponenteCurricular/Model/ComponenteDataMapper.php'; require_once 'ComponenteCurricular/Model/AnoEscolarDataMapper.php'; require_once 'ComponenteCurricular/Model/TurmaDataMapper.php'; $disciplinas = ''; $conteudo = ''; // Instancia o mapper de componente curricular $mapper = new ComponenteCurricular_Model_ComponenteDataMapper(); // Instancia o mapper de ano escolar $anoEscolar = new ComponenteCurricular_Model_AnoEscolarDataMapper(); $lista = $anoEscolar->findComponentePorSerie($this->ref_ref_cod_serie); // Instancia o mapper de turma $componenteTurmaMapper = new ComponenteCurricular_Model_TurmaDataMapper(); $componentesTurma = array(); if (isset($this->cod_turma) && is_numeric($this->cod_turma)) { $componentesTurma = $componenteTurmaMapper->findAll(array(), array('turma' => $this->cod_turma)); } $componentes = array(); foreach ($componentesTurma as $componenteTurma) { $componentes[$componenteTurma->get('componenteCurricular')] = $componenteTurma; } unset($componentesTurma); $this->escola_serie_disciplina = array(); if (is_array($lista) && count($lista)) { $conteudo .= '<div style="margin-bottom: 10px;">'; $conteudo .= ' <span style="display: block; float: left; width: 250px;">Nome</span>'; $conteudo .= ' <span style="display: block; float: left; width: 100px;">' . Portabilis_String_Utils::toLatin1('Carga horária') . '</span>'; $conteudo .= ' <span style="display: block; float: left">' . Portabilis_String_Utils::toLatin1('Usar padrão do componente?') . '</span>'; $conteudo .= '</div>'; $conteudo .= '<br style="clear: left" />'; foreach ($lista as $registro) { $checked = ''; $usarComponente = FALSE; if (isset($componentes[$registro->id])) { $checked = 'checked="checked"'; } if (is_null($componentes[$registro->id]->cargaHoraria) || 0 == $componentes[$registro->id]->cargaHoraria) { $usarComponente = TRUE; } else { $cargaHoraria = $componentes[$registro->id]->cargaHoraria; } $cargaComponente = $registro->cargaHoraria; $conteudo .= '<div style="margin-bottom: 10px; float: left">'; $conteudo .= " <label style='display: block; float: left; width: 250px'><input type=\"checkbox\" {$checked} name=\"disciplinas[{$registro->id}]\" id=\"disciplinas[]\" value=\"{$registro->id}\">{$registro}</label>"; $conteudo .= " <label style='display: block; float: left; width: 100px;'><input type='text' name='carga_horaria[{$registro->id}]' value='{$cargaHoraria}' size='5' maxlength='7'></label>"; $conteudo .= " <label style='display: block; float: left'><input type='checkbox' name='usar_componente[{$registro->id}]' value='1' " . ($usarComponente == TRUE ? $checked : '') . ">({$cargaComponente} h)</label>"; $conteudo .= '</div>'; $conteudo .= '<br style="clear: left" />'; $cargaHoraria = ''; } $disciplinas = '<table cellspacing="0" cellpadding="0" border="0">'; $disciplinas .= sprintf('<tr align="left"><td>%s</td></tr>', $conteudo); $disciplinas .= '</table>'; } else { $disciplinas = Portabilis_String_Utils::toLatin1('A série/ano escolar não possui componentes curriculares cadastrados.'); } } $componentes = $help = array(); try { $componentes = App_Model_IedFinder::getEscolaSerieDisciplina($this->ref_ref_cod_serie, $this->ref_cod_escola); } catch (Exception $e) { } foreach ($componentes as $componente) { $help[] = sprintf('%s (%.0f h)', $componente->nome, $componente->cargaHoraria); } if (count($componentes)) { $help = '<ul><li>' . implode('</li><li>', $help) . '</li></ul>'; } else { $help = ''; } $label = 'Componentes curriculares:<br />' . '<strong>Observação:</strong> caso não defina os componentes<br />' . 'curriculares para a turma, esta usará a definição<br />' . 'da série/ano escolar da escola:' . '<span id="_escola_serie_componentes">%s</span>'; $label = sprintf($label, $help); $this->campoRotulo('disciplinas_', $label, "<div id='disciplinas'>{$disciplinas}</div>"); $this->campoQuebra2(); if ($_POST['turma_modulo']) { $this->turma_modulo = unserialize(urldecode($_POST['turma_modulo'])); } $qtd_modulo = count($this->turma_modulo) == 0 ? 1 : count($this->turma_modulo) + 1; if (is_numeric($this->cod_turma) && !$_POST) { $obj = new clsPmieducarTurmaModulo(); $registros = $obj->lista($this->cod_turma); if ($registros) { foreach ($registros as $campo) { $this->turma_modulo[$campo[$qtd_modulo]]['sequencial_'] = $campo['sequencial']; $this->turma_modulo[$campo[$qtd_modulo]]['ref_cod_modulo_'] = $campo['ref_cod_modulo']; $this->turma_modulo[$campo[$qtd_modulo]]['data_inicio_'] = dataFromPgToBr($campo['data_inicio']); $this->turma_modulo[$campo[$qtd_modulo]]['data_fim_'] = dataFromPgToBr($campo['data_fim']); $qtd_modulo++; } } } if ($_POST["ref_cod_modulo"] && $_POST["data_inicio"] && $_POST["data_fim"]) { $this->turma_modulo[$qtd_modulo]["sequencial_"] = $qtd_modulo; $this->turma_modulo[$qtd_modulo]["ref_cod_modulo_"] = $_POST["ref_cod_modulo"]; $this->turma_modulo[$qtd_modulo]["data_inicio_"] = $_POST["data_inicio"]; $this->turma_modulo[$qtd_modulo]["data_fim_"] = $_POST["data_fim"]; $qtd_modulo++; unset($this->ref_cod_modulo); unset($this->data_inicio); unset($this->data_fim); } $this->campoOculto("excluir_modulo", ""); $qtd_modulo = 1; unset($aux); if ($this->turma_modulo) { foreach ($this->turma_modulo as $campo) { if ($this->excluir_modulo == $campo['sequencial_']) { $this->turma_modulo[$campo['sequencial']] = NULL; $this->excluir_modulo = NULL; } else { $obj_modulo = new clsPmieducarModulo($campo['ref_cod_modulo_']); $det_modulo = $obj_modulo->detalhe(); $nm_tipo_modulo = $det_modulo['nm_tipo']; $this->campoTextoInv('ref_cod_modulo_' . $campo['sequencial_'], '', $nm_tipo_modulo, 30, 255, FALSE, FALSE, TRUE, '', '', '', '', 'ref_cod_modulo'); $this->campoTextoInv('data_inicio_' . $campo['sequencial_'], '', $campo['data_inicio_'], 10, 10, FALSE, FALSE, TRUE, '', '', '', '', ''); $this->campoTextoInv('data_fim_' . $campo['sequencial_'], '', $campo['data_fim_'], 10, 10, FALSE, FALSE, FALSE, '', "<a href='#' onclick=\"document.getElementById('excluir_modulo').value = '{$campo["sequencial_"]}'; document.getElementById('tipoacao').value = ''; {$this->__nome}.submit();\"><img src='imagens/nvp_bola_xis.gif' title='Excluir' border=0></a>", '', '', ''); $aux[$qtd_modulo]['sequencial_'] = $qtd_modulo; $aux[$qtd_modulo]['ref_cod_modulo_'] = $campo['ref_cod_modulo_']; $aux[$qtd_modulo]['data_inicio_'] = $campo['data_inicio_']; $aux[$qtd_modulo]['data_fim_'] = $campo['data_fim_']; $qtd_modulo++; } } unset($this->turma_modulo); $this->turma_modulo = $aux; } $this->campoOculto('turma_modulo', serialize($this->turma_modulo)); // Módulo // foreign keys $opcoes = array('' => 'Selecione'); // Editar if ($this->ref_cod_instituicao) { $objTemp = new clsPmieducarModulo(); $objTemp->setOrderby('nm_tipo ASC'); $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao); if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { $opcoes[$registro['cod_modulo']] = $registro['nm_tipo']; } } } $this->campoLista('ref_cod_modulo', Portabilis_String_utils::toLatin1('Módulo'), $opcoes, $this->ref_cod_modulo, NULL, NULL, NULL, NULL, NULL, FALSE); $this->campoData('data_inicio', Portabilis_String_utils::toLatin1('Data Início'), $this->data_inicio, FALSE); $this->campoData('data_fim', 'Data Fim', $this->data_fim, FALSE); $this->campoOculto('incluir_modulo', ''); $this->campoRotulo('bt_incluir_modulo', Portabilis_String_utils::toLatin1('Módulo'), "<a href='#' onclick=\"document.getElementById('incluir_modulo').value = 'S'; document.getElementById('tipoacao').value = ''; acao();\"><img src='imagens/nvp_bot_adiciona.gif' alt='adicionar' title='Incluir' border=0></a>"); $this->campoQuebra2(); if ($_POST['turma_dia_semana']) { $this->turma_dia_semana = unserialize(urldecode($_POST['turma_dia_semana'])); } if (is_numeric($this->cod_turma) && !$_POST) { $obj = new clsPmieducarTurmaDiaSemana(); $registros = $obj->lista(NULL, $this->cod_turma); if ($registros) { foreach ($registros as $campo) { $aux['dia_semana_'] = $campo['dia_semana']; $aux['hora_inicial_'] = $campo['hora_inicial']; $aux['hora_final_'] = $campo['hora_final']; $this->turma_dia_semana[] = $aux; } } } unset($aux); if ($_POST['dia_semana'] && $_POST['ds_hora_inicial'] && $_POST['ds_hora_final']) { $aux['dia_semana_'] = $_POST['dia_semana']; $aux['hora_inicial_'] = $_POST['ds_hora_inicial']; $aux['hora_final_'] = $_POST['ds_hora_final']; $this->turma_dia_semana[] = $aux; unset($this->dia_semana); unset($this->ds_hora_inicial); unset($this->ds_hora_final); } $this->campoOculto('excluir_dia_semana', ''); unset($aux); if ($this->turma_dia_semana) { foreach ($this->turma_dia_semana as $key => $dias_semana) { if ($this->excluir_dia_semana == $dias_semana['dia_semana_']) { unset($this->turma_dia_semana[$key]); unset($this->excluir_dia_semana); } else { $nm_dia_semana = $this->dias_da_semana[$dias_semana['dia_semana_']]; $this->campoTextoInv('dia_semana_' . $dias_semana['dia_semana_'], '', $nm_dia_semana, 8, 8, FALSE, FALSE, TRUE, '', '', '', '', 'dia_semana'); $this->campoTextoInv('hora_inicial_' . $dias_semana['dia_semana_'], '', $dias_semana['hora_inicial_'], 5, 5, FALSE, FALSE, TRUE, '', '', '', '', 'ds_hora_inicial_'); $this->campoTextoInv('hora_final_' . $dias_semana['dia_semana_'], '', $dias_semana['hora_final_'], 5, 5, FALSE, FALSE, FALSE, '', "<a href='#' onclick=\"document.getElementById('excluir_dia_semana').value = '{$dias_semana["dia_semana_"]}'; document.getElementById('tipoacao').value = ''; {$this->__nome}.submit();\"><img src='imagens/nvp_bola_xis.gif' title='Excluir' border=0></a>", '', '', 'ds_hora_final_'); $aux['dia_semana_'] = $dias_semana['dia_semana_']; $aux['hora_inicial_'] = $dias_semana['hora_inicial_']; $aux['hora_final_'] = $dias_semana['hora_final_']; } } } $this->campoOculto('turma_dia_semana', serialize($this->turma_dia_semana)); if (class_exists('clsPmieducarTurmaDiaSemana')) { $opcoes = $this->dias_da_semana; } else { echo '<!--\\nErro\\nClasse clsPmieducarTurmaDiaSemana não encontrada\\n-->'; $opcoes = array('' => Portabilis_String_utils::toLatin1('Erro na geração')); } $this->campoLista('dia_semana', 'Dia Semana', $opcoes, $this->dia_semana, NULL, false, '', '', false, false); $this->campoHora('ds_hora_inicial', 'Hora Inicial', $this->ds_hora_inicial, FALSE); $this->campoHora('ds_hora_final', 'Hora Final', $this->ds_hora_final, FALSE); $this->campoOculto('incluir_dia_semana', ''); $this->campoRotulo('bt_incluir_dia_semana', 'Dia Semana', "<a href='#' onclick=\"document.getElementById('incluir_dia_semana').value = 'S'; document.getElementById('tipoacao').value = ''; acao();\"><img src='imagens/nvp_bot_adiciona.gif' alt='adicionar' title='Incluir' border=0></a>"); $this->campoOculto('padrao_ano_escolar', $this->padrao_ano_escolar); $this->acao_enviar = 'valida()'; }
function renderHTML() { if ($_POST) { foreach ($_POST as $key => $value) { $this->{$key} = $value; } } @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; @session_write_close(); // Instancia o objeto clsPDF $this->pdf = new clsPDF('Boletim', 'BolTit', 'A4', ''); $this->pdf->largura = 842.0; $this->pdf->altura = 595.0; $this->pdf->topmargin = 5; $this->pdf->bottommargirn = 5; $altura_linha = 13; // Instituição $instituicao = App_Model_IedFinder::getInstituicoes(); $instituicao = $instituicao[$this->ref_cod_instituicao]; // Escola $escola = new clsPmieducarEscola(); $escola->cod_escola = $this->ref_cod_escola; $escola = $escola->detalhe(); $escola = $escola['nome']; // Carrega as informações do curso $serie = new clsPmieducarSerie($this->ref_ref_cod_serie, NULL, NULL, $this->ref_cod_curso); // Dados da série $serie = $serie->detalhe(); // Recupera a regra da série $regraMapper = new RegraAvaliacao_Model_RegraDataMapper(); $regra = $regraMapper->find($serie['regra_avaliacao_id']); // Carrega alunos matriculados $matriculaTurma = new clsPmieducarMatriculaTurma(); $matriculaTurma->setOrderby('nome_aluno'); $matriculados = $matriculaTurma->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, NULL, NULL, NULL, $this->ano, NULL, TRUE); foreach ($matriculados as $matriculado) { $this->pdf->OpenPage(); $this->page_y = 10; $codMatricula = $matriculado['ref_cod_matricula']; $nomeAluno = $matriculado['nome_aluno']; $turma = $matriculado['nm_turma']; $boletim = new Avaliacao_Service_Boletim(array('matricula' => $codMatricula)); $matriculaData = $boletim->getOption('matriculaData'); $curso = $matriculaData['curso_nome']; $serie = $matriculaData['serie_nome']; $this->addCabecalho($instituicao, $escola, $codMatricula, $nomeAluno, $curso, $turma, $serie); $this->inicio_y = $this->page_y - 25; $this->_notasFaltasComponentes($boletim); $situacao = $boletim->getSituacaoAluno(); $this->page_y += 25; $this->rodape($codMatricula, $nomeAluno, $matriculaData['aprovado']); $this->pdf->ClosePage(); } $this->pdf->CloseFile(); $this->get_link = $this->pdf->GetLink(); 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); }
$ano_requisitado = $_GET["ano"]; if (is_numeric($_GET["sem1"]) && $ano_requisitado != 2007 && !$is_padrao) { $semestre = $_GET["sem1"]; } elseif (is_numeric($_GET["sem2"]) && $ano_requisitado != 2007 && !$is_padrao) { $semestre = $_GET["sem2"]; } else { $semestre = null; } $obj_escola_ano_letivo = new clsPmieducarEscolaAnoLetivo(); // $lst_escola_ano_letivo = $obj_escola_ano_letivo->lista( $ref_cod_escola,$ano_requisitado,null,null,1,null,null,null,null,1 ); $lst_escola_ano_letivo = $obj_escola_ano_letivo->lista($ref_cod_escola, $ano_requisitado, null, null, null, null, null, null, null, 1); if (is_array($lst_escola_ano_letivo)) { $det_escola_ano_letivo = array_shift($lst_escola_ano_letivo); $ano = $det_escola_ano_letivo['ano']; $obj_matricula_turma = new clsPmieducarMatriculaTurma(); $obj_matricula_turma->setOrderby("nm_curso, nm_serie, to_ascii(nome) ASC"); $lst_matricula_turma = $obj_matricula_turma->dadosAlunosNaoEnturmados($ref_cod_escola, $ref_ref_cod_serie, $ref_cod_curso, $ano, true, $semestre); if (is_array($lst_matricula_turma)) { $total = count($lst_matricula_turma); $relatorio = new relatorios("RELAÇÃO DOS ALUNOS NÃO ENTURMADOS - Ano {$ano} Total de Alunos = {$total}", 120, false, "i-Educar", "A4", "Prefeitura COBRA Tecnologia\nSecretaria da Educação\n\n" . date("d/m/Y"), "#515151"); $relatorio->setMargem(20, 20, 50, 50); $relatorio->exibe_produzido_por = false; $relatorio->novalinha(array("Cód. Aluno", "Nome do Aluno", "Data Nascimento", "Nome do Responsável"), 0, 16, true, "arial", array(75, 175, 100), "#515151", "#d3d3d3", "#FFFFFF", false, true); $cod_curso = 0; $cod_serie = 0; $db = new clsBanco(); foreach ($lst_matricula_turma as $matriculas) { if ($cod_serie != $matriculas['ref_ref_cod_serie']) { $cod_curso = $matriculas['ref_cod_curso']; $cod_serie = $matriculas['ref_ref_cod_serie']; $consulta = "SELECT count(1)\n\t\t\t\t\t\t\t\t\t\t FROM pmieducar.matricula m\n\t\t\t\t\t\t\t\t\t\t WHERE m.ativo = 1\n\t\t\t\t\t\t\t\t\t\t AND ultima_matricula = 1\n\t\t\t\t\t\t\t\t\t\t AND m.aprovado IN (1,2,3)\n\t\t\t\t\t\t\t\t\t\t AND ano = {$ano}\n\t\t\t\t\t\t\t\t\t\t\tAND ref_cod_curso = {$cod_curso}\n\t\t\t\t\t\t\t\t\t\t\tAND ref_ref_cod_escola = {$ref_cod_escola}\n\t\t\t\t\t\t\t\t\t\t\tAND ref_ref_cod_serie = {$cod_serie}\n\t\t\t\t\t\t\t\t\t\t\tAND NOT EXISTS ( SELECT DISTINCT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t FROM pmieducar.matricula_turma mt\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t WHERE mt.ref_cod_matricula = m.cod_matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t AND mt.ativo = 1 )\n\t\t\t\t\t\t\t\t\t\t";
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; } $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']; 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; } $titulo = 'Diário de Classe - ' . $this->ano; $prox_mes = $this->mes + 1; $this->pdf = new clsPDF($titulo, $titulo, 'A4', '', FALSE, FALSE); $altura_linha = 15; $inicio_escrita_y = 175; $altura_pagina = 760; $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(); $obj_curso = new clsPmieducarCurso($this->ref_cod_curso); $det_curso = $obj_curso->detalhe(); // Recupera a lista de componentes curriculares da escola/série $componentes = App_Model_IedFinder::getEscolaSerieDisciplina($this->ref_cod_serie, $this->ref_cod_escola); if (0 == count($componentes)) { echo ' <script> alert("Turma não possui matriculas"); window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1)); </script>'; return; } else { foreach ($componentes as $id => $componente) { $this->nm_disciplina = $componente->nome; $this->page_y = 139; // Número de semanas dos meses $obj_quadro = new clsPmieducarQuadroHorario(); $obj_quadro->setCamposLista('cod_quadro_horario'); $quadro_horario = $obj_quadro->lista(NULL, NULL, NULL, $this->ref_cod_turma, NULL, NULL, NULL, NULL, 1); if (!$quadro_horario && $det_curso['avaliacao_globalizada'] == 't') { echo ' <script> alert("Turma não possui quadro de horários"); window.location = "educar_relatorio_diario_classe.php"; </script>'; break; } $obj_quadro_horarios = new clsPmieducarQuadroHorarioHorarios(); $obj_quadro_horarios->setCamposLista('dia_semana'); $obj_quadro_horarios->setOrderby('1 asc'); $lista_quadro_horarios = $obj_quadro_horarios->lista($quadro_horario, $this->ref_cod_serie, $this->ref_cod_escola, $disciplina, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); if (!$this->em_branco) { $obj_matricula_turma = new clsPmieducarMatriculaTurma(); $obj_matricula_turma->setOrderby('nome_ascii'); $lista_matricula = $obj_matricula_turma->lista(NULL, $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, TRUE, NULL, NULL, TRUE); } $num_aluno = 1; if ($lista_matricula || $this->em_branco) { $this->pdf->OpenPage(); $this->addCabecalho(); if ($this->em_branco) { $lista_matricula = array(); $this->numero_registros = $this->numero_registros ? $this->numero_registros : 20; for ($i = 0; $i < $this->numero_registros; $i++) { $lista_matricula[] = ''; } } foreach ($lista_matricula as $matricula) { if ($this->page_y > $altura_pagina) { $this->desenhaLinhasVertical(); $this->pdf->ClosePage(); $this->pdf->OpenPage(); $this->page_y = 139; $this->addCabecalho(); } $this->pdf->quadrado_relativo(30, $this->page_y, 540, $altura_linha); $this->pdf->escreve_relativo($num_aluno, 38, $this->page_y + 4, 30, 15, $fonte, 7, $corTexto, 'left'); $this->pdf->escreve_relativo($matricula['nome_aluno'], 55, $this->page_y + 4, 160, 15, $fonte, 7, $corTexto, 'left'); $num_aluno++; $this->page_y += $altura_linha; } $this->desenhaLinhasVertical(); $this->rodape(); $this->pdf->ClosePage(); } } $this->pdf->CloseFile(); $this->get_link = $this->pdf->GetLink(); } 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 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; } $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; } $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_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_calendario = new clsPmieducarEscolaAnoLetivo(); $lista_calendario = $obj_calendario->lista($this->ref_cod_escola, $this->ano, null, null, null, null, null, null, null, 1, null); 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; } $calendario = array_shift($lista_calendario); //Dias previstos do mes // Qual o primeiro dia do mes $primeiroDiaDoMes = mktime(0, 0, 0, $this->mes, 1, $this->ano); // Quantos dias tem o mes $NumeroDiasMes = date('t', $primeiroDiaDoMes); $qtd_dias = $NumeroDiasMes; $this->pdf = new clsPDF("Acompanhamento Mensal - {$this->ano}", "Acompanhamento Mensal - {$this->meses_do_ano[$this->mes]}", "A4", "", false, false); $this->pdf->largura = 842.0; $this->pdf->altura = 595.0; $this->pdf->OpenPage(); $this->addCabecalho(); $this->pdf->linha_relativa(30, 140, 780, 0); $this->pdf->linha_relativa(30, 140, 0, 180); $imagem = girarTextoImagem("Total", 8); $this->pdf->InsertJpng('png', $imagem, 754, 270, 1); $imagem = girarTextoImagem("Casa não feito", 8); $this->pdf->InsertJpng('png', $imagem, 769, 270, 1); $imagem = girarTextoImagem("Justificadas", 8); $this->pdf->InsertJpng('png', $imagem, 784, 270, 1); $imagem = girarTextoImagem("Não justificadas", 8); $this->pdf->InsertJpng('png', $imagem, 798, 270, 1); $this->pdf->escreve_relativo("Faltas", 773, 142, 45, 15); $this->pdf->escreve_relativo("Dia do mês", 40, 265, 60, 15, null, 8); for ($i = 0; $i < 31; $i++) { $this->pdf->linha_relativa(285 + $i * 15, 140, 0, 180); if ($i + 1 <= $qtd_dias) { $this->pdf->escreve_relativo($i + 1, 287 + $i * 15, 265, 15, 15, null, 8); } } $this->pdf->linha_relativa(750, 140, 0, 180); //total $this->pdf->linha_relativa(765, 140, 0, 180); $this->pdf->linha_relativa(780, 155, 0, 165); $this->pdf->linha_relativa(795, 155, 0, 165); $this->pdf->linha_relativa(810, 140, 0, 180); //fim $this->pdf->escreve_relativo("Nº do dia letivo", 40, 280, 60, 15, null, 8); $this->pdf->escreve_relativo("Nº da aula", 40, 295, 60, 15, null, 8); $this->pdf->escreve_relativo("Ord", 40, 310, 60, 15, null, 8); $this->pdf->escreve_relativo("Nome do aluno", 65, 310, 60, 15, null, 8); $this->pdf->linha_relativa(765, 155, 45, 0); $this->pdf->linha_relativa(30, 275, 780, 0); $this->pdf->linha_relativa(30, 290, 780, 0); $this->pdf->linha_relativa(30, 305, 780, 0); $this->pdf->linha_relativa(30, 320, 780, 0); $this->pdf->linha_relativa(60, 305, 0, 15); if ($this->is_padrao || $this->ano == 2007) { $this->semestre = null; } $obj_matricula = new clsPmieducarMatriculaTurma(); $obj_matricula->setOrderby('nome_ascii'); $lst_matricula = $obj_matricula->lista(null, $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, true, null, null, true, null, null, null, null, $this->semestre); //$total_alunos = 100; $qtd_quebra = 17; $base = 305; $linha = 1; if ($lst_matricula) { foreach ($lst_matricula as $ordem => $matricula) { $ordem++; $ordem = sprintf("%02d", $ordem); //for ($ordem = 1; $ordem <= $total_alunos; $ordem++)//foreach de alunos //{ if ($linha % $qtd_quebra == 0) { //nova pagina $this->pdf->ClosePage(); $this->pdf->OpenPage(); $base = 30; $linha = 0; $this->pdf->linha_relativa(30, 30, 780, 0); $qtd_quebra = 35; } $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(60, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(30, $base + 15 + $linha * 15, 780, 0); $this->pdf->escreve_relativo($ordem, 40, $base + 3 + $linha * 15, 15, 15, null, 8); $this->pdf->escreve_relativo($matricula['nome'], 65, $base + 3 + $linha * 15, 215, 15, null, 8); for ($i = 0; $i < 31; $i++) { $this->pdf->linha_relativa(285 + $i * 15, $base + $linha * 15, 0, 15); } $this->pdf->linha_relativa(285 + $i * 15, $base + $linha * 15, 0, 15); //total $this->pdf->linha_relativa(765, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(780, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(795, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(810, $base + $linha * 15, 0, 15); //fim $linha++; //} } } //escrever total $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(60, $base + $linha * 15, 0, 15); $this->pdf->escreve_relativo("Total", 35, $base + 3 + $linha * 15, 20, 15, null, 8); for ($i = 0; $i < 31; $i++) { $this->pdf->linha_relativa(285 + $i * 15, $base + $linha * 15, 0, 15); } $this->pdf->linha_relativa(765, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(780, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(795, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(285 + $i * 15, $base + $linha * 15, 0, 15); //total $this->pdf->linha_relativa(810, $base + $linha * 15, 0, 15); //fim $this->pdf->linha_relativa(30, $base + ($linha + 1) * 15, 780, 0); $this->pdf->ClosePage(); $this->pdf->CloseFile(); $this->get_link = $this->pdf->GetLink(); echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>"; echo "<html><center>Se o download não iniciar automaticamente <br /><a target='blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n <span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\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><img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\"></a>\n </span>\n </center>"; }
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; } $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; } $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_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']; $eh_multi_seriado = FALSE; if (is_numeric($det_turma['ref_ref_cod_serie_mult'])) { $series = array(); $series[$det_serie['cod_serie']] = $det_serie['nm_serie']; $obj_serie = new clsPmieducarSerie($det_turma['ref_ref_cod_serie_mult']); $det_serie = $obj_serie->detalhe(); $this->nm_serie .= ' / ' . $det_serie['nm_serie']; $series[$det_serie['cod_serie']] = $det_serie['nm_serie']; $eh_multi_seriado = TRUE; } $this->pdf = new clsPDF('Resultado Final', 'Resultado Final', 'A4', '', FALSE, FALSE); $this->pdf->OpenPage(); $this->addCabecalho(); $this->pdf->linha_relativa(30, 140, 540, 0); $this->pdf->linha_relativa(30, 140, 0, 30); $this->pdf->linha_relativa(570, 140, 0, 30); $this->pdf->linha_relativa(30, 170, 540, 0); $this->pdf->linha_relativa(60, 140, 0, 30); $this->pdf->linha_relativa(320, 140, 0, 30); $this->pdf->linha_relativa(380, 140, 0, 30); $this->pdf->linha_relativa(490, 140, 0, 30); $this->pdf->linha_relativa(380, 155, 190, 0); $this->pdf->linha_relativa(530, 155, 0, 15); $this->pdf->linha_relativa(450, 155, 0, 15); $this->pdf->escreve_relativo('Ord', 35, 150, 20, 20, NULL, 10); $this->pdf->escreve_relativo('Nome do aluno', 70, 150, 160, 20, NULL, 10); $this->pdf->escreve_relativo('Aprovado', 325, 150, 160, 20, NULL, 10); $this->pdf->escreve_relativo('Reprovado', 410, 142, 160, 20, NULL, 10); $this->pdf->escreve_relativo('Desempenho', 384, 156, 160, 20, NULL, 10); $this->pdf->escreve_relativo('Faltas', 455, 156, 160, 20, NULL, 10); $this->pdf->escreve_relativo('Alf.', 500, 156, 160, 20, NULL, 10); $this->pdf->escreve_relativo('N. Alf.', 535, 156, 160, 20, NULL, 10); $obj_matricula = new clsPmieducarMatriculaTurma(); $obj_matricula->setOrderby('m.ref_ref_cod_serie, nome_ascii'); if ($this->is_padrao) { $this->semestre = NULL; } $lst_matricula = $obj_matricula->lista(NULL, $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, TRUE, NULL, NULL, TRUE, NULL, NULL, NULL, $det_turma['ref_ref_cod_serie_mult'], $this->semestre); $qtd_quebra = 43; $base = 155; $linha = 1; $total_aprovados = 0; $total_reprovados_desempenho = 0; $total_reprovados_nota = 0; $total_analfabetos = 0; $total_nao_analfabetos = 0; $ordem_mostra = 0; if (is_array($lst_matricula)) { foreach ($lst_matricula as $ordem => $matricula) { $obj_matricula = new clsPmieducarMatricula($matricula['ref_cod_matricula']); $det_matricula = $obj_matricula->detalhe(); // Verifica se o aluno está aprovado ou reprovado $situacoes = array(App_Model_MatriculaSituacao::APROVADO, App_Model_MatriculaSituacao::REPROVADO); if (in_array($det_matricula['aprovado'], $situacoes)) { $ordem_mostra++; $ordem_mostra = sprintf('%02d', $ordem_mostra); if ($linha % $qtd_quebra == 0) { //nova pagina $this->pdf->ClosePage(); $this->pdf->OpenPage(); $base = 30; $linha = 0; $this->pdf->linha_relativa(30, 30, 540, 0); $qtd_quebra = 51; } $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(60, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(30, $base + 15 + $linha * 15, 540, 0); $this->pdf->linha_relativa(570, $base + $linha * 15, 0, 15); // fim $this->pdf->escreve_relativo($ordem_mostra, 40, $base + 3 + $linha * 15, 15, 15, NULL, 8); if ($eh_multi_seriado) { $this->pdf->escreve_relativo($matricula['nome'] . ' (' . $series[$det_matricula['ref_ref_cod_serie']] . ')', 65, $base + 3 + $linha * 15, 250, 15, NULL, 8); } else { $this->pdf->escreve_relativo($matricula['nome'], 65, $base + 3 + $linha * 15, 250, 15, NULL, 8); } /** * Instancia o service de boletim e requisita os dados da situação * do aluno. Graças ao service, são "apenas" 147 linhas de código * mal-escrito a menos. */ $boletim = new Avaliacao_Service_Boletim(array('matricula' => $matricula['ref_cod_matricula'])); $situacao = $boletim->getSituacaoAluno(); if (TRUE == $situacao->aprovado) { $this->pdf->escreve_relativo('X', 345, $base + 3 + $linha * 15, 250, 15, NULL, 8); $total_aprovados++; } elseif (TRUE == $situacao->retidoFalta) { $total_reprovados_desempenho++; $this->pdf->escreve_relativo('X', 465, $base + 3 + $linha * 15, 250, 15, NULL, 8); } else { $total_reprovados_nota++; $this->pdf->escreve_relativo('X', 410, $base + 3 + $linha * 15, 250, 15, NULL, 8); } // analfabeto $obj_aluno = new clsPmieducarAluno($det_matricula['ref_cod_aluno']); $obj_aluno->setCamposLista('analfabeto'); $det_aluno = $obj_aluno->detalhe(); if ($det_aluno['analfabeto'] == 0) { $this->pdf->escreve_relativo('X', 507, $base + 3 + $linha * 15, 250, 15, NULL, 8); // não alfabetizado $total_analfabetos++; } else { $this->pdf->escreve_relativo('X', 545, $base + 3 + $linha * 15, 250, 15, NULL, 8); // alfabetizado $total_nao_analfabetos++; } $this->pdf->linha_relativa(320, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(380, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(490, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(530, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(450, $base + $linha * 15, 0, 15); $linha++; } } } // Escrever total $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15); $this->pdf->escreve_relativo("Total", 35, $base + 3 + $linha * 15, 20, 15, NULL, 8); $this->pdf->escreve_relativo($total_aprovados, 345, $base + 3 + $linha * 15, 250, 15, null, 8); // aprovado $this->pdf->escreve_relativo($total_reprovados_desempenho, 465, $base + 3 + $linha * 15, 250, 15, NULL, 8); // desempenho $this->pdf->escreve_relativo($total_reprovados_nota, 410, $base + 3 + $linha * 15, 250, 15, NULL, 8); // faltas $this->pdf->escreve_relativo($total_analfabetos, 507, $base + 3 + $linha * 15, 250, 15, NULL, 8); // não alfabetizado $this->pdf->escreve_relativo($total_nao_analfabetos, 545, $base + 3 + $linha * 15, 250, 15, NULL, 8); // alfabetizado $this->pdf->linha_relativa(60, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(320, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(380, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(490, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(530, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(450, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(570, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(30, $base + ($linha + 1) * 15, 540, 0); $this->pdf->ClosePage(); $this->pdf->CloseFile(); $this->get_link = $this->pdf->GetLink(); 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 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() { if ($_POST) { foreach ($_POST as $campo => $val) { $this->{$campo} = $this->{$campo} ? $this->{$campo} : $val; } } $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); $obj_permissoes = new clsPermissoes(); $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { $obj_cod_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao); $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe(); $nm_instituicao = $obj_cod_instituicao_det['nm_instituicao']; $this->campoRotulo('nm_instituicao', 'Instituição', $nm_instituicao); } if ($nivel_usuario == 1 || $nivel_usuario == 2) { if ($this->ref_ref_cod_escola) { $obj_ref_cod_escola = new clsPmieducarEscola($this->ref_ref_cod_escola); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $nm_escola = $det_ref_cod_escola['nome']; $this->campoRotulo('nm_escola', 'Escola', $nm_escola); } } if ($this->ref_cod_curso) { $obj_ref_cod_curso = new clsPmieducarCurso($this->ref_cod_curso); $det_ref_cod_curso = $obj_ref_cod_curso->detalhe(); $nm_curso = $det_ref_cod_curso['nm_curso']; $this->campoRotulo('nm_curso', 'Curso', $nm_curso); } if ($this->ref_ref_cod_serie) { $obj_ref_cod_serie = new clsPmieducarSerie($this->ref_ref_cod_serie); $det_ref_cod_serie = $obj_ref_cod_serie->detalhe(); $nm_serie = $det_ref_cod_serie["nm_serie"]; $this->campoRotulo('nm_serie', 'Série', $nm_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); $ano_letivo = $det_ano_letivo['ano']; } else { $this->mensagem = 'Não foi possível encontrar o ano letivo em andamento da escola.'; return FALSE; } } if ($this->ref_cod_turma) { $obj_turma = new clsPmieducarTurma($this->ref_cod_turma); $det_turma = $obj_turma->detalhe(); $nm_turma = $det_turma['nm_turma']; $this->campoRotulo('nm_turma', 'Turma', $nm_turma); } // Inlui o aluno $this->campoQuebra(); if ($_POST['matriculas_turma']) { $this->matriculas_turma = unserialize(urldecode($_POST['matriculas_turma'])); } $alunosEnturmados = false; if (is_numeric($this->ref_cod_turma) && !$_POST) { $obj_matriculas_turma = new clsPmieducarMatriculaTurma(); $obj_matriculas_turma->setOrderby('sequencial_fechamento, nome_aluno'); $lst_matriculas_turma = $obj_matriculas_turma->lista(NULL, $this->ref_cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, array(1, 2, 3), NULL, NULL, $ano_letivo, NULL, TRUE, NULL, 1, TRUE); if (is_array($lst_matriculas_turma)) { $alunosEnturmados = true; foreach ($lst_matriculas_turma as $key => $campo) { $this->matriculas_turma[$campo['ref_cod_matricula']]['sequencial_'] = $campo['sequencial']; } } } if ($_POST['ref_cod_matricula']) { $obj_matriculas_turma = new clsPmieducarMatriculaTurma($_POST['ref_cod_matricula'], $this->ref_cod_turma); $sequencial = $obj_matriculas_turma->buscaSequencialMax(); $this->matriculas_turma[$_POST['ref_cod_matricula']]['sequencial_'] = $sequencial; unset($this->ref_cod_matricula); } if ($this->matriculas_turma) { $this->campoRotulo('titulo', 'Matrículas', "<b> Alunos matriculados Marque alunos para desenturmar</b><label style='display: block; width: 350px; margin-left: 196px;'><input type='checkbox' name='CheckTodos' onClick='marcarCheck(" . '"check_desenturma[]"' . ");'/>Marcar Todos</label>"); foreach ($this->matriculas_turma as $matricula => $campo) { $obj_matricula = new clsPmieducarMatricula($matricula); $det_matricula = $obj_matricula->detalhe(); $obj_aluno = new clsPmieducarAluno(); $lst_aluno = $obj_aluno->lista($det_matricula['ref_cod_aluno']); $det_aluno = array_shift($lst_aluno); $nm_aluno = $det_aluno['nome_aluno']; $this->campoTextoInv('ref_cod_matricula_' . $matricula, '', $nm_aluno, 30, 255, FALSE, FALSE, TRUE, '', '', '', '', 'ref_cod_matricula'); $this->campoCheck('check_desenturma[' . $matricula . ']', '', $matricula); } } $this->campoOculto('matriculas_turma', serialize($this->matriculas_turma)); // Aluno $opcoes = array(); $obj_matriculas_turma = new clsPmieducarMatriculaTurma(); $alunos = $obj_matriculas_turma->alunosNaoEnturmados($this->ref_ref_cod_escola, $this->ref_ref_cod_serie, $this->ref_cod_curso, $ano_letivo); if (is_array($alunos)) { for ($i = 0; $i < count($alunos); $i++) { $obj_matricula = new clsPmieducarMatricula($alunos[$i]); $det_matricula = $obj_matricula->detalhe(); $obj_aluno = new clsPmieducarAluno(); $lst_aluno = $obj_aluno->lista($det_matricula['ref_cod_aluno']); $det_aluno = array_shift($lst_aluno); $opcoes[$alunos[$i]] = $det_aluno['nome_aluno']; } } if (count($opcoes)) { $this->inputsHelper()->date('data_enturmacao', array('label' => 'Data da enturmação', 'value' => date('Y-m-d'))); asort($opcoes); foreach ($opcoes as $key => $aluno) { $this->campoCheck('ref_cod_matricula[' . $key . ']', 'Aluno', $key, $aluno, NULL, NULL, NULL); } } else { if ($alunosEnturmados) { $this->campoRotulo('rotulo_1', '-', 'Todos os alunos matriculados na série já se encontram enturmados.'); } else { $this->campoRotulo('rotulo_1', '-', 'Não há alunos enturmados.'); } } $this->campoQuebra(); }
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; } $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; } //$this->mes = "5";//teste //$qtd_dias = 28; $this->pdf = new clsPDF("Ficha de Leitura - {$this->ano}", "Ficha de Leitura - {$this->meses_do_ano[$this->mes]}", "A4", "", false, false); $this->pdf->OpenPage(); $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_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']; $this->addCabecalho(); $this->pdf->escreve_relativo("Leitura", 370, 142, 120, 15, null, 10); $this->pdf->escreve_relativo("Escrita", 500, 142, 120, 15, null, 10); /***************************************/ $imagem = girarTextoImagem("Ainda não lê", 8); $this->pdf->InsertJpng('png', $imagem, 342, 310, 1); $imagem = girarTextoImagem("Palavras", 8, 60); $this->pdf->InsertJpng('png', $imagem, 372, 220, 1); $imagem = girarTextoImagem("Silabando", 8, 60); $this->pdf->InsertJpng('png', $imagem, 365, 310, 1); $imagem = girarTextoImagem("Fluente", 8, 60); $this->pdf->InsertJpng('png', $imagem, 380, 310, 1); $imagem = girarTextoImagem("Frases", 8, 60); $this->pdf->InsertJpng('png', $imagem, 402, 220, 1); $imagem = girarTextoImagem("Silabando", 8, 60); $this->pdf->InsertJpng('png', $imagem, 395, 310, 1); $imagem = girarTextoImagem("Fluente", 8, 60); $this->pdf->InsertJpng('png', $imagem, 410, 310, 1); $imagem = girarTextoImagem("Textos", 8, 60); $this->pdf->InsertJpng('png', $imagem, 432, 220, 1); $imagem = girarTextoImagem("Pausado", 8, 60); $this->pdf->InsertJpng('png', $imagem, 425, 310, 1); $imagem = girarTextoImagem("Fluente", 8, 60); $this->pdf->InsertJpng('png', $imagem, 440, 310, 1); /*****************************************/ /***************************************/ $imagem = girarTextoImagem("Ainda não escreve", 8); $this->pdf->InsertJpng('png', $imagem, 462, 310, 1); $imagem = girarTextoImagem("Palavras", 8, 60); $this->pdf->InsertJpng('png', $imagem, 492, 220, 1); $imagem = girarTextoImagem("Com erro", 8, 60); $this->pdf->InsertJpng('png', $imagem, 485, 310, 1); $imagem = girarTextoImagem("Corretas", 8, 60); $this->pdf->InsertJpng('png', $imagem, 500, 310, 1); $imagem = girarTextoImagem("Frases", 8, 60); $this->pdf->InsertJpng('png', $imagem, 522, 220, 1); $imagem = girarTextoImagem("Com erro", 8, 60); $this->pdf->InsertJpng('png', $imagem, 515, 310, 1); $imagem = girarTextoImagem("Corretas", 8, 60); $this->pdf->InsertJpng('png', $imagem, 530, 310, 1); $imagem = girarTextoImagem("Textos", 8, 60); $this->pdf->InsertJpng('png', $imagem, 552, 220, 1); $imagem = girarTextoImagem("Com erro", 8, 60); $this->pdf->InsertJpng('png', $imagem, 545, 310, 1); $imagem = girarTextoImagem("Corretas", 8, 60); $this->pdf->InsertJpng('png', $imagem, 560, 310, 1); /*****************************************/ $this->pdf->linha_relativa(30, 140, 540, 0); $this->pdf->linha_relativa(30, 140, 0, 180); $this->pdf->linha_relativa(570, 140, 0, 180); $this->pdf->linha_relativa(30, 320, 540, 0); $this->pdf->linha_relativa(60, 140, 0, 180); $this->pdf->linha_relativa(330, 140, 0, 180); $this->pdf->linha_relativa(330, 155, 240, 0); $this->pdf->linha_relativa(450, 140, 0, 180); $this->pdf->linha_relativa(360, 155, 0, 165); $this->pdf->linha_relativa(480, 155, 0, 165); $this->pdf->linha_relativa(360, 230, 90, 0); $this->pdf->linha_relativa(480, 230, 90, 0); $this->pdf->linha_relativa(390, 155, 0, 165); $this->pdf->linha_relativa(420, 155, 0, 165); $this->pdf->linha_relativa(510, 155, 0, 165); $this->pdf->linha_relativa(540, 155, 0, 165); $this->pdf->linha_relativa(375, 230, 0, 90); $this->pdf->linha_relativa(405, 230, 0, 90); $this->pdf->linha_relativa(435, 230, 0, 90); $this->pdf->linha_relativa(495, 230, 0, 90); $this->pdf->linha_relativa(525, 230, 0, 90); $this->pdf->linha_relativa(555, 230, 0, 90); $this->pdf->escreve_relativo("Nº", 40, 305, 20, 20, null, 10); $this->pdf->escreve_relativo("Nome do aluno", 70, 305, 160, 20, null, 10); //$total_alunos = 32; $qtd_quebra = 33; $base = 305; $linha = 1; if ($this->is_padrao || $this->ano == 2007) { $this->semestre = null; } $obj_matricula = new clsPmieducarMatriculaTurma(); $obj_matricula->setOrderby('nome_ascii'); $lst_matricula = $obj_matricula->lista(null, $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, true, null, null, true, null, null, null, null, $this->semestre); if ($lst_matricula) { foreach ($lst_matricula as $ordem => $matricula) { $ordem++; $ordem = sprintf("%02d", $ordem); if ($linha % $qtd_quebra == 0) { //nova pagina $this->pdf->ClosePage(); $this->pdf->OpenPage(); $base = 30; $linha = 0; $this->pdf->linha_relativa(30, 30, 540, 0); $qtd_quebra = 51; } $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(60, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(30, $base + 15 + $linha * 15, 540, 0); $this->pdf->escreve_relativo($ordem, 40, $base + 3 + $linha * 15, 15, 15, null, 8); $this->pdf->escreve_relativo($matricula['nome'], 65, $base + 3 + $linha * 15, 250, 15, null, 8); $this->pdf->linha_relativa(330, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(360, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(375, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(390, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(405, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(420, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(435, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(450, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(480, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(495, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(510, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(525, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(540, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(555, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(570, $base + $linha * 15, 0, 15); //fim $linha++; } } //escrever total $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15); $this->pdf->escreve_relativo("Total", 35, $base + 3 + $linha * 15, 20, 15, null, 8); $this->pdf->linha_relativa(330, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(360, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(375, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(390, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(405, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(420, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(435, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(450, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(480, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(495, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(510, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(525, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(540, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(555, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(570, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(30, $base + ($linha + 1) * 15, 540, 0); $this->pdf->ClosePage(); $this->pdf->CloseFile(); $this->get_link = $this->pdf->GetLink(); echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>"; echo "<html><center>Se o download não iniciar automaticamente <br /><a target='blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t<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>\n\t\t\t</span>\n\t\t\t</center>"; }
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; } $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; } //$this->mes = "5";//teste //$qtd_dias = 28; $this->pdf = new clsPDF("Ficha de Leitura, Escrita e Língua Oral", "Ficha de Leitura, Escrita e Língua Oral", "A4", "", false, false); $this->pdf->largura = 842.0; $this->pdf->altura = 595.0; $this->pdf->OpenPage(); $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_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']; $this->addCabecalho(); $this->pdf->escreve_relativo("Nº", 35, 245, 40, 20); $this->pdf->escreve_relativo("Nome do aluno", 65, 245, 80, 20); $this->pdf->escreve_relativo("Leitura", 355, 142, 80, 20); $this->pdf->escreve_relativo("Escrita", 490, 142, 80, 20); $this->pdf->escreve_relativo("Língua Oral", 665, 142, 80, 20); $this->pdf->escreve_relativo("Relaciona letra ao som", 490, 157, 70, 60, null, 10); //----------------------------------------------------------------------- $imagem = girarTextoImagem("Não encadeia idéias em história representada por desenho", 8, 90); $this->pdf->InsertJpng('png', $imagem, 290, 250, 1); //----------------------------------------------------------------------- //----------------------------------------------------------------------- $imagem = girarTextoImagem("Encadeia idéias em história representada por desenhos", 8, 90); $this->pdf->InsertJpng('png', $imagem, 344, 250, 1); //----------------------------------------------------------------------- //----------------------------------------------------------------------- $imagem = girarTextoImagem("Lê palavras do suporte utilizado", 8, 90); $this->pdf->InsertJpng('png', $imagem, 395, 250, 1); //----------------------------------------------------------------------- //----------------------------------------------------------------------- $imagem = girarTextoImagem("Lê frases do suporte utilizado", 8, 90); $this->pdf->InsertJpng('png', $imagem, 425, 250, 1); //----------------------------------------------------------------------- //----------------------------------------------------------------------- $imagem = girarTextoImagem("Não relaciona letra com som", 8, 90); $this->pdf->InsertJpng('png', $imagem, 457, 250, 1); //----------------------------------------------------------------------- //----------------------------------------------------------------------- $imagem = girarTextoImagem("No seu próprio nome", 8, 70); $this->pdf->InsertJpng('png', $imagem, 485, 250, 1); //----------------------------------------------------------------------- //----------------------------------------------------------------------- $imagem = girarTextoImagem("Palavras", 8, 60); $this->pdf->InsertJpng('png', $imagem, 522, 250, 1); //----------------------------------------------------------------------- //----------------------------------------------------------------------- $imagem = girarTextoImagem("Frases", 8, 60); $this->pdf->InsertJpng('png', $imagem, 552, 250, 1); //----------------------------------------------------------------------- //----------------------------------------------------------------------- $imagem = girarTextoImagem("Não escuta com atenção leitura feita pelo professor", 8, 90); $this->pdf->InsertJpng('png', $imagem, 578, 250, 1); //----------------------------------------------------------------------- //----------------------------------------------------------------------- $imagem = girarTextoImagem("Escuta com atenção leitura feita pelo professor", 8, 90); $this->pdf->InsertJpng('png', $imagem, 635, 250, 1); //----------------------------------------------------------------------- //----------------------------------------------------------------------- $imagem = girarTextoImagem("Comenta a história ouvida ou lida", 8, 80); $this->pdf->InsertJpng('png', $imagem, 700, 250, 1); //----------------------------------------------------------------------- //----------------------------------------------------------------------- $imagem = girarTextoImagem("Reconta a história ouvida ou lida", 8, 80); $this->pdf->InsertJpng('png', $imagem, 760, 250, 1); //----------------------------------------------------------------------- $this->pdf->linha_relativa(30, 140, 780, 0); $this->pdf->linha_relativa(30, 140, 0, 120); $this->pdf->linha_relativa(810, 140, 0, 120); $this->pdf->linha_relativa(30, 260, 780, 0); $this->pdf->linha_relativa(60, 140, 0, 120); $this->pdf->linha_relativa(285, 140, 0, 120); $this->pdf->linha_relativa(450, 140, 0, 120); $this->pdf->linha_relativa(570, 140, 0, 120); $this->pdf->linha_relativa(285, 155, 525, 0); $this->pdf->linha_relativa(340, 155, 0, 105); $this->pdf->linha_relativa(390, 155, 0, 105); $this->pdf->linha_relativa(420, 155, 0, 105); $this->pdf->linha_relativa(480, 180, 90, 0); $this->pdf->linha_relativa(480, 155, 0, 105); $this->pdf->linha_relativa(510, 180, 0, 80); $this->pdf->linha_relativa(540, 180, 0, 80); $this->pdf->linha_relativa(630, 155, 0, 105); $this->pdf->linha_relativa(690, 155, 0, 105); $this->pdf->linha_relativa(750, 155, 0, 105); $qtd_quebra = 21; $base = 245; $linha = 1; if ($this->is_padrao || $this->ano == 2007) { $this->semestre = null; } $obj_matricula = new clsPmieducarMatriculaTurma(); $obj_matricula->setOrderby('nome_ascii'); $lst_matricula = $obj_matricula->lista(null, $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, true, null, null, 1, null, null, null, null, $this->semestre); if (is_array($lst_matricula)) { //for ($ordem = 1; $ordem <= $total_alunos; $ordem++)//foreach de alunos foreach ($lst_matricula as $ordem => $matricula) { $ordem++; $ordem = sprintf("%02d", $ordem); if ($linha % $qtd_quebra == 0) { //nova pagina $this->pdf->ClosePage(); $this->pdf->OpenPage(); $base = 30; $linha = 0; $this->pdf->linha_relativa(30, 30, 780, 0); $qtd_quebra = 35; } $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(60, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(30, $base + 15 + $linha * 15, 780, 0); $this->pdf->escreve_relativo($ordem, 40, $base + 3 + $linha * 15, 15, 15, null, 8); $this->pdf->escreve_relativo($matricula['nome'], 65, $base + 3 + $linha * 15, 215, 15, null, 8); $this->pdf->linha_relativa(285, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(450, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(570, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(340, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(390, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(420, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(480, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(510, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(540, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(630, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(690, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(750, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(810, $base + $linha * 15, 0, 15); //fim $linha++; } } //escrever total $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(60, $base + $linha * 15, 0, 15); $this->pdf->escreve_relativo("Total", 35, $base + 3 + $linha * 15, 20, 15, null, 8); $this->pdf->linha_relativa(285, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(450, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(570, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(340, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(390, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(420, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(480, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(510, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(540, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(630, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(690, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(750, $base + $linha * 15, 0, 15); $this->pdf->linha_relativa(810, $base + $linha * 15, 0, 15); //fim $this->pdf->linha_relativa(30, $base + ($linha + 1) * 15, 780, 0); $this->pdf->ClosePage(); $this->pdf->CloseFile(); $this->get_link = $this->pdf->GetLink(); echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>"; echo "<html><center>Se o download não iniciar automaticamente <br /><a target='blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t<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>\n\t\t\t</span>\n\t\t\t</center>"; }
protected function getMatriculas() { $matriculas = array(); if ($this->canGetMatriculas()) { $alunos = new clsPmieducarMatriculaTurma(); $alunos->setOrderby("sequencial_fechamento , translate(pessoa.nome,'" . Portabilis_String_Utils::toLatin1(åáàãâäéèêëíìîïóòõôöúùüûçÿýñÅÁÀÃÂÄÉÈÊËÍÌÎÏÓÒÕÔÖÚÙÛÜÇÝÑ) . "', '" . Portabilis_String_Utils::toLatin1(aaaaaaeeeeiiiiooooouuuucyynAAAAAAEEEEIIIIOOOOOUUUUCYN) . "')"); $alunos = $alunos->lista($this->getRequest()->matricula_id, $this->getRequest()->turma_id, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->getRequest()->serie_id, $this->getRequest()->curso_id, $this->getRequest()->escola_id, $this->getRequest()->instituicao_id, $this->getRequest()->aluno_id, NULL, array(1, 2, 3), NULL, NULL, $this->getRequest()->ano, NULL, TRUE, NULL, NULL, TRUE, NULL, NULL, NULL, NULL, NULL, NULL); if (!is_array($alunos)) { $alunos = array(); } foreach ($alunos as $aluno) { $matricula = array(); $matriculaId = $aluno['ref_cod_matricula']; // seta id da matricula a ser usado pelo metodo serviceBoletim $this->setCurrentMatriculaId($matriculaId); $matricula['componentes_curriculares'] = $this->loadComponentesCurricularesForMatricula($matriculaId); $matricula['matricula_id'] = $aluno['ref_cod_matricula']; $matricula['aluno_id'] = $aluno['ref_cod_aluno']; $matricula['nome'] = $this->safeString($aluno['nome_aluno']); $matriculas[] = $matricula; } } // adiciona regras de avaliacao if (!empty($matriculas)) { $this->appendResponse('details', $this->getRegraAvaliacao()); $this->appendResponse('situacao', $this->getSituacaoMatricula()); } $this->appendResponse('matricula_id', $this->getRequest()->matricula_id); return $matriculas; }
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 renderHTML() { if ($_POST) { foreach ($_POST as $key => $value) { $this->{$key} = $value; } } if ($this->is_padrao || $this->ano == 2007) { $this->semestre = null; } 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; } $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_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_calendario = new clsPmieducarEscolaAnoLetivo(); $lista_calendario = $obj_calendario->lista($this->ref_cod_escola, $this->ano, null, null, null, null, null, null, null, 1, null); 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; } $calendario = array_shift($lista_calendario); //Dias previstos do mes // Qual o primeiro dia do mes $primeiroDiaDoMes = mktime(0, 0, 0, $this->mes, 1, $this->ano); // Quantos dias tem o mes $NumeroDiasMes = date('t', $primeiroDiaDoMes); $qtd_dias = $NumeroDiasMes; $this->pdf = new clsPDF("Acompanhamento Mensal - {$this->ano}", "Acompanhamento Mensal - {$this->meses_do_ano[$this->mes]}", "A4", "", false, false); $this->pdf->largura = 842.0; $this->pdf->altura = 595.0; $this->pdf->OpenPage(); $this->addCabecalho(); $this->pdf->linha_relativa(30, 120, 780, 0); $this->pdf->linha_relativa(30, 120, 0, 135); $this->pdf->linha_relativa(30, 120, 255, 135); $this->pdf->escreve_relativo("Livros", 40, 245, 60, 15, null, 8); $this->pdf->escreve_relativo("Professor(a) / Aluno", 200, 125, 80, 13, null, 8); $obj_matricula = new clsPmieducarMatriculaTurma(); $obj_matricula->setOrderby('nome_ascii'); $lst_matricula = $obj_matricula->lista(null, $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, true, null, null, 1, null, null, null, null, $this->semestre); if ($lst_matricula) { foreach ($lst_matricula as $ordem => $matricula) { $this->pdf->linha_relativa(285 + $ordem * 13, 120, 0, 135); $nome = $matricula['nome']; $nome = explode(" ", $nome); if (strlen($nome[0]) + strlen($nome[1]) < 13) { $nome = $nome[0] . " " . $nome[1]; } else { $nome = $nome[0]; } //$nome = str_replace(" ","|",$nome); $nome = str2upper(substr($nome, 0, 16)); //$nome = wordwrap(str2upper(substr($nome,0,16)),1,"\n",true); //$nome = str_replace("|","",$nome); //$nome = str_replace("|","",$nome); //$nome = wordwrap($nome,1,"\n",true); //$nome = substr($nome,0,20); //$this->pdf->escreve_relativo($nome, 287+($ordem*13), 125, 130, 135, null, 8); $imagem = girarTextoImagem("{$nome}", 8, 125); $this->pdf->InsertJpng('png', $imagem, 287 + $ordem * 13, 250, 1); ////die("$ this->pdf->escreve_relativo(\"{$nome}\", 287+($ordem*13), 145, 13, 135, null, 8);"); //$this->pdf->escreve_relativo("A\nl\ne\nx\ns\na\nn\nd\nr\no\nP\na\nc\nh\ne\nc\no", 287+($ordem*13), 145, 13, 135, null, 8); } } for ($i = 0; $i < 40; $i++) { $this->pdf->linha_relativa(285 + $i * 13, 120, 0, 135); /*if($i+1 <= $qtd_dias) { $this->pdf->escreve_relativo("", 287+($i*13), 145, 13, 135, null, 8); }*/ } $this->pdf->linha_relativa(810, 120, 0, 135); //fim $this->pdf->linha_relativa(30, 255, 780, 0); $total_alunos = 100; $qtd_quebra = 25; $base = 242; $linha = 1; //if($lst_matricula) //{ //foreach ($lst_matricula as $ordem => $matricula) //{ //$ordem++; //$ordem = sprintf("%02d",$ordem); for ($ordem = 1; $ordem <= 22; $ordem++) { if ($linha % $qtd_quebra == 0) { //nova pagina $this->pdf->ClosePage(); $this->pdf->OpenPage(); $base = 30; $linha = 0; $this->pdf->linha_relativa(30, 30, 780, 0); $qtd_quebra = 35; } $this->pdf->linha_relativa(30, $base + $linha * 13, 0, 13); $this->pdf->linha_relativa(60, $base + $linha * 13, 0, 13); $this->pdf->linha_relativa(30, $base + 13 + $linha * 13, 780, 0); $this->pdf->escreve_relativo($ordem, 40, $base + 3 + $linha * 13, 15, 15, null, 8); $this->pdf->escreve_relativo('', 65, $base + 3 + $linha * 13, 215, 15, null, 8); for ($i = 0; $i <= 38; $i++) { $this->pdf->linha_relativa(285 + $i * 13, $base + $linha * 13, 0, 13); } $this->pdf->linha_relativa(285 + $i * 13, $base + $linha * 13, 0, 13); //total $this->pdf->linha_relativa(810, $base + $linha * 13, 0, 13); //fim $linha++; //} } //} /*//escrever total $this->pdf->linha_relativa(30, $base+($linha*13), 0, 13); $this->pdf->linha_relativa(60, $base+($linha*13), 0, 13); $this->pdf->escreve_relativo("Total", 35, ($base+3)+($linha*13), 20, 15, null, 8); for($i=0; $i<38; $i++) { $this->pdf->linha_relativa(285+($i*13), $base+($linha*13), 0, 13); } $this->pdf->linha_relativa(765, $base+($linha*13), 0, 15); $this->pdf->linha_relativa(780, $base+($linha*13), 0, 15); $this->pdf->linha_relativa(795, $base+($linha*13), 0, 15); $this->pdf->linha_relativa(285+($i*13), $base+($linha*13), 0, 15);//total $this->pdf->linha_relativa(810, $base+($linha*13), 0, 15);//fim $this->pdf->linha_relativa(30, $base+(($linha+1)*13), 780, 0);*/ $this->pdf->quadrado_relativo(400, 550, 394, 15); $this->pdf->quadrado_relativo(400, 560, 394, 15); for ($mes = 1; $mes <= 13; $mes++) { $this->pdf->escreve_relativo($this->meses_do_ano_abr[$mes], 370 + $mes * 30 + 5, 550, 50, 15, null, 8); if ($mes < 13) { $this->pdf->linha_relativa(394 + $mes * 30 + 5, 550, 0, 25); } } $this->pdf->ClosePage(); $this->pdf->CloseFile(); $this->get_link = $this->pdf->GetLink(); echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>"; echo "<html><center>Se o download não iniciar automaticamente <br /><a target='blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t<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>\n\t\t\t</span>\n\t\t\t</center>"; }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = "Faltas/Notas Aluno - Listagem"; // Passa todos os valores obtidos no GET para atributos do objeto foreach ($_GET as $var => $val) { $this->{$var} = $val === '' ? NULL : $val; } $lista_busca = array('Aluno', 'Matrícula', 'Turma', 'Série', 'Curso'); $obj_permissao = new clsPermissoes(); $nivel_usuario = $obj_permissao->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { $lista_busca[] = 'Escola'; $lista_busca[] = 'Instituição'; } else { if ($nivel_usuario == 2) { $lista_busca[] = 'Escola'; } } $this->addCabecalhos($lista_busca); $this->campoTexto('nm_aluno', 'Aluno', $this->nm_aluno, 30, 255, FALSE, FALSE, FALSE, '', "<img border=\"0\" onclick=\"pesquisa_aluno();\" id=\"ref_cod_aluno_lupa\" name=\"ref_cod_aluno_lupa\" src=\"imagens/lupa.png\"\\/>", '', '', TRUE); $this->campoOculto('ref_cod_aluno', $this->ref_cod_aluno); $get_escola = TRUE; $get_curso = TRUE; $sem_padrao = TRUE; $get_escola_curso_serie = TRUE; $get_turma = TRUE; include 'include/pmieducar/educar_campo_lista.php'; if ($this->ref_cod_escola) { $this->ref_ref_cod_escola = $this->ref_cod_escola; } $opcoes = array('' => 'Selecione', 1 => 'Aprovado', 2 => 'Reprovado', 3 => 'Em Andamento'); $this->campoLista('aprovado', 'Situação', $opcoes, $this->aprovado, '', '', '', '', FALSE, FALSE); // Paginador $this->limite = 20; $this->offset = $_GET['pagina_' . $this->nome] ? $_GET['pagina_' . $this->nome] * $this->limite - $this->limite : 0; $obj_nota_aluno = new clsPmieducarMatriculaTurma(); $obj_nota_aluno->setOrderby('ref_cod_matricula ASC'); $obj_nota_aluno->setLimite($this->limite, $this->offset); $aparece = TRUE; $lista = $obj_nota_aluno->lista($this->ref_cod_matricula, $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, $this->ref_cod_instituicao, $this->ref_cod_aluno, NULL, $this->aprovado, NULL, NULL, NULL, TRUE, FALSE, NULL, 1, TRUE, TRUE, NULL, NULL, NULL, NULL, $aparece); $total = $obj_nota_aluno->_total; // monta a lista if (is_array($lista) && count($lista)) { $ref_cod_serie = ''; $nm_serie = ''; $ref_cod_escola = ''; $nm_escola = ''; foreach ($lista as $registro) { if ($registro['ref_ref_cod_serie'] != '' && $ref_cod_serie != $registro['ref_ref_cod_serie']) { $obj_ref_cod_serie = new clsPmieducarSerie($registro['ref_ref_cod_serie']); $det_ref_cod_serie = $obj_ref_cod_serie->detalhe(); $ref_cod_serie = $registro['ref_ref_cod_serie']; $nm_serie = $det_ref_cod_serie['nm_serie']; } elseif ($registro['ref_ref_cod_serie'] == '') { $ref_cod_serie = ''; $nm_serie = ''; } if ($registro['ref_ref_cod_escola'] != '' && $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(); $ref_cod_escola = $registro['ref_ref_cod_escola']; $nm_escola = $det_ref_cod_escola['nome']; } elseif ($registro['ref_ref_cod_escola'] == '') { $ref_cod_escola = ''; $nm_escola = ''; } // Itens a mostrar na listagem de alunos $lista_busca = array(); // Variáveis para a geração do link $path = '/module/Avaliacao/boletim'; $params = array('query' => array('matricula' => $registro['ref_cod_matricula'])); // Instância de UrlHelper $url = CoreExt_View_Helper_UrlHelper::getInstance(); $lista_busca[] = $url->l($registro['nome'], $path, $params); $lista_busca[] = $url->l($registro['ref_cod_matricula'], $path, $params); $lista_busca[] = $url->l($registro['nm_turma'], $path, $params); $lista_busca[] = $url->l($registro['ref_ref_cod_serie'] ? $registro['ref_ref_cod_serie'] : '', $path, $params); $lista_busca[] = $url->l($registro['nm_curso'], $path, $params); if ($nivel_usuario == 1) { $lista_busca[] = $url->l($registro['ref_ref_cod_escola'] ? $nm_escola : '-', $path, $params); $lista_busca[] = $url->l($registro['nm_instituicao'], $path, $params); } elseif ($nivel_usuario == 2) { $lista_busca[] = $url->l($registro['ref_ref_cod_escola'] ? $registro['ref_ref_cod_escola'] : '-', $path, $params); } $this->addLinhas($lista_busca); } } $this->addPaginador2('educar_falta_nota_aluno_lst.php', $total, $_GET, $this->nome, $this->limite); $this->largura = '100%'; }
protected function getMatriculas() { $matriculas = array(); if ($this->canGetMatriculas()) { $alunos = new clsPmieducarMatriculaTurma(); $alunos->setOrderby('ref_cod_curso, ref_ref_cod_serie, ref_cod_turma, sequencial_fechamento, nome'); $alunos = $alunos->lista($this->getRequest()->matricula_id, $this->getRequest()->turma_id, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->getRequest()->serie_id, $this->getRequest()->curso_id, $this->getRequest()->escola_id, $this->getRequest()->instituicao_id, $this->getRequest()->aluno_id, NULL, NULL, NULL, NULL, $this->getRequest()->ano, NULL, TRUE, NULL, NULL, TRUE, NULL, NULL, NULL, NULL, NULL, NULL); if (!is_array($alunos)) { $alunos = array(); } $situacoesMatricula = array('aprovado' => App_Model_MatriculaSituacao::APROVADO, 'reprovado' => App_Model_MatriculaSituacao::REPROVADO, 'em-andamento' => App_Model_MatriculaSituacao::EM_ANDAMENTO); foreach ($alunos as $aluno) { $situacaoMatricula = $this->getSituacaoMatricula($aluno['ref_cod_matricula']); if (in_array($situacaoMatricula, $situacoesMatricula)) { $matricula = array(); $matriculaId = $aluno['ref_cod_matricula']; $matricula['matricula_id'] = $matriculaId; $matricula['aluno_id'] = $aluno['ref_cod_aluno']; $matricula['nome'] = $this->toUtf8($aluno['nome_aluno']); $matricula['nome_curso'] = $this->toUtf8($aluno['nm_curso']); $matricula['nome_serie'] = $this->toUtf8($this->getNomeSerie($aluno['ref_ref_cod_serie'])); $matricula['nome_turma'] = $this->toUtf8($aluno['nm_turma']); $matricula['situacao_historico'] = $this->getSituacaoHistorico($aluno['ref_cod_aluno'], $this->getRequest()->ano, $matriculaId, $reload = true); $matricula['link_to_historico'] = $this->getLinkToHistorico($aluno['ref_cod_aluno'], $this->getRequest()->ano, $matriculaId); $matriculas[] = $matricula; } } } return $matriculas; }
function renderHTML() { global $coreExt; if ($_POST) { foreach ($_POST as $key => $value) { $this->{$key} = $value; } } $this->temporario = isset($_POST['temporario']) ? TRUE : FALSE; 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; } $modulo_sequencial = explode('-', $this->ref_cod_modulo); $this->ref_cod_modulo = $modulo_sequencial[0]; $this->sequencial = $modulo_sequencial[1]; 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']; $regraId = $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; } $altura_linha = 23; $inicio_escrita_y = 175; $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(); // Seleciona a regra para verificar se a presença é geral $regraMapper = new RegraAvaliacao_Model_RegraDataMapper(); $regra = $regraMapper->find($regraId); $presencaGeral = $regra->get('tipoPresenca') == RegraAvaliacao_Model_TipoPresenca::GERAL; // Seleciona o curso para ver se é padrão e decidir qual ano letivo pesquisar $db = new clsBanco(); $consulta = sprintf('SELECT padrao_ano_escolar FROM pmieducar.curso WHERE cod_curso = \'%d\'', $this->ref_cod_curso); $padrao_ano_escolar = $db->CampoUnico($consulta); $total_semanas = 0; if ($padrao_ano_escolar) { // Seleciona o módulo do ano letivo da escola $data = $this->getDatasModulo($this->ref_cod_modulo, $this->sequencial, $this->ano, $this->ref_cod_escola); } else { // Seleciona o módulo do ano letivo da turma $data = $this->getDatasModulo($this->ref_cod_modulo, $this->sequencial, $this->ano, NULL, $this->ref_cod_turma); } $meses = $data['meses']; $dias = $data['dias']; if (!$this->data_ini) { $this->data_ini = $data['dataInicial']; } if (!$this->data_fim) { $this->data_fim = $data['dataFinal']; } $total_semanas = 0; for ($mes = $meses[0]; $mes <= $meses[1]; $mes++) { $mes_final = FALSE; if ($mes == $meses[0]) { $dia = $dias[0]; } elseif ($mes == $meses[1]) { $dia = $dias[1]; $mes_final = TRUE; } else { $dia = 1; } $total_semanas += $this->getNumeroDiasMes($this->ref_cod_turma, $dia, $mes, $this->ano, $mes_final); $total_semanas += $ndm; } $this->pdf = new clsPDF('Diário de Classe - ' . $this->ano, sprintf('Diário de Classe - %s até %s de %s', $this->data_ini, $this->data_fim, $this->ano), 'A4', '', FALSE, FALSE); $this->mes_inicial = (int) $meses[0]; $this->mes_final = (int) $meses[1]; $this->pdf->largura = 842.0; $this->pdf->altura = 595.0; $this->total = $total_semanas; if (!$this->em_branco) { $obj_matricula_turma = new clsPmieducarMatriculaTurma(); $obj_matricula_turma->setOrderby('nome_ascii'); $matriculaSituacao = array(App_Model_MatriculaSituacao::APROVADO, App_Model_MatriculaSituacao::REPROVADO, App_Model_MatriculaSituacao::EM_ANDAMENTO); $lista_matricula = $obj_matricula_turma->lista(NULL, $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, $matriculaSituacao, NULL, NULL, $this->ano, NULL, TRUE, NULL, NULL, TRUE); } if ($this->em_branco) { $lista_matricula = array(); $this->numero_registros = $this->numero_registros ? $this->numero_registros : 20; for ($i = 0; $i < $this->numero_registros; $i++) { $lista_matricula[] = ''; } } // Seleciona os componentes da escola/série $componentes = App_Model_IedFinder::getEscolaSerieDisciplina($this->ref_cod_serie, $this->ref_cod_escola); if (0 < count($componentes) && FALSE == $presencaGeral) { $this->total = $total_semanas = 0; foreach ($componentes as $componente) { $this->nm_disciplina = $componente->nome; $this->page_y = 125; if (FALSE == $presencaGeral) { // Número de semanas dos meses $obj_quadro = new clsPmieducarQuadroHorario(); $obj_quadro->setCamposLista('cod_quadro_horario'); $quadro_horario = $obj_quadro->lista(NULL, NULL, NULL, $this->ref_cod_turma, NULL, NULL, NULL, NULL, 1); $total_semanas = 0; $this->indefinido = FALSE; if (!$quadro_horario) { echo ' <script> alert(\'Turma não possui quadro de horários\'); window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1)); </script>'; die; } $obj_quadro_horarios = new clsPmieducarQuadroHorarioHorarios(); $obj_quadro_horarios->setCamposLista('dia_semana'); $obj_quadro_horarios->setOrderby('1 asc'); $lista_quadro_horarios = $obj_quadro_horarios->lista($quadro_horario[0], $this->ref_cod_serie, $this->ref_cod_escola, $componente->id, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); // Se não for retornado horário e o diário não for temporário, gera // a lista para o próximo componente if (FALSE == $lista_quadro_horarios && FALSE == $this->temporario) { continue; } // Caso o diário seja temporário, gera lista de alunos para 30 dias // por padrão if (FALSE == $lista_quadro_horarios && TRUE == $this->temporario) { $this->indefinido = TRUE; $total_semanas = $coreExt['Config']->get($coreExt['Config']->report->diario_classe->dias_temporarios, 30); } for ($mes_ = $meses[0]; $mes_ <= $meses[1] && FALSE != $lista_quadro_horarios; $mes_++) { $mes_final = FALSE; foreach ($lista_quadro_horarios as $dia_semana) { if ($mes_ == $meses[0]) { $dia = $dias[0]; } elseif ($mes_ == $meses[1]) { $dia = $dias[1]; $mes_final = TRUE; } else { $dia = 1; } $total_semanas += $this->getDiasSemanaMes($this->ref_cod_turma, $dia, $mes_, $this->ano, $dia_semana, $mes_final); } } $this->total = $total_semanas; } if (!$this->total) { continue; } $this->gerarListaAlunos($lista_matricula); } } else { $this->gerarListaAlunos($lista_matricula); } if ($this->total) { $this->pdf->CloseFile(); $this->get_link = $this->pdf->GetLink(); } else { $this->mensagem = 'Não existem dias letivos cadastrados para esta turma'; return; } 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); }