SetTitulo( "{$this->_instituicao} Agenda Particular" ); $this->processoAp = "345"; $this->addEstilo( "agenda" ); $this->addScript( "agenda" ); $this->addEstilo('localizacaoSistema'); } } class indice { var $agenda; var $editor; var $compromissos; var $time_atual; var $data_atual; var $data_atual_db; var $time_real_atual; var $publica = 0; var $time_amanha; var $time_ontem; var $erro_msg; var $scriptNome; function RenderHTML() { $this->scriptNome = "agenda.php"; $db = new clsBanco(); $db2 = new clsBanco(); // inicializacao de variaveis @session_start(); $this->editor = $_SESSION['id_pessoa']; session_write_close(); if( $_REQUEST["cod_agenda"] ) { $this->agenda = $_REQUEST["cod_agenda"]; $objAgenda = new clsAgenda( $this->editor, false, $_REQUEST["cod_agenda"] ); } else { $objAgenda = new clsAgenda( $this->editor, $this->editor, false ); $this->agenda = $objAgenda->getCodAgenda(); } // Checa se a pessoa possui permissao (daqui por diante comeca a visualizar, editar, excluir, etc.) if( ! $objAgenda->permissao_agenda() ) { header( "location: " . $this->scriptNome ); die(); } if( isset( $_REQUEST["time"] ) ) { $this->time_atual = $_REQUEST["time"]; } else { $this->time_atual = time(); } $this->time_amanha = $this->time_atual + 86400; $this->time_ontem = $this->time_atual - 86400; $this->time_real_atual = time(); $this->data_atual = date( "d/m/Y", $this->time_atual ); $this->data_atual_db = date( "Y-m-d", $this->time_atual ); /* DELETAR */ if( isset( $_GET["deletar"] ) ) { $objAgenda->excluiCompromisso( $_GET["deletar"] ); } /* EDITAR */ if( isset( $_POST["agenda_rap_id"] ) ) { $objAgenda->edita_compromisso( $_POST["agenda_rap_id"], $_POST["agenda_rap_titulo"], $_POST["agenda_rap_conteudo"], $_POST["agenda_rap_data"], $_POST["agenda_rap_hora"], $_POST["agenda_rap_horafim"], $_POST["agenda_rap_publico"], $_POST["agenda_rap_importante"] ); } /* INSERIR */ if( isset( $_POST["novo_hora_inicio"] ) ) { $objAgenda->cadastraCompromisso( false,$_POST["novo_titulo"], $_POST["novo_descricao"], $_POST["novo_data"], $_POST["novo_hora_inicio"], $_POST["novo_hora_fim"], $_POST["novo_publico"], $_POST["novo_importante"], $_POST["novo_repetir_dias"], $_POST["novo_repetir_qtd"] ); } /* GRAVA NOTA PARA COMPROMISSO */ if( isset( $_POST["grava_compromisso"] ) && is_numeric( $_POST["grava_compromisso"] ) ) { $objAgenda->edita_nota2compromisso( $_POST["grava_compromisso"], $_POST["grava_hora_fim"] ); } /* RESTAURAR UMA VERSAO */ if( isset( $_GET["restaura"] ) && isset( $_GET["versao"] ) ) { $objAgenda->restaura_versao( $_GET["restaura"], $_GET["versao"]); } /* INICIO DA PAGINA */ $conteudo = ""; $localizacao = new LocalizacaoSistema(); $localizacao->entradaCaminhos( array( $_SERVER['SERVER_NAME']."/intranet" => "Início", "" => "Agenda" )); $this->locale = $localizacao->montar(); if ($this->locale){ $conteudo .= " "; $conteudo .= ""; $conteudo .= "
{$this->locale}
"; } $conteudo .= "
"; $mesesArr = array( "", "Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro" ); $diasArr = array( "Domingo", "Segunda Feira", "Terça Feira", "Quarta Feira", "Quinta Feira", "Sexta Feira", "Sábado" ); $this->arr_data_atual = array( date( "d", $this->time_atual ), date( "n", $this->time_atual ), date( "Y", $this->time_atual ), date( "w", $this->time_atual ) ); $amanhaArr = array( date( "d", $this->time_amanha ), date( "n", $this->time_amanha ), date( "Y", $this->time_amanha ), date( "w", $this->time_amanha ) ); $ontemArr = array( date( "d", $this->time_ontem ), date( "n", $this->time_ontem ), date( "Y", $this->time_ontem ), date( "w", $this->time_ontem ) ); $nm_agenda = $objAgenda->getNome(); $this->publica = $objAgenda->getPublica(); $this->dono = $objAgenda->getCodPessoaDono(); /* TOPO */ if( $this->editor == $this->dono ) { $preferencias = "\"Preferencias\"  
"; } $conteudo .= "
scriptNome}?cod_agenda={$this->agenda}&time={$this->time_ontem}\">\"Dia arr_data_atual[0]} de {$mesesArr[$this->arr_data_atual[1]]} de {$this->arr_data_atual[2]}\" align=\"center\">{$this->arr_data_atual[0]}
" . strtoupper( substr( $mesesArr[$this->arr_data_atual[1]], 0, 3 ) ) . "
{$this->arr_data_atual[2]}
scriptNome}?cod_agenda={$this->agenda}&time={$this->time_amanha}\">\"Próximo {$diasArr[$this->arr_data_atual[3]]}
arr_data_atual[0]} de {$mesesArr[$this->arr_data_atual[1]]} de {$this->arr_data_atual[2]}\" alt=\"{$this->arr_data_atual[0]} de {$mesesArr[$this->arr_data_atual[1]]} de {$this->arr_data_atual[2]}\">
{$preferencias}agenda}\">\"Imprimir  
{$nm_agenda}
Calendario
agenda}&time={$this->time_atual}\"> agenda}\"> time_atual}\"> data_atual}\"> publica}\"> "; if( $this->erro_msg ) { $conteudo .= "

{$this->erro_msg}

"; } $conteudo .= ""; /* * COMPROMISSOS */ if( ! isset( $_GET["versoes"] ) ) { $this->compromissos = $objAgenda->listaCompromissosDia( $this->data_atual ); if( $this->compromissos ) { foreach ( $this->compromissos AS $compromisso ) { $data_inicio = $compromisso["data_inicio"]; $cod_agenda_compromisso = $compromisso["cod_agenda_compromisso"]; $versao = $compromisso["versao"]; $data_fim = $compromisso["data_fim"]; $titulo = $compromisso["titulo"]; $descricao = $compromisso["descricao"]; $importante = $compromisso["importante"]; $publico = $compromisso["publico"]; /* variaveis que vao ser usadas para montar cada compromisso */ $qtd_palavras_corta = 21; $qtd_tit_copia_desc = 5; $extras = 0; $extenso = false; $disp_conteudo = $descricao; $img_publico = ""; $img_expandir = ""; $img_importante = ""; $img_versao = ""; $hora_inicio = date( "H:i", strtotime( $data_inicio ) ); if( strlen( $data_inicio ) > 11 ) { $hora_inicio_disp = "$hora_inicio -"; } else { $hora_inicio_disp = ""; } $hora_fim = date( "H:i", strtotime( $data_fim ) ); $aberto = 1; // TITULO if( $titulo ) { $disp_titulo = $titulo; } else { // se nao tiver titulo pega as X primeiras palavras da descricao ( X = $qtd_tit_copia_desc ) $disp_titulo = implode( " ", array_slice( explode( " ", $descricao ), 0, $qtd_tit_copia_desc ) ); } $disp_titulo = "{$hora_inicio_disp} {$disp_titulo} - {$hora_fim}"; $disp_titulo = str_replace( '"', '"', $disp_titulo ); // DESCRICAO // exibe apenas as primeira X palavras da descricao, se tiver mais corta e define como texto mto extenso ( X = $qtd_palavras_corta ) $descArr = explode( " ", $descricao ); if( count( $descArr ) > $qtd_palavras_corta ) { $extenso = true; $disp_conteudo = implode( " ", array_slice( $descArr, 0, $qtd_palavras_corta ) ) . "..."; } $disp_conteudo = str_replace( "\n", "
", $disp_conteudo ); // se o texto for muito extenso exibe o botao para expandir e retrair if( $extenso ) { $img_expandir = "\"Expandir\""; $aberto = 0; } // se a agenda for publica exibira os icones de compromisso publico ou ptrivado if( $this->publica ) { if( $publico ) { // eh publico $extras += 2; $img_publico = "\"Publico\""; } else { $img_publico = "\"Privado\""; } } if( $importante ) { // imagem de impotante $img_importante = "
\"Importante\""; // coloca o titulo dentro de um span com classe de alerta (somente se o compromisso ainda nao aconteceu) if( strtotime( $data_inicio ) >= $this->time_real_atual ) { $disp_titulo = "{$disp_titulo}"; } // eh importante $extras += 1; } $max_versao = $objAgenda->getCompromissoVersao( $cod_agenda_compromisso ); if( $max_versao > 1 ) { $img_versao = "
scriptNome}?cod_agenda={$this->agenda}&time={$this->time_atual}&versoes={$cod_agenda_compromisso}\">\"Historico\""; } // se a hora atual for maior ele fica mais apagado porque eh antigo if( strtotime( $data_inicio ) < $this->time_real_atual ) { // eh antigo $extras += 4; $class_titulo = "class=\"comp_tit_antigo\""; $class_desc = "class=\"comp_antigo\""; } else { $class_titulo = "class=\"comp_tit\""; $class_desc = ""; } $classe = ( $classe == "claro" ) ? "escuro": "claro"; if( $cod_agenda_compromisso ) { $img_padrao = "\"Editar\"\"Excluir\""; } $conteudo .= ""; } } $classe = ( $classe == "claro" ) ? "escuro": "claro"; $conteudo .= ""; } else { $this->versoes = $objAgenda->listaVersoes( $_GET["versoes"] ); // verifica se o compromisso eh mesmo dessa agenda $db->Consulta( "SELECT 1 FROM agenda_compromisso WHERE ref_cod_agenda = '{$this->agenda}' AND cod_agenda_compromisso = '{$_GET["versoes"]}'" ); if( $db->Num_Linhas() ) { // seleciona as versoes desse compromisso $db->Consulta( "SELECT versao, ref_ref_cod_pessoa_cad, ativo, data_inicio, titulo, descricao, importante, publico, data_cadastro, data_fim FROM agenda_compromisso WHERE cod_agenda_compromisso = '{$_GET["versoes"]}' ORDER BY versao DESC" ); while ( $db->ProximoRegistro() ) { unset( $versao, $ref_ref_cod_pessoa_cad, $ativo, $data_inicio, $titulo, $descricao, $importante, $publico, $data_cadastro, $data_fim ); list( $versao, $ref_ref_cod_pessoa_cad, $ativo, $data_inicio, $titulo, $descricao, $importante, $publico, $data_cadastro, $data_fim ) = $db->Tupla(); $nome = $db2->CampoUnico( "SELECT nome FROM cadastro.pessoa WHERE idpes = '{$ref_ref_cod_pessoa_cad}'" ); $ativo = ( $ativo )? "Ativo": "Inativo"; $importante = ( $importante )? "Sim": "Não"; $publico = ( $publico )? "Sim": "Não"; if( $data_fim ) { $data_fim = date( "d/m/Y H:i", strtotime( $data_fim ) ); } else { $data_fim = "Este compromisso era uma Anotação"; } $conteudo .= "\n"; $conteudo .= "\n"; $conteudo .= "\n"; $conteudo .= "\n"; $conteudo .= "\n"; $conteudo .= "\n"; $conteudo .= "\n"; $conteudo .= "\n"; $conteudo .= "\n"; $conteudo .= "\n"; $conteudo .= "\n"; } $conteudo .= ""; } } /* * fim da pagina */ $conteudo .= "
{$img_expandir}

