Make newsletter settable

This commit is contained in:
Martin Kamerbeek 2010-12-15 17:19:42 +01:00
parent 0d1b0fe7ac
commit 3ffb43bd68

View file

@ -15,12 +15,15 @@ sub getAvailableMailings {
my $self = shift; my $self = shift;
my $session = $self->session; my $session = $self->session;
my $availableMailings = WebGUI::Asset->getRoot( $session )->getLineage( ['descendants'], { my $mailingIds = $self->get( 'includeMailings' );
returnObjects => 1,
isa => 'WebGUI::Asset::Wobject::NewsletterCollection',
} );
return $availableMailings; my @mailings =
grep { defined $_ }
map { WebGUI::Asset->newByDynamicClass( $session, $_ ) }
ref $mailingIds eq 'ARRAY' ? @{ $mailingIds } : $mailingIds
;
return \@mailings;
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
@ -49,22 +52,32 @@ sub apply {
return; return;
} }
##------------------------------------------------------------------- #-------------------------------------------------------------------
#sub crud_definition { sub crud_definition {
# my $class = shift; my $class = shift;
# my $session = shift; my $session = shift;
# my $definition = $class->SUPER::crud_definition( $session ); my $definition = $class->SUPER::crud_definition( $session );
# my $i18n = WebGUI::International->new( $session, 'Registration_Step_Homepage' ); my $i18n = WebGUI::International->new( $session, 'Registration_Step_Homepage' );
#
# tie my %mailings, 'Tie::IxHash', (
# $definition->{ dynamic }->{ urlStorageField } = { map { $_->getId => $_->getTitle }
# fieldType => 'selectBox', @{
# label => 'Store homepage url in field', WebGUI::Asset->getRoot( $session )->getLineage( ['descendants'], {
# options => \%profileFields, returnObjects => 1,
# }; isa => 'WebGUI::Asset::Wobject::NewsletterCollection',
# } )
# return $definition; }
#} );
$definition->{ dynamic }->{ includeMailings } = {
fieldType => 'checkList',
label => 'Store homepage url in field',
options => \%mailings,
vertical => 1,
};
return $definition;
}
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub getSummaryTemplateVars { sub getSummaryTemplateVars {
@ -119,7 +132,7 @@ sub getViewVars {
} }
else { else {
# The step hasn't been done yet. # The step hasn't been done yet.
@subscribeMailings = grep { $_->isSubscribed( $user ) } @{ $availableMailings }; @subscribeMailings = map { $_->getId } grep { $_->isSubscribed( $user ) } @{ $availableMailings };
} }
# Create lookup table # Create lookup table
@ -171,10 +184,7 @@ sub updateFromFormPost {
my $self = shift; my $self = shift;
my $session = $self->session; my $session = $self->session;
$self->SUPER::updateFromFormPost; return $self->SUPER::updateFromFormPost;
# $self->update( {
# } );
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------