version 1.46, 2006/12/06 23:44:33
|
version 1.48, 2006/12/07 21:06:57
|
Line 224 function folder_choice(targetform,caller
|
Line 224 function folder_choice(targetform,caller
|
<table border="0" cellspacing="2" cellpadding="2"> |
<table border="0" cellspacing="2" cellpadding="2"> |
<tr> |
<tr> |
<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 /> |
<select name="interdis">'. |
<select name="interdis">'. |
join("\n",map { '<option value="'.$_.'"'. |
join("\n",map { '<option value="'.$_.'"'. |
($_==$interdis?' selected="selected"':'').'>'.$_.'</option>' } |
($_==$interdis?' selected="selected"':'').'>'.$_.'</option>' |
(10,20,50,100,200)).'</select> |
} |
|
(10,20,50,100,200)).'</select> |
</td> |
</td> |
<td align="center"><b>'.$lt{'actn'}.'</b><br />'. |
<td align="center"><b>'.$lt{'actn'}.'</b><br />'. |
&Apache::loncommon::select_form('view','folderaction',%actions).' |
&Apache::loncommon::select_form('view','folderaction',%actions).' |
</td><td><br />'. |
</td><td><br />'. |
'<input type="button" value="'.$lt{'go'}.'" onClick="javascript:folder_choice(this.form,'."'change'".');" /> |
'<input type="button" value="'.$lt{'go'}.'" onClick="javascript:folder_choice(this.form,'."'change'".');" /> |
</td> |
</td> |
Line 244 function folder_choice(targetform,caller
|
Line 245 function folder_choice(targetform,caller
|
<table><tr><td><br /> |
<table><tr><td><br /> |
<input type="button" value="'.&mt('Make New Folder'). |
<input type="button" value="'.&mt('Make New Folder'). |
'" onClick="javascript:folder_choice(this.form,'."'new'".');" /></td>'. |
'" onClick="javascript:folder_choice(this.form,'."'new'".');" /></td>'. |
'<td align="center"><b>'.&mt('New Folder').'<br />'. |
'<td align="center"><b>'.&mt('New Folder').'</b><br />'. |
'<input type="text" size="15" name="newfolder" value="" /> |
'<input type="text" size="15" name="newfolder" value="" /> |
</td></tr></table> |
</td></tr></table> |
</td> |
</td> |
Line 252 function folder_choice(targetform,caller
|
Line 253 function folder_choice(targetform,caller
|
</table>'."\n". |
</table>'."\n". |
'<input type="hidden" name="sortedby" value="'.$env{'form.sortedby'}.'" />'. |
'<input type="hidden" name="sortedby" value="'.$env{'form.sortedby'}.'" />'. |
'<input type="hidden" name="renamed" value="" />'. |
'<input type="hidden" name="renamed" value="" />'. |
($folder=~/^(new|critical)/?'</form>':''); |
($folder=~/^(new|critical)/?'</form>':''); |
return $output; |
return $output; |
} |
} |
|
|
sub get_permanent_folders { |
sub get_permanent_folders { |
my %permfolders = &Apache::lonlocal::texthash ( |
my %permfolders = |
'' => 'INBOX', |
&Apache::lonlocal::texthash('' => 'INBOX', |
'trash' => 'TRASH', |
'trash' => 'TRASH', |
'new' => 'New Messages Only', |
'new' => 'New Messages Only', |
'critical' => 'Critical', |
'critical' => 'Critical', |
'sent' => 'Sent Messages', |
'sent' => 'Sent Messages', |
); |
); |
return %permfolders; |
return %permfolders; |
} |
} |
|
|
Line 323 sub makefolder {
|
Line 324 sub makefolder {
|
while (defined($userfolders{$folder_id})) { |
while (defined($userfolders{$folder_id})) { |
$folder_id ++; |
$folder_id ++; |
} |
} |
my %folderinfo = ( |
my %folderinfo = ( id => $folder_id, |
id => $folder_id, |
created => time, ); |
created => time, |
|
); |
|
$outcome = |
$outcome = |
&Apache::lonnet::put('email_folders',{$newfolder => \%folderinfo, |
&Apache::lonnet::put('email_folders',{$newfolder => \%folderinfo, |
"\0".'idcount' => $folder_id}); |
"\0".'idcount' => $folder_id}); |
my $releaseresult = &release_msgfolder_lock(); |
my $releaseresult = &release_msgfolder_lock(); |
if ($releaseresult ne 'ok') { |
if ($releaseresult ne 'ok') { |
$warning = $releaseresult; |
$warning = $releaseresult; |
} |
} |
} else { |
} else { |
$outcome = 'Error - could not obtain lock on email folders record.'; |
$outcome = |
|
&mt('Error - could not obtain lock on email folders record.'); |
} |
} |
return ($outcome,$warning); |
return ($outcome,$warning); |
} |
} |
Line 386 sub renamefolder {
|
Line 386 sub renamefolder {
|
if (ref($userfolders{$folder}) eq 'HASH') { |
if (ref($userfolders{$folder}) eq 'HASH') { |
%folderinfo = %{$userfolders{$folder}}; |
%folderinfo = %{$userfolders{$folder}}; |
} else { |
} else { |
%folderinfo = ( |
%folderinfo = ( id => $folder, |
id => $folder, |
created => $userfolders{$folder},); |
created => $userfolders{$folder}, |
|
); |
|
} |
} |
my $outcome = |
my $outcome = |
&Apache::lonnet::put('email_folders',{$newname => \%folderinfo}); |
&Apache::lonnet::put('email_folders',{$newname => \%folderinfo}); |
Line 401 sub renamefolder {
|
Line 399 sub renamefolder {
|
|
|
sub get_msgfolder_lock { |
sub get_msgfolder_lock { |
# get lock for mail folder counter. |
# get lock for mail folder counter. |
my $lockhash = { |
my $lockhash = { "\0".'lock_counter' => time, }; |
"\0".'lock_counter' => time, |
|
}; |
|
my $tries = 0; |
my $tries = 0; |
my $gotlock = &Apache::lonnet::newput('email_folders',$lockhash); |
my $gotlock = &Apache::lonnet::newput('email_folders',$lockhash); |
while (($gotlock ne 'ok') && $tries <3) { |
while (($gotlock ne 'ok') && $tries <3) { |
$tries ++; |
$tries ++; |
sleep 1; |
sleep(1); |
$gotlock = &Apache::lonnet::newput('email_folders',$lockhash); |
$gotlock = &Apache::lonnet::newput('email_folders',$lockhash); |
} |
} |
return $gotlock; |
return $gotlock; |
Line 847 sub get_course_desc {
|
Line 843 sub get_course_desc {
|
if (defined($env{'course.'.$fromcid.'.description'})) { |
if (defined($env{'course.'.$fromcid.'.description'})) { |
$description = $env{'course.'.$fromcid.'.description'}; |
$description = $env{'course.'.$fromcid.'.description'}; |
} else { |
} else { |
my %courseinfo=&Apache::lonnet::coursedescription($fromcid); $description = $courseinfo{'description'}; |
my %courseinfo=&Apache::lonnet::coursedescription($fromcid); |
$description = $courseinfo{'description'}; |
$description = $courseinfo{'description'}; |
} |
} |
$$descriptions{$fromcid} = $description; |
$$descriptions{$fromcid} = $description; |
Line 893 sub disnew {
|
Line 889 sub disnew {
|
$blocked{$id} = 'ON'; |
$blocked{$id} = 'ON'; |
$numblocked ++; |
$numblocked ++; |
} else { |
} else { |
push @newmsgs, { |
push(@newmsgs, { |
msgid => $msgid, |
msgid => $msgid, |
sendtime => $sendtime, |
sendtime => $sendtime, |
shortsub => $shortsubj, |
shortsub => $shortsubj, |
from => $fromname, |
from => $fromname, |
fromdom => $fromdom, |
fromdom => $fromdom, |
course => $description |
course => $description, |
} |
}); |
} |
} |
} |
} |
} |
} |
Line 908 sub disnew {
|
Line 904 sub disnew {
|
if ($#newmsgs >= 0) { |
if ($#newmsgs >= 0) { |
$r->print(<<TABLEHEAD); |
$r->print(<<TABLEHEAD); |
<h2>$lt{'nm'}</h2> |
<h2>$lt{'nm'}</h2> |
<table class="LC_mail_list"><tr><th> </th> |
<table class="LC_mail_list"><tr><th> </th> |
<th>$lt{'da'}</th><th>$lt{'us'}</th><th>$lt{'do'}</th><th>$lt{'su'}</th><th>$lt{'co'}</th></tr> |
<th>$lt{'da'}</th><th>$lt{'us'}</th><th>$lt{'do'}</th><th>$lt{'su'}</th><th>$lt{'co'}</th></tr> |
TABLEHEAD |
TABLEHEAD |
foreach my $msg (@newmsgs) { |
foreach my $msg (@newmsgs) { |
$r->print(<<"ENDLINK"); |
$r->print(<<"ENDLINK"); |
<tr class="LC_mail_new"> |
<tr class="LC_mail_new"> |
<td><a href="/adm/email?dismode=new&display=$msg->{'msgid'}">$lt{'op'}</a></td> |
<td><a href="/adm/email?dismode=new&display=$msg->{'msgid'}">$lt{'op'}</a></td> |
ENDLINK |
ENDLINK |
foreach my $item ('sendtime','from','fromdom','shortsub','course') { |
foreach my $item ('sendtime','from','fromdom','shortsub','course') { |
$r->print("<td>$msg->{$item}</td>"); |
$r->print("<td>$msg->{$item}</td>"); |
} |
} |
$r->print("</td></tr>"); |
$r->print("</tr>"); |
} |
} |
$r->print('</table>'); |
$r->print('</table>'); |
} elsif ($numblocked == 0) { |
} elsif ($numblocked == 0) { |
Line 997 ENDDISHEADER
|
Line 993 ENDDISHEADER
|
if ($lastdis>$#temp) { $lastdis=$#temp; } |
if ($lastdis>$#temp) { $lastdis=$#temp; } |
$r->print(&scrollbuttons($startdis,$number,$firstdis,$lastdis,$totalnumber)); |
$r->print(&scrollbuttons($startdis,$number,$firstdis,$lastdis,$totalnumber)); |
$r->print('<form method="post" name="disall" action="/adm/email">'. |
$r->print('<form method="post" name="disall" action="/adm/email">'. |
'<table class="LC_mail_list"><tr><th colspan="3"> </th><th>'); |
'<table class="LC_mail_list"><tr><th colspan="3"> </th><th>'); |
if ($env{'form.sortedby'} eq "revdate") { |
if ($env{'form.sortedby'} eq "revdate") { |
$r->print('<a href = "?sortedby=date'.$fsqs.'">'.&mt('Date').'</a></th>'); |
$r->print('<a href = "?sortedby=date'.$fsqs.'">'.&mt('Date').'</a></th>'); |
} else { |
} else { |
Line 2282 sub handler {
|
Line 2278 sub handler {
|
unless ($dismode) { |
unless ($dismode) { |
$dismode=''; |
$dismode=''; |
} else { |
} else { |
$sqs.='&dismode='.&escape($dismode); |
$sqs.='&dismode='.&escape($dismode); |
} |
} |
|
|
# --------------------------------------------------------------------- Display |
# --------------------------------------------------------------------- Display |