Diff for /loncom/interface/lonmsg.pm between versions 1.240 and 1.244

version 1.240, 2015/06/18 21:42:37 version 1.244, 2018/12/27 18:14:25
Line 200  Returns Line 200  Returns
   
 use strict;  use strict;
 use Apache::lonnet;  use Apache::lonnet;
   use Apache::loncommon;
 use HTML::TokeParser();  use HTML::TokeParser();
 use Apache::lonlocal;  use Apache::lonlocal;
 use MIME::Entity;  
 use HTML::Entities;  use HTML::Entities;
 use Encode;  use Encode;
 use LONCAPA qw(:DEFAULT :match);  use LONCAPA qw(:DEFAULT :match);
Line 397  sub buildmsgid { Line 397  sub buildmsgid {
 }  }
   
 sub unpackmsgid {  sub unpackmsgid {
     my ($msgid,$folder,$skipstatus,$status_cache)=@_;      my ($msgid,$folder,$skipstatus,$status_cache,$onlycid)=@_;
     $msgid=&unescape($msgid);      $msgid=&unescape($msgid);
     my ($sendtime,$shortsubj,$fromname,$fromdomain,$count,$fromcid,      my ($sendtime,$shortsubj,$fromname,$fromdomain,$count,$fromcid,
         $processid,$symb,$error) = split(/\:/,&unescape($msgid));          $processid,$symb,$error) = split(/\:/,&unescape($msgid));
       if (!defined($processid)) { $fromcid = ''; }
       if (($onlycid) && ($onlycid ne $fromcid)) {
           return ($sendtime,'',$fromname,$fromdomain,'',$fromcid,'',$error);
       }
     $shortsubj = &unescape($shortsubj);      $shortsubj = &unescape($shortsubj);
     $shortsubj = &HTML::Entities::decode($shortsubj);      $shortsubj = &HTML::Entities::decode($shortsubj);
     $symb = &unescape($symb);      $symb = &unescape($symb);
     if (!defined($processid)) { $fromcid = ''; }  
     my %status=();      my %status=();
     unless ($skipstatus) {      unless ($skipstatus) {
  if (ref($status_cache)) {   if (ref($status_cache)) {
Line 460  sub sendemail { Line 463  sub sendemail {
     $attachmenturl = &Apache::lonnet::filelocation("",$attachmenturl);      $attachmenturl = &Apache::lonnet::filelocation("",$attachmenturl);
     my $filesize = (stat($attachmenturl))[7];      my $filesize = (stat($attachmenturl))[7];
     if ($filesize > 1048576) {      if ($filesize > 1048576) {
           # Don't send if it exceeds 1 MB.
         print '<p><span class="LC_error">'           print '<p><span class="LC_error">' 
             .&mt('Email not sent.  Attachment exceeds permitted length.')              .&mt('Email not sent.  Attachment exceeds permitted length.')
             .'</span><br /></p>';              .'</span><br /></p>';
     } else {      } else {
         my $top = MIME::Entity->build(  Type => "multipart/mixed",          # Otherwise build and send the email
                                         From => $senderaddress,          $subject = '[LON-CAPA] '.$subject;
                                         To => $to,          &Apache::loncommon::mime_email($senderaddress, $to, $subject, $body, ,'',
                                         Subject => '[LON-CAPA] '.$subject);                                          '', $attachmenturl, '', '');
         $top->attach(Data=>$body);  
         $top->attach(Path=>$attachmenturl);  
   
         open MAIL, "| /usr/lib/sendmail -t -oi -oem" or die "open: $!";  
         $top->print(\*MAIL);  
         close MAIL;  
         $msgsent = 1;          $msgsent = 1;
     }      }
     return $msgsent;      return $msgsent;
Line 493  sub sendnotification { Line 491  sub sendnotification {
     $text=~s/\&lt\;/\</gs;      $text=~s/\&lt\;/\</gs;
     $text=~s/\&gt\;/\>/gs;      $text=~s/\&gt\;/\>/gs;
     my $homeserver = &Apache::lonnet::homeserver($touname,$toudom);      my $homeserver = &Apache::lonnet::homeserver($touname,$toudom);
       my $hostname = &Apache::lonnet::hostname($homeserver);
     my $protocol = $Apache::lonnet::protocol{$homeserver};      my $protocol = $Apache::lonnet::protocol{$homeserver};
     $protocol = 'http' if ($protocol ne 'https');      $protocol = 'http' if ($protocol ne 'https');
     my $url = $protocol.'://'.&Apache::lonnet::hostname($homeserver).      my $url = $protocol.'://'.$hostname.
               '/adm/email?username='.$touname.'&domain='.$toudom.                '/adm/email?username='.$touname.'&domain='.$toudom.
               '&display='.&escape($msgid);                '&display='.&escape($msgid);
     my ($sendtime,$shortsubj,$fromname,$fromdomain,$status,$fromcid,      my ($sendtime,$shortsubj,$fromname,$fromdomain,$status,$fromcid,

Removed from v.1.240  
changed lines
  Added in v.1.244


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>