Internationalized system messages.

This commit is contained in:
Martin Kamerbeek 2010-05-31 16:22:22 +02:00
parent bcb265e188
commit 2490e166d3
15 changed files with 422 additions and 79 deletions

View file

@ -7,27 +7,30 @@ use Carp 'confess';
use WebGUI::Asset;
use WebGUI::AdminConsole;
#----------------------------------------------------------------------------
sub configurationComplete {
my $self = shift;
return $self->session->setting->get('newsletterReturnDomain') ? 1 : 0;
}
#----------------------------------------------------------------------------
sub getAdminConsole {
my $self = shift;
my $session = $self->session;
my $url = $session->url;
my $i18n = WebGUI::International->new( $session, 'MailingManager' );
my $ac = WebGUI::AdminConsole->new( $session );
$ac->addSubmenuItem( $url->page( 'newsletter=manage' ), 'Manage mailings' );
$ac->addSubmenuItem( $url->page( 'newsletter=manage;func=settings' ), 'Newsletter settings' );
$ac->addSubmenuItem( $url->page( 'newsletter=bounce;func=bounceReport' ), 'Bounce scores' );
$ac->addSubmenuItem( $url->page( 'newsletter=manage' ), $i18n->get( 'manage mailings' ) );
$ac->addSubmenuItem( $url->page( 'newsletter=manage;func=settings' ), $i18n->get( 'newsletter settings' ) );
$ac->addSubmenuItem( $url->page( 'newsletter=bounce;func=bounceReport' ), $i18n->get( 'bounce scores' ) );
return $ac;
}
#----------------------------------------------------------------------------
sub getMailables {
my $self = shift;
@ -37,6 +40,7 @@ sub getMailables {
} );
}
#----------------------------------------------------------------------------
sub new {
my $class = shift;
my $session = shift || confess 'No session passed';
@ -44,10 +48,12 @@ sub new {
bless { _session => $session }, $class;
}
#----------------------------------------------------------------------------
sub session {
return (shift)->{ _session };
}
#----------------------------------------------------------------------------
sub www_createMailing {
my $self = shift;
my $session = $self->session;
@ -66,10 +72,12 @@ sub www_createMailing {
return $mailing->www_edit;
}
#----------------------------------------------------------------------------
sub www_settings {
my $self = shift;
my $session = $self->session;
my $setting = $session->setting;
my $i18n = WebGUI::International->new( $session, 'MailingManager' );
my $f = WebGUI::HTMLForm->new( $session );
$f->hidden(
@ -83,19 +91,20 @@ sub www_settings {
$f->text(
name => 'newsletterReturnDomain',
value => $setting->get( 'newsletterReturnDomain' ),
label => 'Newsletter domain name',
label => $i18n->get( 'Newsletter domain name' ),
);
$f->integer(
name => 'newsletterBounceScoreThreshold',
value => $setting->get( 'newsletterBounceScoreThreshold' ),
label => 'Bounce score threshold',
label => $i18n->get( 'Bounce score threshold' ),
);
$f->submit;
return $self->getAdminConsole->render($f->print, 'Newsletter settings')
return $self->getAdminConsole->render($f->print, $i18n->get( 'newsletter settings' ) );
}
#----------------------------------------------------------------------------
sub www_settingsSave {
my $self = shift;
my $session = $self->session;
@ -108,10 +117,12 @@ sub www_settingsSave {
return $self->www_settings;
}
#----------------------------------------------------------------------------
sub www_view {
my $self = shift;
my $session = $self->session;
my $url = $session->url;
my $i18n = WebGUI::International->new( $session, 'MailingManager' );
return $self->www_settings unless $self->configurationComplete;
@ -165,7 +176,7 @@ sub www_view {
my $var = { newsletter_loop => \@newsletterLoop };
my $template = WebGUI::Asset::Template->new( $self->session, 'FTfNhWI8KJOwLzFUl5rYeQ' );
return $self->getAdminConsole->render( $template->process( $var ), 'Manage newsletters' );
return $self->getAdminConsole->render( $template->process( $var ), $i18n->get( 'manage mailings' ) );
}
1;