function Novo() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; @session_write_close(); $obj_permissoes = new clsPermissoes(); $obj_permissoes->permissao_cadastra(620, $this->pessoa_logada, 7, "educar_calendario_anotacao_lst.php"); $obj_dia = new clsPmieducarCalendarioDia($this->ref_ref_cod_calendario_ano_letivo, $this->mes, $this->dia); if (!$obj_dia->existe()) { $obj_dia = new clsPmieducarCalendarioDia($this->ref_ref_cod_calendario_ano_letivo, $this->mes, $this->dia, null, $this->pessoa_logada, null, null, null, null, 1); $ref_cod_dia_letivo = $obj_dia->cadastra(); if (!$ref_cod_dia_letivo) { echo "<!--\nErro ao cadastrar clsPmieducarCalendarioDia -->"; return false; } } $obj = new clsPmieducarCalendarioAnotacao($this->cod_calendario_anotacao, $this->pessoa_logada, $this->pessoa_logada, $this->nm_anotacao, $this->descricao, $this->data_cadastro, $this->data_exclusao, $this->ativo); $cadastrou = $obj->cadastra(); if ($cadastrou) { $obj_anotacao_dia = new clsPmieducarCalendarioDiaAnotacao($this->dia, $this->mes, $this->ref_ref_cod_calendario_ano_letivo, $cadastrou); $cadastrado = $obj_anotacao_dia->cadastra(); if ($cadastrado) { $this->mensagem .= "Cadastro efetuado com sucesso.<br>"; header("location: educar_calendario_anotacao_lst.php?dia={$this->dia}&mes={$this->mes}&ano={$this->ano}&ref_cod_calendario_ano_letivo={$this->ref_ref_cod_calendario_ano_letivo}"); return true; } return false; } die("tres"); $this->mensagem = "Cadastro não realizado.<br>"; echo "<!--\nErro ao cadastrar clsPmieducarCalendarioAnotacao\nvalores obrigatorios\nis_numeric( {$this->ref_usuario_exc} ) && is_numeric( {$this->ref_usuario_cad} ) && is_string( {$this->nm_anotacao} )\n-->"; return false; }
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 Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); foreach ($_GET as $var => $val) { // passa todos os valores obtidos no GET para atributos do objeto $this->{$var} = $val === "" ? null : $val; } if ($this->ref_cod_calendario_ano_letivo && $this->ano && $this->mes && $this->dia) { $obj_calendario = new clsPmieducarCalendarioAnoLetivo($this->ref_cod_calendario_ano_letivo); if (!$obj_calendario->existe()) { header("location: educar_calendario_ano_letivo_lst.php"); die; } $this->titulo = "Anotaçõoes Calendário <b>{$this->dia}/{$this->mes}/{$this->ano}</b> - Listagem"; @session_start(); $_SESSION["calendario"]["anotacao"]["dia"] = $this->dia; $_SESSION["calendario"]["anotacao"]["mes"] = $this->mes; $_SESSION["calendario"]["anotacao"]["ano"] = $this->ano; $_SESSION["calendario"]["anotacao"]["ref_cod_calendario_ano_letivo"] = $this->ref_cod_calendario_ano_letivo; session_write_close(); } else { header("location: educar_calendario_ano_letivo_lst.php"); } $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet"); $this->addCabecalhos(array("Anotacão", "Descrição")); // Filtros de Foreign Keys //// outros Filtros // $this->campoTexto( "nm_anotacao", "Nome Anotacão", $this->nm_anotacao, 30, 255, false ); // Paginador $this->limite = 20; $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0; /*$obj_calendario_anotacao = new clsPmieducarCalendarioAnotacao(); $obj_calendario_anotacao->setOrderby( "nm_anotacao ASC" ); $obj_calendario_anotacao->setLimite( $this->limite, $this->offset ); $lista = $obj_calendario_anotacao->lista( $this->cod_calendario_anotacao, null, null, $this->nm_anotacao, $this->descricao, null, null, 1 );*/ $obj_calendario_anotacao_dia = new clsPmieducarCalendarioDiaAnotacao(); $obj_calendario_anotacao_dia->setLimite($this->limite, $this->offset); $lista = $obj_calendario_anotacao_dia->lista($this->dia, $this->mes, $this->ref_cod_calendario_ano_letivo, null, 1); $total = $obj_calendario_anotacao_dia->_total; // monta a lista $get = "&dia={$this->dia}&mes={$this->mes}&ano={$this->ano}&ref_cod_calendario_ano_letivo={$this->ref_cod_calendario_ano_letivo}"; if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { $obj_calendario_anotacao = new clsPmieducarCalendarioAnotacao($registro['ref_cod_calendario_anotacao'], null, null, null, null, null, null, 1); $det = $obj_calendario_anotacao->detalhe(); /* "<a href=\"educar_calendario_anotacao_det.php?cod_calendario_anotacao={$det["cod_calendario_anotacao"]}\">{$registro["ref_dia"]}</a>", "<a href=\"educar_calendario_anotacao_det.php?cod_calendario_anotacao={$det["cod_calendario_anotacao"]}\">{$registro["ref_mes"]}</a>", */ $this->addLinhas(array("<a href=\"educar_calendario_anotacao_cad.php?cod_calendario_anotacao={$det["cod_calendario_anotacao"]}{$get}\">{$det["nm_anotacao"]}</a>", "<a href=\"educar_calendario_anotacao_cad.php?cod_calendario_anotacao={$det["cod_calendario_anotacao"]}{$get}\">{$det["descricao"]}</a>")); } } $this->addPaginador2("educar_calendario_anotacao_lst.php", $total, $_GET, $this->nome, $this->limite); $obj_permissoes = new clsPermissoes(); if ($obj_permissoes->permissao_cadastra(620, $this->pessoa_logada, 7)) { $this->acao = "go(\"educar_calendario_anotacao_cad.php?dia={$this->dia}&mes={$this->mes}&ano={$this->ano}&ref_cod_calendario_ano_letivo={$this->ref_cod_calendario_ano_letivo}\")"; $this->nome_acao = "Nova Anotação"; $this->array_botao = array('Dia Extra/Não Letivo', 'Calendário'); $this->array_botao_url = array("educar_calendario_dia_cad.php?dia={$this->dia}&mes={$this->mes}&ano={$this->ano}&ref_cod_calendario_ano_letivo={$this->ref_cod_calendario_ano_letivo}", "educar_calendario_ano_letivo_lst.php?dia={$this->dia}&mes={$this->mes}&ano={$this->ano}&ref_cod_calendario_ano_letivo={$this->ref_cod_calendario_ano_letivo}"); } $this->largura = "100%"; }