{$img_publico}
data_atual}\">
{$disp_titulo}
{$disp_conteudo}
{$img_padrao}{$img_importante}{$img_versao}

Versão:{$versao}
Titulo:{$titulo}
Inicio:" . date( "d/m/Y H:i", strtotime( $data_inicio ) ) . "
Fim:{$data_fim}
Descricao:" . str_replace( "\n", "
\n", $descricao ) . "
Status:{$ativo}
Importante:{$importante}
Publico:{$publico}
Responsável:$nome
Reativar?scriptNome}?cod_agenda={$this->agenda}&time={$this->time_atual}&restaura={$_GET["versoes"]}&versao={$versao}\">Clique aqui para reativar esta versão

scriptNome}?cod_agenda={$this->agenda}&time={$this->time_atual}'\">
"; $objCalendario = new calendario( $this->time_atual, "{$this->scriptNome}?cod_agenda={$this->agenda}" ); $conteudo .= $objCalendario->gera_calendario(); $conteudo .= "
Importante
"; $db->Consulta( "SELECT data_inicio, titulo, descricao FROM agenda_compromisso WHERE ref_cod_agenda = '{$this->agenda}' AND ativo = 1 AND importante = 1 AND data_inicio > NOW() ORDER BY data_inicio ASC LIMIT 5 OFFSET 0" ); while ( $db->ProximoRegistro() ) { list( $aviso_inicio, $aviso_titulo, $aviso_descricao ) = $db->Tupla(); $avis_desc_arr = explode( " ", $aviso_descricao ); if( count( $avis_desc_arr ) > 25 ) { $aviso_descricao = implode( " ", array_slice( $avis_desc_arr, 0, 25 ) ) . "..."; } if( ! $aviso_titulo ) { $aviso_titulo = implode( " ", array_slice( $avis_desc_arr, 0, 7 ) ) . "..."; } $aviso_time = strtotime( $aviso_inicio ); $conteudo .= " scriptNome}?cod_agenda={$this->agenda}&time={$aviso_time}\">" . date( "d/m/Y", $aviso_time ) . " - " . date( "H:i", $aviso_time ) . "
{$aviso_titulo}


"; } $conteudo .= "
Anotações
"; unset( $cod_agenda_compromisso, $versao, $data_inicio, $data_fim, $titulo, $descricao, $importante, $publico ); $i = 0; $db->Consulta( "SELECT cod_agenda_compromisso, versao, data_inicio, data_fim, titulo, descricao, importante, publico FROM agenda_compromisso WHERE ref_cod_agenda = '{$this->agenda}' AND ativo = 1 AND data_fim IS NULL AND data_inicio >= '{$this->data_atual_db}' AND data_inicio <= '{$this->data_atual_db} 23:59:59' ORDER BY data_inicio ASC" ); while ( $db->ProximoRegistro() ) { list( $cod_agenda_compromisso, $versao, $data_inicio, $data_fim, $titulo, $descricao, $importante, $publico) = $db->Tupla(); $conteudo .= ""; $i++; } $conteudo .= "
\"Salvar\"
"; return $conteudo; } } $pagina = new clsIndex(); $miolo = new indice(); $pagina->addForm( $miolo ); $pagina->MakeAll(); ?>