version 1.190, 2006/04/10 21:55:48
|
version 1.197, 2006/05/09 15:09:27
|
Line 1754 END
|
Line 1754 END
|
my $end_page = |
my $end_page = |
&Apache::loncommon::end_page(); |
&Apache::loncommon::end_page(); |
$r->print(<<END); |
$r->print(<<END); |
<form name="modifydisp" method="POSTx" action="/adm/feedback"> |
$start_page |
|
<form name="modifydisp" method="POST" action="/adm/feedback"> |
$lt{'sdpf'}<br/> $lt{'prca'} <ol><li>$lt{'whpo'}</li><li>$lt{'unwh'}</li><li>$lt{'wipa'}</li></ol> |
$lt{'sdpf'}<br/> $lt{'prca'} <ol><li>$lt{'whpo'}</li><li>$lt{'unwh'}</li><li>$lt{'wipa'}</li></ol> |
<br /> |
<br /> |
<table border="0" cellpadding="0" cellspacing="0"> |
END |
<tr> |
$r->print(&Apache::loncommon::start_data_table()); |
<td width="100%" bgcolor="#000000"> |
$r->print(<<END); |
<table width="100%" border="0" cellpadding="1" cellspacing="0"> |
<tr> |
<tr> |
<th>$lt{'pref'}</td> |
<td width="100%" bgcolor="#000000"> |
<th>$lt{'curr'}</td> |
<table border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF"> |
<th>$lt{'actn'}?</td> |
<tr bgcolor="$tabcolor"> |
|
<td><b>$lt{'pref'}</b></td> |
|
<td><b>$lt{'curr'}</b></td> |
|
<td><b>$lt{'actn'}?</b></td> |
|
</tr> |
</tr> |
<tr bgcolor="#dddddd"> |
END |
|
$r->print(&Apache::loncommon::start_data_table_row()); |
|
$r->print(<<END); |
<td>$lt{'disa'}</td> |
<td>$lt{'disa'}</td> |
<td>$lt{$discdisp}</td> |
<td>$lt{$discdisp}</td> |
<td><label><input type="checkbox" name="discdisp" onClick="discdispChk('0')" /> $lt{'chgt'} "$dispchangeA"</label> |
<td><label><input type="checkbox" name="discdisp" onClick="discdispChk('0')" /> $lt{'chgt'} "$dispchangeA"</label> |
<br /> |
<br /> |
<label><input type="checkbox" name="discdisp" onClick="discdispChk('1')" /> $lt{'chgt'} "$dispchangeB"</label> |
<label><input type="checkbox" name="discdisp" onClick="discdispChk('1')" /> $lt{'chgt'} "$dispchangeB"</label> |
</td> |
</td> |
</tr><tr bgcolor="#eeeeee"> |
END |
|
$r->print(&Apache::loncommon::end_data_table_row()); |
|
$r->print(&Apache::loncommon::start_data_table_row()); |
|
$r->print(<<END); |
<td>$lt{'npmr'}</td> |
<td>$lt{'npmr'}</td> |
<td>$lt{$discmark}</td> |
<td>$lt{$discmark}</td> |
<td><label><input type="checkbox" name="discmark" />$lt{'chgt'} "$markchange"</label></td> |
<td><label><input type="checkbox" name="discmark" />$lt{'chgt'} "$markchange"</label></td> |
</tr><tr bgcolor="#dddddd"> |
END |
|
$r->print(&Apache::loncommon::end_data_table_row()); |
|
$r->print(&Apache::loncommon::start_data_table_row()); |
|
$r->print(<<END); |
<td>$lt{'dotm'}</td> |
<td>$lt{'dotm'}</td> |
<td>$lt{$disctogg}</td> |
<td>$lt{$disctogg}</td> |
<td><label><input type="checkbox" name="disctogg" onClick="discdispChk('2')" />$lt{'chgt'} "$toggchange"</label></td> |
<td><label><input type="checkbox" name="disctogg" onClick="discdispChk('2')" />$lt{'chgt'} "$toggchange"</label></td> |
</tr> |
END |
</table> |
$r->print(&Apache::loncommon::end_data_table_row()); |
</td> |
$r->print(&Apache::loncommon::end_data_table()); |
</tr> |
$r->print(<<END); |
</table> |
|
</td> |
|
</tr> |
|
</table> |
|
<br /> |
<br /> |
<br /> |
<br /> |
<input type="hidden" name="symb" value="$symb" /> |
<input type="hidden" name="symb" value="$symb" /> |
Line 1816 sub print_sortfilter_options {
|
Line 1817 sub print_sortfilter_options {
|
$r->send_http_header; |
$r->send_http_header; |
|
|
&Apache::lonenc::check_encrypt(\$symb); |
&Apache::lonenc::check_encrypt(\$symb); |
my @sections = (); |
my @sections; |
my $section_sel = ''; |
my $section_sel = ''; |
my $numsections = 0; |
|
my $numvisible = 5; |
my $numvisible = 5; |
my %sectioncount = (); |
my %sectioncount = &Apache::loncommon::get_sections(); |
|
|
$numsections = &Apache::loncommon::get_sections($env{'course.'.$env{'request.course.id'}.'.domain'},$env{'course.'.$env{'request.course.id'}.'.num'},\%sectioncount); |
|
|
|
if ($env{'request.course.sec'} !~ /^\s*$/) { #Restrict section choice to current section |
if ($env{'request.course.sec'} !~ /^\s*$/) { #Restrict section choice to current section |
@sections = ('all',$env{'request.course.sec'}); |
@sections = ('all',$env{'request.course.sec'}); |
$numvisible = 2; |
$numvisible = 2; |
} else { |
} else { |
@sections = sort {$a cmp $b} keys(%sectioncount); |
@sections = sort {$a cmp $b} keys(%sectioncount); |
unshift(@sections,'all'); # Put 'all' at the front of the list |
if (scalar(@sections) < 4) { |
if ($numsections < 4) { |
$numvisible = scalar(@sections) + 1; |
$numvisible = $numsections + 1; |
|
} |
} |
|
unshift(@sections,'all'); # Put 'all' at the front of the list |
|
|
} |
} |
foreach (@sections) { |
foreach (@sections) { |
$section_sel .= " <option value=\"$_\" />$_\n"; |
$section_sel .= " <option value=\"$_\" />$_\n"; |
Line 2014 sub print_showposters {
|
Line 2013 sub print_showposters {
|
} |
} |
|
|
my $start_page = &Apache::loncommon::start_page('Discussion options'); |
my $start_page = &Apache::loncommon::start_page('Discussion options'); |
|
my $table_start =&Apache::loncommon::start_data_table(); |
$r->print(<<END); |
$r->print(<<END); |
$start_page |
$start_page |
<form name="pickpostersform" method="post"> |
<form name="pickpostersform" method="post"> |
<table border="0"> |
<br /> |
<tr> |
$table_start |
<td bgcolor="#777777"> |
<tr> |
<table border="0" cellpadding="3"> |
<th>No.</th> |
<tr bgcolor="#e6ffff"> |
<th>Select</th> |
<td><b>No.</b></td> |
<th>Fullname<font color="#999999">(Username/domain)</font></th> |
<td><b>Select</b></td> |
<th>Posts</th> |
<td><b>Fullname</b><font color="#999999">(Username/domain)</font></td> |
|
<td><b>Posts</td> |
|
</tr> |
</tr> |
END |
END |
my $count = 0; |
my $count = 0; |
Line 2038 END
|
Line 2035 END
|
next; |
next; |
} else { |
} else { |
$count ++; |
$count ++; |
$r->print('<tr bgcolor="#ffffe6"><td align="right">'.$count.'</td><td align="center"><label><input name="stuinfo" type="checkbox" value="'.$_.'" /></td><td>'.$last.', '.$first.' ('.$uname.','.$udom.')</label></td><td>'.$postcounts{$_}.'</td></tr>'); |
$r->print(&Apache::loncommon::start_data_table_row(). |
|
'<td align="right">'.$count.'</td> |
|
<td align="center"><label><input name="stuinfo" type="checkbox" value="'.$_.'" /></td> |
|
<td>'.$last.', '.$first.' ('.$uname.','.$udom.')</label></td> |
|
<td>'.$postcounts{$_}.'</td>'. |
|
&Apache::loncommon::end_data_table_row()); |
} |
} |
} |
} |
} |
} |
} |
} |
|
$r->print(&Apache::loncommon::end_data_table()); |
my $end_page = &Apache::loncommon::end_page(); |
my $end_page = &Apache::loncommon::end_page(); |
$r->print(<<END); |
$r->print(<<END); |
</table> |
|
</td> |
|
</tr> |
|
</table> |
|
<br /> |
<br /> |
<input type="hidden" name="sortposts" value="$sortposts" /> |
<input type="hidden" name="sortposts" value="$sortposts" /> |
<input type="hidden" name="userpick" value="$symb" /> |
<input type="hidden" name="userpick" value="$symb" /> |
Line 2238 sub no_redirect_back {
|
Line 2236 sub no_redirect_back {
|
my $nofeed=&mt('Sorry, no feedback possible on this resource ...'); |
my $nofeed=&mt('Sorry, no feedback possible on this resource ...'); |
|
|
my %body_options = ('only_body' => 1, |
my %body_options = ('only_body' => 1, |
|
'bgcolor' => '#FFFFFF', |
'add_entries' => {'onload' => "if (window.name!='loncapaclient') { self.window.close(); }"}); |
'add_entries' => {'onload' => "if (window.name!='loncapaclient') { self.window.close(); }"}); |
|
|
if ($feedurl !~ m{^/adm/feedback}) { |
if ($feedurl !~ m{^/adm/feedback}) { |
Line 2252 sub no_redirect_back {
|
Line 2251 sub no_redirect_back {
|
$feedurl=&Apache::lonenc::check_encrypt($feedurl); |
$feedurl=&Apache::lonenc::check_encrypt($feedurl); |
my $logo=&Apache::loncommon::lonhttpdurl('/adm/lonIcons/lonlogos.gif'); |
my $logo=&Apache::loncommon::lonhttpdurl('/adm/lonIcons/lonlogos.gif'); |
$r->print (<<ENDNOREDIRTWO); |
$r->print (<<ENDNOREDIRTWO); |
</head> |
$start_page |
<body bgcolor="#FFFFFF" onLoad='if (window.name!="loncapaclient") { self.window.close(); }'> |
|
<img align="right" src="$logo" /> |
<img align="right" src="$logo" /> |
<b>$nofeed</b> |
<b>$nofeed</b> |
<br /> |
<br /> |
Line 2325 sub resource_output {
|
Line 2323 sub resource_output {
|
} |
} |
|
|
sub clear_out_html { |
sub clear_out_html { |
my ($message,$override)=@_; |
my ($message,$override,$ignore_htmlarea)=@_; |
unless (&Apache::lonhtmlcommon::htmlareablocked()) { return $message; } |
if (!$ignore_htmlarea |
|
&& !&Apache::lonhtmlcommon::htmlareablocked()) { return $message; } |
# Always allow the <m>-tag |
# Always allow the <m>-tag |
my %html=(M=>1); |
my %html=(M=>1); |
# Check if more is allowed |
# Check if more is allowed |
Line 2342 sub clear_out_html {
|
Line 2341 sub clear_out_html {
|
H1=>1, H2=>1, H3=>1, H4=>1, H5=>1); |
H1=>1, H2=>1, H3=>1, H4=>1, H5=>1); |
} |
} |
# Do the substitution of everything that is not explicitly allowed |
# Do the substitution of everything that is not explicitly allowed |
$message =~ s/\<(\/?\s*(\w+)[^\>\<]*)/ |
$message =~ s/\<(\/?\s*(\w*)[^\>\<]*)/ |
{($html{uc($2)}&&(length($1)<1000))?"\<$1":"\<$1"}/ge; |
{($html{uc($2)}&&(length($1)<1000))?"\<$1":"\<$1"}/ge; |
$message =~ s/(\<?\s*(\w+)[^\<\>]*)\>/ |
$message =~ s/(\<?\s*(\w*)[^\<\>]*)\>/ |
{($html{uc($2)}&&(length($1)<1000))?"$1\>":"$1\>"}/ge; |
{($html{uc($2)}&&(length($1)<1000))?"$1\>":"$1\>"}/ge; |
return $message; |
return $message; |
} |
} |
Line 2613 sub show_preview {
|
Line 2612 sub show_preview {
|
&newline_to_br(\$message); |
&newline_to_br(\$message); |
$message=&Apache::lonspeller::markeduptext($message); |
$message=&Apache::lonspeller::markeduptext($message); |
$message=&Apache::lontexconvert::msgtexconverted($message); |
$message=&Apache::lontexconvert::msgtexconverted($message); |
my $subject=&clear_out_html($env{'form.subject'}); |
my $subject=&clear_out_html($env{'form.subject'},undef,1); |
$subject=~s/\n/\<br \/\>/g; |
$subject=~s/\n/\<br \/\>/g; |
$subject=&Apache::lontexconvert::msgtexconverted($subject); |
$subject=&Apache::lontexconvert::msgtexconverted($subject); |
my $start_page= |
my $start_page= |
Line 2667 ENDPREVIEW
|
Line 2666 ENDPREVIEW
|
sub modify_attachments { |
sub modify_attachments { |
my ($r,$currnewattach,$currdelold,$symb,$idx,$attachmenturls)=@_; |
my ($r,$currnewattach,$currdelold,$symb,$idx,$attachmenturls)=@_; |
my $orig_subject = &Apache::lonnet::unescape($env{'form.subject'}); |
my $orig_subject = &Apache::lonnet::unescape($env{'form.subject'}); |
my $subject=&clear_out_html($orig_subject); |
my $subject=&clear_out_html($orig_subject,undef,1); |
$subject=~s/\n/\<br \/\>/g; |
$subject=~s/\n/\<br \/\>/g; |
$subject=&Apache::lontexconvert::msgtexconverted($subject); |
$subject=&Apache::lontexconvert::msgtexconverted($subject); |
my $timestamp=$env{'form.timestamp'}; |
my $timestamp=$env{'form.timestamp'}; |
Line 3410 ENDREDIR
|
Line 3409 ENDREDIR
|
my ($typestyle,%to) = &decide_receiver($feedurl); |
my ($typestyle,%to) = &decide_receiver($feedurl); |
|
|
# Actually send mail |
# Actually send mail |
my ($status,$numsent)=&send_msg(&clear_out_html($env{'form.subject'}),$feedurl,$email,$citations, |
my ($status,$numsent)=&send_msg(&clear_out_html($env{'form.subject'}, |
|
undef,1), |
|
$feedurl,$email,$citations, |
$attachmenturl,%to); |
$attachmenturl,%to); |
|
|
# Discussion? Store that. |
# Discussion? Store that. |
|
|
my $numpost=0; |
my $numpost=0; |
if ($env{'form.discuss'} || $env{'form.anondiscuss'}) { |
if ($env{'form.discuss'} || $env{'form.anondiscuss'}) { |
my $subject = &clear_out_html($env{'form.subject'}); |
my $subject = &clear_out_html($env{'form.subject'},undef,1); |
my $anonmode=(defined($env{'form.anondiscuss'})); |
my $anonmode=(defined($env{'form.anondiscuss'})); |
$typestyle.=&adddiscuss($symb,$message,$anonmode,$attachmenturl, |
$typestyle.=&adddiscuss($symb,$message,$anonmode,$attachmenturl, |
$subject); |
$subject); |
Line 3428 ENDREDIR
|
Line 3429 ENDREDIR
|
|
|
my $blog=''; |
my $blog=''; |
if ($env{'form.blog'}) { |
if ($env{'form.blog'}) { |
my $subject = &clear_out_html($env{'form.subject'}); |
my $subject = &clear_out_html($env{'form.subject'},undef,1); |
$status.=&Apache::lonrss::addentry($env{'user.name'}, |
$status.=&Apache::lonrss::addentry($env{'user.name'}, |
$env{'user.domain'}, |
$env{'user.domain'}, |
'CourseBlog_'.$env{'request.course.id'}, |
'CourseBlog_'.$env{'request.course.id'}, |