--- loncom/interface/lonmsg.pm 2003/02/18 15:47:40 1.49
+++ loncom/interface/lonmsg.pm 2003/04/02 00:50:46 1.53
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Routines for messaging
#
-# $Id: lonmsg.pm,v 1.49 2003/02/18 15:47:40 albertel Exp $
+# $Id: lonmsg.pm,v 1.53 2003/04/02 00:50:46 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -52,18 +52,22 @@ use Apache::Constants qw(:common);
use Apache::loncommon();
use Apache::lontexconvert();
use HTML::Entities();
+use Mail::Send;
# ===================================================================== Package
sub packagemsg {
- my ($subject,$message,$citation,$baseurl)=@_;
- &Apache::lonnet::logthis("base is $baseurl");
+ my ($subject,$message,$citation,$baseurl,$attachmenturl)=@_;
$message =&HTML::Entities::encode($message);
$citation=&HTML::Entities::encode($citation);
$subject =&HTML::Entities::encode($subject);
#remove machine specification
$baseurl =~ s|^http://[^/]+/|/|;
$baseurl =&HTML::Entities::encode($baseurl);
+ #remove machine specification
+ $attachmenturl =~ s|^http://[^/]+/|/|;
+ $attachmenturl =&HTML::Entities::encode($attachmenturl);
+
my $now=time;
$msgcount++;
my $partsubj=$subject;
@@ -94,13 +98,16 @@ sub packagemsg {
if (defined($baseurl)) {
$result.= '
Attachment: '.$fname.'.'.$ft.''; + } else { + $content{'message'}.='
Attachment: '.$fname.'.'.$ft.'';
}
}
return %content;
@@ -128,6 +143,42 @@ sub unpackmsgid {
return ($sendtime,$shortsubj,$fromname,$fromdomain,$status{$msgid});
}
+
+sub sendemail {
+ my ($to,$subject,$body)=@_;
+ $body=
+ "*** This is an automatic message generated by the LON-CAPA system.\n".
+ "*** Please do not reply to this address.\n\n".$body;
+ my $msg = new Mail::Send;
+ $msg->to($to);
+ $msg->subject('[LON-CAPA] '.$subject);
+ my $fh = $msg->open('smtp',Server => 'localhost');
+ print $fh $body;
+ $fh->close;
+}
+
+# ==================================================== Send notification emails
+
+sub sendnotification {
+ my ($to,$touname,$toudom,$subj,$crit)=@_;
+ my $sender=$ENV{'environment.firstname'}.' '.$ENV{'environment.lastname'};
+ my $critical=($crit?' critical':'');
+ my $url='http://'.
+ $Apache::lonnet::hostname{&Apache::lonnet::homeserver($touname,$toudom)}.
+ '/adm/login&username='.$touname.'&domain='.$toudom;
+ my $body=(<