--- loncom/interface/lonfeedback.pm 2002/01/01 15:02:31 1.21 +++ loncom/interface/lonfeedback.pm 2002/03/02 03:50:27 1.24 @@ -1,7 +1,7 @@ # The LearningOnline Network # Feedback # -# $Id: lonfeedback.pm,v 1.21 2002/01/01 15:02:31 www Exp $ +# $Id: lonfeedback.pm,v 1.24 2002/03/02 03:50:27 harris41 Exp $ # # Copyright Michigan State University Board of Trustees # @@ -40,7 +40,9 @@ # 7/25 Gerd Kortemeyer # 7/26 Guy Albertelli # 7/26,8/10,10/1,11/5,11/6,12/27,12/29 Gerd Kortemeyer - +# YEAR=2002 +# 1/1,1/16 Gerd Kortemeyer +# package Apache::lonfeedback; @@ -197,7 +199,9 @@ sub screen_header { } if ($ENV{'request.course.id'}) { - if (&Apache::lonnet::allowed('pch',$ENV{'request.course.id'})) { + if (&Apache::lonnet::allowed('pch', + $ENV{'request.course.id'}. + ($ENV{'request.course.sec'}?'/'.$ENV{'request.course.sec'}:''))) { $options.='
'. 'Contribution to course discussion of resource'; $options.='
'. @@ -256,24 +260,27 @@ sub decide_receiver { } if ($ENV{'form.question'}) { $typestyle.='Submitting as Question
'; - map { + foreach (split(/\,/, + $ENV{'course.'.$ENV{'request.course.id'}.'.question.email'}) + ) { $to{$_}=1; - } split(/\,/, - $ENV{'course.'.$ENV{'request.course.id'}.'.question.email'}); + } } if ($ENV{'form.course'}) { $typestyle.='Submitting as Comment
'; - map { + foreach (split(/\,/, + $ENV{'course.'.$ENV{'request.course.id'}.'.comment.email'}) + ) { $to{$_}=1; - } split(/\,/, - $ENV{'course.'.$ENV{'request.course.id'}.'.comment.email'}); + } } if ($ENV{'form.policy'}) { $typestyle.='Submitting as Policy Feedback
'; - map { + foreach (split(/\,/, + $ENV{'course.'.$ENV{'request.course.id'}.'.policy.email'}) + ) { $to{$_}=1; - } split(/\,/, - $ENV{'course.'.$ENV{'request.course.id'}.'.policy.email'}); + } } return ($typestyle,%to); } @@ -282,16 +289,17 @@ sub send_msg { my ($feedurl,$email,$citations,%to)=@_; my $status=''; my $sendsomething=0; - map { + foreach (keys %to) { if ($_) { + my $declutter=&Apache::lonnet::declutter($feedurl); unless (&Apache::lonmsg::user_normal_msg(split(/\:/,$_), - 'Feedback '.$feedurl,$email,$citations) eq 'ok') { + 'Feedback ['.$declutter.']',$email,$citations) eq 'ok') { $status.='
Error sending message to '.$_.'
'; } else { $sendsomething++; } } - } keys %to; + } my %record=&Apache::lonnet::restore('_feedback'); my ($temp)=keys %record; @@ -310,7 +318,8 @@ sub send_msg { sub adddiscuss { my ($symb,$email,$anon)=@_; my $status=''; - if (&Apache::lonnet::allowed('pch',$ENV{'request.course.id'})) { + if (&Apache::lonnet::allowed('pch',$ENV{'request.course.id'}. + ($ENV{'request.course.sec'}?'/'.$ENV{'request.course.sec'}:''))) { my %contrib=('message' => $email, 'sendername' => $ENV{'user.name'}, @@ -354,7 +363,7 @@ sub handler { # --------------------------- Get query string for limited number of parameters - map { + foreach (split(/&/,$ENV{'QUERY_STRING'})) { my ($name, $value) = split(/=/,$_); $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg; @@ -363,7 +372,7 @@ sub handler { $ENV{'form.'.$name}=$value; } } - } (split(/&/,$ENV{'QUERY_STRING'})); + } if (($ENV{'form.hide'}) || ($ENV{'form.unhide'})) { # ----------------------------------------------------------------- Hide/unhide