protected function inputOptions($options) { $resources = $options['resources']; $instituicaoId = $this->getInstituicaoId($options['instituicaoId']); $escolaId = $this->getEscolaId($options['escolaId']); $serieId = $this->getSerieId($options['serieId']); $ano = $this->viewInstance->ano; $userId = $this->getCurrentUserId(); $isProfessor = Portabilis_Business_Professor::isProfessor($instituicaoId, $userId); if ($escolaId and $serieId and empty($resources) and $isProfessor) { $turmas = Portabilis_Business_Professor::turmasAlocado($escolaId, $serieId, $userId); $resources = Portabilis_Array_Utils::setAsIdValue($turmas, 'id', 'nome'); } elseif ($escolaId && $serieId && empty($resources)) { $resources = App_Model_IedFinder::getTurmas($escolaId, $serieId); } // caso no letivo esteja definido para filtrar turmas por ano, // somente exibe as turmas do ano letivo. if ($escolaId && $ano && $this->turmasPorAno($escolaId, $ano)) { foreach ($resources as $id => $nome) { $turma = new clsPmieducarTurma(); $turma->cod_turma = $id; $turma = $turma->detalhe(); if ($turma['ano'] != $ano) { unset($resources[$id]); } } } return $this->insertOption(null, "Selecione uma turma", $resources); }
/** * @see CoreExt_Entity_Validatable#getDefaultValidatorCollection() */ public function getDefaultValidatorCollection() { // Enums $tipoNotaValor = RegraAvaliacao_Model_Nota_TipoValor::getInstance(); $tipoProgressao = RegraAvaliacao_Model_TipoProgressao::getInstance(); $tipoParecerDescritivo = RegraAvaliacao_Model_TipoParecerDescritivo::getInstance(); $tipoPresenca = RegraAvaliacao_Model_TipoPresenca::getInstance(); // ids de fórmulas de média $formulaMedia = $this->getDataMapper()->findFormulaMediaFinal(); $formulaMedia = CoreExt_Entity::entityFilterAttr($formulaMedia, 'id'); // ids de fórmulas de recuperação $formulaRecuperacao = $this->getDataMapper()->findFormulaMediaRecuperacao(); $formulaRecuperacao = CoreExt_Entity::entityFilterAttr($formulaRecuperacao, 'id'); $formulaRecuperacao[0] = NULL; // ids de tabelas de arredondamento $tabelas = $this->getDataMapper()->findTabelaArredondamento($this); $tabelas = CoreExt_Entity::entityFilterAttr($tabelas, 'id'); // Instituições $instituicoes = array_keys(App_Model_IedFinder::getInstituicoes()); // Fórmula de média é obrigatória? $isFormulaMediaRequired = TRUE; // Média é obrigatória? $isMediaRequired = TRUE; if ($this->get('tipoNota') == RegraAvaliacao_Model_Nota_TipoValor::NENHUM) { $isFormulaMediaRequired = FALSE; $isMediaRequired = FALSE; // Aceita somente o valor NULL quando o tipo de nota é Nenhum. $formulaMedia = $formulaMedia + array(NULL); } return array('instituicao' => new CoreExt_Validate_Choice(array('choices' => $instituicoes)), 'nome' => new CoreExt_Validate_String(array('min' => 5, 'max' => 50)), 'formulaMedia' => new CoreExt_Validate_Choice(array('choices' => $formulaMedia, 'required' => $isFormulaMediaRequired)), 'formulaRecuperacao' => new CoreExt_Validate_Choice(array('choices' => $formulaRecuperacao, 'required' => FALSE)), 'tipoNota' => new CoreExt_Validate_Choice(array('choices' => $tipoNotaValor->getKeys())), 'tipoProgressao' => new CoreExt_Validate_Choice(array('choices' => $tipoProgressao->getKeys())), 'tabelaArredondamento' => new CoreExt_Validate_Choice(array('choices' => $tabelas, 'choice_error' => 'A tabela de arredondamento selecionada não ' . 'corresponde ao sistema de nota escolhido.')), 'parecerDescritivo' => new CoreExt_Validate_Choice(array('choices' => $tipoParecerDescritivo->getKeys())), 'tipoPresenca' => new CoreExt_Validate_Choice(array('choices' => $tipoPresenca->getKeys())), 'media' => $this->validateIfEquals('tipoProgressao', RegraAvaliacao_Model_TipoProgressao::CONTINUADA, 'CoreExt_Validate_Numeric', array('required' => $isMediaRequired, 'min' => 1, 'max' => 10), array('required' => $isMediaRequired, 'min' => 0, 'max' => 10)), 'porcentagemPresenca' => new CoreExt_Validate_Numeric(array('min' => 1, 'max' => 100)), 'mediaRecuperacao' => $this->validateIfEquals('tipoProgressao', RegraAvaliacao_Model_TipoProgressao::CONTINUADA, 'CoreExt_Validate_Numeric', array('required' => $isMediaRequired, 'min' => 1, 'max' => 14), array('required' => $isMediaRequired, 'min' => 0, 'max' => 14))); }
protected function getTipoBoletim() { $tipo = App_Model_IedFinder::getTurma($codTurma = $this->getRequest()->id); $tipo = $tipo['tipo_boletim']; $tiposBoletim = Portabilis_Model_Report_TipoBoletim; $tipos = array(null => 'indefinido', $tiposBoletim::BIMESTRAL => 'portabilis_boletim', $tiposBoletim::TRIMESTRAL => 'portabilis_boletim_trimestral', $tiposBoletim::TRIMESTRAL_CONCEITUAL => 'portabilis_boletim_primeiro_ano_trimestral', $tiposBoletim::SEMESTRAL => 'portabilis_boletim_semestral', $tiposBoletim::SEMESTRAL_CONCEITUAL => 'portabilis_boletim_conceitual_semestral', $tiposBoletim::SEMESTRAL_EDUCACAO_INFANTIL => 'portabilis_boletim_educ_infantil_semestral', $tiposBoletim::PARECER_DESCRITIVO_COMPONENTE => 'portabilis_boletim_parecer', $tiposBoletim::PARECER_DESCRITIVO_GERAL => 'portabilis_boletim_parecer_geral'); return array('tipo-boletim' => $tipos[$tipo]); }
protected function inputOptions($options) { $resources = $options['resources']; if (empty($resources)) { $resources = App_Model_IedFinder::getInstituicoes(); } return $this->insertOption(null, "Selecione uma instituição", $resources); }
public function getDefaultValidatorCollection() { $instituicoes = array_keys(App_Model_IedFinder::getInstituicoes()); $tipoBase = ComponenteCurricular_Model_TipoBase::getInstance(); $tipos = $tipoBase->getKeys(); $areas = $this->getDataMapper()->findAreaConhecimento(); $areas = CoreExt_Entity::entityFilterAttr($areas, 'id'); return array('instituicao' => new CoreExt_Validate_Choice(array('choices' => $instituicoes)), 'nome' => new CoreExt_Validate_String(array('min' => 5, 'max' => 200)), 'abreviatura' => new CoreExt_Validate_String(array('min' => 2, 'max' => 15)), 'tipo_base' => new CoreExt_Validate_Choice(array('choices' => $tipos)), 'area_conhecimento' => new CoreExt_Validate_Choice(array('choices' => $areas))); }
protected function getObra($id) { if (!$id) { $id = $this->getAcervoId($id); } // chama finder somente se possuir id, senão ocorrerá exception $obra = empty($id) ? null : App_Model_IedFinder::getBibliotecaObra($this->getBibliotecaId(), $id); return $obra; }
/** * @see clsCadastro#Gerar() */ public function Gerar() { $this->campoOculto('id', $this->getEntity()->id); // Instituição $instituicoes = App_Model_IedFinder::getInstituicoes(); $this->campoLista('instituicao', $this->_getLabel('instituicao'), $instituicoes, $this->getEntity()->instituicao); // Nome $this->campoTexto('nome', $this->_getLabel('nome'), $this->getEntity()->nome, 60, 60, TRUE, FALSE, FALSE, $this->_getHelp('nome')); }
protected function inputOptions($options) { $resources = $options['resources']; $bibliotecaId = $this->getBibliotecaId(); if ($bibliotecaId and empty($resources)) { $resources = App_Model_IedFinder::getBibliotecaFontes($bibliotecaId); } return $this->insertOption(null, "Selecione uma fonte", $resources); }
protected function inputOptions($options) { $resources = $options['resources']; $bibliotecaId = $this->getBibliotecaId(); if ($bibliotecaId and empty($resources)) { $resources = App_Model_IedFinder::getBibliotecaSituacoes($bibliotecaId); } return $this->insertOption(null, "Selecione uma situação", $resources); }
protected function getResource($id) { if (!$id) { $id = $this->inputValue($id); } // chama finder somente se possuir id, senão ocorrerá exception $resource = empty($id) ? null : App_Model_IedFinder::getAluno($this->getEscolaId(), $id); return $resource; }
/** * @see CoreExt_Entity_Validatable#getDefaultValidatorCollection() */ public function getDefaultValidatorCollection() { $instituicoes = array_keys(App_Model_IedFinder::getInstituicoes()); // Tipo nota $tipoNota = RegraAvaliacao_Model_Nota_TipoValor::getInstance(); $tipoNotas = $tipoNota->getKeys(); // Remove "nenhum" das opções. unset($tipoNotas[RegraAvaliacao_Model_Nota_TipoValor::NENHUM]); return array('instituicao' => new CoreExt_Validate_Choice(array('choices' => $instituicoes)), 'nome' => new CoreExt_Validate_String(array('min' => 5, 'max' => 50)), 'tipoNota' => new CoreExt_Validate_Choice(array('choices' => $tipoNotas))); }
protected function inputOptions($options) { $resources = $options['resources']; $escolaId = $this->getEscolaId($options['escolaId']); $cursoId = $this->getCursoId($options['cursoId']); if ($escolaId && $cursoId && empty($resources)) { $resources = App_Model_IedFinder::getSeries($instituicaoId = null, $escolaId, $cursoId); } return $this->insertOption(null, "Selecione uma série", $resources); }
function templateName() { $flagTipoBoletimTurma = App_Model_IedFinder::getTurma($codTurma = $this->args['turma']); $flagTipoBoletimTurma = $flagTipoBoletimTurma['tipo_boletim']; if (empty($flagTipoBoletimTurma)) { throw new Exception(Portabilis_String_Utils::toLatin1("Não foi definido o tipo de boletim no cadastro de turmas.")); } $tiposBoletim = Portabilis_Model_Report_TipoBoletim; $templates = array($tiposBoletim::BIMESTRAL => 'portabilis_boletim', $tiposBoletim::TRIMESTRAL => 'portabilis_boletim_trimestral', $tiposBoletim::TRIMESTRAL_CONCEITUAL => 'portabilis_boletim_primeiro_ano_trimestral', $tiposBoletim::SEMESTRAL => 'portabilis_boletim_semestral', $tiposBoletim::SEMESTRAL_CONCEITUAL => 'portabilis_boletim_conceitual_semestral', $tiposBoletim::SEMESTRAL_EDUCACAO_INFANTIL => 'portabilis_boletim_educ_infantil_semestral', $tiposBoletim::PARECER_DESCRITIVO_COMPONENTE => 'portabilis_boletim_parecer', $tiposBoletim::PARECER_DESCRITIVO_GERAL => 'portabilis_boletim_parecer_geral'); $template = is_null($flagTipoBoletimTurma) ? '' : $templates[$flagTipoBoletimTurma]; if (empty($template)) { throw new Exception(Portabilis_String_Utils::toLatin1("Não foi possivel recuperar nome do template para o boletim.")); } return $template; }
protected function inputOptions($options) { $resources = $options['resources']; $instituicaoId = $this->getInstituicaoId($options['instituicaoId']); $escolaId = $this->getEscolaId($options['escolaId']); $userId = $this->getCurrentUserId(); $isProfessor = Portabilis_Business_Professor::isProfessor($instituicaoId, $userId); if ($instituicaoId and $escolaId and empty($resources) and $isProfessor) { $cursos = Portabilis_Business_Professor::cursosAlocado($instituicaoId, $escolaId, $userId); $resources = Portabilis_Array_Utils::setAsIdValue($cursos, 'id', 'nome'); } elseif ($escolaId && empty($resources)) { $resources = App_Model_IedFinder::getCursos($escolaId); } return $this->insertOption(null, "Selecione um curso", $resources); }
/** * @see clsCadastro#Gerar() */ public function Gerar() { $this->campoOculto('id', $this->getEntity()->id); // Instituição $instituicoes = App_Model_IedFinder::getInstituicoes(); $this->campoLista('instituicao', $this->_getLabel('instituicao'), $instituicoes, $this->getEntity()->instituicao); // Nome $this->campoTexto('nome', $this->_getLabel('nome'), $this->getEntity()->nome, 50, 200, TRUE, FALSE, FALSE, $this->_getHelp('nome')); // Abreviatura $this->campoTexto('abreviatura', $this->_getLabel('abreviatura'), $this->getEntity()->abreviatura, 50, 25, TRUE, FALSE, FALSE, $this->_getHelp('abreviatura')); // Tipo Base $tipoBase = ComponenteCurricular_Model_TipoBase::getInstance(); $this->campoRadio('tipo_base', $this->_getLabel('tipo_base'), $tipoBase->getEnums(), $this->getEntity()->get('tipo_base')); // Área de conhecimento $areas = $this->getDataMapper()->findAreaConhecimento(); $areas = CoreExt_Entity::entityFilterAttr($areas, 'id', 'nome'); $this->campoLista('area_conhecimento', $this->_getLabel('area_conhecimento'), $areas, $this->getEntity()->get('area_conhecimento')); }
public function stringInput($options = array()) { $defaultOptions = array('options' => array()); $options = $this->mergeOptions($options, $defaultOptions); // subescreve $options['options']['value'] com nome escola if (isset($options['options']['value']) && $options['options']['value']) { $escolaId = $options['options']['value']; } else { $escolaId = $this->getEscolaId($options['id']); } $escola = App_Model_IedFinder::getEscola($escolaId); $options['options']['value'] = $escola['nome']; $defaultInputOptions = array('id' => 'ref_cod_escola', 'label' => 'Escola', 'value' => '', 'inline' => false, 'descricao' => '', 'separador' => ':'); $inputOptions = $this->mergeOptions($options['options'], $defaultInputOptions); $this->viewInstance->campoOculto($inputOptions['id'], $escolaId); $inputOptions['id'] = 'escola_nome'; call_user_func_array(array($this->viewInstance, 'campoRotulo'), $inputOptions); }
/** * @see clsCadastro#Gerar() */ public function Gerar() { $this->campoOculto('id', $this->getEntity()->id); // Instituição $instituicoes = App_Model_IedFinder::getInstituicoes(); $this->campoLista('instituicao', $this->_getLabel('instituicao'), $instituicoes, $this->getEntity()->instituicao); // Nome $this->campoTexto('nome', $this->_getLabel('nome'), $this->getEntity()->nome, 40, 50, TRUE, FALSE, FALSE, $this->_getHelp('nome')); // Fórmula de média $this->campoTexto('formulaMedia', $this->_getLabel('formulaMedia'), $this->getEntity()->formulaMedia, 40, 50, TRUE, FALSE, FALSE, $this->_getHelp('formulaMedia')); // Fórmula de recuperação /*$this->campoTexto('formulaRecuperacao', $this->_getLabel('formulaRecuperacao'), $this->getEntity()->formulaRecuperacao, 40, 50, TRUE, FALSE, FALSE, $this->_getHelp('formulaRecuperacao'));*/ // Tipo de fórmula $tipoFormula = FormulaMedia_Model_TipoFormula::getInstance(); $this->campoRadio('tipoFormula', $this->_getLabel('tipoFormula'), $tipoFormula->getEnums(), $this->getEntity()->get('tipoFormula')); }
function renderHTML() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; $_SESSION['calendario']['ultimo_valido'] = 0; $obj_permissoes = new clsPermissoes(); if ($obj_permissoes->nivel_acesso($this->pessoa_logada) > 7) { $retorno .= ' <table width="100%" height="40%" cellspacing="1" cellpadding="2" border="0" class="tablelistagem"> <tbody>'; $retorno .= ' <tr> <td colspan="2" valig="center" height="50"> <center class="formdktd">Usuário sem permissão para acessar esta página</center> </td> </tr>'; $retorno .= ' </tbody> </table>'; return $retorno; } $retorno .= ' <table width="100%" cellspacing="1" cellpadding="2" border="0" class="tablelistagem"> <tbody>'; if ($_POST) { $this->ref_cod_escola = $_POST['ref_cod_escola'] ? $_POST['ref_cod_escola'] : $_SESSION['calendario']['ref_cod_escola']; $this->ref_cod_instituicao = $_POST['ref_cod_instituicao'] ? $_POST['ref_cod_instituicao'] : $_SESSION['calendario']['ref_cod_instituicao']; if ($_POST['mes']) { $this->mes = $_POST['mes']; } if ($_POST['ano']) { $this->ano = $_POST['ano']; } if ($_POST['cod_calendario_ano_letivo']) { $this->cod_calendario_ano_letivo = $_POST['cod_calendario_ano_letivo']; } } elseif (isset($_SESSION['calendario'])) { // passa todos os valores em SESSION para atributos do objeto foreach ($_SESSION['calendario'] as $var => $val) { $this->{$var} = $val === '' ? NULL : $val; } } if ($_GET) { header('Location: educar_calendario_ano_letivo_lst.php'); } if (!$this->mes) { $this->mes = date('n'); } if (!$this->ano) { $this->ano = date('Y'); } $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada); if (!$this->ref_cod_escola) { $this->ref_cod_escola = $obj_permissoes->getEscola($this->pessoa_logada); } if (!$this->ref_cod_instituicao) { $this->ref_cod_instituicao = $obj_permissoes->getInstituicao($this->pessoa_logada); } $get_escola = 1; $obrigatorio = FALSE; include 'educar_calendario_pesquisas.php'; $obj_calendario_ano_letivo = new clsPmieducarCalendarioAnoLetivo(); $obj_calendario_ano_letivo->setOrderby('ano ASC'); $obj_calendario_ano_letivo->setLimite($this->limite, $this->offset); $lista = array(); $obj_calendario_ano_letivo->setOrderby('ano'); switch ($nivel_usuario) { // Poli-institucional case 1: case 2: case 4: if (!isset($this->ref_cod_escola)) { break; } $lista = $obj_calendario_ano_letivo->lista($this->cod_calendario_ano_letivo, $this->ref_cod_escola, NULL, NULL, !isset($this->cod_calendario_ano_letivo) ? $this->ano : NULL, NULL, NULL, 1); break; } $total = $obj_calendario_ano_letivo->_total; if (empty($lista)) { if ($nivel_usuario == 4) { $retorno .= '<tr><td colspan="2" align="center" class="formdktd">Sem Calendário Letivo</td></tr>'; } else { if ($_POST) { $retorno .= '<tr><td colspan="2" align="center" class="formdktd">Sem Calendário para o ano selecionado</td></tr>'; } else { $retorno .= '<tr><td colspan="2" align="center" class="formdktd">Selecione uma escola para exibir o calendário</td></tr>'; } } } // Monta a lista if (is_array($lista) && count($lista)) { foreach ($lista as $key => $registro) { // Guarda dados na $_SESSION $_SESSION['calendario'] = array('cod_calendario_ano_letivo' => $registro['cod_calendario_ano_letivo'], 'ref_cod_instituicao' => $this->ref_cod_instituicao, 'ref_cod_escola' => $this->ref_cod_escola, 'ano' => $this->ano, 'mes' => $this->mes); // Nome da escola $obj_ref_cod_escola = new clsPmieducarEscola($registro['ref_cod_escola']); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $registro['nm_escola'] = $det_ref_cod_escola['nome']; // Início e término do ano letivo. $obj_ano_letivo_modulo = new clsPmieducarAnoLetivoModulo(); $inicio_ano = $obj_ano_letivo_modulo->menorData($registro['ano'], $this->ref_cod_escola); $fim_ano = $obj_ano_letivo_modulo->maiorData($registro['ano'], $this->ref_cod_escola); $inicio_ano = explode('/', dataFromPgToBr($inicio_ano)); $fim_ano = explode('/', dataFromPgToBr($fim_ano)); // Turmas da escola $turmas = App_Model_IedFinder::getTurmas($registro['ref_cod_escola']); // Mapper de Calendario_Model_TurmaDataMapper $calendarioTurmaMapper = new Calendario_Model_TurmaDataMapper(); $obj_calendario = new clsCalendario(); $obj_calendario->setLargura(600); $obj_calendario->permite_trocar_ano = TRUE; $obj_calendario->setCorDiaSemana(array(0, 6), 'ROSA'); $obj_dia_calendario = new clsPmieducarCalendarioDia($registro['cod_calendario_ano_letivo'], $this->mes, NULL, NULL, NULL, NULL, NULL); $lista_dia = $obj_dia_calendario->lista($registro['cod_calendario_ano_letivo'], $this->mes, NULL, NULL, NULL, NULL); if ($lista_dia) { $array_dias = array(); $array_descricao = array(); foreach ($lista_dia as $dia) { $descricao = ''; $url = sprintf('educar_calendario_anotacao_lst.php?ref_cod_calendario_ano_letivo=%s&ref_cod_escola=%s&dia=%s&mes=%s&ano=%s', $registro['cod_calendario_ano_letivo'], $this->ref_cod_escola, $dia['dia'], $dia['mes'], $this->ano); $botao_editar = sprintf(' <div style="z-index: 0;"> <br /> <input type="button" value="Anotações" onclick="window.location=\'%s\';" class="botaolistagem"/> </div>', $url); if ($dia['ref_cod_calendario_dia_motivo']) { $array_dias[$dia['dia']] = $dia['dia']; $obj_motivo = new clsPmieducarCalendarioDiaMotivo($dia['ref_cod_calendario_dia_motivo']); $det_motivo = $obj_motivo->detalhe(); /** * @todo CoreExt_Enum? */ $tipo = strtoupper($det_motivo['tipo']) == 'E' ? 'Dia Extra-Letivo' : 'Dia Não Letivo'; // Busca pelas turmas que estão marcadas para esse dia $args = array('calendarioAnoLetivo' => $registro['cod_calendario_ano_letivo'], 'mes' => $dia['mes'], 'dia' => $dia['dia'], 'ano' => $this->ano); $calendarioTurmas = $calendarioTurmaMapper->findAll(array(), $args); $nomeTurmas = array(); foreach ($calendarioTurmas as $calendarioTurma) { $nomeTurmas[] = $turmas[$calendarioTurma->turma]; } if (0 == count($nomeTurmas)) { $calendarioTurmas = ''; } else { $calendarioTurmas = 'Turmas: <ul><li>' . implode('</li><li>', $nomeTurmas) . '</li></ul>'; } $descricao = sprintf('<div style="z-index: 0;">%s</div><div align="left" style="z-index: 0;">Motivo: %s<br />Descrição: %s<br />%s</div>%s', $tipo, $det_motivo['nm_motivo'], $dia['descricao'], $calendarioTurmas, $botao_editar); $array_descricao[$dia['dia']] = $descricao; if (strtoupper($det_motivo['tipo']) == 'E') { $obj_calendario->adicionarLegenda('Extra Letivo', 'LARANJA_ESCURO'); $obj_calendario->adicionarArrayDias('Extra Letivo', array($dia['dia'])); } elseif (strtoupper($det_motivo['tipo']) == 'N') { $obj_calendario->adicionarLegenda('Não Letivo', '#VERDE_ESCURO'); $obj_calendario->adicionarArrayDias('Não Letivo', array($dia['dia'])); } $obj_calendario->diaDescricao($array_dias, $array_descricao); } elseif ($dia['descricao']) { $array_dias[$dia['dia']] = $dia['dia']; $descricao = sprintf('<div style="z-index: 0;">Descrição: %s</div>%s', $dia['descricao'], $botao_editar); $array_descricao[$dia['dia']] = $descricao; } } if (!empty($array_dias)) { $obj_calendario->diaDescricao($array_dias, $array_descricao); } } if ($this->mes <= (int) $inicio_ano[1] && $this->ano == (int) $inicio_ano[2]) { if ($this->mes == (int) $inicio_ano[1]) { $obj_calendario->adicionarLegenda('Início Ano Letivo', 'AMARELO'); $obj_calendario->adicionarArrayDias('Início Ano Letivo', array($inicio_ano[0])); } $dia_inicio = (int) $inicio_ano[0]; $dias = array(); if ($this->mes < (int) $inicio_ano[1]) { $NumeroDiasMes = (int) date('t', $this->mes); for ($d = 1; $d <= $NumeroDiasMes; $d++) { $dias[] = $d; } $obj_calendario->setLegendaPadrao('Não Letivo'); if (!empty($dias)) { $obj_calendario->adicionarArrayDias('Não Letivo', $dias); } } else { $dia_inicio; for ($d = 1; $d < $dia_inicio; $d++) { $dias[] = $d; } $obj_calendario->setLegendaPadrao('Dias Letivos', 'AZUL_CLARO'); if (!empty($dias)) { $obj_calendario->adicionarLegenda('Não Letivo', '#F7F7F7'); $obj_calendario->adicionarArrayDias('Não Letivo', $dias); } } } elseif ($this->mes >= (int) $fim_ano[1] && $this->ano == (int) $fim_ano[2]) { $dia_inicio = (int) $fim_ano[0]; $dias = array(); if ($this->mes > (int) $fim_ano[1]) { $NumeroDiasMes = (int) date('t', $this->mes); for ($d = 1; $d <= $NumeroDiasMes; $d++) { $dias[] = $d; } $obj_calendario->setLegendaPadrao('Não Letivo'); if (!empty($dias)) { $obj_calendario->adicionarArrayDias('Não Letivo', $dias); } } else { $NumeroDiasMes = (int) date('t', $this->mes); for ($d = $fim_ano[0]; $d <= $NumeroDiasMes; $d++) { $dias[] = $d; } $obj_calendario->setLegendaPadrao('Dias Letivos', 'AZUL_CLARO'); if (!empty($dias)) { $obj_calendario->adicionarLegenda('Não Letivo', '#F7F7F7'); $obj_calendario->adicionarArrayDias('Não Letivo', $dias); } } if ($this->mes == (int) $fim_ano[1]) { $obj_calendario->adicionarLegenda('Término Ano Letivo', 'AMARELO'); $obj_calendario->adicionarArrayDias('Término Ano Letivo', array($fim_ano[0])); } } else { $obj_calendario->setLegendaPadrao('Dias Letivos', 'AZUL_CLARO'); } $obj_calendario->setCorDiaSemana(array(0, 6), 'ROSA'); $obj_anotacao = new clsPmieducarCalendarioDiaAnotacao(); $lista_anotacoes = $obj_anotacao->lista(NULL, $this->mes, $registro['cod_calendario_ano_letivo'], NULL, 1); if ($lista_anotacoes) { $dia_anotacao = array(); foreach ($lista_anotacoes as $anotacao) { if ($this->mes == (int) $anotacao['ref_mes']) { $dia_anotacao[$anotacao['ref_dia']] = $anotacao['ref_dia']; } } $obj_calendario->adicionarIconeDias($dia_anotacao, 'A'); } $obj_calendario->all_days_url = sprintf('educar_calendario_anotacao_lst.php?ref_cod_calendario_ano_letivo=%s', $registro['cod_calendario_ano_letivo']); // Gera código HTML do calendário $calendario = $obj_calendario->getCalendario($this->mes, $this->ano, 'mes_corrente', $_GET, array('cod_calendario_ano_letivo' => $registro['cod_calendario_ano_letivo'])); $retorno .= sprintf('<tr><td colspan="2"><center><b>%s</b>%s</center></td></tr>', $registro['nm_escola'], $calendario); } } if ($obj_permissoes->permissao_cadastra(620, $this->pessoa_logada, 7)) { if ($_POST && empty($lista) && $_SESSION['calendario']['ultimo_valido']) { $url = sprintf('educar_calendario_ano_letivo_lst.php?ref_cod_instituicao=%s&ref_cod_escola=%s&ano=%s', $this->ref_cod_instituicao, $this->ref_cod_escola, $_SESSION['calendario']['ano']); $bt_voltar = sprintf('<input type="button" value="Voltar" onclick="window.location=\'%s\';" class="botaolistagem" />', $url); } $url = sprintf('educar_calendario_ano_letivo_cad.php?ref_cod_instituicao=%s&ref_cod_escola=%s', $this->ref_cod_instituicao, $this->ref_cod_escola); $retorno .= sprintf(' <tr> <td> </td> </tr> <tr> <td align="center" colspan="2"> %s <input type="button" value="Novo Calendário Letivo" onclick="window.location=\'%s\';" class="botaolistagem" /> </td> </tr>', $bt_voltar, $url); } $retorno .= ' </tbody> </table>'; $localizacao = new LocalizacaoSistema(); $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "Início", "educar_index.php" => "i-Educar - Escola", "" => "Calendário do ano letivo")); $this->enviaLocalizacao($localizacao->montar()); return $retorno; }
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); }
function Gerar() { if ($_POST) { foreach ($_POST as $campo => $val) { $this->{$campo} = $this->{$campo} ? $this->{$campo} : $val; } } $obrigatorio = TRUE; $desabilitado = TRUE; $get_escola = TRUE; $get_curso = TRUE; $get_escola_curso_serie = TRUE; $get_turma = TRUE; include 'include/pmieducar/educar_campo_lista.php'; $this->campoQuebra(); /** * Campos a serem preenchidos com os dados necessários para a inclusão de horários */ // foreign keys $opcoes_disc = array('' => 'Selecione uma disciplina'); // Componentes curriculares da série $componentesTurma = array(); try { $componentesTurma = App_Model_IedFinder::getComponentesTurma($this->ref_ref_cod_serie, $this->ref_cod_escola, $this->ref_cod_turma); } catch (Exception $e) { } if (0 == count($componentesTurma)) { $opcoes_disc = array('NULL' => 'A série dessa escola não possui componentes cadastrados'); } else { foreach ($componentesTurma as $componente) { $opcoes_disc[$componente->id] = $componente; } } $this->campoLista('ref_cod_disciplina', 'Componente curricular', $opcoes_disc, $this->ref_cod_disciplina, '', FALSE, '', '', FALSE, FALSE); $this->campoOculto('identificador', $this->identificador); $opcoesDias = array('' => 'Selecione um dia da semana', 1 => 'Domingo', 2 => 'Segunda-Feira', 3 => 'Terça-Feira', 4 => 'Quarta-Feira', 5 => 'Quinta-Feira', 6 => 'Sexta-Feira', 7 => 'Sábado'); $this->campoOculto('dia_semana', $this->dia_semana); $this->campoLista('dia_semana_', 'Dia da Semana', $opcoesDias, $this->dia_semana, '', FALSE, '', '', TRUE, FALSE); $this->campoHora('hora_inicial', 'Hora Inicial', $this->hora_inicial, FALSE); $this->campoHora('hora_final', 'Hora Final', $this->hora_final, FALSE); $this->campoListaPesq('ref_cod_servidor', 'Servidor', array('' => 'Selecione um servidor'), $this->ref_cod_servidor, '', '', FALSE, '', '', NULL, NULL, '', TRUE, FALSE, FALSE); $this->campoRotulo('bt_incluir_horario', 'Horário', "<a href='#' onclick=\"" . "if (document.getElementById('ref_cod_disciplina').value == '') {\n alert('Você deve escolher a disciplina!');\n return;\n }\n else if (document.getElementById('hora_inicial').value == '') {\n alert('Você deve preencher o campo Hora Inicial!');\n return;\n }\n else if (document.getElementById('hora_final').value == '') {\n alert('Você deve preencher o campo Hora Final!');\n return;\n }\n else if (document.getElementById('ref_cod_servidor').value == '') {\n alert('Você deve selecionar um servidor no campo Servidor');\n return;\n }\n else {\n if (verificaQuadroHorario()) {\n getElementById('incluir_horario').value = 'S';\n getElementById('tipoacao').value = '';\n {$this->__nome}.submit();\n }\n }\"><img src='imagens/nvp_bot_adiciona.gif' title='Incluir' border=0></a>"); $this->campoOculto('incluir_horario', ''); /** * Inclui horários */ if ($_POST['quadro_horario']) { $this->quadro_horario = unserialize(urldecode($_POST['quadro_horario'])); } $qtd_horario = count($this->quadro_horario) == 0 ? 1 : count($this->quadro_horario) + 1; // primary keys if ($this->incluir_horario) { if (is_numeric($_POST['ref_cod_servidor']) && is_string($_POST['hora_inicial']) && is_string($_POST['hora_final']) && is_numeric($_POST['dia_semana']) && is_numeric($_POST['ref_cod_disciplina'])) { $this->quadro_horario[$qtd_horario]['ref_cod_quadro_horario_'] = $this->ref_cod_quadro_horario; $this->quadro_horario[$qtd_horario]['ref_ref_cod_serie_'] = $this->ref_ref_cod_serie; $this->quadro_horario[$qtd_horario]['ref_ref_cod_escola_'] = $this->ref_cod_escola; $this->quadro_horario[$qtd_horario]['ref_ref_cod_disciplina_'] = $_POST['ref_cod_disciplina']; $this->quadro_horario[$qtd_horario]['ref_cod_instituicao_servidor_'] = $this->ref_cod_instituicao; $this->quadro_horario[$qtd_horario]['ref_servidor_'] = $_POST['ref_cod_servidor']; $this->quadro_horario[$qtd_horario]['ref_servidor_substituto_'] = $_POST['ref_servidor_substituto']; $this->quadro_horario[$qtd_horario]['hora_inicial_'] = $_POST['hora_inicial']; $this->quadro_horario[$qtd_horario]['hora_final_'] = $_POST['hora_final']; $this->quadro_horario[$qtd_horario]['ativo_'] = 1; $this->quadro_horario[$qtd_horario]['dia_semana_'] = $_POST['dia_semana']; $this->quadro_horario[$qtd_horario]['qtd_horario_'] = $qtd_horario; $qtd_horario++; /** * salva os dados em uma tabela temporaria * para realizar consulta na listagem */ $obj_quadro_horario = new clsPmieducarQuadroHorarioHorariosAux($this->ref_cod_quadro_horario, NULL, $this->ref_cod_disciplina, $this->ref_cod_escola, $this->ref_ref_cod_serie, $this->ref_cod_instituicao, $this->ref_cod_servidor, $this->dia_semana, $this->hora_inicial, $this->hora_final, $this->identificador); $obj_quadro_horario->cadastra(); unset($this->ref_cod_servidor); unset($this->ref_cod_disciplina); unset($this->hora_inicial); unset($this->hora_final); echo "\n <script>\n window.onload = function() {\n document.getElementById('ref_cod_servidor').value = '';\n document.getElementById('ref_cod_disciplina').value = '';\n document.getElementById('hora_inicial').value = '';\n document.getElementById('hora_final').value = '';\n }\n </script>"; } } echo "<script>\n quadro_horario = " . count($this->quadro_horario) . ";\n </script>"; $this->campoOculto('excluir_horario', ''); $qtd_horario = 1; $this->lst_matriculas = urldecode($this->lst_matriculas); $this->min_mat = $this->min_ves = $this->min_not = 0; if ($this->quadro_horario) { foreach ($this->quadro_horario as $campo) { if ($this->excluir_horario == $campo['qtd_horario_']) { $obj_horario = new clsPmieducarQuadroHorarioHorarios(); $lst_horario = $obj_horario->lista($campo['ref_cod_quadro_horario_'], $campo['ref_ref_cod_serie_'], $campo['ref_ref_cod_escola_'], $campo['ref_ref_cod_disciplina_'], NULL, NULL, NULL, $campo['ref_cod_instituicao_servidor_'], NULL, $campo['ref_servidor_'], $campo['hora_inicial_'], NULL, $campo['hora_final_'], NULL, NULL, NULL, NULL, NULL, 1, $campo['dia_semana_']); if (is_array($lst_horario)) { $campo['ativo_'] = 0; if (isset($this->lst_matriculas)) { $this->lst_matriculas .= '' . $campo['ref_servidor_'] . ''; } else { $this->lst_matriculas .= ', ' . $campo['ref_servidor_'] . ''; } } else { $campo['ativo_'] = 2; if (isset($this->lst_matriculas)) { $this->lst_matriculas .= '' . $campo['ref_servidor_'] . ''; } else { $this->lst_matriculas .= ', ' . $campo['ref_servidor_'] . ''; } } $this->excluir_horario = NULL; $obj_horario = new clsPmieducarQuadroHorarioHorariosAux(); $lst_horario = $obj_horario->excluiRegistro($campo['ref_cod_quadro_horario_'], $campo['ref_ref_cod_serie_'], $campo['ref_ref_cod_escola_'], $campo['ref_ref_cod_disciplina_'], $campo['ref_cod_instituicao_servidor_'], $campo['ref_servidor_'], $this->identificador); } else { switch ($campo['dia_semana_']) { case 1: $campo['nm_dia_semana_'] = 'Domingo'; break; case 2: $campo['nm_dia_semana_'] = 'Segunda-Feira'; break; case 3: $campo['nm_dia_semana_'] = 'Terça-Feira'; break; case 4: $campo['nm_dia_semana_'] = 'Quarta-Feira'; break; case 5: $campo['nm_dia_semana_'] = 'Quinta-Feira'; break; case 6: $campo['nm_dia_semana_'] = 'Sexta-Feira'; break; case 7: $campo['nm_dia_semana_'] = 'Sábado'; break; } } if ($campo['ativo_'] == 1) { $this->campoTextoInv($campo['qtd_horario_'] . '_nm_dia_semana', '', $campo['nm_dia_semana_'], 13, 255, FALSE, FALSE, TRUE); $this->campoOculto($campo['qtd_horario_'] . '_dia_semana', $campo['dia_semana_']); $this->campoTextoInv($campo['qtd_horario_'] . '_hora_inicial', '', $campo['hora_inicial_'], 5, 255, FALSE, FALSE, TRUE); $this->campoTextoInv($campo['qtd_horario_'] . '_hora_final', '', $campo['hora_final_'], 5, 255, FALSE, FALSE, TRUE); $componenteMapper = new ComponenteCurricular_Model_ComponenteDataMapper(); $componente = $componenteMapper->find($campo['ref_ref_cod_disciplina_']); $this->campoTextoInv($campo['qtd_horario_'] . '_ref_cod_disciplina', '', $componente->nome, 30, 255, FALSE, FALSE, TRUE); $obj_pes = new clsPessoa_($campo['ref_servidor_']); $det_pes = $obj_pes->detalhe(); if (is_numeric($campo['ref_servidor_substituto_'])) { $this->campoTextoInv($campo['qtd_horario_'] . '_ref_cod_servidor', '', $det_pes['nome'], 30, 255, FALSE, FALSE, FALSE, '', ''); } else { $this->campoTextoInv($campo['qtd_horario_'] . '_ref_cod_servidor', '', $det_pes['nome'], 30, 255, FALSE, FALSE, FALSE, '', "<a href='#' onclick=\"getElementById('excluir_horario').value = '{$campo["qtd_horario_"]}'; getElementById('tipoacao').value = ''; {$this->__nome}.submit();\"><img src='imagens/nvp_bola_xis.gif' title='Excluir' border=0></a>"); } } if ($campo['ativo_'] != 2) { $horarios_incluidos[$qtd_horario]['ref_cod_quadro_horario_'] = $campo['ref_cod_quadro_horario_']; $horarios_incluidos[$qtd_horario]['ref_ref_cod_serie_'] = $campo['ref_ref_cod_serie_']; $horarios_incluidos[$qtd_horario]['ref_ref_cod_escola_'] = $campo['ref_ref_cod_escola_']; $horarios_incluidos[$qtd_horario]['ref_ref_cod_disciplina_'] = $campo['ref_ref_cod_disciplina_']; $horarios_incluidos[$qtd_horario]['sequencial_'] = $campo['sequencial_']; $horarios_incluidos[$qtd_horario]['ref_cod_instituicao_servidor_'] = $campo['ref_cod_instituicao_servidor_']; $horarios_incluidos[$qtd_horario]['ref_servidor_'] = $campo['ref_servidor_']; $horarios_incluidos[$qtd_horario]['ref_servidor_substituto_'] = $campo['ref_servidor_substituto_']; $horarios_incluidos[$qtd_horario]['hora_inicial_'] = $campo['hora_inicial_']; $horarios_incluidos[$qtd_horario]['hora_final_'] = $campo['hora_final_']; $horarios_incluidos[$qtd_horario]['ativo_'] = $campo['ativo_']; $horarios_incluidos[$qtd_horario]['dia_semana_'] = $campo['dia_semana_']; $horarios_incluidos[$qtd_horario]['qtd_horario_'] = $qtd_horario; $qtd_horario++; } } unset($this->quadro_horario); $this->quadro_horario = $horarios_incluidos; } $this->campoOculto('ref_cod_turma', $this->ref_cod_turma); $this->campoOculto('quadro_horario', serialize($this->quadro_horario)); $this->campoOculto('ref_cod_curso_', $this->ref_cod_curso); $this->campoOculto('lst_matriculas', urlencode($this->lst_matriculas)); $this->campoOculto('min_mat', $this->min_mat); $this->campoOculto('min_ves', $this->min_ves); $this->campoOculto('min_not', $this->min_not); $this->campoQuebra(); }
function renderHTML() { session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); foreach ($_POST as $key => $value) { $this->{$key} = $value; } $this->ref_cod_serie = $this->ref_ref_cod_serie; $fonte = 'arial'; $corTexto = '#000000'; if (!is_numeric($this->ref_cod_instituicao) || !is_numeric($this->ref_cod_escola) || !is_numeric($this->ref_cod_curso) || !is_numeric($this->ref_cod_serie) || !is_numeric($this->ref_cod_turma) || !is_numeric($this->ano)) { echo ' <script> alert("A turma não possui nenhum aluno com situação final definida"); window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1)); </script>'; return TRUE; } $sql = sprintf("\n SELECT\n cod_matricula,\n aprovado,\n ref_ref_cod_serie,\n (SELECT\n nome\n FROM\n pmieducar.aluno a,\n cadastro.pessoa p\n WHERE\n a.cod_aluno = m.ref_cod_aluno\n AND p.idpes = a.ref_idpes\n ) AS nome\n FROM\n pmieducar.matricula m,\n pmieducar.matricula_turma mt\n WHERE\n mt.ref_cod_turma = %d\n AND mt.ref_cod_matricula = m.cod_matricula\n AND m.ativo = 1\n AND mt.ativo = 1\n AND aprovado IN (1, 2)\n AND ano = %d\n ORDER BY\n ref_ref_cod_serie, nome", $this->ref_cod_turma, $this->ano); //verificar se a turma é multiseriada $obj_turma = new clsPmieducarTurma($this->ref_cod_turma); $det_turma = $obj_turma->detalhe(); $ref_ref_cod_serie_mult = $det_turma['ref_ref_cod_serie_mult']; $db = new clsBanco(); $db->Consulta($sql); if (!$db->numLinhas()) { echo ' <script> alert("A turma não possui nenhum aluno com situação final definida"); window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length - 1)); </script>'; return TRUE; } $numAlunos = $db->numLinhas(); // Nome da instituição $obj_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao); $det_instituicao = $obj_instituicao->detalhe(); $this->nm_instituicao = $det_instituicao['nm_instituicao']; // Nome da escola $obj_escola = new clsPmieducarEscola($this->ref_cod_escola); $det_escola = $obj_escola->detalhe(); $this->nm_escola = $det_escola['nome']; // Nome do curso $obj_curso = new clsPmieducarCurso($this->ref_cod_curso); $det_curso = $obj_curso->detalhe(); $this->nm_curso = $det_curso['nm_curso']; // Série $obj_serie = new clsPmieducarSerie($this->ref_cod_serie); $obj_serie->setOrderby('nm_serie'); $det_serie = $obj_serie->detalhe(); $this->nm_serie = $det_serie['nm_serie']; // Seleciona a regra de avaliação da série $regraMapper = new RegraAvaliacao_Model_RegraDataMapper(); $this->regra = $regraMapper->find($det_serie['regra_avaliacao_id']); // Carrega as definições de disciplina $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_cod_serie, $this->ref_cod_escola, $this->ref_cod_turma); foreach ($componentes as $id => $componente) { $this->componentes[$id] = $componente; } $this->presencaGeral = $this->regra->get('tipoPresenca') == RegraAvaliacao_Model_TipoPresenca::GERAL; $obj_turma = new clsPmieducarTurma($this->ref_cod_turma); $obj_turma->setCamposLista('nm_turma, hora_inicial'); $det_turma = $obj_turma->detalhe(); if ($det_turma['hora_inicial'] < '12:00') { $this->nm_turno = 'Matutino'; } elseif ($det_turma['hora_inicial'] < '18:00') { $this->nm_turno = 'Vespertino'; } else { $this->nm_turno = 'Noturno'; } $this->nm_turma = $det_turma["nm_turma"]; $this->buscaDiasLetivos(); asort($this->componentes); $this->pdf = new clsPDF('Ata de Resultado Final - ' . $this->ano, 'Ata de Resultado Final', 'A4', '', FALSE, FALSE); $this->pdf->largura = 842.0; $this->pdf->altura = 595.0; $this->pdf->OpenPage(); $this->addCabecalho(); $esquerda = 3; $direita = 834; $tam_texto = 10; $altura = 130; $altura += 50; $espessura_linha = 0.3; $alunos_matriculados = array(); while ($db->ProximoRegistro()) { list($cod_matricula, $aprovado, $ref_cod_serie, $nome) = $db->Tupla(); $alunos_matriculados[$cod_matricula] = array('aprovado' => $aprovado, 'nome' => $nome, 'ref_cod_serie' => $ref_cod_serie); } if (is_array($alunos_matriculados) && count($alunos_matriculados)) { $this->getAlunoNotasFaltasTable($alunos_matriculados, $det_curso, $curso_conceitual); } $this->rodape(); $this->pdf->CloseFile(); $this->get_link = $this->pdf->GetLink(); echo sprintf("\n <script>\n window.onload=function() {\n parent.EscondeDiv('LoadImprimir');\n window.location='download.php?filename=%s'\n }\n </script>", $this->get_link); echo sprintf("\n <html>\n <center>\n Se o download não iniciar automaticamente <br /><a target='_blank' href='%s' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n <span style='font-size: 10px;'>\n Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n Clique na Imagem para Baixar o instalador<br><br>\n <a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br>\n <img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\">\n </a>\n </span>\n </center>\n </html>", $this->get_link); }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = 'Turma - Detalhe'; $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet'); $this->cod_turma = $_GET['cod_turma']; $tmp_obj = new clsPmieducarTurma(); $lst_obj = $tmp_obj->lista($this->cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, array('true', 'false')); $registro = array_shift($lst_obj); foreach ($registro as $key => $value) { $this->{$key} = $value; } if (!$registro) { header('Location: educar_turma_lst.php'); die; } if (class_exists('clsPmieducarTurmaTipo')) { $obj_ref_cod_turma_tipo = new clsPmieducarTurmaTipo($registro['ref_cod_turma_tipo']); $det_ref_cod_turma_tipo = $obj_ref_cod_turma_tipo->detalhe(); $registro['ref_cod_turma_tipo'] = $det_ref_cod_turma_tipo['nm_tipo']; } else { $registro['ref_cod_turma_tipo'] = 'Erro na geração'; } if (class_exists('clsPmieducarInfraPredioComodo')) { $obj_ref_cod_infra_predio_comodo = new clsPmieducarInfraPredioComodo($registro['ref_cod_infra_predio_comodo']); $det_ref_cod_infra_predio_comodo = $obj_ref_cod_infra_predio_comodo->detalhe(); $registro['ref_cod_infra_predio_comodo'] = $det_ref_cod_infra_predio_comodo['nm_comodo']; } else { $registro['ref_cod_infra_predio_comodo'] = 'Erro na geração'; } if (class_exists('clsPmieducarInstituicao')) { $obj_cod_instituicao = new clsPmieducarInstituicao($registro['ref_cod_instituicao']); $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe(); $registro['ref_cod_instituicao'] = $obj_cod_instituicao_det['nm_instituicao']; } else { $registro['ref_cod_instituicao'] = 'Erro na geração'; } if (class_exists('clsPmieducarEscola')) { $this->ref_ref_cod_escola = $registro['ref_ref_cod_escola']; $obj_ref_cod_escola = new clsPmieducarEscola($registro['ref_ref_cod_escola']); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $registro['ref_ref_cod_escola'] = $det_ref_cod_escola['nome']; } else { $registro['ref_cod_escola'] = 'Erro na geração'; } if (class_exists('clsPmieducarCurso')) { $obj_ref_cod_curso = new clsPmieducarCurso($registro['ref_cod_curso']); $det_ref_cod_curso = $obj_ref_cod_curso->detalhe(); $registro['ref_cod_curso'] = $det_ref_cod_curso['nm_curso']; $padrao_ano_escolar = $det_ref_cod_curso['padrao_ano_escolar']; } else { $registro['ref_cod_curso'] = 'Erro na geração'; } if (class_exists('clsPmieducarSerie')) { $this->ref_ref_cod_serie = $registro['ref_ref_cod_serie']; $obj_ser = new clsPmieducarSerie($registro['ref_ref_cod_serie']); $det_ser = $obj_ser->detalhe(); $registro['ref_ref_cod_serie'] = $det_ser['nm_serie']; } else { $registro['ref_ref_cod_serie'] = 'Erro na geração'; } $obj_permissoes = new clsPermissoes(); $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { if ($registro['ref_cod_instituicao']) { $this->addDetalhe(array('Instituição', $registro['ref_cod_instituicao'])); } } if ($nivel_usuario == 1 || $nivel_usuario == 2) { if ($registro['ref_ref_cod_escola']) { $this->addDetalhe(array('Escola', $registro['ref_ref_cod_escola'])); } } if ($registro['ref_cod_curso']) { $this->addDetalhe(array('Curso', $registro['ref_cod_curso'])); } if ($registro['ref_ref_cod_serie']) { $this->addDetalhe(array('Série', $registro['ref_ref_cod_serie'])); } if ($registro['ref_cod_regente']) { $obj_pessoa = new clsPessoa_($registro['ref_cod_regente']); $det = $obj_pessoa->detalhe(); $this->addDetalhe(array('Professor/Regente', $det['nome'])); } if ($registro['ref_cod_infra_predio_comodo']) { $this->addDetalhe(array('Sala', $registro['ref_cod_infra_predio_comodo'])); } if ($registro['ref_cod_turma_tipo']) { $this->addDetalhe(array('Tipo de Turma', $registro['ref_cod_turma_tipo'])); } if ($registro['nm_turma']) { $this->addDetalhe(array('Turma', $registro['nm_turma'])); } if ($registro['sgl_turma']) { $this->addDetalhe(array('Sigla', $registro['sgl_turma'])); } if ($registro['max_aluno']) { $this->addDetalhe(array('Máximo de Alunos', $registro['max_aluno'])); } $this->addDetalhe(array('Situação', dbBool($registro['visivel']) ? 'Ativo' : 'Desativo')); if ($registro['multiseriada'] == 1) { if ($registro['multiseriada'] == 1) { $registro['multiseriada'] = 'sim'; } else { $registro['multiseriada'] = 'não'; } $this->addDetalhe(array('Multi-Seriada', $registro['multiseriada'])); $obj_serie_mult = new clsPmieducarSerie($registro['ref_ref_cod_serie_mult']); $det_serie_mult = $obj_serie_mult->detalhe(); $this->addDetalhe(array('Série Multi-Seriada', $det_serie_mult['nm_serie'])); } if ($padrao_ano_escolar == 1) { if ($registro['hora_inicial']) { $registro['hora_inicial'] = date('H:i', strtotime($registro['hora_inicial'])); $this->addDetalhe(array('Hora Inicial', $registro['hora_inicial'])); } if ($registro['hora_final']) { $registro['hora_final'] = date('H:i', strtotime($registro['hora_final'])); $this->addDetalhe(array('Hora Final', $registro['hora_final'])); } if ($registro['hora_inicio_intervalo']) { $registro['hora_inicio_intervalo'] = date('H:i', strtotime($registro['hora_inicio_intervalo'])); $this->addDetalhe(array('Hora Início Intervalo', $registro['hora_inicio_intervalo'])); } if ($registro['hora_fim_intervalo']) { $registro['hora_fim_intervalo'] = date('H:i', strtotime($registro['hora_fim_intervalo'])); $this->addDetalhe(array('Hora Fim Intervalo', $registro['hora_fim_intervalo'])); } } elseif ($padrao_ano_escolar == 0) { $obj = new clsPmieducarTurmaModulo(); $obj->setOrderby('data_inicio ASC'); $lst = $obj->lista($this->cod_turma); if ($lst) { $tabela = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Data Início</b></td> <td bgcolor="#A1B3BD"><b>Data Fim</b></td> </tr>'; $cont = 0; foreach ($lst as $valor) { if ($cont % 2 == 0) { $color = ' bgcolor="#E4E9ED" '; } else { $color = ' bgcolor="#FFFFFF" '; } $obj_modulo = new clsPmieducarModulo($valor['ref_cod_modulo']); $det_modulo = $obj_modulo->detalhe(); $nm_modulo = $det_modulo['nm_tipo']; $valor['data_inicio'] = dataFromPgToBr($valor['data_inicio']); $valor['data_fim'] = dataFromPgToBr($valor['data_fim']); $tabela .= sprintf(' <tr> <td %s align=left>%s</td> <td %s align=left>%s</td> <td %s align=left>%s</td> </tr>', $color, $nm_modulo, $color, $valor['data_inicio'], $color, $valor['data_fim']); $cont++; } $tabela .= '</table>'; } if ($tabela) { $this->addDetalhe(array('Módulo', $tabela)); } $dias_da_semana = array('' => 'Selecione', 1 => 'Domingo', 2 => 'Segunda', 3 => 'Terça', 4 => 'Quarta', 5 => 'Quinta', 6 => 'Sexta', 7 => 'Sábado'); $obj = new clsPmieducarTurmaDiaSemana(); $lst = $obj->lista(NULL, $this->cod_turma); if ($lst) { $tabela1 = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Hora Inicial</b></td> <td bgcolor="#A1B3BD"><b>Hora Final</b></td> </tr>'; $cont = 0; foreach ($lst as $valor) { if ($cont % 2 == 0) { $color = ' bgcolor="#E4E9ED" '; } else { $color = ' bgcolor="#FFFFFF" '; } $valor['hora_inicial'] = date('H:i', strtotime($valor['hora_inicial'])); $valor['hora_final'] = date('H:i', strtotime($valor['hora_final'])); $tabela1 .= sprintf("\n <tr>\n <td %s align=left>%s</td>\n <td %s align=left>%s</td>\n <td %s align=left>%s</td>\n </tr>", $color, $dias_da_semana[$valor['dia_semana']], $color, $valor['hora_inicial'], $color, $valor['hora_final']); $cont++; } $tabela1 .= '</table>'; } if ($tabela1) { $this->addDetalhe(array('Dia da Semana', $tabela1)); } } // Recupera os componentes curriculares da turma $componentes = array(); try { $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->cod_turma); } catch (Exception $e) { } $tabela3 = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Carga horária</b></td> </tr>'; $cont = 0; foreach ($componentes as $componente) { $color = $cont++ % 2 == 0 ? ' bgcolor="#E4E9ED" ' : ' bgcolor="#FFFFFF" '; $tabela3 .= sprintf(' <tr> <td %s align="left">%s</td> <td %s align="center">%.0f h</td> </tr>', $color, $componente, $color, $componente->cargaHoraria); } $tabela3 .= '</table>'; $this->addDetalhe(array('Componentes curriculares', $tabela3)); if ($obj_permissoes->permissao_cadastra(586, $this->pessoa_logada, 7)) { $this->url_novo = 'educar_turma_cad.php'; $this->url_editar = 'educar_turma_cad.php?cod_turma=' . $registro['cod_turma']; } $this->url_cancelar = 'educar_turma_lst.php'; $this->largura = '100%'; $localizacao = new LocalizacaoSistema(); $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "Início", "educar_index.php" => "i-Educar - Escola", "" => "Detalhe da turma")); $this->enviaLocalizacao($localizacao->montar()); $this->array_botao[] = 'Reclassificar alunos alfabeticamente'; $this->array_botao_url_script[] = "if(confirm(\"Deseja realmente reclassificar os alunos alfabeticamente?\\nAo utilizar esta opção para esta turma, a ordenação dos alunos no diário e em relatórios que é controlada por ordem de chegada após a data de fechamento da turma (campo Data de fechamento), passará a ter o controle novamente alfabético, desconsiderando a data de fechamento.\"))reclassifica_matriculas({$registro['cod_turma']})"; Portabilis_View_Helper_Application::loadJQueryLib($this); $scripts = array('/modules/Portabilis/Assets/Javascripts/Utils.js', '/modules/Portabilis/Assets/Javascripts/ClientApi.js', '/modules/Cadastro/Assets/Javascripts/TurmaDet.js'); Portabilis_View_Helper_Application::loadJavascript($this, $scripts); }
/** * @see clsCadastro#Gerar() */ public function Gerar() { $this->campoOculto('id', $this->getEntity()->id); // Instituição $instituicoes = App_Model_IedFinder::getInstituicoes(); $this->campoLista('instituicao', $this->_getLabel('instituicao'), $instituicoes, $this->getEntity()->instituicao); // Nome $this->campoTexto('nome', $this->_getLabel('nome'), $this->getEntity()->nome, 40, 50, TRUE, FALSE, FALSE, $this->_getHelp('nome')); // Tipo de nota $notaTipoValor = RegraAvaliacao_Model_Nota_TipoValor::getInstance(); $notaTipos = $notaTipoValor->getEnums(); unset($notaTipos[RegraAvaliacao_Model_Nota_TipoValor::NENHUM]); if ($this->getEntity()->id != '') { $this->campoTexto('tipNota', $this->_getLabel('tipoNota'), $notaTipos[$this->getEntity()->get('tipoNota')], 40, 40, false, false, false, '', '', '', '', true); } else { $this->campoRadio('tipoNota', $this->_getLabel('tipoNota'), $notaTipos, $this->getEntity()->get('tipoNota'), '', $this->_getHelp('tipoNota')); } // Parte condicional if (!$this->getEntity()->isNew()) { // Quebra $this->campoQuebra(); // Ajuda $help = 'Caso seja necessário adicionar mais notas, ' . 'salve o formulário. Automaticamente 3 campos ' . 'novos ficarão disponíveis.<br /><br />'; $this->campoRotulo('__help1', '<strong>Notas para arredondamento</strong><br />', $help, FALSE, '', ''); // Cria campos para a postagem de notas $valores = $this->getDataMapper()->findTabelaValor($this->getEntity()); for ($i = 0, $loop = count($valores); $i < ($loop == 0 ? 5 : $loop + 3); $i++) { $valorNota = $valores[$i]; $valor_label = sprintf("valor[label][%d]", $i); $valor_id = sprintf("valor[id][%d]", $i); $valor_nome = sprintf("valor[nome][%d]", $i); $valor_descricao = sprintf("valor[descricao][%d]", $i); $valor_valor_minimo = sprintf("valor[valor_minimo][%d]", $i); $valor_valor_maximo = sprintf("valor[valor_maximo][%d]", $i); $this->campoRotulo($valor_label, 'Arredondamento ' . ($i + 1), $this->_getLabel(''), TRUE); // Id $this->campoOculto($valor_id, $valorNota->id); // Nome $this->campoTexto($valor_nome, $this->_getLabel('valor_nome'), $valorNota->nome, 5, 5, FALSE, FALSE, TRUE, $this->_getHelp('valor_nome')); // Descrição (se conceitual) if (RegraAvaliacao_Model_Nota_TipoValor::CONCEITUAL == $this->getEntity()->get('tipoNota')) { $this->campoTexto($valor_descricao, $this->_getLabel('valor_descricao'), $valorNota->descricao, 15, 25, FALSE, FALSE, TRUE, $this->_getHelp('valor_descricao')); } // Valor mínimo $this->campoTexto($valor_valor_minimo, $this->_getLabel('valor_valor_minimo'), $valorNota->valorMinimo, 6, 6, FALSE, FALSE, TRUE, $this->_getHelp('valor_valor_minimo')); // Valor máximo $this->campoTexto($valor_valor_maximo, $this->_getLabel('valor_valor_maximo'), $valorNota->valorMaximo, 6, 6, FALSE, FALSE, FALSE, $this->_getHelp('valor_valor_maximo')); } // Quebra $this->campoQuebra(); } }
/** * @see CoreExt_Entity_Validatable#getDefaultValidatorCollection() */ public function getDefaultValidatorCollection() { $instituicoes = array_keys(App_Model_IedFinder::getInstituicoes()); $tipoFormula = FormulaMedia_Model_TipoFormula::getInstance(); // Se for de recuperação, inclui a token "Rc" como permitida. $formulaValidatorOptions = array(); if (FormulaMedia_Model_TipoFormula::MEDIA_RECUPERACAO == $this->get('tipoFormula')) { $formulaValidatorOptions = array('excludeToken' => NULL); } return array('instituicao' => new CoreExt_Validate_Choice(array('choices' => $instituicoes)), 'nome' => new CoreExt_Validate_String(array('min' => 5, 'max' => 50)), 'formulaMedia' => new FormulaMedia_Validate_Formula($formulaValidatorOptions), 'tipoFormula' => new CoreExt_Validate_Choice(array('choices' => $tipoFormula->getKeys()))); }
protected function getEscolaId($escolaId = null) { if (!$escolaId && $this->viewInstance->ref_cod_escola) { $escolaId = $this->viewInstance->ref_cod_escola; } elseif (!$escolaId && is_numeric($this->viewInstance->ref_cod_biblioteca)) { $biblioteca = App_Model_IedFinder::getBiblioteca($this->viewInstance->ref_cod_biblioteca); $escolaId = $biblioteca['ref_cod_escola']; } elseif (!$escolaId) { $escolaId = $this->getPermissoes()->getEscola($this->getCurrentUserId()); } return $escolaId; }
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; } } 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); }
public function getDefaultValidatorCollection() { $instituicoes = array_keys(App_Model_IedFinder::getInstituicoes()); return array('instituicao' => new CoreExt_Validate_Choice(array('choices' => $instituicoes)), 'nome' => new CoreExt_Validate_String(array('min' => 5, 'max' => 60)), 'secao' => new CoreExt_Validate_String(array('min' => 0, 'max' => 50))); }
/** * Setter. * @return App_Service_Boletim Provê interface fluída */ protected function _setMatriculaInfo() { $codMatricula = $this->getOption('matricula'); $this->_setRegra(App_Model_IedFinder::getRegraAvaliacaoPorMatricula($codMatricula, $this->getRegraDataMapper()))->_setComponentes(App_Model_IedFinder::getComponentesPorMatricula($codMatricula, $this->getComponenteDataMapper(), $this->getComponenteTurmaDataMapper())); // Valores scalar de referência $matricula = App_Model_IedFinder::getMatricula($codMatricula); $etapas = App_Model_IedFinder::getQuantidadeDeModulosMatricula($codMatricula); $this->setOption('matriculaData', $matricula); $this->setOption('aprovado', $matricula['aprovado']); $this->setOption('cursoHoraFalta', $matricula['curso_hora_falta']); $this->setOption('cursoCargaHoraria', $matricula['curso_carga_horaria']); $this->setOption('serieCargaHoraria', $matricula['serie_carga_horaria']); $this->setOption('etapas', $etapas); return $this; }
/** * @see clsCadastro#Gerar() */ public function Gerar() { $this->campoOculto('id', $this->getEntity()->id); // Instituição $instituicoes = App_Model_IedFinder::getInstituicoes(); $this->campoLista('instituicao', $this->_getLabel('instituicao'), $instituicoes, $this->getEntity()->instituicao); // Nome $this->campoTexto('nome', $this->_getLabel('nome'), $this->getEntity()->nome, 50, 50, TRUE, FALSE, FALSE, $this->_getHelp('nome')); // Nota tipo valor $notaTipoValor = RegraAvaliacao_Model_Nota_TipoValor::getInstance(); $this->campoRadio('tipoNota', $this->_getLabel('tipoNota'), $notaTipoValor->getEnums(), $this->getEntity()->get('tipoNota'), '', $this->_getHelp('tipoNota')); // Tabela de arredondamento $tabelaArredondamento = $this->getDataMapper()->findTabelaArredondamento($this->getEntity()); $tabelaArredondamento = CoreExt_Entity::entityFilterAttr($tabelaArredondamento, 'id', 'nome'); if (empty($tabelaArredondamento)) { $tabelaArredondamento = array(0 => 'O tipo de nota não possui tabela de arredondamento.'); } $this->campoLista('tabelaArredondamento', $this->_getLabel('tabelaArredondamento'), $tabelaArredondamento, $this->getEntity()->get('tabelaArredondamento'), '', FALSE, $this->_getHelp('tabelaArredondamento'), '', FALSE, FALSE); // Tipo progressão $tipoProgressao = RegraAvaliacao_Model_TipoProgressao::getInstance(); $this->campoRadio('tipoProgressao', $this->_getLabel('tipoProgressao'), $tipoProgressao->getEnums(), $this->getEntity()->get('tipoProgressao'), '', $this->_getHelp('tipoProgressao')); // Média $this->campoTexto('media', $this->_getLabel('media'), $this->getEntity()->media, 5, 50, FALSE, FALSE, FALSE, $this->_getHelp('media')); $this->campoTexto('mediaRecuperacao', $this->_getLabel('mediaRecuperacao'), $this->getEntity()->mediaRecuperacao, 5, 50, FALSE, FALSE, FALSE, $this->_getHelp('mediaRecuperacao')); // Cálculo média $formulas = $this->getDataMapper()->findFormulaMediaFinal(); $formulas = CoreExt_Entity::entityFilterAttr($formulas, 'id', 'nome'); $this->campoLista('formulaMedia', $this->_getLabel('formulaMedia'), $formulas, $this->getEntity()->get('formulaMedia'), '', FALSE, $this->_getHelp('formulaMedia'), '', FALSE, FALSE); // Cálculo média recuperação $formulas = $this->getDataMapper()->findFormulaMediaRecuperacao(); $formulasArray = array(0 => 'Não usar recuperação'); $formulasArray = $formulasArray + CoreExt_Entity::entityFilterAttr($formulas, 'id', 'nome'); $this->campoLista('formulaRecuperacao', $this->_getLabel('formulaRecuperacao'), $formulasArray, $this->getEntity()->get('formulaRecuperacao'), '', FALSE, $this->_getHelp('formulaRecuperacao'), '', FALSE, FALSE); // Porcentagem presença $this->campoTexto('porcentagemPresenca', $this->_getLabel('porcentagemPresenca'), $this->getEntity()->porcentagemPresenca, 5, 50, TRUE, FALSE, FALSE, $this->_getHelp('porcentagemPresenca')); // Parecer descritivo $parecerDescritivo = RegraAvaliacao_Model_TipoParecerDescritivo::getInstance(); $this->campoRadio('parecerDescritivo', $this->_getLabel('parecerDescritivo'), $parecerDescritivo->getEnums(), $this->getEntity()->get('parecerDescritivo'), '', $this->_getHelp('parecerDescritivo')); // Presença $tipoPresenca = RegraAvaliacao_Model_TipoPresenca::getInstance(); $this->campoRadio('tipoPresenca', $this->_getLabel('tipoPresenca'), $tipoPresenca->getEnums(), $this->getEntity()->get('tipoPresenca'), '', $this->_getHelp('tipoPresenca')); }