From 4a9cbfd91c74b0c033e715210901c378f75c89c6 Mon Sep 17 00:00:00 2001 From: Martin Kamerbeek Date: Wed, 19 May 2010 17:42:49 +0200 Subject: [PATCH] Refactor preview --- lib/WebGUI/AssetAspect/Mailable.pm | 52 ---------------- lib/WebGUI/Mailing.pm | 57 ++++++++++++++++++ lib/WebGUI/Mailing/Admin.pm | 10 +-- .../root_import_personalnewsletter.wgpkg | Bin 1891 -> 1904 bytes 4 files changed, 62 insertions(+), 57 deletions(-) diff --git a/lib/WebGUI/AssetAspect/Mailable.pm b/lib/WebGUI/AssetAspect/Mailable.pm index 6fd9790..c38315a 100644 --- a/lib/WebGUI/AssetAspect/Mailable.pm +++ b/lib/WebGUI/AssetAspect/Mailable.pm @@ -141,57 +141,5 @@ sub processContentAsUser { # return $self->processStyle( $f->print ); #} -#---------------------------------------------------------------------------- -sub www_previewContent { - my $self = shift; - my $form = $self->session->form; - - my $issueId = $form->get('issueId'); - my $userId = $form->get('userId'); - - return $self->processContentAsUser( $issueId, $userId ); -} - -#---------------------------------------------------------------------------- -sub www_previewEmail { - my $self = shift; - my $session = $self->session; - my $form = $session->form; - - my %recipients = - map { $_->getId => $_->username } - map { WebGUI::User->new( $session, $_ ) } - @{ $self->getRecipients }; - - my $issueId = $form->get('issueId'); - my $userId = $form->get('userId') || ( %recipients )[0]; - - my $userSelection = - WebGUI::Form::formHeader( $session ) - . WebGUI::Form::hidden( $session, { name => 'func', value => 'previewEmail' } ) - . WebGUI::Form::hidden( $session, { name => 'issueId', value => $issueId } ) - . WebGUI::Form::selectBox( $session, { - name => 'userId', - options => \%recipients, - value => $userId, - } ) - . WebGUI::Form::submit( $session, { value => 'Switch' } ) - . WebGUI::Form::formFooter( $session ); - - my $url = $self->getUrl("func=previewContent;issueId=$issueId;userId=$userId"); - - return < - - - - $userSelection - - - -EOHTML -} - 1; diff --git a/lib/WebGUI/Mailing.pm b/lib/WebGUI/Mailing.pm index eb4fdbf..cb96cd4 100644 --- a/lib/WebGUI/Mailing.pm +++ b/lib/WebGUI/Mailing.pm @@ -166,6 +166,63 @@ sub www_edit { return WebGUI::Mailing::Admin->new($session)->getAdminConsole->render( $f->print, 'Configure mailing' ); } +#---------------------------------------------------------------------------- +sub www_previewContent { + my $self = shift; + my $form = $self->session->form; + + my $issueId = $self->get('issueId'); + my $userId = $form->get('userId'); + + return $self->getAsset->processContentAsUser( $issueId, $userId, $self->get('configuration') ); +} + +#---------------------------------------------------------------------------- +sub www_previewEmail { + my $self = shift; + my $session = $self->session; + my ( $form, $url ) = $session->quick( 'form', 'url' ); + + my $asset = $self->getAsset; + my %recipients = + map { $_->getId => $_->username } + map { WebGUI::User->new( $session, $_ ) } + @{ $asset->getRecipients }; + + my $userId = $form->get('userId') || ( %recipients )[0]; + + my $manageUrl = $url->page('newsletter=manage'); + my $contentUrl = $url->page( "newsletter=mailing;func=previewContent;userId=$userId;id=".$self->getId ); + my $subject = $asset->getSubject( $self->get('configuration') ); + + my $userSelection = + WebGUI::Form::formHeader( $session ) + . WebGUI::Form::hidden( $session, { name => 'newsletter', value => 'mailing' } ) + . WebGUI::Form::hidden( $session, { name => 'func', value => 'previewEmail' } ) + . WebGUI::Form::hidden( $session, { name => 'id', value => $self->getId } ) + . WebGUI::Form::selectBox( $session, { + name => 'userId', + options => \%recipients, + value => $userId, + } ) + . WebGUI::Form::submit( $session, { value => 'Switch' } ) + . " Return to newsletter manager" + . WebGUI::Form::formFooter( $session ); + + return < + + + + $userSelection + Subject :$subject + + + +EOHTML +} + sub www_editSave { my $self = shift; my $session = $self->session; diff --git a/lib/WebGUI/Mailing/Admin.pm b/lib/WebGUI/Mailing/Admin.pm index 526e0a9..1e61d5c 100644 --- a/lib/WebGUI/Mailing/Admin.pm +++ b/lib/WebGUI/Mailing/Admin.pm @@ -122,10 +122,11 @@ sub www_view { push @mailings, { %{ $mailing->get }, status => $mailing->getStatusLine, - sendTestUrl => $url->page('newsletter=mailing;func=sendTestEmails;id='.$mailing->getId), - sendUrl => $url->page('newsletter=mailing;func=sendBatch;id='.$mailing->getId), - editUrl => $url->page('newsletter=mailing;func=edit;id='.$mailing->getId), - deleteUrl => $url->page('newsletter=mailing;func=delete;id='.$mailing->getId), + sendTestUrl => $url->page('newsletter=mailing;func=sendTestEmails;id='.$mailing->getId ), + sendUrl => $url->page('newsletter=mailing;func=sendBatch;id='.$mailing->getId ), + editUrl => $url->page('newsletter=mailing;func=edit;id='.$mailing->getId ), + deleteUrl => $url->page('newsletter=mailing;func=delete;id='.$mailing->getId ), + previewUrl => $url->page('newsletter=mailing;func=previewEmail;id='.$mailing->getId ), }; }; @@ -133,7 +134,6 @@ sub www_view { %{ $issue->get }, url => $issue->getUrl, createMailingUrl => $url->page("newsletter=manage;func=createMailing;assetId=$letterId;issueId=$issueId"), - previewUrl => $letter->getUrl( "func=previewEmail;issueId=$issueId" ), editUrl => $issue->getUrl( 'func=edit' ), sendUrl => '', sendTestUrl => '', diff --git a/sbin/packages/root_import_personalnewsletter.wgpkg b/sbin/packages/root_import_personalnewsletter.wgpkg index f8d796ff3b94cd9864bd4b8ab0d36b66e45639f8..4940c61b94284c24b34392a4332bfaa4769cf558 100644 GIT binary patch delta 1897 zcmV-v2bTEb4)6|;9Dlh%*2@gEP}l+u5SHC39Y(Q5BJgb`nLs=I_dSwqOHS-0%h1aM z?hLVY`E+zHI-gEouYLW;w(VZ0v$kg2&0fdWzgGU(Yt3d0`s`M#(_FKf&1TnLvtY{C ze-g$K1ZqSdWypY5skE!=eRxcz=TYfZlDlwcRs6NX_4} zd)*oPw|d>yn)OYz__gf+`U#5q4pY9o0xQ%Qk0=`Bn$@>He)>%|#WadBgal@yRSpv) zJ;GuiJq!u=^um-T1(G^2;>SZPDVaq z6YS~E5Kk{i=zm31Im^}^>>-R|M&{SS_ne}AjJzQlvjK8%0S;Cy$Wj<1kuT|GsKKLY zi0L`Q^gzxvrA??WC(tP34HAg$Hb7GlG{^^GnU6WgR6`-gFi&CV{qFv|U~lK<{uKFt z-<`D2uY!%S9!uDOMm*vVvC@aJUBdQ>=iyMUZ77|=`hOp&2P+D#ZlAr;Xm^AWFzg%T zPVkTfI7+x2)au#>@R&wPeBkYRMD;e;H3H)gJ|5x#OwMt-hrteqZ+T+mf4T-92`88m zeop;88U+JHaj1ZeF&<_vB{3(F+)u$YF1QgpMuF161s=USKj`F6C2b{L6>Qc+wmoT*yrXMdZUz0J)|Z`}}(V&Rlg_%@69G6h2v zK-A{e)Qcw!t9Z_$TP|b3^X0B;S`vpYeTey>WGRluslUJ5{9L~{`QV=R2K%AAd+W2) z_Xj6hC=r0$emp@V%)uG72En(`kM5Fn$R4OV{vw8f;Q*@aIV;OaM zz<)}6=D{joj3AFG3AvDAMUMn_Rud`W@zvvZNLVjRKC1@i&q~$uoGcI!7x2HP-D$UG z_+Pu-hHHTRtUIj$d*Oe;+_H1?3ULl>0n!MUxgjHitMkKe%K-~Cu7c{V#uMe){LCD% zq3K{fKp|uqTKDiZN_?)eSbW;IM{gq=ZERx=e={kL;t}>s(AuET*U4& ztINGRlIvN5dj4?<4sp*LE@PLqEuoa3LqFYs#XakbXo3V_-H8hVq`W%v$v6c5$)osp z(fKI;I1LFY0pzz#G8XXwKgUZK5NHmka;$h4kHaTh#{?%+HlhSyI}P~GR?hpAAb-HL zv}@ai%S)jLKJ*HXV6j(z6vdV{ll;yXnHR{jXf$Op3SkQh;0{rXFqYsqQ4;bkV>@yW zavNeHF;23>EoVfnM!rTq3Rx41uM4RQJ^*MBr{QP8B)Ea4*D|T7hcTc+OAtx)36J z%7tM#^oE#ac7Xt5JW0ScpiN_C7~;1YClx8f(9`Sng31MolYk#UOkQ&FC4U~n*6Ch~ z);31^WM-~H$S{O!tLwzvvc-Yq+CmVNcerw#82^iP2KQAj@v&$9I%}y6Q2dr_#zmov z{Zu#VLuUqcY9q8u~LCU7dEUT#ciy&v)pD`xdJZ0;OS-8-?{$r>%gt8mZ8&?&6jt{rJfP@WYU%l@|Ws}rB!(i%3Wrl`9=@Bm*%=b2kgb2L`3d zt3lLM>l{Io8!8YoM?gH0go(N3r+lKgrb)D_aAYgv@~pjJ;$qSyohCp?#xnJ$pE4iH z)T+Ew+_Q>Zxxb3`nUtwZtvg*dj_TAtJvyE4A8nl6?hO7-3isb{P)ObE8mX{QNL}{7 jH+gwl9_;o@k+h=Z_R{>Kffo(@7#jEwy8!GT03-ka+!>+N delta 1884 zcmV-i2c!7#4&x4x9Dn2jSuZn`5?~87g|O^S=`e~d5`k|c$pqTrzweP`TXJG2DMK$0 zxHH7Eq)$iZqVwtW_1d?8Y}@X(+iPpK-R!n){cGiqz1D1QbX(nSr?cK(vzpCyyR~M) zlyCnej3Wx71&DGIR7jxtvlF57{!dtuY>P7MF$vpLo{XslSuBTU>Xa zA=dBAn3FDhMm{SOY_!{YhlCwPBBE3j7Yt{rR)6~0)>e0GtKD5U1f*CvWfZ>6BEC$) z5Cssmxi$6T3BxL$v*?z~81Q_#tD2U?p-UfPJ}6m=qjBo*`&*yu7a!icr`^Fp=-ir9Jatl`lq+$CQLz$grYEHk-|wND+^(9)Cc>dRg*WH86ixsxQyU0s(OW|7+Uq zjrJ`6Yjrv={O?%}T>+-}Uv_R@AmI&FiO+TVkY{sxQul|~Cx4TR!_9Ypzn>m`?w|W@`X4q@%@gS1B6gQq zUGCkHT+b5J^RLSq2hBEI#x85yLMgw7e!2mRd)6262@-&HCoTw(^6JPZ;}G~KkK#W? z=cD-JG$f=1kZqY{EaCxvj+ZVV&>T+XSn)0%hflUo2u`MKL0`Q|X!nfq+*81c$&{s^y!03U6XAo0NQ;32R z8{Er*i>O+ z*QS^mj=2x=Jf1cDFXX!u~_A+c^HZYI9*LO7Oz$rJo~p8X~x4W8Gl072yu6!#WRJ<-XZA4i9@bS9LH&-{*(VsLwfv z(@32+n@~7XpfPuP6<}tep)IaV+d7f2QukO`+Zd*oR}HzisG*3u9&O&g=ZkD*rH$75 zrrqA`Xo!_c8@i-n9V=F2y`5z>%L)~6^#$)NyZFx39&GczzOZOftbcv1A|%|Bp~5HG z&rF#qGexg=Fg!lWT3SyFsvv}A$`JK9qY7Y}N3OYId1TH=PcM(KNi;nS`w^s9=(MuV&%3N=jLvlV6G~vL`s?W5ykw3eG5~Ss6c+ z-!vx_P0a&kkQ*6mmVfst&{a6z97U0wZV~+`BXOnUjRRcF(X36JZor*1Z8a#G`Z`C= z%+Jgu2x+QemNly6pdL^1`${*zK3{XhpT@ W<@1XMUNrDCY2bg1>D