From 6c0e8b8e472b796ab0d650a10eb02bbaf8505e42 Mon Sep 17 00:00:00 2001 From: Martin Kamerbeek Date: Wed, 9 Jun 2010 12:23:23 +0200 Subject: [PATCH] Add returnUrl to to process mutation template. --- lib/WebGUI/AssetAspect/Subscriber.pm | 23 +++++++++++++++++- .../root_import_personalnewsletter.wgpkg | Bin 3694 -> 3699 bytes 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/lib/WebGUI/AssetAspect/Subscriber.pm b/lib/WebGUI/AssetAspect/Subscriber.pm index 5406ea3..272e14a 100644 --- a/lib/WebGUI/AssetAspect/Subscriber.pm +++ b/lib/WebGUI/AssetAspect/Subscriber.pm @@ -8,6 +8,7 @@ use Carp; use WebGUI::Asset::Template; use WebGUI::Macro; use Tie::IxHash; +use URI; #---------------------------------------------------------------------------- sub definition { @@ -226,6 +227,21 @@ sub getSubscriptionGroup { return $group; } +#---------------------------------------------------------------------------- +sub getReturnUrl { + my $self = shift; + my $referer = $self->session->env->get('HTTP_REFERER'); + + return unless $referer; + + # Get path and strip leading and trailing slash if it exists. + my ( $path ) = URI->new( $referer )->path =~ m{ ^/ (.*?) /?$ }xms; + + return $referer if WebGUI::Asset->urlExists( $self->session, $path ); + + return; +} + #---------------------------------------------------------------------------- sub getEmailVars { my $self = shift; @@ -498,7 +514,12 @@ sub www_processSubscription { return $self->processStyle( $i18n->get( 'anonnymous not allowed' ) ); } - return $self->processStyle( $self->processTemplate( {}, $self->get('confirmationRequiredTemplateId') ) ); + my $var = { + assetUrl => $self->getUrl, + returnUrl => $self->getReturnUrl, + }; + + return $self->processStyle( $self->processTemplate( $var, $self->get('confirmationRequiredTemplateId') ) ); } #---------------------------------------------------------------------------- diff --git a/sbin/packages/root_import_personalnewsletter.wgpkg b/sbin/packages/root_import_personalnewsletter.wgpkg index e7ddbd654120c1c4639976b484c38efd0fe0b46b..a96e715f939d9a3ebf384ee7753971a2b5f75cb5 100644 GIT binary patch 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 literal 3694 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