--- loncom/interface/lonmsg.pm 2001/08/10 22:47:39 1.19
+++ loncom/interface/lonmsg.pm 2001/11/05 21:01:54 1.25
@@ -13,7 +13,8 @@
# 10/19,10/20,10/30,
# 02/06/01 Gerd Kortemeyer
# 07/27 Guy Albertelli
-# 07/27,07/28,07/30,08/03,08/06,08/08,08/09,08/10 Gerd Kortemeyer
+# 07/27,07/28,07/30,08/03,08/06,08/08,08/09,08/10,8/13,8/15,
+# 10/1,11/5 Gerd Kortemeyer
package Apache::lonmsg;
@@ -114,15 +115,15 @@ sub author_res_msg {
# ================================================== Critical message to a user
sub user_crit_msg {
- my ($user,$domain,$subject,$message)=@_;
+ my ($user,$domain,$subject,$message,$sendback)=@_;
# Check if allowed missing
my $status='';
my $msgid='undefined';
unless (($message)&&($user)&&($domain)) { $status='empty'; };
my $homeserver=&Apache::lonnet::homeserver($user,$domain);
if ($homeserver ne 'no_host') {
- my $msgid;
($msgid,$message)=&packagemsg($subject,$message);
+ if ($sendback) { $message.='true'; }
$status=&Apache::lonnet::critical(
'put:'.$domain.':'.$user.':critical:'.
&Apache::lonnet::escape($msgid).'='.
@@ -146,13 +147,13 @@ sub user_crit_received {
my $msgid=shift;
my %message=&Apache::lonnet::get('critical',[$msgid]);
my %contents=&unpackagemsg($message{$msgid});
- my $status='rec: '.
+ my $status='rec: '.($contents{'sendback'}?
&user_normal_msg($contents{'sendername'},$contents{'senderdomain'},
'Receipt: '.$ENV{'user.name'}.' at '.$ENV{'user.domain'},
'User '.$ENV{'user.name'}.' at '.$ENV{'user.domain'}.
' acknowledged receipt of message "'.
$contents{'subject'}.'" dated '.$contents{'time'}.".\n\n"
- .'Message ID: '.$contents{'msgid'});
+ .'Message ID: '.$contents{'msgid'}):'no msg req');
$status.=' trans: '.
&Apache::lonnet::put(
'nohist_email',{$contents{'msgid'} => $message{$msgid}});
@@ -175,7 +176,6 @@ sub user_normal_msg {
unless (($message)&&($user)&&($domain)) { $status='empty'; };
my $homeserver=&Apache::lonnet::homeserver($user,$domain);
if ($homeserver ne 'no_host') {
- my $msgid;
($msgid,$message)=&packagemsg($subject,$message,$citation);
$status=&Apache::lonnet::critical(
'put:'.$domain.':'.$user.':nohist_email:'.
@@ -309,13 +309,15 @@ sub comprep {
my $dispcrit='';
if (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) {
$dispcrit=
- ' Send as critical message
';
+ ' Send as critical message
'.
+ ' Send as critical message'.
+ ' and return receipt
';
}
$r->print(<<"ENDREPLY");