version 1.62, 2003/10/15 20:01:48
|
version 1.63, 2003/10/15 20:13:31
|
Line 92 sub list_discussion {
|
Line 92 sub list_discussion {
|
$message.='<p>'.&mt('Attachment').': <a href="'. |
$message.='<p>'.&mt('Attachment').': <a href="'. |
&Apache::lonnet::tokenwrapper( |
&Apache::lonnet::tokenwrapper( |
$contrib{$idx.':attachmenturl'}). |
$contrib{$idx.':attachmenturl'}). |
'"><tt>'.$fname.'.'.$ft.'</tt></a>'; |
'"><tt>'.$fname.'.'.$ft.'</tt></a></p>'; |
} |
} |
if ($message) { |
if ($message) { |
if ($hidden) { |
if ($hidden) { |
Line 159 sub list_discussion {
|
Line 159 sub list_discussion {
|
<br /> |
<br /> |
<font size="1">Note: in anonymous discussion, your name is visible only to |
<font size="1">Note: in anonymous discussion, your name is visible only to |
course faculty</font><br /> |
course faculty</font><br /> |
<textarea name=comment cols=60 rows=10 wrap=hard></textarea> |
<textarea name="comment" cols="60" rows="10" wrap="hard"></textarea> |
<p> |
<p> |
Attachment (128 KB max size): <input type="file" name="attachment" /> |
Attachment (128 KB max size): <input type="file" name="attachment" /> |
</p> |
</p> |
Line 182 sub mail_screen {
|
Line 182 sub mail_screen {
|
<head> |
<head> |
<title>The LearningOnline Network with CAPA</title> |
<title>The LearningOnline Network with CAPA</title> |
<meta http-equiv="pragma" content="no-cache"></meta> |
<meta http-equiv="pragma" content="no-cache"></meta> |
<script> |
<script type="text/javascript"> |
|
//<!-- |
function gosubmit() { |
function gosubmit() { |
var rec=0; |
var rec=0; |
if (typeof(document.mailform.elements.author)!="undefined") { |
if (typeof(document.mailform.elements.author)!="undefined") { |
Line 222 sub mail_screen {
|
Line 223 sub mail_screen {
|
alert('Please check a feedback type.'); |
alert('Please check a feedback type.'); |
} |
} |
} |
} |
|
//--> |
</script> |
</script> |
</head> |
</head> |
$bodytag |
$bodytag |
<h2><tt>$title</tt></h2> |
<h2><tt>$title</tt></h2> |
<form action="/adm/feedback" method="post" name="mailform" |
<form action="/adm/feedback" method="post" name="mailform" |
enctype="multipart/form-data"> |
enctype="multipart/form-data"> |
<input type=hidden name=postdata value="$feedurl"> |
<input type="hidden" name="postdata" value="$feedurl" /> |
Please check at least one of the following feedback types: |
Please check at least one of the following feedback types: |
$options<hr> |
$options<hr /> |
My question/comment/feedback:<p> |
<p>My question/comment/feedback:</p> |
|
<p> |
$latexHelp |
$latexHelp |
<textarea name=comment cols=60 rows=10 wrap=hard> |
<textarea name="comment" cols="60" rows="10" wrap="hard"> |
</textarea><p> |
</textarea></p> |
|
<p> |
Attachment (128 KB max size): <input type="file" name="attachment" /> |
Attachment (128 KB max size): <input type="file" name="attachment" /> |
</p> |
</p> |
<p> |
<p> |
<input type="hidden" name="sendit" value="1" /> |
<input type="hidden" name="sendit" value="1" /> |
<input type=button value="Send Feedback" onClick='gosubmit();' /> |
<input type="button" value="Send Feedback" onClick='gosubmit();' /> |
</p> |
</p> |
</form> |
</form> |
ENDDOCUMENT |
ENDDOCUMENT |
Line 250 sub fail_redirect {
|
Line 254 sub fail_redirect {
|
my ($r,$feedurl) = @_; |
my ($r,$feedurl) = @_; |
$r->print (<<ENDFAILREDIR); |
$r->print (<<ENDFAILREDIR); |
<head><title>Feedback not sent</title> |
<head><title>Feedback not sent</title> |
<meta http-equiv="pragma" content="no-cache"></meta> |
<meta http-equiv="pragma" content="no-cache" /> |
<meta HTTP-EQUIV="Refresh" CONTENT="2; url=$feedurl"> |
<meta HTTP-EQUIV="Refresh" CONTENT="2; url=$feedurl" /> |
</head> |
</head> |
<html> |
<html> |
<body bgcolor="#FFFFFF"> |
<body bgcolor="#FFFFFF"> |
<img align=right src=/adm/lonIcons/lonlogos.gif> |
<img align="right" src="/adm/lonIcons/lonlogos.gif" /> |
<b>Sorry, no recipients ...</b> |
<b>Sorry, no recipients ...</b> |
</body> |
</body> |
</html> |
</html> |
Line 267 sub redirect_back {
|
Line 271 sub redirect_back {
|
$r->print (<<ENDREDIR); |
$r->print (<<ENDREDIR); |
<head> |
<head> |
<title>Feedback sent</title> |
<title>Feedback sent</title> |
<meta http-equiv="pragma" content="no-cache"></meta> |
<meta http-equiv="pragma" content="no-cache" /> |
<meta HTTP-EQUIV="Refresh" CONTENT="2; url=$feedurl"> |
<meta HTTP-EQUIV="Refresh" CONTENT="2; url=$feedurl"> |
</head> |
</head> |
<html> |
<html> |
<body bgcolor="#FFFFFF" onLoad='if (window.name!="loncapaclient") { this.document.reldt.submit(); self.close(); }'> |
<body bgcolor="#FFFFFF" onLoad='if (window.name!="loncapaclient") { this.document.reldt.submit(); self.close(); }'> |
<img align=right src=/adm/lonIcons/lonlogos.gif> |
<img align="right" src="/adm/lonIcons/lonlogos.gif" /> |
$typestyle |
$typestyle |
<b>Sent $sendsomething message(s), and $sendposts post(s).</b> |
<b>Sent $sendsomething message(s), and $sendposts post(s).</b> |
<font color=red>$status</font> |
<font color="red">$status</font> |
<form name="reldt" action="$feedurl" target="loncapaclient"> |
<form name="reldt" action="$feedurl" target="loncapaclient"> |
</form> |
</form> |
</body> |
</body> |
Line 287 sub no_redirect_back {
|
Line 291 sub no_redirect_back {
|
my ($r,$feedurl) = @_; |
my ($r,$feedurl) = @_; |
$r->print (<<ENDNOREDIR); |
$r->print (<<ENDNOREDIR); |
<head><title>Feedback not sent</title> |
<head><title>Feedback not sent</title> |
<meta http-equiv="pragma" content="no-cache"></meta> |
<meta http-equiv="pragma" content="no-cache" /> |
ENDNOREDIR |
ENDNOREDIR |
|
|
if ($feedurl!~/^\/adm\/feedback/) { |
if ($feedurl!~/^\/adm\/feedback/) { |
Line 298 ENDNOREDIR
|
Line 302 ENDNOREDIR
|
</head> |
</head> |
<html> |
<html> |
<body bgcolor="#FFFFFF" onLoad='if (window.name!="loncapaclient") { self.close(); }'> |
<body bgcolor="#FFFFFF" onLoad='if (window.name!="loncapaclient") { self.close(); }'> |
<img align=right src=/adm/lonIcons/lonlogos.gif> |
<img align="right" src="/adm/lonIcons/lonlogos.gif" /> |
<b>Sorry, no feedback possible on this resource ...</b> |
<b>Sorry, no feedback possible on this resource ...</b> |
</body> |
</body> |
</html> |
</html> |
Line 311 sub screen_header {
|
Line 315 sub screen_header {
|
my $discussoptions=''; |
my $discussoptions=''; |
if (($feedurl=~/^\/res\//) && ($feedurl!~/^\/res\/adm/)) { |
if (($feedurl=~/^\/res\//) && ($feedurl!~/^\/res\/adm/)) { |
$msgoptions= |
$msgoptions= |
'<p><input type=checkbox name=author> '. |
'<p><input type="checkbox" name="author" /> '. |
&mt('Feedback to resource author'); |
&mt('Feedback to resource author').'</p>'; |
} |
} |
if (&feedback_available(1)) { |
if (&feedback_available(1)) { |
$msgoptions.= |
$msgoptions.= |
'<br><input type=checkbox name=question> '. |
'<br /><input type="checkbox" name="question" /> '. |
&mt('Question about resource content'); |
&mt('Question about resource content'); |
} |
} |
if (&feedback_available(0,1)) { |
if (&feedback_available(0,1)) { |
$msgoptions.= |
$msgoptions.= |
'<br><input type=checkbox name=course> '. |
'<br /><input type="checkbox" name="course" /> '. |
&mt('Question/Comment/Feedback about course content'); |
&mt('Question/Comment/Feedback about course content'); |
} |
} |
if (&feedback_available(0,0,1)) { |
if (&feedback_available(0,0,1)) { |
$msgoptions.= |
$msgoptions.= |
'<br><input type=checkbox name=policy> '. |
'<br /><input type="checkbox" name="policy" /> '. |
&mt('Question/Comment/Feedback about course policy'); |
&mt('Question/Comment/Feedback about course policy'); |
} |
} |
|
|
Line 334 sub screen_header {
|
Line 338 sub screen_header {
|
if (&Apache::lonnet::allowed('pch', |
if (&Apache::lonnet::allowed('pch', |
$ENV{'request.course.id'}. |
$ENV{'request.course.id'}. |
($ENV{'request.course.sec'}?'/'.$ENV{'request.course.sec'}:''))) { |
($ENV{'request.course.sec'}?'/'.$ENV{'request.course.sec'}:''))) { |
$discussoptions='<input type="checkbox" name="discuss" onClick="this.form.anondiscuss.checked=false;"> '. |
$discussoptions='<input type="checkbox" name="discuss" onClick="this.form.anondiscuss.checked=false;" /> '. |
&mt('Contribution to course discussion of resource'); |
&mt('Contribution to course discussion of resource'); |
$discussoptions.='<br><input type="checkbox" name="anondiscuss" onClick="this.form.discuss.checked=false;"> '. |
$discussoptions.='<br /><input type="checkbox" name="anondiscuss" onClick="this.form.discuss.checked=false;" /> '. |
&mt('Anonymous contribution to course discussion of resource'). |
&mt('Anonymous contribution to course discussion of resource'). |
' <i>('.&mt('name only visible to course faculty').')</i>'; |
' <i>('.&mt('name only visible to course faculty').')</i>'; |
} |
} |
Line 392 ENDEMAIL
|
Line 396 ENDEMAIL
|
my $citations=<<"ENDCITE"; |
my $citations=<<"ENDCITE"; |
<h2>Previous attempts of student (if applicable)</h2> |
<h2>Previous attempts of student (if applicable)</h2> |
$prevattempts |
$prevattempts |
<p><hr> |
<br /><hr /> |
<h2>Original screen output (if applicable)</h2> |
<h2>Original screen output (if applicable)</h2> |
$usersaw |
$usersaw |
<h2>Correct Answer(s) (if applicable)</h2> |
<h2>Correct Answer(s) (if applicable)</h2> |
Line 439 sub decide_receiver {
|
Line 443 sub decide_receiver {
|
} |
} |
} |
} |
if ($ENV{'form.course'}||$course) { |
if ($ENV{'form.course'}||$course) { |
$typestyle.='Submitting as Comment<br>'; |
$typestyle.='Submitting as Comment<br />'; |
foreach (split(/\,/, |
foreach (split(/\,/, |
$ENV{'course.'.$ENV{'request.course.id'}.'.comment.email'}) |
$ENV{'course.'.$ENV{'request.course.id'}.'.comment.email'}) |
) { |
) { |
Line 448 sub decide_receiver {
|
Line 452 sub decide_receiver {
|
} |
} |
} |
} |
if ($ENV{'form.policy'}||$policy) { |
if ($ENV{'form.policy'}||$policy) { |
$typestyle.='Submitting as Policy Feedback<br>'; |
$typestyle.='Submitting as Policy Feedback<br />'; |
foreach (split(/\,/, |
foreach (split(/\,/, |
$ENV{'course.'.$ENV{'request.course.id'}.'.policy.email'}) |
$ENV{'course.'.$ENV{'request.course.id'}.'.policy.email'}) |
) { |
) { |
Line 479 sub send_msg {
|
Line 483 sub send_msg {
|
unless (&Apache::lonmsg::user_normal_msg(split(/\:/,$_), |
unless (&Apache::lonmsg::user_normal_msg(split(/\:/,$_), |
'Feedback ['.$declutter.']',$email,$citations,$feedurl, |
'Feedback ['.$declutter.']',$email,$citations,$feedurl, |
$attachmenturl)=~/ok/) { |
$attachmenturl)=~/ok/) { |
$status.='<br>'.&mt('Error sending message to').' '.$_.'<br>'; |
$status.='<br />'.&mt('Error sending message to').' '.$_.'<br />'; |
} else { |
} else { |
$sendsomething++; |
$sendsomething++; |
} |
} |
Line 493 sub send_msg {
|
Line 497 sub send_msg {
|
$newrecord{'resource'}=$feedurl; |
$newrecord{'resource'}=$feedurl; |
$newrecord{'subnumber'}=$record{'subnumber'}+1; |
$newrecord{'subnumber'}=$record{'subnumber'}+1; |
unless (&Apache::lonnet::cstore(\%newrecord,'_feedback') eq 'ok') { |
unless (&Apache::lonnet::cstore(\%newrecord,'_feedback') eq 'ok') { |
$status.='<br>'.&mt('Not registered').'<br>'; |
$status.='<br />'.&mt('Not registered').'<br />'; |
} |
} |
} |
} |
|
|
Line 524 sub adddiscuss {
|
Line 528 sub adddiscuss {
|
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}, |
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}, |
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}); |
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}); |
my %storenewentry=($symb => time); |
my %storenewentry=($symb => time); |
$status.='<br>'.&mt('Updating discussion time').': '. |
$status.='<br />'.&mt('Updating discussion time').': '. |
&Apache::lonnet::put('discussiontimes',\%storenewentry, |
&Apache::lonnet::put('discussiontimes',\%storenewentry, |
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}, |
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}, |
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}); |
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}); |
Line 535 sub adddiscuss {
|
Line 539 sub adddiscuss {
|
my %newrecord=(); |
my %newrecord=(); |
$newrecord{'resource'}=$symb; |
$newrecord{'resource'}=$symb; |
$newrecord{'subnumber'}=$record{'subnumber'}+1; |
$newrecord{'subnumber'}=$record{'subnumber'}+1; |
$status.='<br>'.&mt('Registering').': '. |
$status.='<br />'.&mt('Registering').': '. |
&Apache::lonnet::cstore(\%newrecord,'_discussion'); |
&Apache::lonnet::cstore(\%newrecord,'_discussion'); |
} |
} |
} else { |
} else { |
$status.='Failed.'; |
$status.='Failed.'; |
} |
} |
return $status.'<br>'; |
return $status.'<br />'; |
} |
} |
|
|
# ----------------------------------------------------------- Preview function |
# ----------------------------------------------------------- Preview function |
Line 606 sub handler {
|
Line 610 sub handler {
|
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}); |
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}); |
|
|
&redirect_back($r,&Apache::lonnet::clutter($url), |
&redirect_back($r,&Apache::lonnet::clutter($url), |
&mt('Changed discussion status').'<p>','0','0'); |
&mt('Changed discussion status').'<br />','0','0'); |
} elsif ($ENV{'form.deldisc'}) { |
} elsif ($ENV{'form.deldisc'}) { |
# --------------------------------------------------------------- Hide for good |
# --------------------------------------------------------------- Hide for good |
$r->content_type('text/html'); |
$r->content_type('text/html'); |
Line 633 sub handler {
|
Line 637 sub handler {
|
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}); |
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}); |
|
|
&redirect_back($r,&Apache::lonnet::clutter($url), |
&redirect_back($r,&Apache::lonnet::clutter($url), |
&mt('Changed discussion status').'<p>','0','0'); |
&mt('Changed discussion status').'<br />','0','0'); |
} elsif ($ENV{'form.preview'}) { |
} elsif ($ENV{'form.preview'}) { |
# -------------------------------------------------------- User wants a preview |
# -------------------------------------------------------- User wants a preview |
&show_preview($r); |
&show_preview($r); |