Diff for /loncom/interface/lonmsg.pm between versions 1.69 and 1.76

version 1.69, 2003/10/15 21:10:24 version 1.76, 2003/12/30 22:45:59
Line 25 Line 25
 #  #
 # http://www.lon-capa.org/  # http://www.lon-capa.org/
 #  #
 #  
 # (Routines to control the menu  
 #  
 # (TeX Conversion Module  
 #  
 # 05/29/00,05/30 Gerd Kortemeyer)  
 #  
 # 10/05 Gerd Kortemeyer)  
 #  
 # 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,8/13,8/15,  
 # 10/1,11/5 Gerd Kortemeyer  
 # YEAR=2002  
 # 1/1,3/18 Gerd Kortemeyer  
 #  
 package Apache::lonmsg;  package Apache::lonmsg;
   
 =pod  =pod
Line 284  sub author_res_msg { Line 269  sub author_res_msg {
     return 'no_host';      return 'no_host';
 }  }
   
   # =========================================== Retrieve author resource messages
   
   sub retrieve_author_res_msg {
       my $url=shift;
       $url=&Apache::lonnet::declutter($url);
       my ($domain,$author)=($url=~/^(\w+)\/(\w+)\//);
       my %errormsgs=&Apache::lonnet::dump('nohist_res_msgs',$domain,$author);
       my $msgs='';
       foreach (keys %errormsgs) {
    if ($_=~/^\Q$url\E\_\d+$/) {
       my %content=&unpackagemsg($errormsgs{$_});
       $msgs.='<p><img src="/adm/lonMisc/bomb.gif" /><b>'.
    $content{'time'}.'</b>: '.$content{'message'}.
    '<br /></p>';
    }
       } 
       return $msgs;     
   }
   
   
   # =============================== Delete all author messages related to one URL
   
   sub del_url_author_res_msg {
       my $url=shift;
       $url=&Apache::lonnet::declutter($url);
   }
   
   # ================= Return hash with URLs for which there is a resource message
   
   sub all_url_author_res_msg {
       my ($author,$domain)=@_;
       my %returnhash=();
       foreach (&Apache::lonnet::getkeys('nohist_res_msgs',$domain,$author)) {
    $_=~/^(.+)\_\d+/;
    $returnhash{$1}=1;
       }
       return %returnhash;
   }
   
 # ================================================== Critical message to a user  # ================================================== Critical message to a user
   
 sub user_crit_msg_raw {  sub user_crit_msg_raw {
Line 1060  $content{'sendername'},$content{'senderd Line 1084  $content{'sendername'},$content{'senderd
   &statuschange($msgid,'replied');    &statuschange($msgid,'replied');
   if ((($ENV{'form.critmsg'}) || ($ENV{'form.sendbck'})) &&     if ((($ENV{'form.critmsg'}) || ($ENV{'form.sendbck'})) && 
       (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'}))) {        (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'}))) {
       $r->print(&mt('Sending critical').': '.        $r->print(&mt('Sending critical message').': '.
  &user_crit_msg($content{'sendername'},   &user_crit_msg($content{'sendername'},
        $content{'senderdomain'},         $content{'senderdomain'},
        &Apache::lonfeedback::clear_out_html($ENV{'form.subject'}),         &Apache::lonfeedback::clear_out_html($ENV{'form.subject'}),
Line 1118  $content{'sendername'},$content{'senderd Line 1142  $content{'sendername'},$content{'senderd
   } elsif ($ENV{'form.recordftf'}) {    } elsif ($ENV{'form.recordftf'}) {
       &facetoface($r,$ENV{'form.recordftf'});        &facetoface($r,$ENV{'form.recordftf'});
   } elsif ($ENV{'form.sendmail'}) {    } elsif ($ENV{'form.sendmail'}) {
         my $sendstatus='';
       if ($ENV{'form.send'}) {        if ($ENV{'form.send'}) {
   my %content=();    my %content=();
   undef %content;    undef %content;
Line 1160  $content{'sendername'},$content{'senderd Line 1185  $content{'sendername'},$content{'senderd
       if ($toaddr{$_}) { $msgtxt.='<hr>'.$toaddr{$_}; }            if ($toaddr{$_}) { $msgtxt.='<hr>'.$toaddr{$_}; }    
       if ((($ENV{'form.critmsg'}) || ($ENV{'form.sendbck'})) &&         if ((($ENV{'form.critmsg'}) || ($ENV{'form.sendbck'})) && 
   (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'}))) {    (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'}))) {
   $r->print('Sending critical: '.    $r->print(&mt('Sending critical message').' ...');
     &user_crit_msg($recuname,$recdomain,                    $sendstatus.=' '.&user_crit_msg($recuname,$recdomain,
    &Apache::lonfeedback::clear_out_html($ENV{'form.subject'}),     &Apache::lonfeedback::clear_out_html($ENV{'form.subject'}),
    $msgtxt,     $msgtxt,
    $ENV{'form.sendbck'}));     $ENV{'form.sendbck'});
       } else {        } else {
   $r->print('Sending: '.&user_normal_msg($recuname,$recdomain,    $r->print(&mt('Sending').' ...');
  &Apache::lonfeedback::clear_out_html($ENV{'form.subject'}),                    $sendstatus.=' '.&user_normal_msg($recuname,$recdomain,
                            &Apache::lonfeedback::clear_out_html($ENV{'form.subject'}),
  $msgtxt,   $msgtxt,
  $content{'citation'}));   $content{'citation'});
       }        }
       $r->print('<br />');        $r->print('<br />');
   }    }
       }        }
       if ($ENV{'form.displayedcrit'}) {        if ($sendstatus=~/^(\s*(?:ok|con_delayed)\s*)*$/) {
           &discrit($r);    if ($ENV{'form.displayedcrit'}) {
         &discrit($r);
     } else {
         &disall($r);
     }
       } else {        } else {
   &disall($r);    $r->print(
     '<h2><font color="red">'.&mt('Could not deliver message').'</font></h2>'.
     &mt('Please use the browser "Back" button and correct the recipient addresses')
       );
       }        }
   } else {    } else {
       &disall($r);        &disall($r);

Removed from v.1.69  
changed lines
  Added in v.1.76


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