From 43dd3d21697506098be31d819b95e829962ffb3a Mon Sep 17 00:00:00 2001 From: decabeza Date: Tue, 21 May 2019 11:22:04 +0200 Subject: [PATCH] Include mailer header logo on custom images list --- app/assets/images/logo_email.png | Bin 2605 -> 2781 bytes app/mailers/application_mailer.rb | 1 + app/models/site_customization/image.rb | 3 ++- app/views/layouts/_mailer_header.html.erb | 4 +++- .../admin/site_customization/images_spec.rb | 17 +++++++++++++++++ spec/fixtures/files/logo_email_custom.png | Bin 0 -> 3339 bytes 6 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 spec/fixtures/files/logo_email_custom.png diff --git a/app/assets/images/logo_email.png b/app/assets/images/logo_email.png index 09bc18d633b3b45b975fbb160b1f461f5f170bf8..e8ca37d379490f03318aff297123798f0093b250 100644 GIT binary patch delta 2071 zcmb7_dpr|*AIE`Tp~+*xI{occ!O1 zT3HFE1OQNW#-O|afY4TFPsO#X-Aq&Kb@lFf$T0_F^TYNQW_D%EyDr>)d5gMDiZb~NwsY)stK#Y)`V z09D<`!yWV9NB1aX;(n^`65Chp4ANGUVaHX zF>Tb)*ysvCh6x-AfV?6|1rVU32>?|7uOL$aAS`CqE1MXZFdh&eX%fLB#$0q7S?eBkVY1lm;>6qhh64awu^Xvlq%J9Sz(o%zb^Pv(21)#qd=^`?mA?v~k8dnFyzM^e* z2_t^B&Kd~1h7gIyh+6~u(mAF-HDIrfN95Bxxgg?O1by1S(Ifa?ellC>ifhVq$cCs4 z3tHYjYg5kGWobvOY)xCFF=^|89>G%`6T14jpMLji8R%Bs$;mimjg!?(l+r)4R>FNV zw9gP=Ndp_lzWLARk{k50Ntr^f8|mo2z`EjzHbpRvC23lQ#V7|=VB?OkL}BmRWp1-^ z;qTm&Hh-Sxvva&(&Z6nlI{Es_W8UnZ2Z#IP0#f^i91aRvwac zHY6H(wJhubm45B<9At1MC$4h7She1D?$akt%N~+ZoWmdf($JO?-;2-MtGOXUD zk7zg@WxKp;>N2Q*XAqXLzS(Xq#&nt)h$x&&xl7cb@vcz)Tv#XZ&-V=vYhJnK@|gM5mUBcrNbi&?gGqbZ&>f--Uo7H@;9!sIHr z?#ye!zkk@1+&P>8X(r4ePatl_nv8esU=_}Db73cKN@}w0U!W#)rOtK3f__yk&2;ge z+1GlhV6?TMYlV-K@&Y7`0Ur!+BDY72~ znd*&Ik0>4$oSU+p=Z2DC!@dK{q!*z>_t4v!QkqXI(+!^EHaUvLLlBokv=&Zj`0oW! z?ZQ5TNCafz_2o|MnlnXXzfIj|%-$JRdzAJBHb?w`zV+dCdX}8TjpS{nH)L?7nO0SR zKBjjT#y65jrlNvKZ!vzm5u2mPoyO)RXKX8Mgr5DHkv1<}Dy@~G6p1!1qz~=O?~{|n zdeK%lh`#sVyLB#Q@{%~+PshHrJn@|>ALU1l(0`WAU6wfk2**#qRWg2XG*jq8yHWL) z)Ah?}>D{`#T4CM{MJQDDA|ME6?DA4bcl6ib?i&&*w5&i%E9*noGs%+JJ>89OFU-F> zDSo6p-Zl}!F!@4hpvc@f19$L1gZZwv7dv%XO!Enmz!}-+E*|;kkl8}CtDRAlziHJe z#ZrjJ0h}yG`j1dH64uvU+xciI_-u6fZ*;|D+Okc4r6%Dl`Nfvn5Wh^BQvGc0(`1A? zL5BDjk2j}A$AeF$u27i zf4!LxEMon2^|%Ks*0CGnXA5vMXQHX9|9=8+~D3@XN*Jj1a3>v zFq$(sGtF{m^(W{Mj;*8dsXYZAij}og=aUrAqK>!UK4LcA&v+j2aOl-TPXV)UkKCuc zf1BpqUqbpJrSC%euA0B;=7*2|X0HDW5-%NW2752!x9CoZTEJ>KJG!GP?L#mA2@V&x AHUIzs delta 1895 zcmZ{lc{J1w7sr1yd5{Q`Nl}fNNK9ccBU`qaVXTEzmdLK`Ls|PNJC6tN*lDbDPc!fT=qX2>~vIII0nOZb0U zisB(%ko}X?4glPbNq8O0pegp_p}=XP&|95Wk%$1`zVE8{b^l&FOg;VI=2 z0l$?T-NF=^^(L{k4S0-yqaVfg*mNjO*f|s~4Q+=Cnl*6suWBAsikdiuy==P2O@3whN&#n#uGak%tsvhv#Ys<<9~Tl_K((2yTI z1*PVAIsFJ;6he^zgRE_0nt$xD$v|dkY@E@R8Fexz2EB{>xG=%kS8KY!EL^0~y#yBBjfU@eG`OrUZ5Y~~N71f*km_!(o67QQ&bc=HUq!~ZE4zbmVf)<5G8TbB z;o9d0ivU10NB@;MK1?6=Z4qJr;~2Z$VGVrzg1p&UjrVjbrx%@LS`a!({jLcr#$NJG zBX)=Hb&>ih3Pa7P&%PBgX$V$>$U2ITB5r4A>*wt?CPJ?EAFo4DvHsF!10k zMAz|K6^+E#M;Ha{6)G2LEl8^GL(hHiXJv%bH10-4J3A1LkBAWs*H@c?x&f2#Cl z5qtx$fH9QT?=^NI7N@eA@KN7K)hY1}59xx_4r?lJ74BLH0DH6^tdSJG|1j;|imug5 zwunAU{&c9Yf>4?+wsrYG(%`lcj4USkrT5LULf^qVibdPPUQfq;W>K&C@#e$ZzrkmW zp5_a4*6*_RM>V0afE=7^blD-mk#AQp>rU7>8KI^rQ#PRzJoj}Zsmt_%YUm6NEs)UW zaFy}AtRn;h1i;o?7Pm?geuCg!^b;=PcHeFcyI-lhQ0kKf#{&uiQ+&abt@@@po>BlPXinKM&bYxTwk)c=D!VWTDK=}%b6XpRIxc3EeK{3tvS-V~ z4XicDuKRUvNj_{{I$`n2{uw&)6=&UATq;p*;Q7z&>34gfQv80 zS_DtCa^3FJZeF0l_q&?!N_*waUS5nCwR~!k{_6NWQZzcFZGT6P*N$--SPP2|LtDB| z?h7J{ZJE!*k@3!GttRHAK4X!zFG4|63N8XiQ+^s_MO9Xna$;X>Wp_bk9K5CFIKf6pF}QRGueEURHOJ} zM54tEC6@{SL1*~uG8b#pVRz*=tZz`lvR*I>$kkln(nO;>OcFLyvLKNAorjvPc-Wzo ztys$tr$1V@epplInO1?s&GJ5$`93AN_dAFRtrV>s5#6uiSMWNi*-mK(3Q*$@94<$! zlysHHLdOGz8!Hm8j%X}4hmd^VOEC2_j(R>k+sz1!%N~o;uvCz0n^bo@ zzG-}d-;t`md|&Unh|7|mmVlB+7*Vy;y6+4ibn}-PXdniCf0?B2(SJkemskD+v%xkf ZKM;SnD}G5_H1Qw{kO-!Dny$m6zXADta>@Vz diff --git a/app/mailers/application_mailer.rb b/app/mailers/application_mailer.rb index f7928ff7e..f002cedd6 100644 --- a/app/mailers/application_mailer.rb +++ b/app/mailers/application_mailer.rb @@ -1,5 +1,6 @@ class ApplicationMailer < ActionMailer::Base helper :settings + helper :application default from: "#{Setting["mailer_from_name"]} <#{Setting["mailer_from_address"]}>" layout "mailer" end diff --git a/app/models/site_customization/image.rb b/app/models/site_customization/image.rb index 12a61dad8..c800e21b1 100644 --- a/app/models/site_customization/image.rb +++ b/app/models/site_customization/image.rb @@ -5,7 +5,8 @@ class SiteCustomization::Image < ApplicationRecord "social_media_icon_twitter" => [246, 246], "apple-touch-icon-200" => [200, 200], "budget_execution_no_image" => [800, 600], - "map" => [420, 500] + "map" => [420, 500], + "logo_email" => [400, 80] } has_attached_file :image diff --git a/app/views/layouts/_mailer_header.html.erb b/app/views/layouts/_mailer_header.html.erb index ee37d4be9..894ea9610 100644 --- a/app/views/layouts/_mailer_header.html.erb +++ b/app/views/layouts/_mailer_header.html.erb @@ -5,7 +5,9 @@ - <%= image_tag("logo_email.png", style: "border: 0; display: block; width: 100%;max-width: 370px", alt: setting["org_name"]) %> + <%= image_tag(image_path_for("logo_email.png"), + style: "border: 0;display: block;width: 100%;max-width: 400px", + alt: setting["org_name"]) %> diff --git a/spec/features/admin/site_customization/images_spec.rb b/spec/features/admin/site_customization/images_spec.rb index a8dd454a5..8a5a00c28 100644 --- a/spec/features/admin/site_customization/images_spec.rb +++ b/spec/features/admin/site_customization/images_spec.rb @@ -72,6 +72,23 @@ feature "Admin custom images" do end end + scenario "Image is replaced on admin newsletters" do + newsletter = create(:newsletter, segment_recipient: "all_users") + + visit admin_site_customization_images_path + + within("tr#image_logo_email") do + attach_file "site_customization_image_image", "spec/fixtures/files/logo_email_custom.png" + click_button "Update" + end + + visit admin_newsletter_path(newsletter) + + within(".newsletter-body-content") do + expect(page).to have_css("img[src*='logo_email_custom.png']") + end + end + scenario "Upload invalid image" do visit admin_root_path diff --git a/spec/fixtures/files/logo_email_custom.png b/spec/fixtures/files/logo_email_custom.png new file mode 100644 index 0000000000000000000000000000000000000000..af31d4d97646642123c4b41edb06a75731eb8a1f GIT binary patch literal 3339 zcmaJ@c|25m8$W1qOCiNX7&F?g%px)~&19LyzGT-jHO7g#%nV~NcJXe+mqu%5RedGc?poc!9{%GO@dHa9unKtAodBY43t-VX%A97(5!Qt%<=BFn9t63;%W@ zpxt<`#|SnQ+PA%+6$#crNm*rk-<6dYMs8%s4bT*jJkeE19w6I{l!{=!oJFP1>& zfeb#EXUFAwE_ct`oy+I?xO2VWWb#tCbl?^YCX2J=TPp82wIGk>2fEUDTsHh`eF&_7 z(V(M+!_n}x-8fw=1=6o;Kq2dpp|utjt4+mHFo~#m#G)ZF=%wcVt=Y>i zXo8l^@1qMXz7IdhfhL{@jW(h0Z5sgm6l6j%uoHBRW>`5W8OcPiuHB-KH;AYVzhmZb z?oO;ijNC>1@z$Th<-)Dt-r_=p^QwU4QPE0Fk{ktpylth9NTtfHYA8W%GGwAz?%cJY zoP#!tRe6C`xA&x3hy#F3qf!<0?#ajifWAIth=~EfiWPq|eu(^#@;&n1SOzaSzOwuy zvcw-AKi3;{csNB`b@d?V89zJtYi&?_SkZLF+`Fk+YQ}t+%Hq#67GB5@E{BkgH?EIr?BX{M@kC~|-20!WT zNn2N|53Iyg%rsMu${F47xOlBkw%b3T`&iB& z_Wvmt1Bh|qF@o#wm2|J?6wyNaus2Kly<^nR71OUADgA?y{P@Mjgqn{>`cd%{eRqwB!E~dXnK9>%^CP~8ABXIDPkFi*_Et4e z$mGPAiBJJ8TQ_EX3Y5@K;U`L@1_+ruA5FCAg;pz^Dkv!6QmA+1nKXjZ129!9qa${{H*iJvxyU39Mt2SCd9?qU_Y&1HSACVaj1Vb%r7K_R4*l_ zV$93J_(v8D(r~nLL5212wHYs)cOAH)z&LG`sk##}RQn+&`fx3*Ju$xPv{XoM32>k> z+I<}PUZ4uH54v~rTKc!{E{ku#IFH2x;+Bt)Oldo2#MPrhzqAV;`(>ov6FdxrcA9#32b1 zV;^4HZcdv$e-;o$h7bFwNJM*EG2dN8FJPc}U4&+pMx-%5Yy?0%KTrx3G`bX@SPoz<6Q zit&-~1kCIDlHV7&)2^l4&G*FanlN?JZHRVXf2E=H%)FJId7+&-J;)u^t5posDv0UZ!>lc@wU=i~w^F`n-;9$mGha_{o%KIDvshD? zRACjNB>Nb#!gX}=qJr4#^?-QWQSHvHH{4z(93CK3(#!3Q4ZF}C#MafCN7lM+&AcDl zn{KKd{KB?{**obMEoKq~y|KCB!%g|+a~-?I3*zd@G4gq+4{8LYh5Wf-x06pwE_Y@( z`c`GiDbmke;YtOyuFV{NN4(td>O_5_lS>IoRs&)HrL&t=FErk)h08n=A2!ynIU6CVds@iqtQ{Jo1FD?7ac+?*%0#j@id;p~>%R3E;|9sz9WxIcP!relChYin$*}Qj9}NfRH^*yQAp|B1hI7AkKfgUdI1_y} z;H%xwzhJ`y*S(=xu+o$; z$^GQKJJQv6Z&z;^u^p=MTW8i)wr09-D(==JmHi6uYfTRvGR;BC2PU*dJ3l@%CSN(+ z-x3=k@Qx_%v41un3a3%zY4A3oGGgSN)9`y&4agg>Q2F$Yv_&4SQ*(mI}{NS0hQVa9yVo4EQ7aH};F-B9W{d|)a-v?Ux|Yeo^?d0fZ! z4FzllGt7vdvL@pn*X8aNKkE@&wf_Eah>B4XS`| zj^#1^pH9QBWJVVm*3sFK#oI z$V^vX6{k$fmTns5|Tm--jlkf_oG?YO;g7XWg~&=$y2tUQ!z?w>6!=A zng^@t*0=9!4yp?)3cHM5-g#aMoni})70jTOp8uu+>j7Pr3xf^4(sb^l>P5XKw_f-c zwha1h?Q$yCOx-NskXLZm73hhSlmvh~Qm;iT0U$ga`l}F!{#llMa5%JBHhzfwkn%n9 n-S`2s#PW~GS6aR>Ok4^W-