usuario_id);
$outro_usuario=getParam($_REQUEST, 'outro_usuario', 0);
$tipos_status=array('' => 'indefinido') + getSisValor('status');
$precedencia=getSisValor('precedencia');
$class_sigilosa=getSisValor('class_sigilosa');
//cm impede ver mensagens de outro usuario se não for CM ou administrador
if (!$Aplic->usuario_admin && $Aplic->usuario_acesso_email!=1) $usuario_id = $Aplic->usuario_id;
$sql = new BDConsulta;
$sql->adTabela('msg');
$sql->adUnir('msg_usuario','msg_usuario','msg_usuario.msg_id = msg.msg_id');
$sql->adCampo('msg_usuario_id');
$sql->adOnde('msg_usuario.msg_usuario_id = '.$msg_usuario_id);
$sql->adOnde('msg.class_sigilosa <= '.$Aplic->usuario_acesso_email);
$permitido = $sql->Resultado();
$sql->limpar();
if (!$permitido) {
echo '';
exit();
}
//dados básicos da mensagem
$sql->adTabela('msg_usuario');
$sql->adUnir('msg','msg','msg.msg_id=msg_usuario.msg_id');
$sql->esqUnir('msg_cripto', 'msg_cripto', 'msg_usuario.msg_cripto_id=msg_cripto.msg_cripto_id');
$sql->esqUnir('chaves_publicas', 'chaves_publicas', 'msg.chave_publica = chave_publica_id');
$sql->adCampo('msg_usuario.msg_cripto_id, chave_publica_chave AS publica');
$sql->adCampo('msg_usuario.anotacao_id, msg_usuario.tipo, msg_usuario.aviso_leitura, msg_usuario.datahora_leitura, msg.data_envio, msg.msg_id, data_retorno, data_limite, resposta_despacho, msg.cm, assinatura, msg_usuario_id, msg.precedencia, msg.class_sigilosa, msg.referencia, msg.texto, msg.cripto, datahora, msg_usuario.de_id');
$sql->adOnde('msg_usuario.msg_usuario_id = '.$msg_usuario_id);
$rs = $sql->Linha();
$sql->limpar();
$msg_id=$rs['msg_id'];
if ($rs['cripto']) $msg_id_cripto=$msg_id;
else $msg_id_cripto=0;
if ($rs['cripto']==1){
$sql->adTabela('msg_cripto');
$sql->adCampo('texto, chave_envelope');
$sql->adOnde('msg_cripto_msg = '.$msg_id);
$sql->adOnde('msg_cripto_para = '.$usuario_id);
$linha_cripto = $sql->Linha();
$sql->limpar();
openssl_open(base64_decode($linha_cripto['texto']), $em_claro, base64_decode($linha_cripto['chave_envelope']), $Aplic->chave_privada);
$rs['texto']=$em_claro;
}
elseif ($rs['cripto']==2){
$sql->adTabela('msg_cripto');
$sql->adCampo('texto');
$sql->adOnde('msg_cripto_id = '.$rs['msg_cripto_id']);
$linha_cripto = $sql->Resultado();
$sql->limpar();
require_once BASE_DIR.'/classes/cifra.class.php';
$cifra = new cifra;
$cifra->set_key($senha);
$rs['texto']=$cifra->decriptar($linha_cripto);
}
$assinado='';
//verificar dados originais da 1a mensagem
$sql->adTabela('msg');
$sql->esqUnir('chaves_publicas', 'chaves_publicas', 'msg.chave_publica = chave_publica_id');
$sql->adCampo('precedencia, class_sigilosa, referencia, de_id, texto, cripto, cm, data_envio, assinatura, chave_publica_chave');
$sql->adOnde('msg_id = '.$msg_id);
$original = $sql->Linha();
$sql->limpar();
if (function_exists('openssl_sign') && $rs['assinatura']){
$identificador=$original['precedencia'].$original['class_sigilosa'].$original['referencia'].$original['de_id'].$rs['texto'].$original['cripto'].$original['cm'].$original['data_envio'];
$ok = openssl_verify($identificador, base64_decode($original['assinatura']), $original['chave_publica_chave'], OPENSSL_ALGO_SHA1);
if (!$ok) $assinado=' ';
else $assinado='
';
}
echo '
';
echo '
|
'.$rs['texto'].' |
Msg. '.$lista_referencia_pai[0]['referencia_msg_pai'].($lista_referencia_pai[0]['referencia']? ' - '.$lista_referencia_pai[0]['referencia'] : '').' - '.nome_funcao($lista_referencia_pai[0]['nome_de'], '', $lista_referencia_pai[0]['funcao_de'], '', $lista_referencia_pai[0]['de_id']).' - '.retorna_data($lista_referencia_pai[0]['data_envio'], false); $qnt_msg++; } else { if ($lista_referencia_pai[0]['modelo_autoridade_assinou']) { $nome=nome_funcao($lista_referencia_pai[0]['modelo_assinatura_nome'], '', $lista_referencia_pai[0]['modelo_assinatura_funcao'], '', $lista_referencia_pai[0]['modelo_autoridade_assinou']); $data=retorna_data($lista_referencia_pai[0]['modelo_data_assinado'], false); } elseif ($lista_referencia_pai[0]['modelo_autoridade_aprovou']) { $nome=nome_funcao($lista_referencia_pai[0]['modelo_aprovou_nome'], '', $lista_referencia_pai[0]['modelo_aprovou_funcao'], '', $lista_referencia_pai[0]['modelo_autoridade_aprovou']); $data=retorna_data($lista_referencia_pai[0]['modelo_data_aprovado'], false); } else { $nome=nome_funcao($lista_referencia_pai[0]['modelo_criador_nome'], '', $lista_referencia_pai[0]['modelo_criador_funcao'], '', $lista_referencia_pai[0]['modelo_criador_original']); $data=retorna_data($lista_referencia_pai[0]['modelo_data'], false); } $referencia_pai.= ' |
Doc. '.$lista_referencia_pai[0]['referencia_doc_pai'].($lista_referencia_pai[0]['modelo_assunto']? ' - '.$lista_referencia_pai[0]['modelo_assunto'] : '').' - '.$nome.' - '.$data;
$qnt_doc++;
}
$qnt_lista_referencia_pai=count($lista_referencia_pai);
if ($qnt_lista_referencia_pai > 1) {
$lista='';
for ($i = 1, $i_cmp = $qnt_lista_referencia_pai; $i < $i_cmp; $i++) {
if ($lista_referencia_pai[$i]['referencia_msg_pai']) {
$lista.= 'Msg. '.$lista_referencia_pai[$i]['referencia_msg_pai'].($lista_referencia_pai[$i]['referencia']? ' - '.$lista_referencia_pai[$i]['referencia'] : '').' - '.nome_funcao($lista_referencia_pai[$i]['nome_de'], '', $lista_referencia_pai[$i]['funcao_de'], '', $lista_referencia_pai[$i]['de_id']).' - '.retorna_data($lista_referencia_pai[$i]['data_envio'], false).' '; $qnt_msg++; } else { if ($lista_referencia_pai[$i]['modelo_autoridade_assinou']) { $nome=nome_funcao($lista_referencia_pai[$i]['modelo_assinatura_nome'], '', $lista_referencia_pai[$i]['modelo_assinatura_funcao'], '', $lista_referencia_pai[$i]['modelo_autoridade_assinou']); $data=retorna_data($lista_referencia_pai[$i]['modelo_data_assinado'], false); } elseif ($lista_referencia_pai[$i]['modelo_autoridade_aprovou']) { $nome=nome_funcao($lista_referencia_pai[$i]['modelo_aprovou_nome'], '', $lista_referencia_pai[$i]['modelo_aprovou_funcao'], '', $lista_referencia_pai[$i]['modelo_autoridade_aprovou']); $data=retorna_data($lista_referencia_pai[$i]['modelo_data_aprovado'], false); } else { $nome=nome_funcao($lista_referencia_pai[$i]['modelo_criador_nome'], '', $lista_referencia_pai[$i]['modelo_criador_funcao'], '', $lista_referencia_pai[$i]['modelo_criador_original']); $data=retorna_data($lista_referencia_pai[$i]['modelo_data'], false); } $lista.= 'Doc. '.$lista_referencia_pai[$i]['referencia_doc_pai'].($lista_referencia_pai[$i]['modelo_assunto']? ' - '.$lista_referencia_pai[$i]['modelo_assunto'] : '').' - '.$nome.' - '.$data.' '; $qnt_doc++; } } $referencia_pai.= ' (+'.($qnt_lista_referencia_pai - 1).') '; } $referencia_pai.= ' |
';
echo '
|
Msg. '.$lista_referencia_filho[0]['referencia_msg_filho'].($lista_referencia_filho[0]['referencia']? ' - '.$lista_referencia_filho[0]['referencia'] : '').' - '.nome_funcao($lista_referencia_filho[0]['nome_de'], '', $lista_referencia_filho[0]['funcao_de'], '', $lista_referencia_filho[0]['de_id']).' - '.retorna_data($lista_referencia_filho[0]['data_envio'], false); $qnt_msg++; } else { if ($lista_referencia_filho[0]['modelo_autoridade_assinou']) { $nome=nome_funcao($lista_referencia_filho[0]['modelo_assinatura_nome'], '', $lista_referencia_filho[0]['modelo_assinatura_funcao'], '', $lista_referencia_filho[0]['modelo_autoridade_assinou']); $data=retorna_data($lista_referencia_filho[0]['modelo_data_assinado'], false); } elseif ($lista_referencia_filho[0]['modelo_autoridade_aprovou']) { $nome=nome_funcao($lista_referencia_filho[0]['modelo_aprovou_nome'], '', $lista_referencia_filho[0]['modelo_aprovou_funcao'], '', $lista_referencia_filho[0]['modelo_autoridade_aprovou']); $data=retorna_data($lista_referencia_filho[0]['modelo_data_aprovado'], false); } else { $nome=nome_funcao($lista_referencia_filho[0]['modelo_criador_nome'], '', $lista_referencia_filho[0]['modelo_criador_funcao'], '', $lista_referencia_filho[0]['modelo_criador_original']); $data=retorna_data($lista_referencia_filho[0]['modelo_data'], false); } $referencia_filho.= ' |
Doc. '.$lista_referencia_filho[0]['referencia_doc_filho'].($lista_referencia_filho[0]['modelo_assunto']? ' - '.$lista_referencia_filho[0]['modelo_assunto'] : '').' - '.$nome.' - '.$data;
$qnt_doc++;
}
$qnt_lista_referencia_filho=count($lista_referencia_filho);
if ($qnt_lista_referencia_filho > 1) {
$lista='';
for ($i = 1, $i_cmp = $qnt_lista_referencia_filho; $i < $i_cmp; $i++) {
if ($lista_referencia_filho[$i]['referencia_msg_filho']) {
$lista.= 'Msg. '.$lista_referencia_filho[$i]['referencia_msg_filho'].($lista_referencia_filho[$i]['referencia']? ' - '.$lista_referencia_filho[$i]['referencia'] : '').' - '.nome_funcao($lista_referencia_filho[$i]['nome_de'], '', $lista_referencia_filho[$i]['funcao_de'], '', $lista_referencia_filho[$i]['de_id']).' - '.retorna_data($lista_referencia_filho[$i]['data_envio'], false).' '; $qnt_msg++; } else { if ($lista_referencia_filho[$i]['modelo_autoridade_assinou']) { $nome=nome_funcao($lista_referencia_filho[$i]['modelo_assinatura_nome'], '', $lista_referencia_filho[$i]['modelo_assinatura_funcao'], '', $lista_referencia_filho[$i]['modelo_autoridade_assinou']); $data=retorna_data($lista_referencia_filho[$i]['modelo_data_assinado'], false); } elseif ($lista_referencia_filho[$i]['modelo_autoridade_aprovou']) { $nome=nome_funcao($lista_referencia_filho[$i]['modelo_aprovou_nome'], '', $lista_referencia_filho[$i]['modelo_aprovou_funcao'], '', $lista_referencia_filho[$i]['modelo_autoridade_aprovou']); $data=retorna_data($lista_referencia_filho[$i]['modelo_data_aprovado'], false); } else { $nome=nome_funcao($lista_referencia_filho[$i]['modelo_criador_nome'], '', $lista_referencia_filho[$i]['modelo_criador_funcao'], '', $lista_referencia_filho[$i]['modelo_criador_original']); $data=retorna_data($lista_referencia_filho[$i]['modelo_data'], false); } $lista.= 'Doc. '.$lista_referencia_filho[$i]['referencia_doc_filho'].($lista_referencia_filho[$i]['modelo_assunto']? ' - '.$lista_referencia_filho[$i]['modelo_assunto'] : '').' - '.$nome.' - '.$data.' '; $qnt_doc++; } } $referencia_filho.= ' (+'.($qnt_lista_referencia_filho - 1).') '; } $referencia_filho.= ' |
';
echo '
|
';
echo '
|
Relacionamento: | ';
$qnt=0;
foreach($lista as $gestao_data){
if ($gestao_data['msg_gestao_tarefa']) echo ($qnt++ ? ' ' : '').imagem('icones/tarefa_p.gif').link_tarefa($gestao_data['msg_gestao_tarefa']); elseif ($gestao_data['msg_gestao_projeto']) echo ($qnt++ ? ' ' : '').imagem('icones/projeto_p.gif').link_projeto($gestao_data['msg_gestao_projeto']); elseif ($gestao_data['msg_gestao_pratica']) echo ($qnt++ ? ' ' : '').imagem('icones/pratica_p.gif').link_pratica($gestao_data['msg_gestao_pratica']); elseif ($gestao_data['msg_gestao_acao']) echo ($qnt++ ? ' ' : '').imagem('icones/plano_acao_p.gif').link_acao($gestao_data['msg_gestao_acao']); elseif ($gestao_data['msg_gestao_perspectiva']) echo ($qnt++ ? ' ' : '').imagem('icones/perspectiva_p.png').link_perspectiva($gestao_data['msg_gestao_perspectiva']); elseif ($gestao_data['msg_gestao_tema']) echo ($qnt++ ? ' ' : '').imagem('icones/tema_p.png').link_tema($gestao_data['msg_gestao_tema']); elseif ($gestao_data['msg_gestao_objetivo']) echo ($qnt++ ? ' ' : '').imagem('icones/obj_estrategicos_p.gif').link_objetivo($gestao_data['msg_gestao_objetivo']); elseif ($gestao_data['msg_gestao_fator']) echo ($qnt++ ? ' ' : '').imagem('icones/fator_p.gif').link_fator($gestao_data['msg_gestao_fator']); elseif ($gestao_data['msg_gestao_estrategia']) echo ($qnt++ ? ' ' : '').imagem('icones/estrategia_p.gif').link_estrategia($gestao_data['msg_gestao_estrategia']); elseif ($gestao_data['msg_gestao_meta']) echo ($qnt++ ? ' ' : '').imagem('icones/meta_p.gif').link_meta($gestao_data['msg_gestao_meta']); elseif ($gestao_data['msg_gestao_canvas']) echo ($qnt++ ? ' ' : '').imagem('icones/canvas_p.png').link_canvas($gestao_data['msg_gestao_canvas']); elseif ($gestao_data['msg_gestao_risco']) echo ($qnt++ ? ' ' : '').imagem('icones/risco_p.png').link_risco($gestao_data['msg_gestao_risco']); elseif ($gestao_data['msg_gestao_risco_resposta']) echo ($qnt++ ? ' ' : '').imagem('icones/risco_resposta_p.png').link_risco_resposta($gestao_data['msg_gestao_risco_resposta']); elseif ($gestao_data['msg_gestao_indicador']) echo ($qnt++ ? ' ' : '').imagem('icones/indicador_p.gif').link_indicador($gestao_data['msg_gestao_indicador']); elseif ($gestao_data['msg_gestao_calendario']) echo ($qnt++ ? ' ' : '').imagem('icones/calendario_p.png').link_calendario($gestao_data['msg_gestao_calendario']); elseif ($gestao_data['msg_gestao_monitoramento']) echo ($qnt++ ? ' ' : '').imagem('icones/monitoramento_p.gif').link_monitoramento($gestao_data['msg_gestao_monitoramento']); elseif ($gestao_data['msg_gestao_ata']) echo ($qnt++ ? ' ' : '').imagem('../../../modulos/atas/imagens/ata_p.png').link_ata_pro($gestao_data['msg_gestao_ata']); elseif ($gestao_data['msg_gestao_swot']) echo ($qnt++ ? ' ' : '').imagem('../../../modulos/swot/imagens/swot_p.png').link_swot($gestao_data['msg_gestao_swot']); elseif ($gestao_data['msg_gestao_operativo']) echo ($qnt++ ? ' ' : '').imagem('icones/operativo_p.png').link_operativo($gestao_data['msg_gestao_operativo']); elseif ($gestao_data['msg_gestao_instrumento']) echo ($qnt++ ? ' ' : '').imagem('icones/instrumento_p.png').link_instrumento($gestao_data['msg_gestao_instrumento']); elseif ($gestao_data['msg_gestao_recurso']) echo ($qnt++ ? ' ' : '').imagem('icones/recursos_p.gif').link_recurso($gestao_data['msg_gestao_recurso']); elseif ($gestao_data['msg_gestao_problema']) echo ($qnt++ ? ' ' : '').imagem('icones/problema_p.png').link_problema_pro($gestao_data['msg_gestao_problema']); elseif ($gestao_data['msg_gestao_demanda']) echo ($qnt++ ? ' ' : '').imagem('icones/demanda_p.gif').link_demanda($gestao_data['msg_gestao_demanda']); elseif ($gestao_data['msg_gestao_programa']) echo ($qnt++ ? ' ' : '').imagem('icones/programa_p.png').link_programa($gestao_data['msg_gestao_programa']); elseif ($gestao_data['msg_gestao_licao']) echo ($qnt++ ? ' ' : '').imagem('icones/licoes_p.gif').link_licao($gestao_data['msg_gestao_licao']); elseif ($gestao_data['msg_gestao_evento']) echo ($qnt++ ? ' ' : '').imagem('icones/calendario_p.png').link_evento($gestao_data['msg_gestao_evento']); elseif ($gestao_data['msg_gestao_link']) echo ($qnt++ ? ' ' : '').imagem('icones/links_p.gif').link_link($gestao_data['msg_gestao_link']); elseif ($gestao_data['msg_gestao_avaliacao']) echo ($qnt++ ? ' ' : '').imagem('icones/avaliacao_p.gif').link_avaliacao($gestao_data['msg_gestao_avaliacao']); elseif ($gestao_data['msg_gestao_tgn']) echo ($qnt++ ? ' ' : '').imagem('icones/tgn_p.png').link_tgn($gestao_data['msg_gestao_tgn']); elseif ($gestao_data['msg_gestao_brainstorm']) echo ($qnt++ ? ' ' : '').imagem('icones/brainstorm_p.gif').link_brainstorm_pro($gestao_data['msg_gestao_brainstorm']); elseif ($gestao_data['msg_gestao_gut']) echo ($qnt++ ? ' ' : '').imagem('icones/gut_p.gif').link_gut_pro($gestao_data['msg_gestao_gut']); elseif ($gestao_data['msg_gestao_causa_efeito']) echo ($qnt++ ? ' ' : '').imagem('icones/causaefeito_p.png').link_causa_efeito_pro($gestao_data['msg_gestao_causa_efeito']); elseif ($gestao_data['msg_gestao_arquivo']) echo ($qnt++ ? ' ' : '').imagem('icones/arquivo_p.png').link_arquivo($gestao_data['msg_gestao_arquivo']); elseif ($gestao_data['msg_gestao_forum']) echo ($qnt++ ? ' ' : '').imagem('icones/forum_p.gif').link_forum($gestao_data['msg_gestao_forum']); elseif ($gestao_data['msg_gestao_checklist']) echo ($qnt++ ? ' ' : '').imagem('icones/todo_list_p.png').link_checklist($gestao_data['msg_gestao_checklist']); elseif ($gestao_data['msg_gestao_agenda']) echo ($qnt++ ? ' ' : '').imagem('icones/calendario_p.png').link_agenda($gestao_data['msg_gestao_agenda']); elseif ($gestao_data['msg_gestao_agrupamento']) echo ($qnt++ ? ' ' : '').imagem('../../../modulos/agrupamento/imagens/agrupamento_p.png').link_agrupamento($gestao_data['msg_gestao_agrupamento']); elseif ($gestao_data['msg_gestao_patrocinador']) echo ($qnt++ ? ' ' : '').imagem('../../../modulos/patrocinadores/imagens/patrocinador_p.gif').link_patrocinador($gestao_data['msg_gestao_patrocinador']); elseif ($gestao_data['msg_gestao_template']) echo ($qnt++ ? ' ' : '').imagem('icones/instrumento_p.png').link_template($gestao_data['msg_gestao_template']); elseif ($gestao_data['msg_gestao_painel']) echo ($qnt++ ? ' ' : '').imagem('icones/indicador_p.gif').link_painel($gestao_data['msg_gestao_painel']); elseif ($gestao_data['msg_gestao_painel_odometro']) echo ($qnt++ ? ' ' : '').imagem('icones/odometro_p.png').link_painel_odometro($gestao_data['msg_gestao_painel_odometro']); elseif ($gestao_data['msg_gestao_painel_composicao']) echo ($qnt++ ? ' ' : '').imagem('icones/painel_p.gif').link_painel_composicao($gestao_data['msg_gestao_painel_composicao']); elseif ($gestao_data['msg_gestao_tr']) echo ($qnt++ ? ' ' : '').imagem('icones/tr_p.png').link_tr($gestao_data['msg_gestao_tr']); elseif ($gestao_data['msg_gestao_me']) echo ($qnt++ ? ' ' : '').imagem('icones/me_p.png').link_me($gestao_data['msg_gestao_me']); } echo ' |