version 1.11, 2003/06/23 21:30:42
|
version 1.15, 2005/02/17 08:29:42
|
Line 29
|
Line 29
|
package Apache::lonchatfetch; |
package Apache::lonchatfetch; |
|
|
use strict; |
use strict; |
use Apache::Constants qw(:common); |
use Apache::Constants qw(:common :http); |
use Apache::lontexconvert; |
use Apache::lontexconvert; |
use Apache::loncommon; |
use Apache::loncommon; |
use Apache::lonnet; |
use Apache::lonnet; |
Line 37 use Apache::lonnet;
|
Line 37 use Apache::lonnet;
|
sub handler { |
sub handler { |
my $r = shift; |
my $r = shift; |
|
|
|
if (! &Apache::lonnet::allowed('pch',$ENV{'request.course.id'}. |
|
($ENV{'request.course.sec'}?'/'.$ENV{'request.course.sec'}:'')) |
|
) { |
|
return HTTP_NOT_ACCEPTABLE; |
|
} |
|
|
my $loaderror=&Apache::lonnet::overloaderror($r); |
my $loaderror=&Apache::lonnet::overloaderror($r); |
if ($loaderror) { return $loaderror; } |
if ($loaderror) { return $loaderror; } |
$loaderror= |
$loaderror= |
Line 80 sub handler {
|
Line 86 sub handler {
|
my $bottomid=''; |
my $bottomid=''; |
unless ($ENV{'form.lastid'}) { |
unless ($ENV{'form.lastid'}) { |
$include=1; |
$include=1; |
$newstuff='<html><body bgcolor="#FFFFFF">'; |
my $html=&Apache::lonxml::xmlbegin(); |
|
$newstuff=$html.'<head></head><body bgcolor="#FFFFFF">'; |
} |
} |
my @participants=(); |
my @participants=(); |
foreach (@entries) { |
foreach (@entries) { |
my ($id,$msg,$udom)=split(/\:/,&Apache::lonnet::unescape($_)); |
my ($id,$msg,$udom)=split(/\:/,&Apache::lonnet::unescape($_)); |
if ($id eq 'active_participant') { |
if ($id eq 'active_participant') { |
chomp($udom); |
chomp($udom); |
$participants[$#participants+1]= |
my $participant= &Apache::loncommon::nickname($msg,$udom); |
&Apache::loncommon::nickname($msg,$udom); |
unless ($participant=~/\w/) { $participant=$msg.'@'.$udom; } |
|
$participants[$#participants+1]=$participant; |
} elsif ($include) { |
} elsif ($include) { |
chomp($msg); |
chomp($msg); |
my ($msgtime,$msgnum)=split(/\_/,$id); |
my ($msgtime,$msgnum)=split(/\_/,$id); |
Line 111 sub handler {
|
Line 119 sub handler {
|
if (($nick) && ($nick ne $sender)) { |
if (($nick) && ($nick ne $sender)) { |
$sender.=' '.$nick; |
$sender.=' '.$nick; |
} |
} |
|
unless ($sender) { $sender=$snum.'@'.$sdom; } |
if ($anon) { $sender.=' [Anon]' }; |
if ($anon) { $sender.=' [Anon]' }; |
} elsif (!$anon) { |
} elsif (!$anon) { |
$sender=&Apache::loncommon::nickname($snum,$sdom); |
$sender=&Apache::loncommon::nickname($snum,$sdom); |
|
unless ($sender) { $sender=$snum.'@'.$sdom; } |
} else { |
} else { |
$sender=&Apache::loncommon::screenname($snum,$sdom); |
$sender=&Apache::loncommon::screenname($snum,$sdom); |
unless ($sender) { $sender="Anonymous"; } |
unless ($sender) { $sender="Anonymous"; } |
} |
} |
$sender=~s/\'/\"/g; |
$sender=~s/\'/\&\#39\;/g; |
my $color=$sender; |
my $color=$sender; |
$color=~tr/a-j/0-9/; |
$color=~tr/a-j/0-9/; |
$color=~tr/A-J/0-9/; |
$color=~tr/A-J/0-9/; |
Line 140 sub handler {
|
Line 150 sub handler {
|
} |
} |
} |
} |
my $participant_output=join('<br />',sort @participants); |
my $participant_output=join('<br />',sort @participants); |
|
my $html=&Apache::lonxml::xmlbegin(); |
$r->print(<<ENDDOCUMENT); |
$r->print(<<ENDDOCUMENT); |
<html> |
$html |
<head> |
<head> |
<title>The LearningOnline Network with CAPA</title> |
<title>The LearningOnline Network with CAPA</title> |
<meta HTTP-EQUIV="Refresh" CONTENT="5; url=/adm/chatfetch?lastid=$lastid"> |
<meta HTTP-EQUIV="Refresh" CONTENT="5; url=/adm/chatfetch?lastid=$lastid"> |