update_folderlist.html from AlphaMail at Krugle
Show update_folderlist.html syntax highlighted
% # vim:set syntax=mason:
<%args>
$cancel => 0
@subscribed => ()
$sent_folder => 'none'
$trash_folder => 'none'
$drafts_folder => 'none'
</%args>
<%init>
if($cancel) {
$m->redirect('/mail/index.html');
}
my $user = Apache::SiteControl->getCurrentUser($r);
my $c;
my $p;
my $message;
eval {
$c = new AlphaMail::Middleware($user->getAttribute('imap'),
$user->getUsername(),
$user->getAttribute('password'), $config);
$p = new AlphaMail::Preferences($user->getUsername(),
$user->getAttribute('imap'), $config);
$p->set('trash_folder', $trash_folder);
$p->set('sent_folder', $sent_folder);
$p->set('drafts_folder', $drafts_folder);
$message = "Your settings were saved. ";
# Force an update of the session folderlist
$user->setAttribute($r, 'subfolderlist', '');
$logger->debug("Saving @subscribed as new folder list");
$c->setSubscribedFolderList($config->get('folder_prefix', 'mail'), @subscribed);
$logger->debug("Success");
$c->close();
};
if($@) {
$logger->error("$@");
$message = "Your list of subscribed folders was not updated due to a server error.";
}
$m->redirect(build_url('/mail/settings/index.html', { selected => 'Folders',
message => $message }));
</%init>
<%once>
use AlphaMail::HTMLHelper qw(build_url);
our $logger = Log::Log4perl->get_logger('alphamail');
</%once>
See more files for this project here