--- loncom/interface/lonmsg.pm 2003/03/17 16:55:06 1.42.2.1
+++ loncom/interface/lonmsg.pm 2002/12/27 16:33:36 1.45
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Routines for messaging
#
-# $Id: lonmsg.pm,v 1.42.2.1 2003/03/17 16:55:06 albertel Exp $
+# $Id: lonmsg.pm,v 1.45 2002/12/27 16:33:36 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -47,23 +47,21 @@ package Apache::lonmsg;
use strict;
use Apache::lonnet();
use vars qw($msgcount);
-use HTML::TokeParser();
+use HTML::TokeParser;
use Apache::Constants qw(:common);
-use Apache::loncommon();
-use Apache::lontexconvert();
-use HTML::Entities();
+use Apache::loncommon;
+use Apache::lontexconvert;
# ===================================================================== Package
sub packagemsg {
my ($subject,$message,$citation)=@_;
-# $message=~s/\\<\;/g;
-# $message=~s/\>/\>\;/g;
- $message =&HTML::Entities::encode($message);
- $citation=&HTML::Entities::encode($citation);
- $subject =&HTML::Entities::encode($subject);
-# $subject=~s/\\<\;/g;
-# $subject=~s/\>/\>\;/g;
+ $message=~s/\\<\;/g;
+ $message=~s/\>/\>\;/g;
+ $citation=~s/\\<\;/g;
+ $citation=~s/\>/\>\;/g;
+ $subject=~s/\\<\;/g;
+ $subject=~s/\>/\>\;/g;
my $now=time;
$msgcount++;
my $partsubj=$subject;
@@ -168,6 +166,13 @@ sub user_crit_msg_raw {
'put:'.$domain.':'.$user.':critical:'.
&Apache::lonnet::escape($msgid).'='.
&Apache::lonnet::escape($message),$homeserver);
+ if ($ENV{'request.course.id'}) {
+ &user_normal_msg_raw(
+ $ENV{'course.'.$ENV{'request.course.id'}.'.num'},
+ $ENV{'course.'.$ENV{'request.course.id'}.'.domain'},
+ 'Critical ['.$user.':'.$domain.']',
+ $message);
+ }
} else {
$status='no_host';
}
@@ -581,6 +586,100 @@ ENDUPLOAD
$r->print('');
}
+# ---------------------------------------------------- Display all face to face
+
+sub disfacetoface {
+ my ($r,$user,$domain)=@_;
+ unless ($ENV{'request.course.id'}) { return; }
+ unless (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) {
+ return;
+ }
+ my %records=&Apache::lonnet::dump('nohist_email',
+ $ENV{'course.'.$ENV{'request.course.id'}.'.domain'},
+ $ENV{'course.'.$ENV{'request.course.id'}.'.num'},
+ '%255b'.$user.'%253a'.$domain.'%255d');
+ my $result='';
+ foreach (sort keys %records) {
+ my %content=&unpackagemsg($records{$_});
+ next if ($content{'senderdomain'} eq '');
+ $content{'message'}=~s/\n/\
/g;
+ if ($content{'subject'}=~/^Record/) {
+ $result.='
'. + &Apache::lontexconvert::msgtexconverted($content{'message'}). + ''; + } + # Check to see if there were any messages. + if ($result eq '') { + $r->print("
No face-to-face records or critical messages in this course.
"); + } else { + $r->print($result); + } +} + +# ---------------------------------------------------------------- Face to face + +sub facetoface { + my ($r,$stage)=@_; + unless (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) { + return; + } + my $defdom=$ENV{'user.domain'}; + if ($ENV{'form.recdomain'}) { $defdom=$ENV{'form.recdomain'}; } + my $domform = &Apache::loncommon::select_dom_form($defdom,'recdomain'); + $r->print(<<"ENDTREC"); +'. &Apache::lontexconvert::msgtexconverted($content{'message'}). @@ -691,6 +793,8 @@ $content{'sendername'},$content{'senderd &disall($r); } elsif ($ENV{'form.compose'}) { &compout($r,'',$ENV{'form.compose'}); + } elsif ($ENV{'form.recordftf'}) { + &facetoface($r,$ENV{'form.recordftf'}); } elsif ($ENV{'form.sendmail'}) { my %content=(); undef %content;