version 1.53, 2006/12/18 00:16:27
|
version 1.57, 2006/12/23 07:21:00
|
Line 132 use LONCAPA;
|
Line 132 use LONCAPA;
|
# Querystring component with sorting type |
# Querystring component with sorting type |
my $sqs; |
my $sqs; |
my $startdis; |
my $startdis; |
my $interdis; |
|
|
|
# ============================================================ List all folders |
# ============================================================ List all folders |
|
|
Line 178 sub folderlist {
|
Line 177 sub folderlist {
|
my %userfolders; |
my %userfolders; |
|
|
foreach my $key (keys(%gotfolders)) { |
foreach my $key (keys(%gotfolders)) { |
$key =~ s/(['"])/\$1/g; |
$key =~ s/(['"])/\$1/g; #' stupid emacs |
$userfolders{$key} = $key; |
$userfolders{$key} = $key; |
} |
} |
my @userorder = sort(keys(%userfolders)); |
my @userorder = sort(keys(%userfolders)); |
Line 230 function folder_choice(targetform,caller
|
Line 229 function folder_choice(targetform,caller
|
} |
} |
} |
} |
</script>|; |
</script>|; |
|
my %show = ('select_form_order' => [10,20,50,100,200], |
|
map {$_=>$_} (10,20,50,100,200)); |
|
|
|
|
$output .= ' |
$output .= ' |
<form method="post" action="/adm/email" name="folderlist"> |
<form method="post" action="/adm/email" name="folderlist"> |
<table border="0" cellspacing="2" cellpadding="2"> |
<table border="0" cellspacing="2" cellpadding="2"> |
Line 240 function folder_choice(targetform,caller
|
Line 243 function folder_choice(targetform,caller
|
<td align="center"><b>'.$lt{'fold'}.'</b><br />'."\n". |
<td align="center"><b>'.$lt{'fold'}.'</b><br />'."\n". |
&Apache::loncommon::select_form($folder,'folder',%formhash).' |
&Apache::loncommon::select_form($folder,'folder',%formhash).' |
</td> |
</td> |
<td align="center"><b>'.$lt{'show'}.'</b><br /> |
<td align="center"><b>'.$lt{'show'}.'</b><br />'."\n". |
<select name="interdis">'. |
&Apache::loncommon::select_form($env{'form.interdis'},'interdis', |
join("\n",map { '<option value="'.$_.'"'. |
%show).' |
($_==$interdis?' selected="selected"':'').'>'.$_.'</option>' |
|
} |
|
(10,20,50,100,200)).'</select> |
|
</td> |
</td> |
<td align="center"><b>'.$lt{'status'}.'</b><br />'."\n". |
<td align="center"><b>'.$lt{'status'}.'</b><br />'."\n". |
&Apache::loncommon::select_form($msgstatus,'msgstatus',%statushash).' |
&Apache::loncommon::select_form($msgstatus,'msgstatus',%statushash).' |
Line 381 sub deletefolder {
|
Line 381 sub deletefolder {
|
my ($folder)=@_; |
my ($folder)=@_; |
my %permfolders = &get_permanent_folders(); |
my %permfolders = &get_permanent_folders(); |
if (defined($permfolders{$folder})) { |
if (defined($permfolders{$folder})) { |
return &mt('The folder [_1] may not be deleted',$folder); |
return &mt('The folder "[_1]" may not be deleted',$folder); |
} |
} |
my %userfolders = &Apache::lonmsg::get_user_folders(); |
my %userfolders = &Apache::lonmsg::get_user_folders(); |
if (!defined($userfolders{$folder})) { |
if (!defined($userfolders{$folder})) { |
return &mt('The folder [_1] does not exist so deletion is not required.', |
return &mt('The folder "[_1]" does not exist so deletion is not required.', |
$folder); |
$folder); |
} |
} |
# check folder is empty; |
# check folder is empty; |
my $suffix=&Apache::lonmsg::foldersuffix($folder); |
my $suffix=&Apache::lonmsg::foldersuffix($folder); |
my @messages = &Apache::lonnet::getkeys('nohist_email'.$suffix); |
my @messages = &Apache::lonnet::getkeys('nohist_email'.$suffix); |
if (@messages > 0) { |
if (@messages > 0) { |
return &mt('The folder [_1] contains messages so it may not be deleted.'). |
return &mt('The folder "[_1]" contains messages so it may not be deleted.',$folder). |
'<br />'. |
'<br />'. |
&mt('Delete or move the messages to a different folder first.'); |
&mt('Delete or move the messages to a different folder first.'); |
} |
} |
Line 892 sub get_course_desc {
|
Line 892 sub get_course_desc {
|
|
|
sub disall { |
sub disall { |
my ($r,$folder,$msgstatus)=@_; |
my ($r,$folder,$msgstatus)=@_; |
|
my %saveable = ('folder' => 'scalar', |
|
'msgstatus' => 'scalar', |
|
'sortedby' => 'scalar', |
|
'interdis' => 'scalar', |
|
); |
|
&Apache::loncommon::store_settings('user','mail',\%saveable); |
|
&Apache::loncommon::restore_settings('user','mail',\%saveable); |
|
$folder ||= $env{'form.folder'}; |
|
$msgstatus ||= $env{'form.msgstatus'}; |
|
$env{'form.interdis'} ||= 20; |
|
|
$r->print(&folderlist($folder,$msgstatus)); |
$r->print(&folderlist($folder,$msgstatus)); |
if ($folder eq 'critical') { |
if ($folder eq 'critical') { |
&discrit($r); |
&discrit($r); |
Line 960 sub disfolder {
|
Line 971 sub disfolder {
|
|
|
</script> |
</script> |
ENDDISHEADER |
ENDDISHEADER |
my %gotfolders = &Apache::lonmsg::get_user_folders(); |
|
my %userfolders; |
|
my $fsqs='&folder='.$folder; |
my $fsqs='&folder='.$folder; |
my @temp=&sortedmessages(\%blocked,$startblock,$endblock,\$numblocked,$folder,$msgstatus); |
my @temp=&sortedmessages(\%blocked,$startblock,$endblock,\$numblocked,$folder,$msgstatus); |
my $totalnumber=$#temp+1; |
my $totalnumber=$#temp+1; |
Line 971 ENDDISHEADER
|
Line 981 ENDDISHEADER
|
} elsif ($msgstatus eq 'replied') { |
} elsif ($msgstatus eq 'replied') { |
$r->print('<h2>'.&mt('You have not replied to any messages in this folder.').'</h2>'); |
$r->print('<h2>'.&mt('You have not replied to any messages in this folder.').'</h2>'); |
} else { |
} else { |
$r->print('<h2>'.&mt('There are no [_1] messages in this folder',lc($statushash{$msgstatus})).'</h2>'); |
$r->print('<h2>'.&mt('There are no '.lc($statushash{$msgstatus}).' messages in this folder.').'</h2>'); |
} |
} |
return; |
return; |
} |
} |
unless ($interdis) { |
my $interdis = $env{'form.interdis'}; |
$interdis=20; |
|
} |
|
my $number=int($totalnumber/$interdis); |
my $number=int($totalnumber/$interdis); |
if ($interdis) { |
if ($totalnumber%$interdis == 0) { |
if ($totalnumber%$interdis == 0) { |
$number--; |
$number--; |
|
} |
|
} |
} |
|
|
if (($startdis<0) || ($startdis>$number)) { $startdis=$number; } |
if (($startdis<0) || ($startdis>$number)) { $startdis=$number; } |
Line 1108 ENDDISHEADER
|
Line 1114 ENDDISHEADER
|
$r->print(' <option value="markedunread">'.&mt('Mark Unread').'</option>'."\n"); |
$r->print(' <option value="markedunread">'.&mt('Mark Unread').'</option>'."\n"); |
} |
} |
$r->print(' <option value="markedforward">'.&mt('Forward').'</option>'."\n"); |
$r->print(' <option value="markedforward">'.&mt('Forward').'</option>'."\n"); |
|
|
|
my %gotfolders = &Apache::lonmsg::get_user_folders(); |
if (keys(%gotfolders) > 0) { |
if (keys(%gotfolders) > 0) { |
$r->print(' <option value="markedmove">'.&mt('Move to Folder ->'). |
$r->print(' <option value="markedmove">'.&mt('Move to Folder ->'). |
'</option>'); |
'</option>'); |
} |
} |
$r->print("\n".'</select></td>'."\n"); |
$r->print("\n".'</select></td>'."\n"); |
foreach my $key (keys(%gotfolders)) { |
|
$userfolders{$key} = $key; |
|
} |
|
if (keys(%gotfolders) > 0) { |
if (keys(%gotfolders) > 0) { |
$r->print('<td align="center"><b>'.&mt('Destination folder').'<b><br />'); |
$r->print('<td align="center"><b>'.&mt('Destination folder').'<b><br />'); |
|
my %userfolders; |
foreach my $key (keys(%gotfolders)) { |
foreach my $key (keys(%gotfolders)) { |
$userfolders{$key} = $key; |
$userfolders{$key} = $key; |
} |
} |
Line 2399 sub handler {
|
Line 2406 sub handler {
|
} |
} |
unless ($startdis) { $startdis=0; } |
unless ($startdis) { $startdis=0; } |
|
|
$interdis=$env{'form.interdis'}; |
|
unless ($interdis) { $interdis=20; } |
|
$sqs.='&interdis='.$interdis; |
|
|
|
if ($env{'form.firstview'}) { |
if ($env{'form.firstview'}) { |
$startdis=0; |
$startdis=0; |
} |
} |