#! /usr/bin/perl #うまく動かない時は↑を #! /usr/local/bin/perl #ってするといいかも・・・ # # かえでちゃっとCute.(ゆいちゃっとNT.) Ver.1.0 # require './jcodeLE.pl'; require './pref.cgi'; $| = 1; &init; &decode; &jikan; &get; &write if ($chat); &sanka2; &html; &ended(); exit; sub html { $vname = $name; $buffer = "mode=" . $mode . "&email=&reload=" . $reload . "&color=" . $color . "&name=" . &encode($vname) . "&window=" . $window. "&fcimg=" . $fcimg . "&cute=" . $cute; print "Content-type: text/html\n\n"; print "$title$metacode\n"; $dum=@sanka3; &hide; print <<"_HTML_"; $body
$title
発信先指定:
おなまえ:$name $hidden $kao $lmojicolor
電報:
チャットに戻る
この電報機能\は、過去60秒以内に参加者ファイルに記録された相手に対してのみ発信できます。
相手が見つからなければ、再アクセスしてみてください。それでもいなければ...接続が切れている可能\性があります..。
発信された電報は、リモートホスト名(ppp123.bekkoame.or.jpなど)が一致した相手にのみ見ることができるようにログファイルに記載されます。書き込んだあなた自身も読むことはできませんので、あしからず。


送信後は、フレーム機能\による画面分割を利用されている方は、発言ウィンドウの発言ボタンを押してください。
フレーム機能\を利用していない方は、このウィンドウを閉じてください。
_HTML_ print "
かえでちゃっと Cute
Based On ゆいちゃっと NT(Free)
\n";#この行だけは消さないでっ!! }#html END sub get{ $chat = $FORM{'chat'}; $emoji = $FORM{'emoji'};$emoji =~ s/\t/</eg; $emoji = '(=^^=)' if($emoji eq '(=^^=)'); $emoji ='' if($emoji =~/なし/); $reload = 30 if($reload!=0 && $reload<30); $reload = $reload+5 if($reload);#サーバ負荷を少しでも減らすため.... $mojicolor = $FORM{'mojicolor'}; @color3 = split(/"/,$mojicolor);$mojicolor = $color3[0]; $secret = $FORM{'secret'}; &refchk;#書き込み許可URL以外の書き込み対策 }#get END sub write { &jcode'convert(*chat,'sjis'); &tag if ($chat=~s/\t/ $repavoid); ($vname, $vcolor,$vemail,$vchat,$vflag,$vdate,$vhostnm,$vhostip,$vtimes,$vsecretip,$vsecretnm,$dmy) = split(/\t/, $line); $tchat="$chat $emoji"; $tsecret = "$vsecretip:$vsecretnm"; if(($vname eq $name) && ($vchat eq $tchat) && ($vhostnm eq $host) && ($tsecret eq $secret)){$chat='';} $i++; } #連続同一ホスト発言禁止(発言間隔制限) foreach $line (@lines) { last if($j); ($vname, $vcolor,$vemail,$vchat,$vflag,$vdate,$vhostnm,$vhostip,$vtimes,$vsecretip,$vsecretnm,$dmy) = split(/\t/, $line); if(($vhostnm eq $host) && ($secavoid >= ($times - $vtimes))){$chat='';$j=1;} } #文字修飾 $decoration ="color=$mojicolor" if($mojicolor); $decoration .=" size=$FORM{'mojisize'}" if($FORM{'mojisize'}); $chat ="$chat" if($decoration); $secret =~ s/:/\t/ig; $value = "$name\t$color\t$email\t$chat $emoji\t\t$date\t$host\t$hostip\t$times\t$secret\t$fcimg\t\n"; if($chat eq ""){$value ='';} &writelog; }#write END sub tag{ #このタグ閉じは、正しく閉じてある場合も余分に閉じます。(苦笑) $ntags = @denytags; $chat2 = $chat; $l0 = length($chat2); $chat2 =~ s///ig;$l2 = length($chat2); $chat2 =~ s/'//ig;$l3 = length($chat2);$l4 = ($l2 - $l3) % 2; $chat2 =~ s/"//ig;$l5 = ($l3 - length($chat2)) % 2; if((($l0-$l1) > ($l1-$l2)) || $l4 || $l5 || ($tgeml && !($email))){$ntags = 0;} if($ntags > 0){ foreach $denytag ( @denytags ){ $chat =~ s/$denytag//ig; }#禁止タグ処理 @tags = split( /]*)>(.*)/$1/; $tag =~s/^\/(.*)//; $tag =~s/^([^\s]*).*/$1/; } } else { $chat =~ s//>/ig; } $chat.='>' if($chat=~/<\/$/); @tags = reverse( @tags ); foreach $tag ( @tags ){ next if($tag =~/(img|^hr$|^br$)/i); $chat.="" if($tag); } $chat.='">タグえらー?' if( ($chat=~/.*<\/A>/i) ); $chat =~ s/; close(LOG); foreach $line (@sanka) { ($timerec, $handle, $host2, $nmcl,$dmy) = split(/\t/, $line); push(@sanka3,"