[LON-CAPA-cvs] cvs: loncom /interface lonchat.pm lonchatfetch.pm

www lon-capa-cvs@mail.lon-capa.org
Mon, 09 Sep 2002 21:01:58 -0000


www		Mon Sep  9 17:01:58 2002 EDT

  Modified files:              
    /loncom/interface	lonchat.pm lonchatfetch.pm 
  Log:
  Anonymous mode should work now.
  
  
Index: loncom/interface/lonchat.pm
diff -u loncom/interface/lonchat.pm:1.3 loncom/interface/lonchat.pm:1.4
--- loncom/interface/lonchat.pm:1.3	Thu Aug  8 09:44:17 2002
+++ loncom/interface/lonchat.pm	Mon Sep  9 17:01:58 2002
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # Chat
 #
-# $Id: lonchat.pm,v 1.3 2002/08/08 13:44:17 www Exp $
+# $Id: lonchat.pm,v 1.4 2002/09/09 21:01:58 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -37,7 +37,7 @@
     $r->send_http_header;
     return OK if $r->header_only;
 
-    if ($ENV{'form.newentry'}) {
+    if ($ENV{'form.newchat'}) {
 	&Apache::lonnet::chatsend($ENV{'form.newchat'},$ENV{'form.anonymous'});
     }
 # --------------------------------------------------- Print login screen header
@@ -46,10 +46,10 @@
 <head>
 <title>The LearningOnline Network with CAPA</title>
 </head>
-<body bgcolor="#FFFFFF">
-<form method="post">
+<body bgcolor="#FFFFFF" onLoad="this.document.chatentry.newchat.focus();">
+<form method="post" name="chatentry">
 <input type="text" size="60" name="newchat">
-<input type="checkbox" name="anonymous">
+<input value="Post Anonymous" name="anonymous" type="submit">
 <input value="Post" name="newentry" type="submit">
 </form>
 </body>
Index: loncom/interface/lonchatfetch.pm
diff -u loncom/interface/lonchatfetch.pm:1.3 loncom/interface/lonchatfetch.pm:1.4
--- loncom/interface/lonchatfetch.pm:1.3	Wed Aug 14 12:24:00 2002
+++ loncom/interface/lonchatfetch.pm	Mon Sep  9 17:01:58 2002
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # Chat Fetching
 #
-# $Id: lonchatfetch.pm,v 1.3 2002/08/14 16:24:00 www Exp $
+# $Id: lonchatfetch.pm,v 1.4 2002/09/09 21:01:58 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -31,6 +31,8 @@
 use strict;
 use Apache::Constants qw(:common);
 use Apache::lontexconvert;
+use Apache::loncommon;
+use Apache::lonnet;
 
 sub handler {
     my $r = shift;
@@ -43,10 +45,18 @@
     my $cnum=$ENV{'course.'.$ENV{'request.course.id'}.'.num'};
     my $cdom=$ENV{'course.'.$ENV{'request.course.id'}.'.domain'};
     my $chome=$ENV{'course.'.$ENV{'request.course.id'}.'.home'};
+
     my @entries=split(/\:/,
                        &Apache::lonnet::reply("chatretr:$cdom:$cnum",$chome));
     my ($lastid)=($entries[$#entries]=~/^(\w+)/);
     my ($thentime,$idnum)=split(/\_/,$lastid);
+# ----------------------------------------------------------- Can see identity?
+    my $crs='/'.$ENV{'request.course.id'};
+    if ($ENV{'request.course.sec'}) {
+       $crs.='_'.$ENV{'request.course.sec'};
+    }                 
+    $crs=~s/\_/\//g;
+    my $seeid=&Apache::lonnet::allowed('rin',$crs);
 # -------------------------------------------------------- see which ones apply
     &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['lastid']);
     my $include=0;
@@ -68,12 +78,29 @@
 	    $contrib=&Apache::lontexconvert::msgtexconverted($contrib);
             $contrib=~s/\n/ /g;
             $contrib=~s/\'/\&\#39\;/g;
-            my $sender=$snum.' at '.$sdom;
-            if ($anon) {
+            my $sender='';
+            unless (($anon) && (!$seeid)) {
+               $sender=&Apache::loncommon::plainname($snum,$sdom);
+	        if ($anon) { $sender.=' [Anon]' };
+            } else {
+		$sender=&Apache::loncommon::screenname($snum,$sdom);
+                unless ($sender) { $sender="Anonymous"; }
             }
-	    $newstuff.='<a name="'.$id.'"><b>'.
-                       $sender.'</b> ('.localtime($msgtime).'): '.
-                       $contrib."<br>";
+            $sender=~s/\'/\"/g;
+            my $color=$sender;
+            $color=~tr/a-j/0-9/;
+            $color=~tr/A-J/0-9/;
+            $color=~tr/k-t/0-9/;
+            $color=~tr/K-T/0-9/;
+            $color=~tr/u-z/0-5/;
+            $color=~tr/U-Z/0-5/;
+            $color=~s/\D//g;
+            $color=substr($color,0,6);
+            my $timestamp=localtime($msgtime);
+            my ($mhour,$mmin,$msec)=($timestamp=~/(\d\d)\:(\d\d)\:(\d\d)/);
+	    $newstuff.='<font color="#'.$color.'"><a name="'.$id.'"><b>'.
+                       $sender.'</b> ('.$mhour.':'.$mmin.':'.$msec.'): '.
+                       $contrib."</font><br>";
             $bottomid=$id;
         } else {
             $_=~/^(\w+)/;