From 745addd5d167ade07ca2ae212cefd6842c4c19af Mon Sep 17 00:00:00 2001 From: Martin Kamerbeek Date: Thu, 18 Nov 2010 15:21:44 +0100 Subject: [PATCH] Template confirm mutation screen. --- lib/WebGUI/AssetAspect/Subscriber.pm | 24 +++++++++++--- .../i18n/Dutch/AssetAspect_Subscriber.pm | 13 +++++--- .../i18n/English/AssetAspect_Subscriber.pm | 14 ++++---- sbin/install_newsletter.pl | 30 ++++++++++++++++++ .../root_import_personalnewsletter.wgpkg | Bin 3699 -> 4068 bytes 5 files changed, 66 insertions(+), 15 deletions(-) diff --git a/lib/WebGUI/AssetAspect/Subscriber.pm b/lib/WebGUI/AssetAspect/Subscriber.pm index 204ffbd..e02f616 100644 --- a/lib/WebGUI/AssetAspect/Subscriber.pm +++ b/lib/WebGUI/AssetAspect/Subscriber.pm @@ -87,6 +87,13 @@ sub definition { namespace => 'Subscriber/NoMutationEmail', tab => 'subscription', }, + confirmMutationTemplateId => { + fieldType => 'template', + defaultValue => 'WUk-wEhGiF8dcEogrJfrfg', + label => $i18n->get( 'confirm mutation template' ), + namespace => 'Subscriber/MutationConfirmation', + tab => 'subscription', + } ); push( @{ $definition }, { @@ -527,21 +534,30 @@ sub www_confirmMutation { ] ); + my $var = { + message => $i18n->get( 'wrong code' ), + returnUrl => $self->getUrl, + isSuccess => 0, + "is$type" => 1, + }; if ( $userId ) { $self->logConfirmation( $code ); if ( $type eq 'subscribe' ) { $self->getSubscriptionGroup->addUsers( [ $userId ] ); - return $self->processStyle( sprintf $i18n->get( 'subscription successful'), $self->getUrl ); + + $var->{ message } = sprintf $i18n->get( 'subscription successful'), $self->getUrl; + $var->{ isSuccess } = 1; } elsif ( $type eq 'unsubscribe' ) { $self->getSubscriptionGroup->deleteUsers( [ $userId ] ); - return $self->processStyle( sprintf $i18n->get( 'unsubscription successful' ), $self->getUrl ); + + $var->{ message } = sprintf $i18n->get( 'unsubscription successful' ), $self->getUrl; + $var->{ isSuccess } = 1; } } - return $self->processStyle( $i18n->get( 'wrong code' ) ); - + return $self->processTemplate( $var, $self->get('confirmMutationTemplateId') ); } #---------------------------------------------------------------------------- diff --git a/lib/WebGUI/i18n/Dutch/AssetAspect_Subscriber.pm b/lib/WebGUI/i18n/Dutch/AssetAspect_Subscriber.pm index ee759a2..e6e8995 100644 --- a/lib/WebGUI/i18n/Dutch/AssetAspect_Subscriber.pm +++ b/lib/WebGUI/i18n/Dutch/AssetAspect_Subscriber.pm @@ -3,7 +3,7 @@ package WebGUI::i18n::Dutch::AssetAspect_Subscriber; use strict; our $I18N = { - 'Subscription group' => { + 'Subscription group' => { message => 'Abonnee groep', }, 'Enable subscription' => { @@ -24,7 +24,7 @@ our $I18N = { 'confirmation email template' => { message => 'Verificatie email: sjabloon', }, - 'no mutation subject' => { + 'no mutation subject' => { message => 'Geen wijziging email: onderwerp', }, 'no mutation template' => { @@ -52,16 +52,19 @@ our $I18N = { 'anonnymous not allowed' => { message => 'Anonieme inschrijvingen zijn niet toegestaan. Log in om in- of uit te schrijven.', }, - + 'subscription successful' => { - message => 'Uw inschrijving is geslaagd. Terug naar de site', + message => 'Uw inschrijving is geslaagd.', }, 'unsubscription successful' => { - message => 'Uw uitschrijving is geslaagd. Terug naar de site', + message => 'Uw uitschrijving is geslaagd.', }, 'wrong code' => { message => 'De verificatiecode in de link is onbekend, al gebruikt of verlopen. Als u zich wilt in- of uitschrijven probeer dit dan opnieuw of neem contact op met de websitebeheerders.', }, + 'confirm mutation template' => { + message => 'Mutatie bevestigings template', + }, }; 1; diff --git a/lib/WebGUI/i18n/English/AssetAspect_Subscriber.pm b/lib/WebGUI/i18n/English/AssetAspect_Subscriber.pm index f330260..cc5b9e5 100644 --- a/lib/WebGUI/i18n/English/AssetAspect_Subscriber.pm +++ b/lib/WebGUI/i18n/English/AssetAspect_Subscriber.pm @@ -3,7 +3,7 @@ package WebGUI::i18n::English::AssetAspect_Subscriber; use strict; our $I18N = { - 'Subscription group' => { + 'Subscription group' => { message => 'Subscription group', }, 'Enable subscription' => { @@ -24,7 +24,7 @@ our $I18N = { 'confirmation email template' => { message => 'Confirmation email template', }, - 'no mutation subject' => { + 'no mutation subject' => { message => 'No mutation email subject', }, 'no mutation template' => { @@ -34,7 +34,6 @@ our $I18N = { message => 'Subscription', }, - 'subscribe' => { message => 'Subscribe', }, @@ -52,17 +51,20 @@ our $I18N = { 'anonnymous not allowed' => { message => 'Anonymous subscription is not allowed. Please log in to (un)subscribe', }, - + 'subscription successful' => { - message => 'You are succesfully subscribed. Back to site', + message => 'You are succesfully subscribed.', }, 'unsubscription successful' => { - message => 'You are succesfully unsubscribed. Back to site', + message => 'You are succesfully unsubscribed.', }, 'wrong code' => { message => 'The verification code you supplied is either unknown, already used or expired. Please try again to (un)subscribe or contact the site administrators.', }, + 'confirm mutation template' => { + message => 'Mutation confirmation template', + }, }; 1; diff --git a/sbin/install_newsletter.pl b/sbin/install_newsletter.pl index 2d07aea..ced5510 100644 --- a/sbin/install_newsletter.pl +++ b/sbin/install_newsletter.pl @@ -34,9 +34,39 @@ renamespaceTemplates( $session ); addSpecialStateTable( $session ); addListNameColumn( $session ); addRegistrationSteps( $session ); +addConfirmationTemplateColumn( $session ); finish($session); +#---------------------------------------------------------------------------- +sub addConfirmationTemplateColumn { + my $session = shift; + my $db = $session->db; + + print "\tAdding column for mutation confirmation template..."; + + my $hasColumn = $db->quickScalar( 'show columns from assetAspectSubscriber where Field = ?', [ + 'confirmMutationTemplateId', + ] ); + + unless ( $hasColumn ) { + $db->write( + 'alter table assetAspectSubscriber add column confirmMutationTemplateId char(22) binary not null default ?', + [ + 'WUk-wEhGiF8dcEogrJfrfg', + ] + ); + + $db->write( + 'update assetAspectSubscriber set confirmMutationTemplateId=? where confirmMutationTemplateId is null', + [ + 'WUk-wEhGiF8dcEogrJfrfg', + ] + ); + } + + print "Done.\n"; +} #---------------------------------------------------------------------------- sub addListNameColumn { diff --git a/sbin/packages/root_import_personalnewsletter.wgpkg b/sbin/packages/root_import_personalnewsletter.wgpkg index a96e715f939d9a3ebf384ee7753971a2b5f75cb5..badf6e3a000fa7dd735bb4ed6c0a7daf484507d6 100644 GIT binary patch literal 4068 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 WlJZglO9}i9CGbE0%_3m{WB>qmg!I4w literal 3699 zcmV-(4vg_1iwFP!00000|Lt6RbK*D>pTGB0=-Aq-yQ(EXFpy-qR3(|oBr|zGCO5O$ zOBpOciLo8Yh9q0_-LLhqC4)^M6PTM_n3{lXsnzP1x_{l0yz*xLpK`g}sMX%QDVHma zT3LUiG5AdFg-U1%mnxRsQ@5 zv`}E7Pwg%)pbhlGSTE zKvFPiY!{eiE)GLXH7T1h94a#O;oaW*{_ghe!ch!)2-m`5B!B7#J>vB+CE+D?cd6e$u_^W>VWW(LS(}m| zB);fRN;Pd5M(oJ$O9@=z*89u-jg2iX#f^nf$HG ziLtiRv%PNCNaQ2<(053O$T3r>tTrm^R&}khrb#G)eIi(n$%cLuCez|XjfkU+5z+Ts z#Kq??kS)6-!I2*Ve{DM!Ucr!SAA6CWnv;0oa)`v-DcAwb^?^C(#E?BFPf`WdT21$m zumhjZC^?H$iZewk#@YIMV|~5WSTz`=m=8+ddmGRAECItTfLWVpQ#T$lEa!7PyG1hw z`SAInYHAXDZTc95CmBtJc2|w}_v=r^tJCB5S>t5SYrng5+1bbaQ_U2gfLm_Rvs*X> zwYaXdZw6O{oj)>QZIoNWq_wnL@Wnh0B$4{z99yK)8oU%V!#xP%Yk~+;Y4AZUl{|IG#o7UZ4bN*EjqYkM{cOy zhp^4cQtw`Lj(S)7Yac%x4-cMpFWnmbj15=w0(dwH-NjlLeQye^hdA{7_jMrz$(GuT zT^BaFP=5AY)d3Vb=udtN8~_^d00CTH(RNAK1N<5K!EgNGSN^A25+nryaV?w-A`Z|` z=&1%cwPr{~S^k@UnqhDAh~Q|*T9n{Uvjo?1%gOVo-^Vob(N-IRm(&xu&@D7MioJ1t zKR{Yd;yP($oFNBMf5-ycgDyw{1DhhkScG@{$O|`(?ub5!Zt#Y9Ie`v0n=Oh;NgGKi z8}%ser07DV!3qA3TKJCK-l0F5C3}YI7!W<6@R-C9Q$->r#8T)a%os8eeHs-9??~ji zm@#y7v%7zGesObSRHjH^cj$u{)Mx(C5C;ffS5GQQJvy7sjP4u!YgsE9azU7!$8^lD z@q53cEXqo-QmkC4=#S|t$`JO@CJ=6Pm2A5hLPd-z>dV{N^kff6CoYv1EoYT~a>hn$ zQ#Hvpnx&Qy-YCD#2ow#I?mCo|`1DBzxZ*6`rcu%*BXwgM=ORkjP_+0M79f9fWwiOY zLefpZybyIdk&E^4iVK zG3%SZvz6Vpy*750vg}Ta;yVnsDNE@wF*R06M~Ef9YknL3JdJRa-${`2kKe_8$Hlp# z;9|*^yn`VZf|cau#bmkXlQL`p|EbAbhy0(ZnrvPI9#G+-Vn!KM%qNCP%cK+k&ZftQ zZ9o}FSnf4J}M`m`?-Z$=i^gM268%C^k7DQ{nr`qllOl&?~wR|i3bTtuHj^M9s6 z{04{cUt{Rr%z^A28E3(BaZf{XeyL%&nB>yxWWsJqbQ*}QO_zd$0#Z+cdRZ7cv%KMG zcpVLz5wH(9Rf8%6A%R(sp`9j~8SwOc@bf4yGUjv$rae{NARSv3)Eubj@^ z=j4B_#pQpIRjG`w|65jdx&EJ%v3=d!%lxn0Cm`kq&uZvN_RV_$N-Eh~Z2Mk^(7sr* zEmC|R5jwWqs#3sCB|MD=#bftm*nO&>cn9tKVsA?`HP;kyuzB1^eFFK`h}=Oaiw3?= z?|gvvXu$V}cxVXsY!5}q@1tml`VoYV1oNUTJb=)bK%o`%)`rbgK1My~6CEsX5^wiUsa`)3?a8^I6gnQ-7!}Tv; z);r}#*yEP$XPWz-5zDGoE0(c$>Gd$>>mrmTwRuV)2me@QLwklcf8 z0lgvY40j{fmWwjm0PL}`1}us|K*K`5O?Pwj318|E4}KN!TM))BlPietG3+k_YJ0F^ zUOL1B*nB*c<>ac5S|#E&FNZQ@upNpSY_dSMtC|8fZP?x6d;2WGFPjhpz^-E0L@|Kn zUEOFzLgRj_5gy$j!26!wWMcG1Xy!&Hm{&MI{J)`$?-B_ZFn;z(09<~hY8k=AOp$=+ zt8mX(p`4b*t3?6kzVsJF0TWpKF(QC54J|eTIPwogK<|6+c)ngMct-G_V@qCaM~vy5 zX+LzLcdj;L2794Jry>8*PIYhVaLcX-YX=8@u~;j5hj@``{{`TGGl@DW0I=)>-0vRJi{0M)D!%X58n-*aG5|;d06*wr zNb$oe0W3d25W!ag;6lQK#RmoGBdkRrSd-uj84wNGHhhaU3(g;Guu89sY{WrC)|O;7 zMAUl3cCwhlmm%VM8dQ9r&2Gk-v6loNR&9OF$T!Xue3&yxMul1!uN8e%D%Ev^>NhSz zjKujrO8haRq{YS`<_g4LCIXqa(V8JDnblxr?vR^gsr2;GVb9*h#nW)_{PV%bVj~z< z!jJ5B?{Tp!9T50fhVfd4JsMi(;Q!hJ@qfK;HOBJ)wdykeueCJ4UrYQyNBpl37Qz-F z*M%2XK+byd5m5W{r_Z~A-?2Xr`e&d0y`fuuuu|4?<~M{Wpv8Cmi(O9Umj3h+P=^fE z@yz6{6*~#v5@qvEmuk&o4?n=!LKL6*)1B3IAiFM(yQ*`59LNIr<(u8%kRWl!NOF4O zd}#JF*pQ>qaDw_7oJRz?t^jK*w$mrxv6mc7(Jg@63aRfh@kl2OV{DyJGhc9{$@Hpf zTQKjx+H_umo1#alMFnvuPJkNkInlJZlw+Y81&p(j;+Tz~!J9M6Xd?e87GZl?@)nh1 zQ9mj{0}~nJM48<8Azs14PbA!Q;E$-KJD@hS%Z=`BdA^lv5c+-O%TuomJz_ZTl$M0r z**+#(ira9o92S@0xa^HVPxMqA2{885^V(Vt5Zv)KDPCVP88*2X#Q|d&N-Z7;(hXDz z9uV_g;-H`54N||Mz;+y17lH@n;2~GQd}zdk=6l`rSuZs`3_Wt1 zBge9mvtH@R)D*){1HtbTsv3u?W)D?sa44&>KI=M}apY;-0BU)>Rr z53e63EcWjR@GMiS?$Z9!rNQx28; z4qYv_KKy3lM0G{&-Zq7`&vu%coZ%0F9=GA6RP#Nbq>|WF?V+;0og%C(WWsWWhm+4n zO?gry@oF#fXOax>RqVsY`fXV4QE7lv9rsbZzhnMs`vrX>f7+>|eRss9-fYl?S% zo=gvt5ig_D4PW-{b`)Gay}KdKs=fWG`{BOYN#)Szd|1a?Yt&XNb2+Rtzc6q~c`1RV R1pbB+_#d*wNwxr5000dFG(P|U