process_first_login.html from AlphaMail at Krugle
Show process_first_login.html syntax highlighted
% # vim:set syntax=mason:
<%args>
$fullname => ''
@subscribed => ()
$sent_folder => 'none'
$trash_folder => 'none'
$drafts_folder => 'none'
</%args>
<%init>
my $user = Apache::SiteControl->getCurrentUser($r);
if(!$user || !$user->isa('Apache::SiteControl::User')) {
$logger->error("Unable to find a user for the given session key. r, m:" . Dumper($r, $m));
$m->redirect("/");
}
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('fullname', $fullname);
$p->set('trash_folder', $trash_folder);
$p->set('sent_folder', $sent_folder);
$p->set('drafts_folder', $drafts_folder);
$p->set('folder_prefix', $config->get('folder_prefix', 'mail'));
$p->set('signature_on_top', $config->get('default_signature_on_top', 1));
$p->set('icon_preview', $config->get('default_icon_preview', 1));
$p->set('linkify', $config->get('default_linkify', 1));
$p->set('skipsendreport', $config->get('default_skipsendreport', 0));
$p->set('skip_images', $config->get('default_skip_images', 1));
$p->set('messages_per_page', $config->get('default_messages_per_page', 10));
$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/index.html', { message => $message }));
</%init>
<%once>
use AlphaMail::HTMLHelper qw(build_url);
use Data::Dumper;
our $logger = Log::Log4perl->get_logger('alphamail');
</%once>
See more files for this project here