[SP-pm] script perl no windows 10

Daniel de Oliveira Mantovani daniel.oliveira.mantovani at gmail.com
Mon Jan 11 11:36:09 PST 2016


Eu fortemente te aconselho a jogar isso fora, e usar o Google Hangout ou
qualquer uma das milhões de soluções grátis que resolvem isso.

2016-01-11 17:33 GMT-02:00 Lucas Moraes <lucastiagodemoraes at gmail.com>:

> Aconselho você atualizar a pagina com javascript.
>
> setInterval(function(){ window.location.href = '?todas' }, 5000);
>
> Falou.
>
> Em 11 de janeiro de 2016 17:26, kleber caetano <payback at hotmail.com.br>
> escreveu:
>
>> Olá Sr(s),
>>
>> Migrei para o windows 10 e estou tendo um problema com um aplicativo em
>> perl quando utilizo o edge ,
>> entretanto , quando utilizo o explorer 11 o aplicativo é executado
>> normalmente.
>>
>> Nota[1] - Este aplicativo refere-se a um chat ( sala de reunião online ).
>>
>> O problema ( no edge ) ocorre quando :
>>
>> - Ele reenvia as mensagens ( através do comando <meta
>> http-equiv="refresh" content="5,?todas"/> )  para
>>   os participantes da sala de reunião ou seja não está enviando nada.
>> - Quando é encerrada a reunião , o aplicativo elimina os arquivos de
>> trabalho , porém , no edge isto
>>   não está acontecendo.
>>
>> Nota[2] - No explorer 11 estes problemas não ocorrem.
>>
>> Nota[3] - O script em perl  foi desenvolvido por um amigo que conhecia
>> bastante perl
>>                entretanto meu conhecimento é limitado.
>>
>> Nota[4] – Estou trabalhando com ActivePerl-5.16.3.1603-MSWin32-x86-296746
>>
>> Nota[5] – Caso considerem necessário , tenho como disponibilizar um link
>> de acesso a este site sala.cgi
>>
>> Nota[6] - Quando instalei o windows 10 , o reload automático  funcionava
>> , entretanto ,
>>                 ao realizar uma manutenção grande ( nova versão acho ) o
>> problema apareceu.
>>                 O problema de não eliminar os arquivos temporário de
>> trabalho existem
>>                 desde a instalação inicial do windows 10
>> Nota[7] – coloquei duas marcas no script onde eu acho que as funções são
>> executadas:
>>
>> ######################### aqui elimina os arquivos de trabalho
>> ###################################
>>
>> ##################### aqui reenvia mensagens para os participantes
>> #############################
>>
>> Alguém sabe como resolver isto ?
>>
>> Agradeço a atenção ,
>>
>> kleber
>>
>>
>> =================================================================================================
>>                                                          script em perl
>> ( sala.cgi )
>>
>> =================================================================================================
>> #!perl
>> print "Content-type:text/html\n\n";
>> use CGI::Carp(fatalsToBrowser);
>>
>>
>> ###############################################################################################
>> #                                     CONFIGURAÇÕES
>> GERAIS
>> #
>> #
>> #
>> $titulo = "Sala de Reunião Online";        # Título do
>> script
>> #
>> $master = "master.log";                         # Arquivo temporário a
>> guardar primeiro usuário                                              #
>> $log    = "logs.log";                                # Arquivo temporário
>> de logs
>> totais                                                                    #
>> $log2   = "logs2.log";                            # Arquivo temporário de
>> logs da sessão
>> #
>> $online = "online.log";                         # Arquivo temporário com
>> nomes dos usuários Online                                        #
>> $estilos= "estilos.css";                        # Arquivo com os estilos
>> dentro da pasta modelos                                              #
>> $topo   = "topo.html";                         # Template do
>> Topo
>> #
>> $fim    = "fim.html";                           # Template do
>> Fim
>> #
>> #
>> #
>> #
>> #
>> #                                     FIM DAS
>> CONFIGURAÇÕES
>> #
>>
>> ###############################################################################################
>>
>> read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
>> @conteudo = split(/&/, $buffer);
>> foreach $par (@conteudo) {
>>         ($campo, $valor) = split(/=/, $par);
>>         $valor =~ tr/+/ /;
>>         $valor =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
>>         $CAMPO{$campo} = $valor;
>>     }
>>
>> $qs = "$ENV{QUERY_STRING}";
>> &data;
>> &style;
>> if ($qs eq ""){
>> print qq|
>> <BR><BR><BR><BR><BR><BR><BR>
>> |;
>> &topo;
>> print qq§
>> <script language="JavaScript">
>> <!--
>> altura = 690;
>> largura= 1090;
>> l = (screen.width - largura)/2;
>> t = (screen.height - altura - 50)/2;
>> var flag = "";
>> var idioma=1;
>> var strCookie='payback';
>>
>> function LerCookie(strCookie) {
>>     var strNomeIgual = strCookie + "=";
>>     var arrCookies = document.cookie.split(';');
>>     for(var i = 0; i < arrCookies.length; i++)
>>     {
>>         var strValorCookie = arrCookies[i];
>>         while(strValorCookie.charAt(0) == ' ')
>>         {
>>             strValorCookie = strValorCookie.substring(1,
>> strValorCookie.length);
>>         }
>>         if(strValorCookie.indexOf(strNomeIgual) == 0)
>>         {
>>             var mensagem=strValorCookie.substring(strNomeIgual.length,
>> strValorCookie.length);
>>             flag = mensagem;
>>             mensagem ='';
>>             return;
>>         }
>>     }
>>     alert ( '!!!! Erro crítico : Não foi possível restaurar área de
>> transferência' );
>>     top.location.href = "/payback/index.htm";
>> };
>> function init(form) {
>>               LerCookie(strCookie);
>>               if (flag != null ) {
>>                  flag = flag.split('|');
>>                  document.form.login.value = flag[9];
>>               }
>>               document.form.tema.focus();
>> }
>> function Entra(form) {
>>         if (document.form.tema.value.length == 0)  {
>>             alert("O tema da reunião não foi informado");
>>             document.form.tema.focus();
>>             document.form.tema.select();
>>             return false;
>>         }
>>         novajanela = window.open("", "entrar",
>> "scrollbars=no,menubar=no,height="+altura+",width="+largura+",top="+t+",left="+l);
>>
>>         return true;
>> }
>> function showSalaHelp() {
>>       altura1=400;
>>       largura1= 800;
>>       l1 = (screen.width - largura + 250)/2;
>>       t1 = (screen.height - altura + 250)/2;
>>       var html = '<HTML><HEAD><TITLE></TITLE></HEAD>';
>>           html += '<BODY background="/reuniao/imagem/papel.jpg"
>> TEXT="#000066"><br><table align=center><tr><td><h4><b>SALA    DE
>>    REUNIÃO    ONLINE
>>                       </b></h4></td></tr></table><br><TABLE
>> ALIGN=CENTER><font size=2><TR><TD><PRE><b>';
>>           html += '<li>O dado usuário deve ser único por sala.';
>>           html += '<li>O dado tema da reunião será o ponto de encontro
>> dos participantes na sala.<br>';
>>           html += '   Este texto não pode conter espaço , por exemplo ,
>> informar Aquisição_de_Filial';
>>           html += '<li>O sistema diferencia letra maiúscula de minúscula
>> para identificação da sala.';
>>           html += '<li>Cada sala terá um único tema não tendo limitações
>> de quantidade de aberturas de<br>';
>>           html += '   salas e participantes.<br>';
>>           html += '<li>O usuário que abrir a sala ou seja o primeiro a
>> entrar receberá uma tarefa de<br>';
>>           html += '  encerrar a reunião ( botão especial ).<br>  Este
>> usuário , ao sair da sala , provocará a eliminação dos arquivos que
>> registram<br>  os textos digitados.<br>  Portanto , recomenda-se dar um
>> tempo de poucos segundos antes de sair da sala.';
>>           html += '<li>Ao acionar o batão especial ENCERRAR REUNIÃO , o
>> texto REUNIÃO FINALIZADA<br>';
>>           html += '   é enviado á sala e nenhuma nova mensagem é
>> registrada pelo sistema.';
>>           html += '<li>É recomendável que os participantes imprimam a ata
>> de reunião após esta ação.<br>';
>>           html += '<li>Para ajuda de formatação do texto mensagem , na
>> sala de reunião , acionar a tecla F1';
>>           html += '<li>Os documentos enviados ao servidor para serem
>> apresentados como anexo ,<br>  serão eliminados quando o sistema
>> operacional for reinicializado.<br>';
>>           html += '  Nota - O documento apresentado como anexo  , para
>> ser baixado no servidor , deverá ter<br>         no máximo 500 kbytes.';
>>           html += '</TABLE></FONT></B></PRE></BODY></HTML>';
>>           var newWindow =
>> window.open("","","scrollbars=auto,height="+altura1+",width="+largura1+",top="+t1+",left="+l1);
>>           newWindow.document.write(html);
>>           newWindow.document.close();
>>           event.cancelBubble = true;
>>           return false;
>> }
>> //-->
>> </script>
>> <style type="text/css"><!--
>> .multi_bg { background-image : linear-gradient(to right, rgba(30, 75,
>> 115, 0.5),  rgba(30, 75, 115, 0.5)); }
>> -->
>> </style>
>> </HEAD>
>>         <body onload="init(this.form)" onHelp="return showSalaHelp()"
>> BGCOLOR="#ADB6C6" TEXT="#003366" class="multi_bg">
>>         <form action="?entra" method="POST" name="form" target="entrar"
>> id="form" OnSubmit="return Entra(this)">
>>         <br>
>>         <strong><font color="#ffffff"
>> size="2">                <label
>> class='sombra'><b>Escolha um tema para
>> entrar</label></font></strong>                <img
>> src="/reuniao/imagem/help.gif"
>> onClick="showSalaHelp();document.form.tema.focus()" WIDTH="18" HEIGHT="18"
>> style="cursor:pointer" title ="Ajuda do sistema">
>>         <br><br>
>>         <div align="center">
>>               <table>
>>                 <tr>
>>                    <!-- <td width="33%"><div align="right"><font
>> class="sombra"><font color="#ffffff"
>> size="2"><b>Usuário  </b></font></div></td> -->
>>                   <td><input type="hidden" name="login" class="campo"
>> onFocus="document.form.tema.focus()" onHelp="return showSalaHelp()"></td>
>>                  </tr>
>>                 <tr>
>>                   <td><div align="right"><font class="sombra"><font
>> color="#ffffff" size="2"><b>Tema  </b></font></div></td>
>>                   <td><input name="tema" type="text" class="campo"
>> id="tema" onHelp="return showSalaHelp()"></td>
>>                 </tr>
>>               </table><br>
>>               <table>
>>              <tr>
>>                  <td>        </td>
>>                  <td align="center" colspan=2><input type="submit"
>> value="Entrar" class="botao" STYLE='cursor: pointer;font-weight:bold'></td>
>>             </tr>
>>              </table><br>
>>         </div>
>> §;&fim;}
>>
>> if ($qs eq "entra"){
>> if ($CAMPO{login} eq ""){
>> print qq|<br><br><br><br><br><br><br><br><br><br><br><br>|;
>> &topo;
>> print qq|<br>Você deve digitar um nome de usuário antes de entrar na sala
>> ! <br><br>
>> <div align="center">
>> <input type="button" class="botao2" onClick="javascript:windows.close()"
>> value="Fechar Janela"><br>
>> </div>
>> |;
>> &fim;
>> }else{
>> if ($CAMPO{tema} eq "" ){
>> print qq|<br><br><br><br><br><br><br><br><br><br><br><br>|;
>> &topo;
>> print qq|<br>Você deve digitar um tema antes de entrar na sala ! <br><br>
>> <div align="center">
>> <input type="button" class="botao2" onClick="javascript:window.close()"
>> value="Fechar Janela"><br>
>> </div>
>> |;
>> &fim;
>> }else{
>> if (-e "$CAMPO{tema}"."_"."$log"){
>> open(ONLINE,"$CAMPO{tema}_$online");
>> @online = <ONLINE>;
>> close(ONLINE);
>>
>> foreach (@online){
>> chomp;
>> s/%//gi;
>> if ($CAMPO{login} eq "$_"){
>> $repetido = "1";
>> }else{
>> $repetido = "0";
>> }}
>> if ($repetido eq "1"){
>> print qq|<br><br><br><br><br><br><br><br><br><br><br><br>|;
>> &topo;
>> print qq|<br>Este nome de usuário já está em uso! Por favor escolha
>> outro.<br><br>
>> <div align="center">
>> <input type="button" class="botao2" onClick="javascript:window.close()"
>> value="Fechar Janela"><br>
>> </div>
>> |;&fim;
>> }else{
>> open(MASTER,"$CAMPO{tema}_$master");
>> $master = <MASTER>;
>> close(MASTER);
>> chomp $master;
>> $master =~ s/%//gi;
>>
>> if ($CAMPO{login} eq $master){$a = "1";} else {$a = "0";}
>> open(ONLINE,">>$CAMPO{tema}_$online");
>> print ONLINE qq|%$CAMPO{login}%\n|;
>> close(ONLINE);
>>
>> open (SALA, ">>$CAMPO{tema}_$log");
>> print SALA qq|<font class="texto"><i>($data)</i>  
>> <b>$CAMPO{login}</b> entrou na sala</b></font><br>\n|;
>> close(SALA);
>>
>> open (SALA, ">>$CAMPO{tema}_$log2");
>> print SALA qq|<font class="texto"><i>($data)</i>  
>> <b>$CAMPO{login}</b> entrou na sala</b></font><br>\n|;
>> close(SALA);
>>
>> &topo;&msg;&fim;
>> }}else{
>>
>> open(MASTER,">$CAMPO{tema}_$master");
>> print MASTER qq|%$CAMPO{login}%\n|;
>> close(MASTER);
>>
>> open(ONLINE,">>$CAMPO{tema}_$online");
>> print ONLINE qq|%$CAMPO{login}%\n|;
>> close(ONLINE);
>>
>> open (SALA, ">>$CAMPO{tema}_$log");
>> print SALA qq|<div align="center"><font class="texto"><h5>ATA DA
>> REUNIÃO :  <font size=4><b>$CAMPO{tema} </b></font></div><hr>\n|;
>> print SALA qq|<font class="texto"><i>($data)</i>  
>> <b>$CAMPO{login}</b> entrou na sala</b></font><br>\n|;
>> close(SALA);
>>
>> open (SALA, ">>$CAMPO{tema}_$log2");
>> print SALA qq|<div align="center"><font class="texto"><h5>ATA DA
>> REUNIÃO :  <font size=4><b>$CAMPO{tema} </b></font></div><hr>\n|;
>> print SALA qq|<font class="texto"><i>($data)</i>  
>> <b>$CAMPO{login}</b> entrou na sala</b></font><br>\n|;
>> close(SALA);
>> $a = "1";
>> &topo;&msg;&fim;
>> }}}}
>>
>> if ($qs eq "escreve2"){
>> $CAMPO{msg} =~ tr/+/ /;
>> $CAMPO{msg} =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
>> $CAMPO{tema} =~ tr/+/ /;
>> $CAMPO{tema} =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
>> if ($CAMPO{msg} eq ""){
>> print qq|
>> <script language="Javascript">
>> <!--
>> alert ('Mensagem não informada')
>> //-->
>> </script>
>> <body
>> onLoad="this.location.href('?principal2=$CAMPO{tema}-$CAMPO{login}')">
>> |;}else{
>>
>> if ($CAMPO{msg} eq "REUNIÃO FINALIZADA"){
>>
>> open(LOG,">>$CAMPO{tema}"."_"."$log");
>> print LOG qq|<br><div align="center"><font class="texto"><b>REUNIÃO
>> FINALIZADA</b></font></div><br>\n|;
>> close(LOG);
>>
>> open(LOG,">$CAMPO{tema}"."_"."$log2");
>> print LOG qq|<br><div align="center"><font class="texto"><b>REUNIÃO
>> FINALIZADA</b></font></div><br>\n|;
>> close(LOG);
>>
>> print qq|
>> <body
>> onLoad="this.location.href('?principal2=$CAMPO{tema}-$CAMPO{login}')">
>> |;
>> }else{
>>
>> open(LOG,"$CAMPO{tema}"."_"."$log");
>> @log = <LOG>;
>> close(LOG);
>> $r = "0";
>> foreach (@log){
>> chomp;
>> if($_ eq "<br><div align=\"center\"><font class=\"texto\"><b>REUNIÃO
>> FINALIZADA</b></font></div><br>"){
>> $r = "1";
>> }}
>>
>> if ($r eq "1"){
>> print qq|
>> <body
>> onLoad="this.location.href('?principal2=$CAMPO{tema}-$CAMPO{login}')">
>> |;
>> }else{
>>
>> open(LOG,">>$CAMPO{tema}"."_"."$log");
>> print LOG qq|<font class="texto"><i>($data)</i>  
>> <b>$CAMPO{login}</b>  <i>diz</i>    $CAMPO{msg}</font><br>\n|;
>> close(LOG);
>> open(LOG,">>$CAMPO{tema}"."_"."$log2");
>> print LOG qq|<font class="texto"><i>($data)</i>  
>> <b>$CAMPO{login}</b>  <i>diz</i>    $CAMPO{msg}</font><br>\n|;
>> close(LOG);
>> print qq|
>> <body
>> onLoad="this.location.href('?principal2=$CAMPO{tema}-$CAMPO{login}')">
>> |;}}}}
>>
>> if ($qs =~ /imprimir/){
>> &imprimir;
>> }
>>
>> if ($qs =~ /logout/){
>> &logout;
>> }
>>
>> if ($qs =~ /principal/){
>> &principal;
>> }
>>
>> if ($qs =~ /principal2/){
>> &principal2;
>> }
>>
>> if ($qs =~ /todas/){
>> &todas;
>> }
>>
>> sub data{
>> ($seg,$min,$hr,$dia,$mes,$ano) = localtime();
>> if ($hr < "10"){$hr = "0$hr";}
>> if ($min < "10"){$min = "0$min";}
>> if ($seg < "10"){$seg = "0$seg";}
>>
>> @mes =
>> ("janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro");
>> $ano = 1900+$ano;
>>
>> $data  = "$hr:$min:$seg, $dia de @mes[$mes] de $ano";
>> }
>>
>> sub fim{
>> open(FIM,"$fim");
>> @fim=<FIM>;
>> close(FIM);
>> print "@fim";
>> }
>>
>> sub imprimir {
>> $qs =~ s/imprimir=//;
>> $qs =~ tr/+/ /;
>> $qs =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
>>
>> open (LOG,"$qs"."_"."$log");
>> @log = <LOG>;
>> close(LOG);
>>
>> print qq|
>> <html>
>> <head>
>> <title>$titulo</title>
>> @style
>> </head>
>> <body onload="this.window.print()">
>> @log
>> </body>
>> |;}
>>
>> sub logout{
>> $qs =~ s/logout=//gi;
>> ($login,$tema) = split (/-/,$qs);
>> $login =~ tr/+/ /;
>> $login =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
>> $tema =~ tr/+/ /;
>> $tema =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
>>
>> open(LOG,">>$tema"."_"."$log2");
>> print LOG qq|<font class="texto"><i>($data)</i>   <b>$login</b> saiu
>> da sala</b></font><br>\n|;
>> close(LOG);
>>
>> open(LOG,">>$tema"."_"."$log");
>> print LOG qq|<font class="texto"><i>($data)</i>   <b>$login</b> saiu
>> da sala</b></font><br>\n|;
>> close(LOG);
>>
>> open(ONLINE,"$tema"."_"."$online");
>> @online = <ONLINE>;
>> close(ONLINE);
>>
>> @on = @online;
>> foreach (@on){
>> chomp;
>> if ($_ =~ /%$login%/){
>> s/$_//;
>> }}
>>
>> open(ONLINE,">$tema"."_"."$online");
>> print ONLINE qq|@on|;
>> close(ONLINE);
>>
>> open(ONLINE,"$tema"."_"."$online");
>> @online = <ONLINE>;
>> close(ONLINE);
>>
>> if (length ("@online") eq "0"){
>> unlink("$tema"."_"."$master");  ######################### aqui elimina os
>> arquivos de trabalho ###################################
>> unlink("$tema"."_"."$online");  #################   não está sendo
>> executado no edge    ###########################################
>> unlink("$tema"."_"."$log2");
>> unlink("$tema"."_"."$log");
>> }else{}
>>
>> print qq|
>> <html>
>> <head>
>> <title>$titulo</title>
>> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
>> <script language="JavaScript">
>> function Logout(){
>> this.window.close()
>> }
>> </script>
>> </head>
>> <body onload="javascript:Logout()">
>> </body>
>> </html>
>> |;}
>>
>> sub msg{
>> $qs =~ tr/+/ /;
>> $qs =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
>> open (LOG, "$qs"."_"."$log2");
>> @log = <LOG>;
>> close(LOG);
>>
>> $finalizado = "0";
>>
>> foreach (@log){
>> chomp;
>> print $_;
>> if ($_ eq "REUNIÃO FINALIZADA"){
>> $finalizado = "1";
>> }}
>>
>> print qq|
>> <script language="JavaScript">
>> function Imprimir(){
>> altura =690;
>> largura= 1090;
>> l = (screen.width - largura)/2;
>> t = (screen.height - altura - 50)/2;
>> window.open("?imprimir=$CAMPO{tema}","","scrollbars,height="+altura+",width="+largura+",top="+t+",left="+l);
>>
>> }
>> function unLoad(){
>> window.open("?logout=$CAMPO{login}-$CAMPO{tema}","","width=80,height=80")
>> }
>> </script>
>> <body onunLoad="unLoad()">
>> <table>
>> <tr><td>
>> <font class="texto1"><b> Usuário:
>> $CAMPO{login}</b></font>        
>> </td><td>
>>  <font class="texto1"><b> Tema: $CAMPO{tema}<br></b></font>
>> </td><td>
>>          <img
>> src="/reuniao/imagem/calculadora.gif" onClick="calculadora()" WIDTH="18"
>> HEIGHT="22" style="cursor:pointer" title ="Calculadora financeira">
>> </td><td>
>>          <img
>> src="/reuniao/imagem/Email.gif" onClick="email()" WIDTH="24" HEIGHT="20"
>> style="cursor:pointer" title ="Correspondência interna">
>> </td><td>
>>          <img
>> src="/reuniao/imagem/acessorio.gif" onClick="acessorio()" WIDTH="24"
>> HEIGHT="20" style="cursor:pointer" title ="Acessórios">
>> </td><TD>
>>          <img
>> src="/reuniao/imagem/alarme.gif" onClick="alarme()" WIDTH="24" HEIGHT="20"
>> style="cursor:pointer" title ="Alarme">
>> </td></tr></table>
>> <iframe align="middle" src="?todas=$CAMPO{tema}" name="iframe"
>> width="1010" height="480" style="overlap:auto"></iframe>
>> <iframe align="middle" src="?principal2=$CAMPO{tema}-$CAMPO{login}"
>> name="iframe2" width="1010" height="75" style="overlap:auto"></iframe>
>> <table>
>> <tr>
>> <td><input type="button" class="botao" value="Ata de reunião"
>> onClick="javascript:Imprimir()"
>> STYLE='cursor:pointer;font-weight:bold'></td>
>> <td> </td>
>> <td><div align="right">
>> <input type="button" class="botao2" value="Sair da Sala"
>> onClick="javascript:window.close()"
>> STYLE='cursor:pointer;font-weight:bold'></div></td>
>> <td> </td>
>> |;
>>
>> if($a eq "1"){print qq|<td><div align="center">
>> <form name="form" method="post" action="?escreve2" target="iframe2">
>>             <input name="msg"    type="hidden" size="80" class="campo"
>> value="REUNIÃO FINALIZADA">
>>             <input name="login"  type="hidden" class="campo"
>> value="$CAMPO{login}">
>>             <input name="tema"   type="hidden" class="campo"
>> value="$CAMPO{tema}">
>>             <input type="submit" value="Encerrar Reunião" class="botao"
>> STYLE='cursor: pointer;font-weight:bold'>
>> </form>
>> </div>
>> </div></td></tr>|;}print qq|</table><br>|;}
>>
>> sub principal{
>> $qs =~ s/principal=//;
>> $qs =~ tr/+/ /;
>> $qs =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
>>
>> open (LOG, $qs."_".$log2);
>> @log = <LOG>;
>> close(LOG);
>>
>> $finalizado = "0";
>>
>> foreach (@log){
>> chomp;
>> if ($_ eq "REUNIÃO FINALIZADA"){
>> $finalizado = "1";
>> }}
>> if ($finalizado eq "1"){print qq|
>> <font class="texto">
>> A REUNIÃO FOI FINALIZADA. VOCÊ PODE IMPRIMIR OU VISUALIZAR O RELATÓRIO
>> </font>|;
>>
>> }else{print qq|
>> <html>
>> <head>
>>
>> @style
>> <script language="JavaScript">
>> <!--
>>    function scroll() {
>>      if( document.body && document.body.clientHeight ) {
>>        window.innerHeight = document.body.clientHeight
>>      }
>>      window.scrollTo( 0, (window.innerHeight/0.1) )
>>    }
>>
>>     function focus(){
>>       document.form.msg.focus()
>>     }
>>
>>     function enter(string){
>>              insertAtCaret(document.form.msg,string);
>>              focus()
>>     }
>>
>>    function insertAtCaret (textObj, textFeildValue) {
>>        if(document.all){
>>             if (textObj.createTextRange && textObj.caretPos) {
>>                 var caretPos = textObj.caretPos;
>>                 caretPos.text = caretPos.text.charAt(caretPos.text.length
>> - 1) == ' ' ?textFeildValue + ' ' : textFeildValue;
>>             }else{
>>                 textObj.value = textFeildValue;
>>             }
>>       }else{
>>             if(textObj.setSelectionRange){
>>                var rangeStart = textObj.selectionStart;
>>                var rangeEnd = textObj.selectionEnd;
>>                var tempStr1 = textObj.value.substring(0,rangeStart);
>>                var tempStr2 = textObj.value.substring(rangeEnd);
>>                textObj.value = tempStr1 + textFeildValue + tempStr2;
>>            }else{
>>                alert("Esta versão do navegador não suporta
>> setSelectionRange");
>>            }
>>      }
>>   }
>>
>>    function clear_field(){
>>       document.form.msg.value = ''
>>       document.form.msg.focus()
>>       document.form.msg.select()
>>    }
>>
>>    function anexar(){
>>              altura = 450;
>>              largura= 700;
>>              l = (screen.width - largura)/2;
>>              t = (screen.height - altura - 50)/2;
>>              var html =  '<HTML><HEAD><TITLE></TITLE>'
>>                  html += '</HEAD><BODY
>> background="/reuniao/imagem/papel.jpg"  TEXT="#000066">'
>>                  html += '<BR><BR><BR><table
>> align=center><tr><th><h3><label style="color: white; text-shadow: 1px 2px
>> 4px #000, 0 0 0 #000, 2px 4px 6px #000">Apresentar documento como
>> anexo</label></h3></th></tr></table><br><br>'
>>                  html += '<FORM NAME="anexo" METHOD="POST"
>> ACTION="/reuniao/temp/upload.plx" ENCTYPE="multipart/form-data">'
>>                  html += '<br>'
>>                  html += '<TABLE align=center>'
>>                  html += '<tr>'
>>                  html += '<td><input type="file" name="arquivo" size="60"
>> maxlength="90"></td>'
>>                  html += '</tr>'
>>                  html += '</table>'
>>                  html += '<br><br><br>'
>>                  html += '<TABLE align=center>'
>>                  html += '<tr>'
>>                  html += '<td bgcolor=#ADB6C6><input type="submit"
>> value="    Processa    " style="color: white; text-shadow: 1px 2px 4px
>> #000, 0 0 0 #000, 2px 4px 6px #000"></td>'
>>                  html += '</TR>'
>>                  html += '</table>'
>>                  html += '</form>'
>>                  html += '</body>'
>>                  html += '</html>'
>>              var newWindow =
>> window.open("","","scrollbars=no,menubar=no,height="+altura+",width="+largura+",top="+t+",left="+l)
>>              newWindow.document.write(html)
>>              newWindow.document.close()
>>              focus()
>>              return false
>>    }
>>
>>    function publicar(){
>>              altura = 450;
>>              largura= 700;
>>              l = (screen.width - largura)/2;
>>              t = (screen.height - altura - 50)/2;
>>              var html =  '<HTML><HEAD><TITLE></TITLE>'
>>                  html += '</HEAD><BODY
>> background="/reuniao/imagem/papel.jpg"  TEXT="#ffffff">'
>>                  html += '<BR><BR><BR><table
>> align=center><tr><th><h3><label style="color: white; text-shadow: 1px 2px
>> 4px #000, 0 0 0 #000, 2px 4px 6px #000">Ponto de publicação
>> web</label></h3></th></tr></table><br><br>'
>>                  html += '<FORM NAME="publica" METHOD="POST"
>> ACTION="/reuniao/temp/publica.plx">'
>>                  html += '<br>'
>>                  html += '<TABLE align=center>'
>>                  html += '<tr>'
>>                  html += '<td><input type="text" name="http" size="60"
>> maxlength="90" value = "http://"></td>'
>>                  html += '</tr>'
>>                  html += '</table>'
>>                  html += '<br><br><br>'
>>                  html += '<TABLE align=center>'
>>                  html += '<tr>'
>>                  html += '<td bgcolor=#ADB6C6><input type="submit"
>> value="    Processa    " style="color: white; text-shadow: 1px 2px 4px
>> #000, 0 0 0 #000, 2px 4px 6px #000"></td>'
>>                  html += '</TR>'
>>                  html += '</table>'
>>                  html += '</form>'
>>                  html += '</body>'
>>                  html += '</html>'
>>              var newWindow =
>> window.open("","","scrollbars=no,menubar=no,height="+altura+",width="+largura+",top="+t+",left="+l)
>>              newWindow.document.write(html)
>>              newWindow.document.close()
>>              focus()
>>              return false
>>    }
>>
>>   function showMsgHelp() {
>>       alert("                            SALA DE REUNIÃO
>> ONLINE\\n\\nMensagem -> Campo alfa numérico com tamanho de 300 caracteres e
>> diferente de espaço.\\n\\nNota - É recomendável que uma linha de mensagem
>> tenha no máximo 80 caracteres visando dar maior clareza no relatório ATA DE
>> REUNIÃO.\\n\\nTAGS ESPECIAIS PARA FORMATAÇÃO DE TEXTO\\n\\n<br> - Salto de
>> linha\\n<p> - Salto de parágrafo\\n<b>texto</b> - Texto em negrito\\n<font
>> size=4>texto</font> - Texto com fonte igual a 4 pixel\\n<font
>> color=red>texto</font> - Texto com cor em vermelho\\n<i>texto</i> - Texto
>> em itálico\\n<u>texto</u> - Texto sublinhado\\n<sub>texto</sub> - Texto
>> subscrito\\n<sup>texto</sup> - Texto
>> sobrescrito\\n<ol><li>texto1<li>texto2<li>texto3</ol> - Lista numérica dos
>> textos\\n<li>texto1<li>texto2<li>texto3 - Marcação dos textos\\n\\nNota -
>> Os parâmetros de formatação de texto podem ser utilizados
>> simultaneamente.\\n\\n                EXEMPLO DE UTILIZAÇÃO\\n\\nOlá sr(s)
>> , bom dia a todos<br>Vamos dicurtir a <font size=3 color=red><b>Aquisição
>> do imóvel em São Paulo.</b></font><br>O Paulo vai nos descrever as
>> alternativas que dispomos.\\n\\n\\nFUNÇÕES ESPECIAIS PARA FORMATAÇÃO DE
>> TEXTO\\n\\nLimpa -      Move espaço para o campo mensagem\\nLinha -
>> Move <br> para o campo mensagem para quebrar linha\\nLista -        Move
>> marcador <li> para o campo mensagem com salto de linha\\nNumérico Move
>> marcador <ol> para o campo mensagem\\nCola -        Coloca texto da área de
>> transferência no campo mensagem\\nAnexa -     Disponibiliza documento como
>> um anexo para apresentação\\nPublica -   Disponibiliza um link de acesso
>> referente a uma publicação na internet\\nRealça -    Evidência uma parte do
>> texto selecionado no campo mensagem\\nSublinha - Realça um texto
>> selecionado no campo mensagem sublinhando-o")
>>       event.cancelBubble = true
>>       return false
>>   }
>>
>> //-->
>> </script>
>> </head>
>> <body>
>> @log
>> </body>
>> </html>|;
>> }}
>>
>> sub principal2 {
>> $qs =~ s/principal2=//;
>> ($tema,$login) = split (/-/,$qs);
>> $tema =~ tr/+/ /;
>> $tema =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
>> $login =~ tr/+/ /;
>> $login =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
>>
>> print qq|
>> @style
>>
>> <body  onLoad="document.form.msg.focus()" onHelp="return showMsgHelp()"
>> class="table3" leftmargin="0" topmargin="0" marginwidth="0"
>> marginheight="0">
>> <div align="center">
>> <table>
>>   <tr>
>>     <td>  </td>
>>     <td bgcolor='lightsteelblue'><img src="/reuniao/imagem/clear.png"
>> onClick="clear_field()"   WIDTH="24" HEIGHT="20" style="cursor:pointer"
>> title ="Limpar campo mensagem"  STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;border-style:outset;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><img src="/reuniao/imagem/linha.png"
>> onClick="enter('<br>')"   WIDTH="20" HEIGHT="20" style="cursor:pointer"
>> title ="Salto de linha"  STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;border-style:outset;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><img src="/reuniao/imagem/lista.gif"
>> onClick="enter('<li>')"   WIDTH="20" HEIGHT="20" style="cursor:pointer"
>> title ="Marcador de lista"  STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;border-style:outset;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><img src="/reuniao/imagem/nlist.gif"
>> onClick="enter('<ol>')"   WIDTH="20" HEIGHT="20" style="cursor:pointer"
>> title ="Marcador numérico"  STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;border-style:outset;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  Á   "
>> onClick="enter('Á')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  á   "
>> onClick="enter('á')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  à   "
>> onClick="enter('à')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  ã   "
>> onClick="enter('ã')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  â   "
>> onClick="enter('â')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  É   "
>> onClick="enter('É')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  é   "
>> onClick="enter('é')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  ê   "
>> onClick="enter('ê')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  í   "
>> onClick="enter('í')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  õ   "
>> onClick="enter('õ')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  ó   "
>> onClick="enter('ó')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  ô   "
>> onClick="enter('ô')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  ú   "
>> onClick="enter('ú')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  Ç   "
>> onClick="enter('Ç')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><input type="button" value="  ç   "
>> onClick="enter('ç')"    STYLE='cursor: pointer; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><img src="/reuniao/imagem/anexo.png"
>> onClick="anexar()"      WIDTH="20" HEIGHT="20" style="cursor:pointer" title
>> ="Anexar docto"  STYLE='cursor: pointer; font-family: Arial, Helvetica,
>> sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;border-style:outset;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><img src="/reuniao/imagem/wlink.gif"
>> onClick="publicar()"    WIDTH="20" HEIGHT="20" style="cursor:pointer" title
>> ="Publicar um link da internet"  STYLE='cursor: hand; font-family: Arial,
>> Helvetica, sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;border-style:outset;font-weight:600'></td>
>>     <td bgcolor='lightsteelblue'><img src="/reuniao/imagem/help.gif"
>> onClick="showMsgHelp()" WIDTH="18" HEIGHT="18" style="cursor:pointer" title
>> ="Ajuda do sistema"  STYLE='cursor: pointer; font-family: Arial, Helvetica,
>> sans-serif; font-size: 10px; border-width:
>> 2;color:#003366;border-style:outset;font-weight:600'></td>
>> </tr>
>> </table><br>
>> <table  align="center">
>>   <tr>
>>     <td class="texto"><form name="form" method="post" action="?escreve2">
>>           <div align="center"><b><font size=2><label
>> class='sombra'>  Mensagem   </label></b></fonte>
>>             <input name="msg"     type="text"      class="campo"
>> size="120" maxlength="300" onHelp="return showMsgHelp()">
>>             <input name="login"   type="hidden"    class="campo"
>> value="$login">
>>             <input name="tema"    type="hidden"    class="campo"
>> value="$tema">
>>             <input type="submit"  value="Enviar"   class="botao"
>> >
>>           </div>
>>     </td>
>>   </tr>
>> </table>
>> </form>
>> </div>
>> </body>
>> |;}
>>
>> sub style{
>> open(STYLE, "$estilos");
>> @style = <STYLE>;
>> close(STYLE);
>> }
>>
>> sub todas{
>> $qs =~ s/todas=//;
>> $qs =~ tr/+/ /;
>> $qs =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
>>
>> open (LOG, $qs."_".$log);
>> @log = <LOG>;
>> close(LOG);
>>
>> print qq|
>> <meta http-equiv="refresh" content="5,?todas"/> #####################
>> aqui reenvia mensagens para os participantes #############################
>> @style
>> <script>
>> <!--
>>   function rolar() {
>>     if( document.body && document.body.clientHeight ) {
>>       window.innerHeight = document.body.clientHeight
>>     }
>>     window.scrollTo( 0, (window.innerHeight/0.1) );
>>   }
>> //-->
>> </script>
>> <body onLoad="javascript:rolar()">
>> @log|;}
>>
>> sub topo{
>> open(TOPO,"$topo");
>> @topo=<TOPO>;
>> close(TOPO);
>> print "@topo";
>> }
>>
>> =begin disclaimer
>>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>  SaoPaulo-pm mailing list: SaoPaulo-pm at pm.org
>>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>> =end disclaimer
>>
>>
>
> =begin disclaimer
>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm at pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>


-- 
Thank you very much!

-dom

--

Daniel de Oliveira Mantovani
Business Analytic Specialist
Perl Evangelist /Astrophysics hobbyist.
+55 11 9 8538-9897
XOXO
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20160111/93259dd6/attachment-0001.html>


More information about the SaoPaulo-pm mailing list