version 1.132, 2005/01/31 11:27:14
|
version 1.139, 2005/03/01 03:28:14
|
Line 414 sub user_crit_msg_raw {
|
Line 414 sub user_crit_msg_raw {
|
=cut |
=cut |
|
|
sub user_crit_msg { |
sub user_crit_msg { |
my ($user,$domain,$subject,$message,$sendback)=@_; |
my ($user,$domain,$subject,$message,$sendback,$toperm)=@_; |
my $status=''; |
my $status=''; |
my %userenv = &Apache::lonnet::get('environment',['msgforward'], |
my %userenv = &Apache::lonnet::get('environment',['msgforward'], |
$domain,$user); |
$domain,$user); |
Line 424 sub user_crit_msg {
|
Line 424 sub user_crit_msg {
|
my ($forwuser,$forwdomain)=split(/\:/,$_); |
my ($forwuser,$forwdomain)=split(/\:/,$_); |
$status.= |
$status.= |
&user_crit_msg_raw($forwuser,$forwdomain,$subject,$message, |
&user_crit_msg_raw($forwuser,$forwdomain,$subject,$message, |
$sendback).' '; |
$sendback,$toperm).' '; |
} |
} |
} else { |
} else { |
$status=&user_crit_msg_raw($user,$domain,$subject,$message,$sendback); |
$status=&user_crit_msg_raw($user,$domain,$subject,$message,$sendback,$toperm); |
} |
} |
return $status; |
return $status; |
} |
} |
Line 639 sub discourse {
|
Line 639 sub discourse {
|
my $r=shift; |
my $r=shift; |
my $classlist = &Apache::loncoursedata::get_classlist(); |
my $classlist = &Apache::loncoursedata::get_classlist(); |
my $now=time; |
my $now=time; |
my %lt=&Apache::lonlocal::texthash('cfa' => 'Check for All', |
my %lt=&Apache::lonlocal::texthash('cfa' => 'Check All', |
'cfs' => 'Check for Section/Group', |
'cfs' => 'Check Section/Group', |
'cfn' => 'Check for None'); |
'cfn' => 'Uncheck All'); |
$r->print(<<ENDDISHEADER); |
$r->print(<<ENDDISHEADER); |
<input type="hidden" name="sendmode" value="group" /> |
<input type="hidden" name="sendmode" value="group" /> |
<script> |
<script> |
Line 675 sub discourse {
|
Line 675 sub discourse {
|
</script> |
</script> |
<input type="button" onClick="checkall()" value="$lt{'cfa'}" /> |
<input type="button" onClick="checkall()" value="$lt{'cfa'}" /> |
<input type="button" onClick="checksec()" value="$lt{'cfs'}" /> |
<input type="button" onClick="checksec()" value="$lt{'cfs'}" /> |
<input type="text" size="5" name=chksec /> |
<input type="text" size="5" name="chksec" /> |
<input type="button" onClick="uncheckall()" value="$lt{'cfn'}" /> |
<input type="button" onClick="uncheckall()" value="$lt{'cfn'}" /> |
<p> |
<p> |
ENDDISHEADER |
ENDDISHEADER |
Line 693 ENDDISHEADER
|
Line 693 ENDDISHEADER
|
} |
} |
} |
} |
$r->print('</table><table>'); |
$r->print('</table><table>'); |
while (my ($student,$info) = each(%$classlist)) { |
my $sort = sub { |
|
my $aname=lc($classlist->{$a}[&Apache::loncoursedata::CL_FULLNAME()]); |
|
if (!$aname) { $aname=$a; } |
|
my $bname=lc($classlist->{$b}[&Apache::loncoursedata::CL_FULLNAME()]); |
|
if (!$bname) { $bname=$b; } |
|
return $aname cmp $bname; |
|
}; |
|
foreach my $student (sort $sort (keys(%{$classlist}))) { |
|
my $info=$classlist->{$student}; |
my ($sname,$sdom,$status,$fullname,$section) = |
my ($sname,$sdom,$status,$fullname,$section) = |
(@{$info}[&Apache::loncoursedata::CL_SNAME(), |
(@{$info}[&Apache::loncoursedata::CL_SNAME(), |
&Apache::loncoursedata::CL_SDOM(), |
&Apache::loncoursedata::CL_SDOM(), |
Line 704 ENDDISHEADER
|
Line 712 ENDDISHEADER
|
my $key = 'send_to_&&&'.$section.'&&&_'.$student; |
my $key = 'send_to_&&&'.$section.'&&&_'.$student; |
if (! defined($fullname) || $fullname eq '') { $fullname = $sname; } |
if (! defined($fullname) || $fullname eq '') { $fullname = $sname; } |
$r->print('<tr><td><label>'. |
$r->print('<tr><td><label>'. |
qq{<input type="checkbox" name="$key">}.(' 'x2). |
qq{<input type="checkbox" name="$key" />}.(' 'x2). |
$fullname.'</td><td>'.$sname.'@'.$sdom.'</td><td>'.$section. |
$fullname.'</label></td><td>'.$sname.'@'.$sdom.'</td><td>'.$section. |
'</td></tr>'); |
'</td></tr>'); |
} |
} |
$r->print('</table>'); |
$r->print('</table>'); |
Line 716 ENDDISHEADER
|
Line 724 ENDDISHEADER
|
sub discrit { |
sub discrit { |
my $r=shift; |
my $r=shift; |
my $header = '<h1><font color=red>'.&mt('Critical Messages').'</font></h1>'. |
my $header = '<h1><font color=red>'.&mt('Critical Messages').'</font></h1>'. |
'<form action=/adm/email method=post>'. |
'<form action="/adm/email" method="POST">'. |
'<input type=hidden name=confirm value=true>'; |
'<input type="hidden" name="confirm" value="true" />'; |
my %what=&Apache::lonnet::dump('critical'); |
my %what=&Apache::lonnet::dump('critical'); |
my $result = ''; |
my $result = ''; |
foreach (sort keys %what) { |
foreach (sort keys %what) { |
Line 734 $content{'sendername'}.'@'.
|
Line 742 $content{'sendername'}.'@'.
|
'</pre><small>'. |
'</pre><small>'. |
&mt('You have to confirm that you received this message. After confirmation, this message will be moved to your regular inbox'). |
&mt('You have to confirm that you received this message. After confirmation, this message will be moved to your regular inbox'). |
'</small><br />'. |
'</small><br />'. |
'<input type=submit name="rec_'.$_.'" value="'.&mt('Confirm Receipt').'">'. |
'<input type="submit" name="rec_'.$_.'" value="'.&mt('Confirm Receipt').'" />'. |
'<input type=submit name="reprec_'.$_.'" '. |
'<input type="submit" name="reprec_'.$_.'" '. |
'value="'.&mt('Confirm Receipt and Reply').'">'; |
'value="'.&mt('Confirm Receipt and Reply').'" />'; |
} |
} |
# Check to see if there were any messages. |
# Check to see if there were any messages. |
if ($result eq '') { |
if ($result eq '') { |
Line 869 ENDLINK
|
Line 877 ENDLINK
|
} |
} |
$r->print("</td></tr>"); |
$r->print("</td></tr>"); |
} |
} |
$r->print('</table></body></html>'); |
$r->print('</table>'.&Apache::loncommon::endbodytag().'</html>'); |
} elsif ($numblocked == 0) { |
} elsif ($numblocked == 0) { |
$r->print("<h3>".&mt('You have no unread messages')."</h3>"); |
$r->print("<h3>".&mt('You have no unread messages')."</h3>"); |
} |
} |
Line 979 ENDDISHEADER
|
Line 987 ENDDISHEADER
|
} |
} |
$r->print('</th><th>'); |
$r->print('</th><th>'); |
if ($ENV{'form.sortedby'} eq "revstatus") { |
if ($ENV{'form.sortedby'} eq "revstatus") { |
$r->print('<a href = "?sortedby=status'.$fsqs.'">'.&mt('Status').'</th>'); |
$r->print('<a href = "?sortedby=status'.$fsqs.'">'.&mt('Status').'</a></th>'); |
} else { |
} else { |
$r->print('<a href = "?sortedby=revstatus'.$fsqs.'">'.&mt('Status').'</th>'); |
$r->print('<a href = "?sortedby=revstatus'.$fsqs.'">'.&mt('Status').'</a></th>'); |
} |
} |
$r->print("</tr>\n"); |
$r->print("</tr>\n"); |
for (my $n=$firstdis;$n<=$lastdis;$n++) { |
for (my $n=$firstdis;$n<=$lastdis;$n++) { |
Line 996 ENDDISHEADER
|
Line 1004 ENDDISHEADER
|
} else { |
} else { |
$r->print('<tr bgcolor="#99BBBB">'); |
$r->print('<tr bgcolor="#99BBBB">'); |
} |
} |
$r->print('<td></a><input type=checkbox name="delmark_'.$origID.'" /></td><td><a href="/adm/email?display='.$origID.$sqs. |
$r->print('<td><input type="checkbox" name="delmark_'.$origID.'" /></td><td><a href="/adm/email?display='.$origID.$sqs. |
'">'.&mt('Open').'</a></td><td>'. |
'">'.&mt('Open').'</a></td><td>'. |
($folder ne 'trash'?'<a href="/adm/email?markdel='.$origID.$sqs. |
($folder ne 'trash'?'<a href="/adm/email?markdel='.$origID.$sqs. |
'">'.&mt('Delete'):' ').'</td>'. |
'">'.&mt('Delete'):' ').'</a></td>'. |
'<td>'.&Apache::lonlocal::locallocaltime($sendtime).'</td><td>'. |
'<td>'.&Apache::lonlocal::locallocaltime($sendtime).'</td><td>'. |
$fromname.'</td><td>'.$fromdomain.'</td><td>'. |
$fromname.'</td><td>'.$fromdomain.'</td><td>'. |
&Apache::lonnet::unescape($shortsubj).'</td><td>'. |
&Apache::lonnet::unescape($shortsubj).'</td><td>'. |
Line 1082 sub compout {
|
Line 1090 sub compout {
|
if (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) { |
if (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) { |
my $crithelp = Apache::loncommon::help_open_topic("Course_Critical_Message"); |
my $crithelp = Apache::loncommon::help_open_topic("Course_Critical_Message"); |
$dispcrit= |
$dispcrit= |
'<input type="checkbox" name="critmsg" /> '.&mt('Send as critical message').' ' . $crithelp . |
'<p><label><input type="checkbox" name="critmsg" /> '.&mt('Send as critical message').'</label> ' . $crithelp . |
'<br>'. |
'</p><p>'. |
'<input type="checkbox" name="sendbck" /> '.&mt('Send as critical message').' ' . |
'<label><input type="checkbox" name="sendbck" /> '.&mt('Send as critical message').' ' . |
&mt('and return receipt') . $crithelp . '<p>'; |
&mt('and return receipt') . '</label>' . $crithelp . |
|
'</p><p><label><input type="checkbox" name="permanent" /> '. |
|
&mt('Send copy to permanent email address (if known)').'</label></p>'; |
} |
} |
my %message; |
my %message; |
my %content; |
my %content; |
Line 1119 sub compout {
|
Line 1129 sub compout {
|
if ($content{'baseurl'}) { |
if ($content{'baseurl'}) { |
$disbase='<input type="hidden" name="baseurl" value="'.&Apache::lonnet::escape($content{'baseurl'}).'" />'; |
$disbase='<input type="hidden" name="baseurl" value="'.&Apache::lonnet::escape($content{'baseurl'}).'" />'; |
if ($ENV{'user.adv'}) { |
if ($ENV{'user.adv'}) { |
$disbase.='<input type="checkbox" name="storebasecomment" />'.&mt('Store message for re-use'). |
$disbase.='<label><input type="checkbox" name="storebasecomment" />'.&mt('Store message for re-use'). |
' <a href="/adm/email?showcommentbaseurl='. |
'</label> <a href="/adm/email?showcommentbaseurl='. |
&Apache::lonnet::escape($content{'baseurl'}).'" target="comments">'. |
&Apache::lonnet::escape($content{'baseurl'}).'" target="comments">'. |
&mt('Show re-usable messages').'</a><br />'; |
&mt('Show re-usable messages').'</a><br />'; |
} |
} |
Line 1148 sub compout {
|
Line 1158 sub compout {
|
my $selectlink=&Apache::loncommon::selectstudent_link |
my $selectlink=&Apache::loncommon::selectstudent_link |
('compemail','recuname','recdomain'); |
('compemail','recuname','recdomain'); |
$r->print(<<"ENDREC"); |
$r->print(<<"ENDREC"); |
<tr><td>$lt{'us'}:</td><td><input type="text" size="12" name="recuname" value="$ENV{'form.recname'}"></td><td rowspan="2">$selectlink</td></tr> |
<tr><td>$lt{'us'}:</td><td><input type="text" size="12" name="recuname" value="$ENV{'form.recname'}" /></td><td rowspan="2">$selectlink</td></tr> |
<tr><td>$lt{'do'}:</td> |
<tr><td>$lt{'do'}:</td> |
<td>$domform</td></tr> |
<td>$domform</td></tr> |
ENDREC |
ENDREC |
Line 1398 sub examblock {
|
Line 1408 sub examblock {
|
$r->print($lt{'ncbc'}.'<br /><br />'); |
$r->print($lt{'ncbc'}.'<br /><br />'); |
} |
} |
&display_addblocker_table($r,$parmcount,\%ltext); |
&display_addblocker_table($r,$parmcount,\%ltext); |
|
my $endbody=&Apache::loncommon::endbodytag(); |
$r->print(<<"END"); |
$r->print(<<"END"); |
<br /> |
<br /> |
<input type="hidden" name="blocktotal" value="$blockcount" /> |
<input type="hidden" name="blocktotal" value="$blockcount" /> |
<input type ="submit" value="Save Changes" /> |
<input type ="submit" value="Save Changes" /> |
</form> |
</form> |
</body> |
$endbody |
</html> |
</html> |
END |
END |
return; |
return; |
Line 1549 END
|
Line 1560 END
|
<tr bgcolor="$bgcols[$iter]"> |
<tr bgcolor="$bgcols[$iter]"> |
<td>$$ltext{'star'}: $startform<br/>$$ltext{'endd'}: $endform</td> |
<td>$$ltext{'star'}: $startform<br/>$$ltext{'endd'}: $endform</td> |
<td>$settername</td> |
<td>$settername</td> |
<td><input type="text" name="title_$parmcount" size="15" value="$title"/><input type="hidden" name="key_$parmcount" value="$_"></td> |
<td><input type="text" name="title_$parmcount" size="15" value="$title" /><input type="hidden" name="key_$parmcount" value="$_" /></td> |
<td>$lt{'modi'}? <input type="checkbox" name="modify_$parmcount"/><br />$lt{'canc'}? <input type="checkbox" name="cancel_$parmcount"/> |
<td><label>$lt{'modi'}? <input type="checkbox" name="modify_$parmcount" /></label><br /><label>$lt{'canc'}? <input type="checkbox" name="cancel_$parmcount" /></label> |
</tr> |
</tr> |
END |
END |
$parmcount ++; |
$parmcount ++; |
Line 1602 sub display_addblocker_table {
|
Line 1613 sub display_addblocker_table {
|
</tr> |
</tr> |
<tr bgcolor="#eeeeee"> |
<tr bgcolor="#eeeeee"> |
<td>$$ltext{'star'}: $startform<br />$$ltext{'endd'}: $endform</td> |
<td>$$ltext{'star'}: $startform<br />$$ltext{'endd'}: $endform</td> |
<td><input type="text" name="title_$parmcount" size="15" value=""/></td> |
<td><input type="text" name="title_$parmcount" size="15" value="" /></td> |
<td>$lt{'addb'}? <input type="checkbox" name="add_$parmcount" value="1"/></td> |
<td><label>$lt{'addb'}? <input type="checkbox" name="add_$parmcount" value="1" /></label></td> |
</tr> |
</tr> |
</table> |
</table> |
</td> |
</td> |
Line 1837 sub displayresource {
|
Line 1848 sub displayresource {
|
|
|
sub header { |
sub header { |
my ($r,$title,$baseurl)=@_; |
my ($r,$title,$baseurl)=@_; |
$r->print('<html><head><title>Communication and Messages</title>'); |
$r->print(&Apache::lonxml::xmlbegin(). |
|
'<head>'.&Apache::lonxml::fontsettings(). |
|
'<title>Communication and Messages</title>'); |
if ($baseurl) { |
if ($baseurl) { |
$r->print("<base href=\"http://$ENV{'SERVER_NAME'}/$baseurl\" />"); |
$r->print("<base href=\"http://$ENV{'SERVER_NAME'}/$baseurl\" />"); |
} |
} |
Line 1877 sub storedcommentlisting {
|
Line 1890 sub storedcommentlisting {
|
my ($r)=@_; |
my ($r)=@_; |
my %msgs=&Apache::lonnet::dump('nohist_stored_comments',undef,undef, |
my %msgs=&Apache::lonnet::dump('nohist_stored_comments',undef,undef, |
'^'.&Apache::lonnet::escape(&Apache::lonnet::escape($ENV{'form.showcommentbaseurl'}))); |
'^'.&Apache::lonnet::escape(&Apache::lonnet::escape($ENV{'form.showcommentbaseurl'}))); |
$r->print('<html><body>'); |
$r->print(&Apache::lonxml::xmlbegin().'<head>'. |
|
&Apache::lonxml::fontsettings().'</head><body>'); |
if ((keys %msgs)[0]=~/^error\:/) { |
if ((keys %msgs)[0]=~/^error\:/) { |
$r->print(&mt('No stored comments yet.')); |
$r->print(&mt('No stored comments yet.')); |
} else { |
} else { |
Line 1960 sub sendoffmail {
|
Line 1974 sub sendoffmail {
|
$thismsg=&user_crit_msg($recuname,$recdomain, |
$thismsg=&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'},$ENV{'form.permanent'}); |
} else { |
} else { |
$r->print(&mt('Sending').' '.$recuname.'@'.$recdomain.': '); |
$r->print(&mt('Sending').' '.$recuname.'@'.$recdomain.': '); |
$thismsg=&user_normal_msg($recuname,$recdomain, |
$thismsg=&user_normal_msg($recuname,$recdomain, |
&Apache::lonfeedback::clear_out_html($ENV{'form.subject'}), |
&Apache::lonfeedback::clear_out_html($ENV{'form.subject'}), |
$msgtxt, |
$msgtxt, |
$content{'citation'}); |
$content{'citation'},undef,undef,$ENV{'form.permanent'}); |
if (($ENV{'request.course.id'}) && ($ENV{'form.sendmode'} eq 'group')) { |
if (($ENV{'request.course.id'}) && ($ENV{'form.sendmode'} eq 'group')) { |
&user_normal_msg_raw( |
&user_normal_msg_raw( |
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}, |
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}, |
Line 2148 sub handler {
|
Line 2162 sub handler {
|
&Apache::loncommunicate::menu($r); |
&Apache::loncommunicate::menu($r); |
&disall($r,$folder); |
&disall($r,$folder); |
} |
} |
$r->print('</body></html>'); |
$r->print(&Apache::loncommon::endbodytag().'</html>'); |
return OK; |
return OK; |
} |
} |
# ================================================= Main program, reset counter |
# ================================================= Main program, reset counter |