From payback em hotmail.com.br Mon Jan 11 07:24:52 2016 From: payback em hotmail.com.br (kleber caetano) Date: Mon, 11 Jan 2016 13:24:52 -0200 Subject: [Rio-pm] script perl no windows 10 Message-ID: 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 ) 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 esta 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] ? 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|






|; &topo; print qq§

                                

Tema  

        

§;&fim;} if ($qs eq "entra"){ if ($CAMPO{login} eq ""){ print qq|











|; &topo; print qq|
Você deve digitar um nome de usuário antes de entrar na sala !


|; &fim; }else{ if ($CAMPO{tema} eq "" ){ print qq|











|; &topo; print qq|
Você deve digitar um tema antes de entrar na sala !


|; &fim; }else{ if (-e "$CAMPO{tema}"."_"."$log"){ open(ONLINE,"$CAMPO{tema}_$online"); @online = ; close(ONLINE); foreach (@online){ chomp; s/%//gi; if ($CAMPO{login} eq "$_"){ $repetido = "1"; }else{ $repetido = "0"; }} if ($repetido eq "1"){ print qq|











|; &topo; print qq|
Este nome de usuário já está em uso! Por favor escolha outro.


|;&fim; }else{ open(MASTER,"$CAMPO{tema}_$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|($data)   $CAMPO{login} entrou na sala

\n|; close(SALA); open (SALA, ">>$CAMPO{tema}_$log2"); print SALA qq|($data)   $CAMPO{login} entrou na sala
\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|
ATA DA REUNIÃO :  $CAMPO{tema}

\n|; print SALA qq|($data)   $CAMPO{login} entrou na sala
\n|; close(SALA); open (SALA, ">>$CAMPO{tema}_$log2"); print SALA qq|
ATA DA REUNIÃO :  $CAMPO{tema}

\n|; print SALA qq|($data)   $CAMPO{login} entrou na sala
\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| |;}else{ if ($CAMPO{msg} eq "REUNIÃO FINALIZADA"){ open(LOG,">>$CAMPO{tema}"."_"."$log"); print LOG qq|
REUNIÃO FINALIZADA

\n|; close(LOG); open(LOG,">$CAMPO{tema}"."_"."$log2"); print LOG qq|
REUNIÃO FINALIZADA

\n|; close(LOG); print qq| |; }else{ open(LOG,"$CAMPO{tema}"."_"."$log"); @log = ; close(LOG); $r = "0"; foreach (@log){ chomp; if($_ eq "
REUNIÃO FINALIZADA

"){ $r = "1"; }} if ($r eq "1"){ print qq| |; }else{ open(LOG,">>$CAMPO{tema}"."_"."$log"); print LOG qq|($data)   $CAMPO{login}  diz   $CAMPO{msg}
\n|; close(LOG); open(LOG,">>$CAMPO{tema}"."_"."$log2"); print LOG qq|($data)   $CAMPO{login}  diz   $CAMPO{msg}
\n|; close(LOG); print qq| |;}}}} 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=; 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 = ; close(LOG); print qq| $titulo @style @log |;} 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|($data)   $login saiu da sala
\n|; close(LOG); open(LOG,">>$tema"."_"."$log"); print LOG qq|($data)   $login saiu da sala
\n|; close(LOG); open(ONLINE,"$tema"."_"."$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 = ; 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| $titulo |;} sub msg{ $qs =~ tr/+/ /; $qs =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; open (LOG, "$qs"."_"."$log2"); @log = ; close(LOG); $finalizado = "0"; foreach (@log){ chomp; print $_; if ($_ eq "REUNIÃO FINALIZADA"){ $finalizado = "1"; }} print qq|
Usuário: $CAMPO{login}           Tema: $CAMPO{tema}
                                   
|; if($a eq "1"){print qq||;}print qq|
 
 

|;} 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 = ; close(LOG); $finalizado = "0"; foreach (@log){ chomp; if ($_ eq "REUNIÃO FINALIZADA"){ $finalizado = "1"; }} if ($finalizado eq "1"){print qq| A REUNIÃO FOI FINALIZADA. VOCÊ PODE IMPRIMIR OU VISUALIZAR O RELATÓRIO |; }else{print qq| @style @log |; }} 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
 

|;} sub style{ open(STYLE, "$estilos"); @style = > > BGCOLOR="#ADB6C6" TEXT="#003366" class="multi_bg"> >
id="form" OnSubmit="return Entra(this)"> >
> size="2">                                 src="/reuniao/imagem/help.gif" > onClick="showSalaHelp();document.form.tema.focus()" WIDTH="18" HEIGHT="18" > style="cursor:pointer" title ="Ajuda do sistema"> >

>
> > > > > > > > > >
onFocus="document.form.tema.focus()" onHelp="return showSalaHelp()">
color="#ffffff" size="2">Tema  
onHelp="return showSalaHelp()">

> > > > > >
         value="Entrar" class="botao" STYLE='cursor: pointer;font-weight:bold'>

>
> §;&fim;} > > if ($qs eq "entra"){ > if ($CAMPO{login} eq ""){ > print qq|











|; > &topo; > print qq|
Você deve digitar um nome de usuário antes de entrar na sala ! >

>
> value="Fechar Janela">
>
> |; > &fim; > }else{ > if ($CAMPO{tema} eq "" ){ > print qq|











|; > &topo; > print qq|
Você deve digitar um tema antes de entrar na sala !

>
> value="Fechar Janela">
>
> |; > &fim; > }else{ > if (-e "$CAMPO{tema}"."_"."$log"){ > open(ONLINE,"$CAMPO{tema}_$online"); > @online = ; > close(ONLINE); > > foreach (@online){ > chomp; > s/%//gi; > if ($CAMPO{login} eq "$_"){ > $repetido = "1"; > }else{ > $repetido = "0"; > }} > if ($repetido eq "1"){ > print qq|











|; > &topo; > print qq|
Este nome de usuário já está em uso! Por favor escolha > outro.

>
> value="Fechar Janela">
>
> |;&fim; > }else{ > open(MASTER,"$CAMPO{tema}_$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|($data)   $CAMPO{login} > entrou na sala

\n|; > close(SALA); > > open (SALA, ">>$CAMPO{tema}_$log2"); > print SALA qq|($data)   $CAMPO{login} > entrou na sala
\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|
ATA DA > REUNIÃO :  $CAMPO{tema}

\n|; > print SALA qq|($data)   $CAMPO{login} > entrou na sala
\n|; > close(SALA); > > open (SALA, ">>$CAMPO{tema}_$log2"); > print SALA qq|
ATA DA > REUNIÃO :  $CAMPO{tema}

\n|; > print SALA qq|($data)   $CAMPO{login} > entrou na sala
\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| > > > |;}else{ > > if ($CAMPO{msg} eq "REUNIÃO FINALIZADA"){ > > open(LOG,">>$CAMPO{tema}"."_"."$log"); > print LOG qq|
REUNIÃO > FINALIZADA

\n|; > close(LOG); > > open(LOG,">$CAMPO{tema}"."_"."$log2"); > print LOG qq|
REUNIÃO > FINALIZADA

\n|; > close(LOG); > > print qq| > > |; > }else{ > > open(LOG,"$CAMPO{tema}"."_"."$log"); > @log = ; > close(LOG); > $r = "0"; > foreach (@log){ > chomp; > if($_ eq "
REUNIÃO > FINALIZADA

"){ > $r = "1"; > }} > > if ($r eq "1"){ > print qq| > > |; > }else{ > > open(LOG,">>$CAMPO{tema}"."_"."$log"); > print LOG qq|($data)   $CAMPO{login} >  diz   $CAMPO{msg}
\n|; > close(LOG); > open(LOG,">>$CAMPO{tema}"."_"."$log2"); > print LOG qq|($data)   $CAMPO{login} >  diz   $CAMPO{msg}
\n|; > close(LOG); > print qq| > > |;}}}} > > 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=; > 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 = ; > close(LOG); > > print qq| > > > $titulo > @style > > > @log > > |;} > > 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|($data)   $login saiu da > sala
\n|; > close(LOG); > > open(LOG,">>$tema"."_"."$log"); > print LOG qq|($data)   $login saiu da > sala
\n|; > close(LOG); > > open(ONLINE,"$tema"."_"."$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 = ; > 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| > > > $titulo > > > > > > > |;} > > sub msg{ > $qs =~ tr/+/ /; > $qs =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; > open (LOG, "$qs"."_"."$log2"); > @log = ; > close(LOG); > > $finalizado = "0"; > > foreach (@log){ > chomp; > print $_; > if ($_ eq "REUNIÃO FINALIZADA"){ > $finalizado = "1"; > }} > > print qq| > > > >
> Usuário: > $CAMPO{login}         > >   Tema: $CAMPO{tema}
>
>          src="/reuniao/imagem/calculadora.gif" onClick="calculadora()" WIDTH="18" > HEIGHT="22" style="cursor:pointer" title ="Calculadora financeira"> > >          src="/reuniao/imagem/Email.gif" onClick="email()" WIDTH="24" HEIGHT="20" > style="cursor:pointer" title ="Correspondência interna"> > >          src="/reuniao/imagem/acessorio.gif" onClick="acessorio()" WIDTH="24" > HEIGHT="20" style="cursor:pointer" title ="Acessórios"> > >          src="/reuniao/imagem/alarme.gif" onClick="alarme()" WIDTH="24" HEIGHT="20" > style="cursor:pointer" title ="Alarme"> >
> > > > > > > > > |; > > if($a eq "1"){print qq||;}print qq|
onClick="javascript:Imprimir()" > STYLE='cursor:pointer;font-weight:bold'> 
> onClick="javascript:window.close()" > STYLE='cursor:pointer;font-weight:bold'>
 
> > value="REUNIÃO FINALIZADA"> > value="$CAMPO{login}"> > value="$CAMPO{tema}"> > STYLE='cursor: pointer;font-weight:bold'> > >
>

|;} > > 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 = ; > close(LOG); > > $finalizado = "0"; > > foreach (@log){ > chomp; > if ($_ eq "REUNIÃO FINALIZADA"){ > $finalizado = "1"; > }} > if ($finalizado eq "1"){print qq| > > A REUNIÃO FOI FINALIZADA. VOCÊ PODE IMPRIMIR OU VISUALIZAR O RELATÓRIO > |; > > }else{print qq| > > > > @style > > > > @log > > |; > }} > > 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 > > class="table3" leftmargin="0" topmargin="0" marginwidth="0" > marginheight="0"> >
> > > > > > > > > > > > > > > > > > > > > > > > > > >
  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'> onClick="enter('
')" 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'>
onClick="enter('
  • ')" 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'>
  • onClick="enter('
      ')" 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'>
    onClick="enter('Á')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('á')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('à')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ã')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('â')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('É')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('é')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ê')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('í')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('õ')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ó')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ô')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ú')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('Ç')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ç')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> 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'> 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'> 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'>

    > > > > >
    >
    > maxlength="300" onHelp="return showMsgHelp()"> > value="$login"> > value="$tema"> > >
    >
    > >
    > > |;} > > sub style{ > open(STYLE, "$estilos"); > @style = > > BGCOLOR="#ADB6C6" TEXT="#003366" class="multi_bg"> >
    id="form" OnSubmit="return Entra(this)"> >
    > size="2">                                 src="/reuniao/imagem/help.gif" > onClick="showSalaHelp();document.form.tema.focus()" WIDTH="18" HEIGHT="18" > style="cursor:pointer" title ="Ajuda do sistema"> >

    >
    > > > > > > > > > >
    onFocus="document.form.tema.focus()" onHelp="return showSalaHelp()">
    color="#ffffff" size="2">Tema  
    id="tema" > onHelp="return showSalaHelp()">

    > > > > > >
             value="Entrar" class="botao" STYLE='cursor: > pointer;font-weight:bold'>

    >
    > §;&fim;} > > if ($qs eq "entra"){ > if ($CAMPO{login} eq ""){ > print qq|











    |; > &topo; > print qq|
    Você deve digitar um nome de usuário antes de entrar na sala > ! >

    >
    > value="Fechar Janela">
    >
    > |; > &fim; > }else{ > if ($CAMPO{tema} eq "" ){ > print qq|











    |; > &topo; > print qq|
    Você deve digitar um tema antes de entrar na sala !

    >
    > value="Fechar Janela">
    >
    > |; > &fim; > }else{ > if (-e "$CAMPO{tema}"."_"."$log"){ > open(ONLINE,"$CAMPO{tema}_$online"); > @online = ; > close(ONLINE); > > foreach (@online){ > chomp; > s/%//gi; > if ($CAMPO{login} eq "$_"){ > $repetido = "1"; > }else{ > $repetido = "0"; > }} > if ($repetido eq "1"){ > print qq|











    |; > &topo; > print qq|
    Este nome de usuário já está em uso! Por favor escolha > outro.

    >
    > value="Fechar Janela">
    >
    > |;&fim; > }else{ > open(MASTER,"$CAMPO{tema}_$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|($data)   > $CAMPO{login} > entrou na sala

    \n|; > close(SALA); > > open (SALA, ">>$CAMPO{tema}_$log2"); > print SALA qq|($data)   > $CAMPO{login} > entrou na sala
    \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|
    ATA DA > REUNIÃO :  $CAMPO{tema} >

    \n|; > print SALA qq|($data)   > $CAMPO{login} > entrou na sala
    \n|; > close(SALA); > > open (SALA, ">>$CAMPO{tema}_$log2"); > print SALA qq|
    ATA DA > REUNIÃO :  $CAMPO{tema} >

    \n|; > print SALA qq|($data)   > $CAMPO{login} > entrou na sala
    \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| > > 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|
    REUNIÃO > FINALIZADA

    \n|; > close(LOG); > > open(LOG,">$CAMPO{tema}"."_"."$log2"); > print LOG qq|
    REUNIÃO > FINALIZADA

    \n|; > close(LOG); > > print qq| > onLoad="this.location.href('?principal2=$CAMPO{tema}-$CAMPO{login}')"> > |; > }else{ > > open(LOG,"$CAMPO{tema}"."_"."$log"); > @log = ; > close(LOG); > $r = "0"; > foreach (@log){ > chomp; > if($_ eq "
    REUNIÃO > FINALIZADA

    "){ > $r = "1"; > }} > > if ($r eq "1"){ > print qq| > onLoad="this.location.href('?principal2=$CAMPO{tema}-$CAMPO{login}')"> > |; > }else{ > > open(LOG,">>$CAMPO{tema}"."_"."$log"); > print LOG qq|($data)   > $CAMPO{login} >  diz   $CAMPO{msg}
    \n|; > close(LOG); > open(LOG,">>$CAMPO{tema}"."_"."$log2"); > print LOG qq|($data)   > $CAMPO{login} >  diz   $CAMPO{msg}
    \n|; > close(LOG); > print qq| > 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=; > 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 = ; > close(LOG); > > print qq| > > > $titulo > @style > > > @log > > |;} > > 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|($data)   $login saiu > da > sala
    \n|; > close(LOG); > > open(LOG,">>$tema"."_"."$log"); > print LOG qq|($data)   $login saiu > da > sala
    \n|; > close(LOG); > > open(ONLINE,"$tema"."_"."$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 = ; > 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| > > > $titulo > > > > > > > |;} > > sub msg{ > $qs =~ tr/+/ /; > $qs =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; > open (LOG, "$qs"."_"."$log2"); > @log = ; > close(LOG); > > $finalizado = "0"; > > foreach (@log){ > chomp; > print $_; > if ($_ eq "REUNIÃO FINALIZADA"){ > $finalizado = "1"; > }} > > print qq| > > > >
    > Usuário: > $CAMPO{login}         > >   Tema: $CAMPO{tema}
    >
    >          src="/reuniao/imagem/calculadora.gif" onClick="calculadora()" WIDTH="18" > HEIGHT="22" style="cursor:pointer" title ="Calculadora financeira"> > >          src="/reuniao/imagem/Email.gif" onClick="email()" WIDTH="24" HEIGHT="20" > style="cursor:pointer" title ="Correspondência interna"> > >          src="/reuniao/imagem/acessorio.gif" onClick="acessorio()" WIDTH="24" > HEIGHT="20" style="cursor:pointer" title ="Acessórios"> > >          src="/reuniao/imagem/alarme.gif" onClick="alarme()" WIDTH="24" HEIGHT="20" > style="cursor:pointer" title ="Alarme"> >
    > > > > > > > > > |; > > if($a eq "1"){print qq||;}print qq|
    onClick="javascript:Imprimir()" > STYLE='cursor:pointer;font-weight:bold'> 
    > onClick="javascript:window.close()" > STYLE='cursor:pointer;font-weight:bold'>
     
    > > value="REUNIÃO FINALIZADA"> > value="$CAMPO{login}"> > value="$CAMPO{tema}"> > STYLE='cursor: pointer;font-weight:bold'> > >
    >

    |;} > > 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 = ; > close(LOG); > > $finalizado = "0"; > > foreach (@log){ > chomp; > if ($_ eq "REUNIÃO FINALIZADA"){ > $finalizado = "1"; > }} > if ($finalizado eq "1"){print qq| > > A REUNIÃO FOI FINALIZADA. VOCÊ PODE IMPRIMIR OU VISUALIZAR O RELATÓRIO > |; > > }else{print qq| > > > > @style > > > > @log > > |; > }} > > 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 > > class="table3" leftmargin="0" topmargin="0" marginwidth="0" > marginheight="0"> >
    > > > > > > > > > > > > > > > > > > > > > > > > > > >
      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'> onClick="enter('
    ')" 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'>
    onClick="enter('
  • ')" 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'>
  • onClick="enter('
      ')" 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'>
    onClick="enter('Á')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('á')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('à')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ã')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('â')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('É')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('é')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ê')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('í')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('õ')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ó')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ô')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ú')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('Ç')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> onClick="enter('ç')" STYLE='cursor: pointer; font-family: Arial, > Helvetica, sans-serif; font-size: 10px; border-width: > 2;color:#003366;font-weight:600'> 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'> 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'> 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'>

    > > > > >
    >
    > size="120" > maxlength="300" onHelp="return showMsgHelp()"> > value="$login"> > value="$tema"> > >
    >
    > >
    > > |;} > > sub style{ > open(STYLE, "$estilos"); > @style =