From 887b48e0fb5bb294bc98ee3c9119271662c6c161 Mon Sep 17 00:00:00 2001 From: Nicolae Claudius Date: Sat, 22 Oct 2011 05:25:25 -0700 Subject: [PATCH] slides, samples, seeds, styles --- Gemfile | 7 +++-- app/assets/images/marketing/domains.jpg | Bin 0 -> 31394 bytes app/assets/images/marketing/hosts.jpg | Bin 0 -> 33103 bytes app/assets/stylesheets/pages/home.css.scss | 1 - app/assets/stylesheets/theme/public.css.scss | 1 + app/assets/stylesheets/theme/theme.css.scss | 1 + app/controllers/domains_controller.rb | 2 +- app/controllers/hosts_controller.rb | 2 ++ app/views/pages/home/_slides.html.erb | 29 ++++++++++--------- db/samples.rb | 14 +++++++++ db/seeds.rb | 2 ++ doc/README_FOR_APP | 3 -- lib/tasks/samples.rake | 9 ++++++ spec/factories.rb | 1 + 14 files changed, 52 insertions(+), 20 deletions(-) create mode 100644 app/assets/images/marketing/domains.jpg create mode 100644 app/assets/images/marketing/hosts.jpg create mode 100644 db/samples.rb create mode 100644 lib/tasks/samples.rake diff --git a/Gemfile b/Gemfile index 19d94bd..a31670e 100644 --- a/Gemfile +++ b/Gemfile @@ -34,10 +34,13 @@ end gem 'jquery-rails' # gem 'foreigner' ? -gem 'rspec-rails', '~> 2.6.1', :group => [:test, :development] -group :test do +group :test, :development do + gem 'rspec-rails', '~> 2.6.1' gem 'faker','~> 1.0.1' gem 'factory_girl_rails', '~> 1.2' +end + +group :test do gem 'capybara', '~> 1.1.1' gem 'database_cleaner', '~> 0.6.7' gem 'spork', '~> 0.9.0.rc' diff --git a/app/assets/images/marketing/domains.jpg b/app/assets/images/marketing/domains.jpg new file mode 100644 index 0000000000000000000000000000000000000000..38ebdf0fe3a789cd496576d66329ce61fbf698c5 GIT binary patch literal 31394 zcmb@t2UJsC*De}*??t-w-jR+-F98CC9*Tg3-m5f4s&ohmNR^V%dkIZJs&whni*y7O zL{t>G==*)|`~7G9=fC%kb2ftvcGg_aGuM3PT4U|CCpQZ>8vt^khPDO(0|Nt~b^8Oj zSq7*AaImnkv9WM&KX7nxaPf%o@oq0NA|e7}3NlJc3Ni``Dq5yHRMZSK6clu9bPUYQ zckkY%y2H-N&ceyWa+l>d2*zz!JX}0de0)+CY6@zW|KHcm8vq491`WnM76v;2lL7;a z0^_D1zyttbU}Iqb{^P>J#=*tF#KXUBH6sULU}9t9;NjsC;^E?AV%^?i0kCl>DA{nS z#FP#3sM(F|(qS}r#KAuBDLT_Jxp3mHV{!zWB z_oDGNptr#ExADQc{r!*Y78x7own>@-fO-2j4jvX37Br9#xwW!K`9i#xqNk#ttomNX;{*+b*L6j^JBTD?efGU%Jm|4#7!}^fkE= z-ye<{GT@bH)0!f*?AM{GNe=r`NnwZSr>RL2+ut;tjpXR1&B~3K3&P7H!LciRoY2K( ze3N~6NHOYQHlI1CbV6|h$nxSbJoG-@ryhO6Ovw9o>yjWf2Z*HW^!iM)|2S0 z4aKCek7>84PM_~;CAypu_LUqonwl%L@P{j_}YaWIFma6+H9lFG$dtJFoXEwW0;A>CX2 zIH6n+C>-~+Q{=^G*_zseP|f49h9{W&?iE4Hed1m^kpK$cIgrVS9rb})xEf{;7>T_j&iaZA05Gg$@gvm7vUd=wnP0( zi2Z7~ibDqF%JzQE+WifRw;}wmfZszpt34~68&`(K51UOc(dtDib228M3YbjYrz&on z&HGAQ_>*5r;H7Flxz-Yu*W~~QP*^7aUe??VKp~l@c{b@Y|C!g4*hWF#`*wQy;aAnO zO;ttnP=3)~BZo#8}q1AwnksMu;G?&TQLBs9?hIPU+wKa$ zQYzy@9m1w1DxVxzyjQ_r4DZ&JcQN5UJU^)Hg3Xk1Exy3Rbfg4okDOXKWn2P{0-HZr z5-ff%<_K^mxpzDh{OAUNel(p}TSB*a(t2n*vvBHop>3Qu`^)TlxuXM}GLVvLmj3JB zv`M?d8>qVsqoKE*McYD9?`VFR-thj|Rsf%9w&Z4Tivs4fHkQ-WDvgMAbJhCiC9`iD z61$h#Zci9>Fm3>u_Vyo9PB`N}?Ua^`Fj)C}-_N5X!V34_HgzavE1Klx+kO6m^NX{{ zJQC(BwMA>qo1alK@7!!^rK%fW;CsOR#@^Iy)9z^{Yx6_(3V*p&MNq~J_dJzD+yXy= zLU;ozR2}LjDeX$t;lXR;y|M@c95JUQ)X?3hS?&&*3hI6!&)%3hDpxr$jVlAlW-O+tj2*S0zA+H zu9FO|u_0c9n%5S|3Tx9fUVRppPj~2IKYolPu(<(L1U1^DK@(7o&x^u+Cwhu3fx;P* zhmuArr94b|(Cm14k%UkT@ne{~F;%zVrku)q4$(fCoD=&ot9b>L2r@1IptoxCQiuj) z_^Tif*=BQ1n`@HO_?7tlFX>FI8-U=z>3d(Wx7h{k;Y;ysONOY(@}uRco^H;pkTV?( zi9pwE>CyX=hgw<)6YV@1^=C3MLreti$+FHIpS%16Q#aUc;z}<0iV6S_ynOi8-ZEm|h(l4;z27Lm~W2Gmg8fD$7u=4ND@16(Esb z4=tLJ=(u5m|E;(e-J6%jL7K!o*fqQ>Un{{Cd^S|AOFP96)xqB(IWKL za=Fmz!3dMT$l@#4FhOS}tICBuMR2C+XvdmDnSyTsx-t(57HP%^zH0hA5r!MC5|2D7 zC^D?>Zl7$@-S5*yVHh3umx;1Z?;dtg)@$*%ExSR!QIJ@qpZT9=5 zk9Xz$#1`wl9lVATz#MQt-C}~og)w||x(qDRB7YSR#F5QO&vo(SYc&`$qGiPqU{Fu~ z9{JeG8J;thZH)Sn=~O^jQ@zQRR*b}^u_9OEK4@ud={Fg|bH*j+d;K}_C;KBAE+@ux zITNNj`o(af2OHUQ74|-Jn*q+f@oot0kAgYn@!_@M<}enL^SS$61Veq^*I0dS9%q_SFTKW^uxSMBwvghQv-YKCrN%tMI#cXD1ChBT@{RpA)f+k6lqFVG}M|oH)lz zr2B4M%4EZHOr(78xu}sXRqP|Z!o|MFdNC({Ek_=>k(O^GHV0t{%g6Fv<+CUrSLId* z=R>2jR3jV>bn8o%9zGRM&$N|Mx${>B#y;*A{TkH7Qu1it{B}zj?;5JU#H(66bsU zmn4ZVS^?qn@_JC#X}u8zCqWMK90Wn$iM?4w~~LR$dNLd7WHrAG&GMXJ%SX z%+eB)qu}xOf$nsX^&gI2zj>f$1_bMkC||M?Xf33#(i+9o#8sF9s}Qs2m+Z4Ochdxm zq9iJVLHD9N)O!<=-W!-A!hnKT@9+9i1)C}UbZ0{0Sr zM#(gdEPv~ZuVFx(MI|-Koq_K{FtNMD)2Kg#>@02os@YOlv@6BUs2W|a$f{Q@>Ka5I_=vUjp}D)HKqXDMtm}m$4w@qdXp;Ww4t( zORHMBCtQ+wlsZdrBxcLN9cLVojcBHB;fzRjB%;U}=4<(srRL5)WyDHhFU+P<5Kx-u zf`YU4KqI7{=lDgM!adbpO&mUf0=djfq|P^>?PaEsZ-Qmaar&lvl|Vv^`JEW|)2fd# z#9>r^{5eJ))pEtl;dd}v=0Y!Jmrk)_q*|isj6yf>T&OY$Z61QGEo;|as^Q`jQ>3^1 zGr@c_Ng?9l*Os5y0)vHiB%6NR)4Tz^7W$Tcc*@AtYAlAES=7&&jw$3f%DcUV06gF^ z`*d~#2xbiK*mEX@ny$HWX-DUd9opSW}{dQ*jdbnd7Irqr$PT%VCiTa|lF&Hen-YQotqAS=A}PBG$Fj%>1?L z`|@ASza3CqzLs6}N zq4i>g_tT+AI9aXDdlCJV!FR`b_?}AXck6_2vpE0I`B5K!Y59rcJwsVXnF6jvWyt#E ztp|ANucm#ozBv3mZ(UQ~O@(*o;;o~)&hGnFhF17JIHBu-et1yq_r{it;|KDVYxp-; z)cD<7;HU3yfkU>8zk&Cn2US5QxBf*aG@z{D?}iNSdHO#8oL^}ixlj&HtT1Y9!uLi2 z3A@M_rIvhUBf%kJUH>>V>l-4XmrwT)^3b97XW8`^zV{kx`gB%lhK<>(*<{T1k-r&|_VUvXEO1ej9=Qi;?Z`p=s6z z=zBrOy4xNx+~&(aW;cL>e}nzYPEt7aDDU$NEKur^)n_`ap=%deogabL8Q8 z)Tin7V3zhdg{KX-VVS$%3f_x&!=mx0?d6x-HoSlMzYd}{uQIx@04~eBGX+?HTS
    qO1*xa@7_+Wbj~Tj~Bulc;}kB4nfS;&;B@l2-hdF7*%PgS}hz|C2J` z=#LTV1T}U8X!{?)POpc5d-m-=Jj?hUtN)D0kjt{e=x@s7zeJG!Bj_Km|Er+xbAJYK z_*;p;Bxt%0`7MF=KN670|1m098_j;|{cj2W$b_AhO}PM}V1$Cvbb;{6TwFFk*Q z{qd2djYQ!=qwfu%{*hc+{B_Kz$2l>^pNaNs;h%~2?#Evft>6}kZb}Ox0ik{A%nmqH z-u^vrcz(|t{I6~FCy@Y3IVI*@xmP&`vl-f21VBrAl0{8ktphUmfWRi05@W!l?`n!0 z39EPDdc@WG5*+%qjay#``Je(WgMCO(ZHSWL5w4KooATMq9kUEV+Q_Ejxoltw)lk6V zLA&^ z)utBpN}1(p@jmAaY&LU`_p3p6GW`px1Jh<4UF0}{p#s?bHBHy^wmn0ogrg~D! zxHf_6(`n5}dm&x)hH=NUF4lVC$ImJJCPkH`h!W{owf=8BzEV&i!A4)SfJpchSb1Nj zF-_kN&@YUTMAF=+$PlOeO3TyR6Oj3kq@}bUe7hi4F zfEYcy@;tp+ONZv4schg0Ir4f0itnv|L?H&6>6oQtfi>s4I^f&o4M1^^f7#*Fm8|b2 zvj+a|uoFU>iO*_jNej)zC0<5(Qf==0AOX!J)A1xzXmU6<*fOMWD4S4~FC5T$J!HHj z*&_h<7^pr{@9B0>S)jT;lDz?Z&O-x<9Dl$kzH7E`%X(xk49U5LZEY}Xdk>}-NV zXee0{65;u-s$|+gKIA@Q`lC#Pf~;#0=*gRFJ0|fIddblI^v5tKDb^FINQwNj%Z-Fg z?A=0f*|#dwBhlj=N{4e63QW7e%=12(8UHO+b?vq_VQjzI5T)fX|D5d%$@^3VrDGpv z^|WOAUg)LJNP*oSFZ82=Y*$mIr-DH{T`eW&hp)LGsh6rJ<1SD>tqGJ!{Of-usb z%Rb3>Mw~<{+(pcaole!~03)>#jPv9g3MtGhwohRo5GRXO<6%Il>6E(=Z?^C7TkpgL zNIy)ZaXYzG+6|@%vZ2eZo?Ynx*Cs2$RANmT_4@r!{LWe>azoRRze{1A5`Q742yeFB&g&g@MM_$ADMVlOW?Z6zjtK9IB?qzOu!06_qqvT_lIN%r}e z2VY-jCw&Ow@9OvRzZwzwyT5l>nXKX0KcIKe?L^x*8QHaRmv6#2+?A|N;P|cb7mUI@*MhItX~7YbAW8j@ z8-SLlq{a{3z4gD1dj9F@e^-=&V6fuT!vnk*B-pnbg}U?DEn_eE5bY0#oz-z%KRpWl zA_fW1!_ik`AJAW;KZ-;!CA1Bss{Jt8(b4h`574%#xeJ_ZZq77euc}ewd7|)|4ev!V zF^OyYxRaTi?OtV{CvE(NEY+m8i(?dmA*p>X#(W}rTTrBFG0)VJOY2)^$_&W5ANWIc zCto-dp3F2z*+Nln+Fyt9j^?$<*Jj?D2Rlh(Ndg-1O&=|M9YX0|M1>};0Q8y4vKJM> zwv+N~92ugrN2nUz=;V%>Tr0tNa=)QimU)s!wnE*r*erCDh9c}!C;IKj1kW!UmU2v> z;Iqgbs$|BMxr?p4yut?Gr(Tag^c1;<2FuM?)bW9EN~Uprr0K0rHuHFE)npa5aE!hT z_b1tZiNB-IoGWiH9h{MmRS;I#uDYf1O)|Vq(ZH(cv?MgAYvp0aP&W@hgggg+AdG3~ z(!ck}1HA?JEKvKQU{+$7XKD+T$;e)i@>-?poZZj}lgazJgEMlMLAt%_xaZam%)#=w%)qnhw(fyt9^X7-7PgHtTGJ3Mh6M&-AF_*jlBS9Iqx+MglIm-b zb$GjeHvsq@-Z1C2-QP(`1XsN061A(J@k&_{oYyXeRZ!+}+?Pb`%QgJ*gm$r9 zU#7~w(Q(>$t4VB`WX)kuX>a}SaFG3t#f*K%GrWMIfs(<%Q2H{vOWM~I=Gmp%j6tCC zUS1L2o$<~ZhW3_M2 znHUucnX1^f%t+gCpWW@9=>Iai?!CDr{~;(i{UzqJ{}zO1sEo%YOtdm--+yUXBEBn_ zWU6gjHRD6Hp#D4R_AtBx?h*7dG*9D`xL={)yT1qUAHj%BQER_%DXfqXeVF6E=tdRa zo6#!aj(*;=t)H>#%0M+oBjm;lqEFLc6|q;US6s+ndnAYV;O}vG|08;L`%oQ^&}D#Z z^UCH#fV`KR`xd=lx(z5-g|-9!0le8rkf(<@8ex3(o#G`a&wmTCubNJ(pFrJUkk6-t z1Eh*?R9*~g?Ajl-iaUGqaVK`KEOVbOfl3NiD6=%h_-c3}{@p*B_D|l*>A%n;_~=^j zS&=+Ada?jr@d;~_B7@z}aJ=j9y!@Z7iL;4k{k;CWaAoXLse~+*y&{WdvAf4pQyKc^ zyDGP;B-8SLleSyPAOEJu``e@8v~f+T|1Nw7ivI>w{+mPGLE`_e({@ae``|Rh9oOu{ z8^8~&%|8Qu`hPsoV!bo^LKv)eTvykGe3VyMrY8I-O;|6|^U3oBg{(7hb}Uz3wK2mJ zJ8e}DxwEuJ6h$<31uHT)(dIqgrhd};+g!yN_-C3&RU@8DFdkimD z_ELVRFTsRwa`)%KU`qAeKiT59`(W}_Hvo#dVkGykD=9A1UJP_-ko&sxiz9?XZCd6G zNO(L=PI9!XVD?@@K8L6aLw0=Tk{@yLvtAUy-RCXRzwgX5=mPHx{?0v+hChpqqiG!| zx8TLB9J7l{4v|WNNk8!yin->0TMc@92Rb&uU>&mUN4ML(UDgCz@l-v6BZiNNxa&H-Ih5{QM!;{oPOdon*62F9Sg?UNQzI0Rm)dygb5VY8Olc z#gZwY{iGsfaoX2x6-zIgSp#@364Q^CGdJlvsaQt~GBe=9o}~ey(j%*PZ>6$Nqe)rP#YGRWjU)F1mpsh_X5KIgeuA_LpIa07gGMw#{ zB_uqm$ESRe4JPn+U2bV`KiIlt)81=7wR$t6Bk9L$Btr|1u53CzxVO6Sf&sbL!!c+rn!GxB}4tYyN5&RlS_k7zgfsZX{= z|IRrt2RJlM%|X39>mpWi_Jt3^4ap8C46=;r=TZ_NC5e$e_mt?G=^CW)Q%4#vm#e+% zl`IER`^jQQlYLH9i#j>LcR3$v`raowX*3LkW!5K0@IEZd43uhLwj+UGWJ%Nnc+}Tt zPFpHz$snS{GM}Wk)~j=X%ivk!P{JoZVbLbVvtNY<=(VGgZcnlRqpbKXjq8us9%*dv zk}o~X$__GS#1}ZAh~VY^Mt=#EUE3b~X!C*~ZZ>maF2WlV;||*Nox+J9ddNrS0#2K4 zT;0iQT2r`h4OdApwqozMd5e$5>S^!Cf3R#dX#GHE`<|c1HWM_~g!91DrUwbfq{QH! zXJ3AI#bM(7S{8J#iTyx`+|Yl8h?B>T3GmJfKZFLwZfd@nW%nhfkRvg(VuWg*>P=|CoRFy?4;@(M<3v6**D<&D=o z*2||ZlcLlu8S$nruOri{CReF*I|l02xgnwGGs<@dT2DTW)LZgFBCtJv&E|cBe(hCW z6|y|$te>_N;pB6|?_C`-Y#E<(KW<_}6V})q>AV;%{o4D3cre}wwmeKZW9A=;qSS6v zR=VH+Gca#Ue2E8S=jILUYGrZ)f0#`(MlQXThx%li#`JYKG!mj-U>O(IQ{(Aw_QiQB ztxNRpG%{8nLS96s6f0i zktVNdFbHKyP^_f%L|z?D)Uv^`ZPw!9X&2TKwS@8nZUc&8Y|Sm!DGOUB_Gm;ik>Vs%xaY#J(3K7AL9az3LZaV~0Y zB|f_2*xrl#Oh-Y-W)6g*I>xb4?&1h)9(r?-CdEMgaZ9JrGVw_KGUYCaFtF>+kn?85)h+oDLPg?GEyJWQv}hp#>Y{-KRa2_WdZn&sdkRB|*bgQ(|W>}?U`G)K|^2mndR zu~P+35`F<<2SGAU^jSKb`Sww^n{?t*?b2PFk0-lJNngzjW!k~{vZzbPpW^|*l%VAg zgxafa%$+>U`rus+x{!x#)Xpd|e0)#sZR`quI;yyPNTfUc0;APRUftu~W{CRZudpxJ zHBi@jR>laSBY;}M+Vms#MOW(rUqls)Ja&zgjK`zQr^X(7HtF=5=`wIXSZM++IVKne zzJr)}g!DUlK2h1y-=2ZcJBTYB&%cXsGAHjJ(n(<(;0ff+jcQ7{YR9O@php^T@#ze3 z@P2eC!PxiEJHe1@pZJmYC59{i_KmN|JLr5QGa)3qCypd$T3MPS;HNfPg)-YukBGD) zbH^t}08>Tj*AY4+taXPtfF(uep|5Cry4xWR48_x=xZ z2!5&G#zQ^|8RkRl&oBPCB_@O|@e%|6Jns)A-JgccNcwjXBWj@k;L=eh-g^UO=fQfd z(?!J~9v7hXOQ+!ZuNf*aWcNAA_0TQpr`s-$|D_8>-gjc8irxr8yBXAxE6*n@&C&;( zBA(McscDhi-B~e3bW2!5&45vPXPYEQvSa&uEPSev)z(_=h6f%OQ0CD4+HIYBnkQ4EHspFX zbX~)l3@CO;>9WT=?N^7ErkoZ!%DDYZ)5`4qiA=?GzE6t_c}ZC64FC~ah31UU+%4s$ z)Gl5CO>avGGStJGn>%#SVa-7AG>Kj>sQGeuaXF`~)h|0qh?t>~14Y_?dRYB7{_35@ zJ;S~x6V0V#>N4T`YdO1c%CNy>x=S??%=qPhd-p{e`5WJ zc6^bO;~&gdU4wYHVcOQRZ?ii;u!z z^iS5LWDMzkJkR|@PZ%E|hjZ40QKkl#w2QY!-ZWt2^yYe{&;4&-QwVQmnVcU25k_ZW z=VLRVM;>(btIP_f(zj1s7oT6bC(9RCAUg!2FrNeRR9%6wCx91OK^hDJUv*_c2%}o+ z3LUAAgg_Pk$pbC`3A@G{a|dzS*3YSq*QW|q4}20CJaj^!?fxd2v|I5mue8A`aHV?e zV#TV6Fez|Gx2s9?$=AkXS^OvYG*BV|bvYA4>2~b~>E)*DGbU`? zeRzW@2N1@6Xxh`9`?BtVr+0t13*E!^8t$$+lbHK#ie<~d`tnHi)EP3_mG?G#VfNt2 zcC`xe#w2l?oJjmTF|Tsv4>{g4@EM`eyj$Q)E1mrDfRmt}iQSHG@|zF2L0_Fud$xzy zYFK3Qj9)+RGh6xJ8`z_cMCZOy?)h1V=AUxzxSFbGrc29gxe3KABRxetR_jNHGrEcu zeE9hYau7-{;4bR}8=O@^_`S{L2Tx+pO|0EHuL8l=SvJ|ZKGF9skO-J?wM^p?I%tC+ z+7LNAC!|evlElgfWV2(Xc+R-AEO9|Gc$bjF7REVAn3Z&W@6xp8Epg22Z1-fQsUHDF z&f>&KAvXTrDk}hh`3-&#Fz)5XV&(P2^ql5`7g?rDWvd{7wjp5yz-pm)#^eWqL6n#x zx_1&$`n`#;>n?Ir)?=tIm34FrGH^cvl?$VJbnbo0dPXHfna(KY20n- z2-UW!Z=*>SEqQZtp-MacY0}d9;*d+sCOzwIZ2<(60Q+1)c|wi3CT zOXYcJVS0xQxUn{mUTs%NEF7)`kQK+{IpD;&|{=*Nir znc%{y@os74h$(G0_jF-#J$REoJ@#r*$yt{=IvZCDnOfoIr@yJH;?2`|uT(8@?&ffqyTxvMVfL&W;#YQpn9#RJO=jX zwj^fGGF+Y5fGG!r9h;pRkvk*Eaq@@1My9D5=k)11E!PTTBJ=C)P&P^DUmfxMY0i;J zwEROv>msFumJiN)Z;R)$C^G7X#yc`!rr?nv*Uy=m=@NQ{9OLcggT+kFh zCU40Z{s*r~_>Fc|@+A}w*Nl9R`R1al#3>1++FQ;NX2Oc6vLtzgQbH}I&geCWWZ*Rp z<}_^TJY1OWdaVmPw0oRuJ}pvPBsGNCeEh62Sk2^t&z%NIsFpOU?clCL&)+R^@wjFY>&sQUHGt<;z#@hXbLbjpy0NvpU4s3|-6g)Q*sSDWe^vl-1g=1V;t}gcx1owpTtKk?m3pSPzUgtprSi4UdEJR#x1}m83pJib?); z2+{rd-POx$u@RVOVd$fZ`&XduE7@yvcK8pS0|7ig`-zZWQU@!WMjCs+=BEOzf8 zE78?Orl;OiA*hwn77Klqmg9el(2;5eR|5Tu_kcvhXqD`rNsAW+0 z{A)lHkJ~5RDZ*qKIPNN8^Qso7n7m@hWH(3UpoPU9%Up%xVbQ|Li;a~x{T z?^LcA$w`4;|49GN3GR>=@Koirj-Dq`OEg}2V?UYhEV|6qTD&FXmgG}q6$0)*>UMl+ zW2q|*${3-MP0)bydJsV1U~wE7w9QYUb?0gqQ*^wq5I_9YI#}7?gI$8GBWDpqDLSH2 z1W{KX{b|Jm%>**?f3}-FX9Dh>T-Ne4ErBlb&y#COal#jJ)8o)=6B#4%ag4hX{P?*2 zoK_3&tBlI07Rz6IXJ+!{V zshZCslFPYM!2q125g)A0kg6u~nQnqLP}Yktc;a+&XgEXED~MlP?Au}<1gN2u?aXlB z>|)TL0^BFWWN(yl)CtI@+@B<%Q8Ax(N6op)Zt9LM*rHD&;Cny zkY2cT7N>>>iDcL!KW~nbC0|Hw7OcjT`%?^IKQ4I)4_m>gM^`9YmA?=NRewUf7m*#` zW07gSh#rr(o`IvzU2kr8YDzLQE{GS9d_xr_rSoU(Z{v!qm}6Iq$wPIv4RGn{Q7|MD z#fxKR&^FrX&H?I%S*7`v41D1#<&y(jkTh9o8CdtuH511q#~_|$FGv`mweNs@laVKK zTe_z8;^5*q>S7>B;F-r2Bhd|jvDYu)K-PX&HV9Pb0TT(M8)~%=olsRM3FaSb9@Veb z=~#r)eXd~tNTb+S#|6IRJq(9^KMIu#U+%gx9BwyAxna+razIK)-I-m;cX=%h|zdLQA zu`HDl)+V~j#bF=c&^6xQ3tLj41R6Z9u~uC6%k0vBeurwTP5V)PLZwCai!^) zfmF^APH3#DV6D;NKHPr>4N+y)pCOv5Kpa?91Tj}~Ly?aJJlqU$4;nSb2UnvM;$=0p z%}}M41Q}|1y>dD#`95sCz>M@e>n}+f;+i83+vDiOKdNL@V|ZHd?qm8Xkfi!Vm6=?) zx3iY%3iO-~%W`5MmoU0^yL#v`8su#}&Y+p_r>8A_2&jtxB&dv^r@PKW( z8sRwMYn{ic%J20BTtL`X>KdnCxD3-reoRKW;%o6Kn;a2blFbcLJ<{G@u_LVoLSNf* z0g#M~GAZNPmR@uY^C64As#37&D+{jeg#ENkyM#!G*~k{zO8;^iJ~P_>+)d06%OPg3 z2Zj<%)5H&Wt7;za3KJL_s6MW9W4-`Dm+a*u&-Nu|R@0kiqWsCL-!!VYYe_W_a$3qS{jgz*E?s+m67{=`nBE@osf@#f zZfWTY7w04z#o#e#4i7`w2D@%+WoFc{8KGVn!I}AUTLXAC8{PxeOb~$%y(Og ztfAR9e!*?~-2L|rozY>+zC&ozy1gTQ?C(CxF^c6UvHu&Bds)}dx)<;EvU``!F;7)# zgDRLQ_LC=vzR`E}uTYTu?)t|=;#8m9BgN_w{vxfsG}R@9Zaq3GvkMcM9%^OtK0%?C z=WFJk%cnY>TWRcCRdq)ykbDGuTy)@_2t({#k}~;$$m$<3l-`8Yn_zd*R`7Z)80L|- z?p)ebb|Np!A(%sSLJ+qMeG8_hT(n>o;A36D%4T&G-(p@C5-L*Pxv!Xb=5s8`E7cTw zeFKO*Ev4oWn4TVM6(42D(uso%dov=-Y{Bm8Cu9_j{81UJ+&I0#$}jmLxiX2sejq+; zu55PwMW7lQF_&MWGukm$qMv2WD>I9H=8*BDLN?bt@I`g-u=f1j9@qL_Lt9J0u9C@5 z^$Vgaiqdg?H-qb}ps6Ri7uiR(PiH?}cK1xV!2HA+6tZO(cixRj#XNdp&RV;jA6+1| z+#xxAyPUMIFWentmrGYz1;J*2`kshpDYKCRs0Fp&b#OL!p85LyexLJ2V9+pkU@hbx zlwR5HME3QNf^FoFUEkZi5_Un_YF>b3k}-k@y3qRlQD*A_R`}`cg^_T`?dC~9L-mB; zbH)Z)UGmcMSx<&e zykn3i>?1$4w>Q_k5e6Ab`M%hJTSK5i-3x|CM=;a_h%nCaYlik86{kz;6-)=2#+6bZ zTB&r?UjbY=%U=S&S+wr43@wi1AOc+u;_ej}qGZ0L0+`S^LfYK7FQ5F$kf+TOhu;?R za>8`(rVU+B<>x=V9PCZnpd~}&**};UE4lXr!gb&GdAY1)@=k|U@HC3DBz*hIlsTPm z0(!aoOGUWKSRg|;=}fg7$?@iiXfWIQG{wdPx{N*XE59dfc(Pd^b5HT}4v`Ks913Zl z4)8zUO=8gsI*)!#Hpuy7tlMh+x$<8?^m7_|;u1qA*J-I3-}}c}WOd-~e7fa!t=e~P z0M#6S8BtV%p_MgkeTL#6=UfMp2bb60-&xHZYw8*rL1_=8c%bL^Vq^xSX`Z(Ipq}Ne z!bBPS_*bu8udSwM@rCrm>kJA5BiAqc2r4Cv1YeCJ)VNw5gL_CY7kTjY;(U9Jh{JNQD!BUR(~nI&>dBw(9U@;4bdsM6c}M>_bWUt_ujC7*B1|dBZzw$nBpb5)+=?AJGYyq8osxl zz<_e#WbP(+?>G9=ALPOy%i9Or4wmd3U;D~jxm+$SLqe1HNgo>U0vb(iNhzRl?Bm+9VL?p5rE@&-?ZCSwH|mgH&95F2r3j^UxjfB&6!v3jsmFHegf!i zK1X%%2yY!4)(8pVVJ-tfPf{ph%IBb9A`jU;^7|RM_3?)#hyQYdsBby%r6Y zG{d8kW+bhg7&U zx^`%hCCiAA?hI1{IOY$Oc{{~r) z{$;l=^QhLVpLLHoVElWu1h=S?%fA4a{=)0)@_zegRigX7ayjbSM$Ei;J>Rj@x73pQCg*+ni6Rbd05Me0sl52JS`cO~+YJNIG+4OGS)lXzpS5h>l>x&MT-ZH)+ zZ#y#u;wm#G0Ys@Ut`}ZwXU6oeFG3cx-q= zzCHmTD}C$)6ZePr8Y?y7uNz!}@RE=Wmn&h@QU~Zlg4;*?lV2snE^bEU2AF%ro=@8J zb#4IMd%s^|B!Q90@=L`8V`Oi>2b`C+4T;Ew`PE~&Y|{U|OW=T&95Wlgci8=g4vfTT zb*ISo<2|32|L1UIr{WwIWFuFckpMSpYw-HqKd@NLQoe<79SE`M*sh{p2IAB+1be^` zQK=AMT!}4}J9;^Zdjf81lj*VB>}Y=?#iRvpwXoD@Nu6iklf5k?@T*MEsfyjDgaDU0 zt#PIclPsWNJYH97G9Ec{X))}TOR!=}7>hFY3FiHzopA2pV3BDsQlO=^a;H6kAGO_~ zN(lotkf}j4LvI&xIc219MRY!+Adc&3m5)PojCn3bb}vb)mxHyX3Bf=OeswbtpYWHj zke{2A`xWQ6=VnG)jbsSRre{Fq_ZGB$`r@5-h&wb9TA`i9BTv`lOpdgNo;-Y@L!zC-w$2i{I0wm81k*V z?{n-aM(0@E|JX!UR%tXXc#o@M7mATqTom5AnB^e%FBr89yjScCN)e?ff>Z3iyVe=P{R}h#4DYuhpbQ%(n#JZB}v;R|{sL#);5^ZhSoFr64 zU{dQ@Rk}^`zMbG=P4Iw{UnlV_2DY4Y`^Xz{CreYTRg8ga#3<#^$P}tGTFk60f1EWL zT0#S1NzE_=+SEm&E9dMa$T$s$RWMqH>7Tv&2|Dhj&8eOxU)HgQx2jAo+6a_k!m0Is zQrU%Hu~988*|fX=Fsc6_63^9dWo~t4(VM6n2@ohp$)qP)_Y;-PUj+8cO`eCv0H54~ zf3>NOmxU%+ulrw%v2ROHH=NL4tU$qFrB@rnjR0 z=DQPqr7J88K2@=(4ThCu-j-sOM|#-06SUfG+;ZFiG>7Sp9@cHtg3Jz&I?xmvMyXr^ zU==SYb`?Iya_gdVApe)kSmR0;okVv&TgpP1i3fT`LjJqjY{_{=X;k$bC0JXl1D4^F zP0RiRlWdwzoxxQPVeG;E-Q8Ma*=BW$v{}AB3|2APeWwRUw@QCZaUr)<*rbdqU7CxZ zAFQNE{&bhQKCvYyO@z((!#uSNQh3CGi>D-Q>-ObL!@WwkI#15BR$MSYQ}BtgcY(J+S>1=a(x%(i}JeD^Dw8{*ih6^M8{}6_Vf{Fq?WQFz%rOl z)60Q9XU9YkDXZN%fD#_&9`1!___R)&#MKWVTRG`;b_>&{lVPu%d-VYx3{re2iVU8G zw3{kfQ(%2{PE1eS4@!}BWcow?WryDdW-kY{hvNfx4-#BRDXBNG7cfGXufM6-x0o3n zqn$6CDHkmh42Ssvm2ZeglpBs0y99wD@H{q?Kn;1jU%nD;oKLY<>4QgZPX2R^Inn>bnI0qM&s4gzS8_PYi=q>f@os%LXy9`hBu9s_*6 z>WL1VEYBNQ((g!JAADdRqvD97D=)(pO@j1WQY_qmogNzxW@FRLIqdwHW zA;*6rM%YaG`4{X!?^X=R*_=r$Ga0xR{tBX`&02?~#P8bj4UeQcJGSEsb}fNLQ^hW{ zEj#||>QqO(cX3vNRBD4gC4jK1hjvo*q^s#oA4^ALvJPunBEO%?J&Wz#z3#~a){toq z-_E%1NL-Xzg_vmRjthS{T>`kVI2{J|8x1zpI>z(Y(Q5nHsM~Rg$qd1Os9$m~CT#{; zl}ZX%#PQdlkZT|3*%u){J2fB2FzQCVs5dsK=HoZLL+*|{bCdwAwlZ^E86C`nw>-r( z(AdAX)3K~oQ3R58C(wD$Wu|RVzn;dkKrFjU@NxCBiz2r?E4Vl+yibO0PgLLL)7h{tDBTp?33#m*~bM?CT#~_Mz=Q0WNnK_Ua z+CN-7O9UN{=!lNN9j1FfWfD`X9*4g#Q9Y_X{90N<{E*(RMdm|&l*2P$cbo|;cDe)F z#8O9y#mHKzJ=8^2_tm1u7?73oPYq_Ih+ER2;hais%H+Vs)2N)5`vC=aJ1C~JJ__oL z=1A}dKzo^cC%vOLrH0b&65ixbncw~^BkyZ*|NDiWYt$c=88yU0_ri|se^|UI12eb` z|7eGE&24DlQvWW|OoJ%_D7A+mbWd&%JZ2vda)$7$c-5)Lo76`HGIyfAnjy(H6Y$f} z#cRU(vZeXbyKZ$uD6SuiIXe2YT(Wu7J@XQw8)M6d4e=x*zjE`hp8e_-U-r$Q#PtOG z>o$Ucrc2XE{zay@&QbraYDiUl1xFP(tZE30&8_TyYnZ^7UYgY4F3h#Z_DLz%qHYAe z8Mp!T-PSa`Xj^Ai|8y8|12}kh)<0m4R1H*TC@Z-XGI$vhVkd#IH#@!d=CapH2xjEJ zwn)`%zRgyAF0W#R@&EMpmSJsmUAt(|;_g-`1W0hV7T4e*1gC`J5F9E%ODRyiSa2v% zg1ZE#xJz*fQlQX6u~Mi|JE70>e&^li+WW`;bNq^$V$2~>ILBsv( z8lLj0bTqUMB;(t>ciNpa)!^Clz{OHVqhL!t#tEiW+r|he+Eb@EfIIOAQKTH=#DqQ5 zK@_gG2&|Ha3Ud8W#V3N z9GZ_fdG@!B5#%*oBa+Le?}4U&qz>fz+p4Kit`R&;QQ89;)qhn_OTRKSjTCiLdSMX> z;uRMQZNy?3=c(VLZ1gGF9Ic@Qyg)qvsxM!(%>@OUcaEk&%l^i6?E+E|v>}gMj?HP2 zk7vDndO49pUwxTG^sdse(h-8$O&g(hCrO(S{Yu$3!0nK&+SAnj7nBQX>f?7^)Q#nl2K%BS38a=P#k>6*uJrftjj> zHQs`lPolP#`*f6zfOs2`uZjC^3sxCxn!RBgCSKg_bG&c{`jBT&40V*&v!bERjJS1u?&Q%eNZt@~xvRJ1pY z10eC1;c9AfO`{#B2*3R5+?|HWcaj+2x9w=pFg;3rOafqM^x_1Mpm8NBl#o*~6E{u; znXhNxo8;u#af(;fJ;~?$Z0a;;7uq4-O$&| z?>6!{=g%#>tXQuhN@Xhbi}VP$hfq<&aQ5JR|5Ymc`??E770x9Q`w!|b%;JyU|FGDg z1qbvr9U8cjyHiDuA1t89!KR2kad=DQBeWaT+^aRJsz=%}+rXud+K~9t)2lUu4z;$k zG#aR_j#Vjse$)n_>=&ORj)`jAc{Xli^t`c+2%!&} zhzN=U+~q;ESp#+SAv8WB@wDB^DH#-)wC^KHeXLml5RO(k4L#kU!3b5B)Vx#}HOI7R zXgltu>q04R2GSeMme=Tg7U!pEGcobXdy3z`#QJ236nuxx$m+m7up|1WL;XhtHxb_! zGI}$G`Ls(Lv!9&71;KhLRkO8N$qqzri6J|uC$!y#>O7Y`+`Z6lc+Jh>bWs=k>3H4_(!2v2(CIzrvVM5jg1l<*W!xm>&x zmZM~(h-vvi)mr7p>ljUwcRs^?i}8J67J4a1!zt2{ydVFm5I0^YAHdi>3TQj0DHt1_ z?dt(IiykQZ-g@+`OvzKZ2p08|lhmC|i%vVFU_!e2&I``7_n|-~q`z?RUEkQG2P2FR z3}EP_RJL44X9H5{4)uC&M{8j(pU}i(U*cZj;F$abkGW1ubbz(F^aJx)s=pmLJ|%(A zvR*_;j>Xn`@+s_cm~V>*49i#bJ1Ubn4Z1XH6i5u&)8Dv#FRqK9_ieO+_WzBM#4GxQ zXd7mWVioDLXwxc{S>7+2M%OOd|CezRvJ#dQ^Zg`*303qV1m68n=9dUa$=%6 zn!{*!-%J%Q>kb?jlT@yu0rNx4N!K4e&)=X61`^T;EArhHX2q9%Q7c^pu?&&%{b5%Z zfjZP-_Q((m;SU69A6#7NmW|4mW+9103U_4N1>D=$?y=#xm+Lu!O8>!z6Ep*$NvFD1MesQND70`*)f&EE%dUeK1VOiamb$)0ec&Xfr9v6 ztD~;|Db2$yb5q1Y(fQ|TZlcnez9RZ$5ZxOka_sEb=#X0w_ezR|{!$mgBgOOjU0;lZ z5anq5mS=u_gp;(pFfqM`gEW9e-G9P0c;amQ4v@3(?U1V5H0p!;o~dN}MI&mr-cO$p z;U)j1SG`kvG)Tr~R?pk(ZZ?VLyoU`0Y>xnwn%w$INS{9pPpEwPiVOm+WN0U4F?+*G zPKa&8JBor0;pvl`bD{(t8$iS>O%|cz#{`T7)|6)2AB_&37V3Y~b(=-Gn?G%kecjaM z7yFW5FG%NW+_yomobvMkVn=uuRy6&skh-euHg#z246Lm&(Z`>o{0G^0N&QNdE{kF6 ze>?QsTew!*a$Pq@Y@6?JbWEXlW1{81Kiy@yoef;Pxhb?u`p~YR!uM}8V6*<;7Ixpq zMHEVN^MVWoTVu$p_d>j*A76V?2BqYqbQDtci*yHqIL`8CQCdpX_Zvz$gwL$EB~-LB z5X+_Oww*|oa^R4lou!|1!KA`gI6tkHrw+qTDnFAr9|)q@n@r|M5SDvQ*yJDv^_Iu- z28mfda-FMZX5C9}Z4ya&)fm`H)BNxbDY-7Be&sJ=liJB8J@j;Pw*8?^azxc5`R94a z0CJ;hI#^H!H+e3Ly+2wtUEjsU3B#cd&#ibEb(eb17gu+xEi2jF<#{*FhRkNi*96&cE3WNwkKc(tg_mfk61Z=@N}+e z6;IXgR^*8?Va=jQpyM%Qpn48(DpT&#ibGZPisK4iZps*T<6p+1x7HImF-vpqh92ui zM1}h(syF@-eedIQsBfa$DedY^)(n@PpKw}}LHBRr8^$G~lCOU7xKt@hAHuEkMBe2?DhK6 ziV?lGkYrN&?$2J@`U(Pp#Wt3d<42@!lMyD1jEIN4AlX!}c{M)?I&e?jfxdN%tZ>?q zn`q@WvU!?No3CvnBJ~b4ht&e&YGWGsC|Yd`zM0cqEXY-9-4WEjjR2X4ThPco`ATzU zV_-WgbThwQg2B8w$QxZUMTZ7~n1ot&>GHlYL=@hC8kXF=zQ+U))ayA<{tm*E&j>Ib zC)9_|hDt9*jS74qq1=%~AMgk_O2kqf%6mgUEWP8Y7TOlA-!X+JjMS}#Hf8TN&b z+R2&sS;-9@P)rYmjx>co9kX^^D0ZSD%cH7YIuK$KdRannp;@i`bF{0woiZvwM?xND zAfLM0(9?ALICGvH2F_724l*>H^2kVYB+JC~X;R6O>D|UlsDvb!u6xb1gZ#gJ#)j2b zCCsneH~5nZ4Z;{h`($q@ze&bPGVrXvKHPuqy=j|xGrxFZTz^V=H&I4B0f}Oa(5lPY z$Ygo5;5MdTt5A!~SVL}j#MM^_$r?6wkBu))9!16b6BW*;5|Ij!fO|MHZG$_Iy2we3;Jm1<6RRZO{ejXswXEHPH%2KUkGf94jW_=)jIL{qKMPn9Ed3xM- zMNLBKsYCF=&7gc2fOe=Z*=qgxoGi06Ek>6|s2|E88?L7mR`Rk`#@i@00Vq9ul1@nN zz(jlJ#l{pZ_RBlOc)^QS{>j}mAjR#}W)X-biyA548M6uNCz_qqW6>(n)_3tq(x`Ms zy5@b^;u}GqzDabq`SpXy_$5{O*S?wOu#jDLm`oRuLV9cEYutnBhGfR2#gCy- zgmS3jtF0T#oTjHyII@RXw*I54UpqbG0U#gqC%9)F{riE+J7)pgi(KEV3;+M>F7b*E zx)(hL>8AZv+!k_=<6DqUkBnm=v5AZhU*fOi7PSZD|G`J~Z@~Sb*G5#=!H~n4!%;9j zvx+qH8@WM-6OyD?##OKzjM|wL$8j!=@;j8gtnwa{)g^~Vdp5` zd^hinDb35I;&DLhna7wYsj+XT@(I>di!gu~KwvUL{X!b;fhM=4I8o5;!L8XWbEwZ1 zQmj&XPVYMzyRhO#-okLZGoFYd9+RG_0A24&8kVv7Jgu;j9O~k-kbXF7;=JBJ%De;U zal*P-#7C~C=d0V~mbFNx3(-Lj>FTLz{V?pTU=UvpM=alZfp@|*_9z~Tl3|C%`>bMr zk1yiH;S5W<-;~5Ruc0_)z>hL^seoE7<<<6siE+ooQl&T30$$gvWNBY5v877RotGmD zQ*k`u^wOVz#K8aX7~WNc+K-s4P`6J-)#cIV+LKJS3CwY=92!3{tNQ~mdXk~wAqpy&bzkoLI!!Olr{MphhM0-3Wz|)v>En4o7vHEZ z)A$~lc3>xj-p=r{tEkW2M^AXp-TuWD2TLw;8JbEw@ojtZ{;11{*EsM&EA;DQPkTDXd~R zT|!4Ib2r)M9x^6vphq}2!Qhc8J7u+hlpDh@p0t|HBB)fVIxGTKMR%~cHuhG$!{^tT z6b4!~?*Ynn&TyyhK-Ce%QBV(U=tA_a;CGTE%LEzZoY^0)abO{4x^OOU60oTy>5W9J z<<$*ZI!uiH)xn9z>igrm1|dQjS3^N+XnuLCewLs%T{^1+(+&&;ej7sLbD`0}lxil# zSSO%wx`mXtSNxgKe_@h`gWh zCOUS*@a~#FfV;&~1#jNX#VyP+Fqrv2qMb2297kSA$pc%`6xWd*xc}_<8+^He9q<|F z)-*~Kq_(xjkI|LGw}_`9VMUOCFxj7%7JNc0Ct+1K(fBz&nTo;SkS^K;RbfZ*pi}bd zd=1eUn3DxN0h^5>OMpYd&3R9?@8ky4UgYA6Tx*(N^tr2N=Jn|AL4~3b?}-o&f;73p z@q3;}+&(zMC{s?^(x!$yI0wZ;iAJ<=D$Lz2N?pb+8Ce(IKn7JTi-%end@6Y=yJ=sW+$YE^kJX` z+$5-;Al@eK;9|TEnVnGMK&h@1z3S_^6rSZ%#F$rKH1_=VsyZ2^Jy%H6^@_raKL8(@iHY`luK(LwmHTOgrvJ+_aGH(Ev#`G6(SL~BGOFBM4xXw9!TCobZPEev_5}Z zS*HD4EF~MgoGE#@Xd&o^#iwiG5MX+EjN#~RRj?m`1c~X=Dh@7ez$!pDEXOTUr>1Hl zMs^WPyL54L9wynrcG4qoOf?L;rrQ7~fA+)Trq&m2(3LSHzq~7F6 zWR*7CdZuBPsSon8Wieq&7K4^#H1AKZP+SL_FW|}73^4ZnK4GVbjYF z#C5;8vUZ?u@1EJIzf6yb23iGnmikPh?6c)FCMo(VjX?_ACLPD=%i zuwu2qG)I7L8~&FAS42qsQEc|3J(;D;VLd@7{f_S)P`HdozgeW~W6n2QXBisoZVXll z`p|jDHLW;R0qg<)x(}|LcT4vtqc3iCXpF7H{Nbf^%OY$et`^hjyDw`^%L zXH`a=Q?$lCP%zCgf=KovhV88BLSTunTIH)MENn*JHbyB` z>Awpi)cfr2GrM+1qR`y>;rIcezbkJUC?#3*rEJD8&N{%eT>ZyM%i$Ud6s6i~bfIfD z7r|ZlR7jC4C3`%Icaqtx|KI*n$>UB=v;tG;*E*iP-1~D|uUg*HOl$lfTxwVU0cgHh zr4{v=)o}f$}u#frK*Ds*p%WCi1KQvTQWJXI6Y7&+o#HSca~pW_(J&s4jWtK;`r_>*`*obA{c| zyBeIF;|upFB4EztkKd$;;9_vAnCP4fn=5qt?k=k+L16k3nPE(K-}InY+{|0fkWY~Z z8){n4jW8QHZ+JXiPS=MN7TbUO0;9Crs93!|C5R zSuHNRhYE%}r+2^-5OQk2={qIAXtb$ZooHh#8pUFH?=&oA_|Cy>g#~XJxQoaL35c?0mW?+~I9x!J z@wMj}4tt`;U{(5+?Mm{`;k)`!`sb9`VWPyk2G?7r(`GJg1s z_YhLA6g}CDo0(wlA9xdz=gD|@!j8_6UaI(>!X2n@sy2NWC2!-v4$kW zoy81R4pQag@$`d$2wW`si$#24)VgW;$Lv#X{`>+0{E1L!QN!|z!RR>?Jyo@i`|om- zm~T7!FTX0Ed|Vs#4yMW%D~qS(#eE*r(w@t-9nI^ErKrcMIz>jt6V#LYboo3U*kF5S z_SQMyEanejoLB6NtmNu!LTOo)Wg2)Cj(wV^vsM394QE9W7fKvt#P<@lacH{faNgMs zQJU1g`|oEt|Mi)pqqS4J;3mJd323Ec6Z}%`Ey>S zWBL62=vtz6&i4$$N!j8qVST}!gH@#;A;H?VL82u^{zroBwhVs&TO@Upv-INgH3~{D z>siamYq0n{9)JYm9&`RSl`G)o4lNb{p^G`D2N=SNe-@Ru?M{ z4z1gJp&9x5gfDdw*vAs7-$5W@Nwv`g6-{%C;`8x`%LboI+I=N4nl_Ro0>X8EDL57# zD#1wXtlmH}IDhBt82208ca3_c6l#Lbj0 zJCdoYC)Ci*%o_jfV4^RpO7~!jScJ$eYb$PBG!N4kY!CQwHW>cF45g4s$0o9Bg>nKw zlP)QyjzcPRqMCiQtlyJ7Jd7V-?6HMFVaeKX;z2sCM&-!_Nw=#GiR+ZK-WcVMW+k+J z_B^&d+%q zw;kF30xr{_hm=4Ng?@V87G^%68_4ka(iJF~X= zv#SqVHy^H!K<(7Dl66U0e8cf%0oJ=h>v^A>`McSiiVRAF+}v88lW@{OYW0i;k^yR_ z=)(_E9*-Vnq)0qYMm+PC8ff-T_#D9)4;?k#dM;n1=k^1dM%gv_BU9C~F)ai|?l*DY zN0a<%$VahP{?*ehQqvp0&CNBWR($yM$V^N~u>Jnmm@)K7p}EHy?)&y}vr@TD;cx4n zs9gVyEeyfxJn|GHH+X->{?hca?{7O`;C>m&GXIgpc_e)JThjOcO)rYJGnOsdtvex$ zI?Ffywv-ZOOEmY4t9dfH2-tU&-q$@Uzk2((-7b~B>ZicDl-%vT7pfC_d1`*smg8?L zJ^a#A4F@FJ_5p=Y%xOXQ;j52{ta*Ww;dC!F{i46&Ff5|WUeVSN(46`Zk6^9A?q9STz0ajuwMTBBkFzgWx;#>M)Z42N znUpTgF!3s65cYcTo)Iy2Ni(Bw)NN8ZsUrHrr^rWfZ44?BNniC3$1>41e{&5p&!U#UH@YAHb(1 zSi*wT7N=pqnJzT?O`pnkEad2UvBGAu#l^6N?y`_!q31igqYjgu*UgZYoPNslmb6Zu zW87p3<9X=e-c1)~%!8Q-uh4^##WnFI=CgbCIIPWbpJYIqOwR*aSe*<5i7Vj5hh!kG zIhrb}QA>ArOW50T2!eUA+PxmLa&h1Nle}DvFY9Bb18!#sJZ5s2vaPv9Y>ub72Gp|y ziFy5%>IY6)LNLF)AVUrygNxy*7e)3#}Y8mDN!WYI6*c4*(FQT}_4=An_#l5wQw$vp3a zr*{H|$qOV1_7q-QDbwEgr>mTM;tt{E42ut}5(YZv&6zisUh$+gd5sRs;7p}E0Z+6Nt8m?RNpp^dZqGl#q>IsibuK@6p$nmc~ zQt-Kr7d@gYB$8?SC;>W;L6svBq4cr};M zc>yr6|G2#!hnqmy>!&Aif{$lXr=Prj>(+7UCq-RiN{XyUhH8jQPOt9Y_omtLZ#P4h zT8QZQy}_&r4F$f1&K3KljLB<#DM(KI*(y?FV{ev8u2VvmhKib5%oFUWas$+crAP6y zbfk(FC{M4*-w$RsjsNs*lCZ+ZQSgX$P+4o@Rag8F3?bMYX>D74|6Zr>{xC%Cpq-md=Lg!37pU6H~ImTn?p>SDH(EF?_JSBU0jzx+}WBxxZ?b zKOS0e{PhPwz&gI4!hkoi5;>(I>x4S4!+0E3j=;ORKnSj@${)nQ|2?Ix&Rt0`L9UQWI#7 ztB<_3a3em>QcssJ-g%A~izk5WCgR+o&7Fhn>icDU5b}E`z{RjR&QjC5a;JSTtE$n2 z2`r3&58X3-@oWA5a9qs<5ct?Ell!jYTrjRolcX}@4vRc4eb1tQL@kJmB%z9BLzXS zrtHY!C2<)z@;w34xN&E+4FXHmjZ=Ii^Xy$mK~>9{q<^;sr82X=8M$VA5LqueN>GqO zmf*piuj@S4iQbh9>jTh0XXOcZAQhdO6=~0e7ykk4@r{_MWlMJ=HFIJ=0Vcj3JzkQI z#v>ZGP6TC**)gAdc(WsjCH4OMV_Gk+2h7m6*H3zJJH}XO2CK! z`u&vL>|>A)zmL4{OACzSXT_E(c&Qm zY=ERx#DDxD2{le?>uHcpeZkv%R7>bJ!ggq;Dp|jGb37N#t3^%mYB6KUwFo~e4_(>r zx}zRbs{E~I@A4i!_)V-=Yn~<`Sb9+EKGMLLijs?TY*ZtB1fNVAC>Uj_gG+?};z;m` zHc8gy-?Mt(N#=7A6Bsw(q5r&~h^JM?V;JA7mNjOPvBH&8q!=xXPV95zbAGZ-|LjX> z3hoO)VKv9LUty%6Y0n;S3H}1!_RPiG)KsWk`bc-$v5sPxU%P6rSJ9U_He`VszpO01v@HfyxPA&A?nqzl$4dQ6j8P<{6mK3Pe1AACd^WgYaEC` z+{wfP7yT);V#*a6(4Sp%cJ7V`*5b)Jh$w~05$jOiZI0=LTJOp#I$up!g{+Upk)ho0 zr8wQsUPNje#7=4E(XvjvD9&%+B>C6;T6a>fk2Y`rUX3#C*|WUKpt62t8k{!f|COn` z*e`-7jVh5kpR<#izv=YLxH$iU2p?SN?8i8bx)j4n68;6j@y|HX2GJfI@J#s)F2C_d zGHJ00=g75hd8G2%VVF4S7N2yj>3OW;Z8K39cFnmB2!4xG8QYZ*#^TmMq>TU=oSy#3 z192X0rRF!}(49&&R?n=WshKbHir>-RYP{oLam!itPl5^DXgwmnb=nYH*G9!J4-ENH zGNL$QWmoZ9*ZM;`MTCTHW=4jzY{qU};B#MTRB|5ws$e{R75;saibUQ$rB9I`JOLYB zpk;j7@OmoY(*i&DDhq2g2AkF-TBukp*xR4S7p^x3;sfBxtx`Opym);02QV1;1E_0w zS>6C{slI=_(G*sE!6QTN47z4k!qYikuls%J_?ZS9i~ZisWiVu9pf^=Rwj@q@=At^Y zdhcRb`t`pRlX{imd1=e~Q?26teR#<93h?yspn4ACUqvZj^Z11P#iViXPuA=2*-t~% zSY&rJX|s#cA8BAY4c(y!V2IX2sW4#EcSOXv^rcsjDhixO_cVyfi&!%6c+l(1V417$ z;)O!>?+A#oQKyoWPL|n8I8$K@zzfCyrTb~)f~fp}%Xj%Q49rw7m&oenFee88NAL>8 zcKe$GsBLB{q_SGtvP?$wvt#Aqvmq+snl9@Gq$7mXe`e!G>MAfNt30H&h;WZ=d>2JwS5e*h*g3FTP) zoNxYP-1qMA`3K`~j-Los76kezhdHct&Vw{A1b&KNxkOI>p#0pfbNRGBzU-FDGDgHi z%Na8bpBsABs4fSt`|z`?A08XcZ?B%ewC(#><1+G5E9;i~RvzDe{1~XrB-Sd@(=PZnEe-d_aKtsq zv3iFWU}Ch&F= zhZolS&y=R3Tw8J5!(e&RZ3`o?V9|Z93B&JuN8E7 zS~SlZB#Kk16`9(t^5kKtLXHed%vZ`3zXBWEvGPAH4`?dnItu8;;yc{w-TU`m|Me?#nZiT z+OE`0Rx+G4VIW;v>b!qbEy#Oy5N%a%d5q(l^f-8}@W?eg>J8pb0bgkhddjWa@%<1B zCu!{?YFV(GeBLzT5pnWn{P|WcC(kGCLJX8Dm6f!V(`^Tx(#UnxzZFf1d(V+XA8AZ<1@dRQ_d1V6S`6c?w^SA~?{ zA0VzdDcYjYSG!jALl4F-b}!)6U*TU(PNRW^(E)EIGwB5Wo>BhW`C3EJRyY6enT$^m z)i+0L5?5sckl(GK>obSH4q`3Do?3U=vu%vCsQjD4LVX3x8(J;Iz8(1G= z{}vh}AU7%;uZ;;#@3i?9Zt3_yVk7MKk0T%F7nCpG=H{lqht`fyLfUr4xG_5DyGyO7Ii$H&M5DV@XHm{8naIHTN^bz>x-6~k@+>F^u)qQE=N2Ko6EX56w zv^$Pm*$Pyd&8|GEVKc4l77cbp`iPKQGc3MIbRf0v^TihXSplv1PU{t27Ro40GoPeB zxqEf!a?oFbV~K4d!&FX-TA*oSW=PEY61yOgDmr2Gt>HnW9(yd)D$TBHpe+&Jt5`f$ zeEfAlxHnOQ*U>5y8Ltd~X&JNP$Guho<|(Wn!qS>_bluN~)Ox#DboKK6UhF7>7cHMXh9E?k3kyuU_i$8#2&o4L5lJq?zWMdu= zx!`IsoGYL8kud4X%5uKBVH~0GGSgF~I{)M*31x7TXI$FGz&0RolsEf(aLbdA0>*D} zYURN#P2-|lE6OxC46exI>y7hJO>TfxM3S*+fg- z(tjoP-}^A~p9~X}_HoQiv=re)#IJ$>&E=~PH%SOe)i@?CJmqi+Z&x9~ncuC>$Ni?o zn|Ht=U;7{APb@pHNBn!w{u*EVIQIBAJJ)f#2;oHe#;>F1`cHPQ?~aNX{K@s*pg%e?lJou zUE6EI|FiK311>B7j1qYac_lyU?Gg0ehWMK#pa82%8PKCnGE(0MAf2RV9nH0IqETfT zY851&NF$^HVHH;cI9wRn6tbpuyio%zr7^rd zocE@U|AO1=l`^x7bn;6dA;8J7hUf_Ch8rrYi$KP*j}R~QzO}f&0txO)_MMbx&A0h|_QEkbVV+?K#`VPt3#ILwsDUF{Jl7ewCn8zixo-gBq$z@1m vT?{{Sy501*H*Boq`BBsBOR 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 :asc } + conf.list.sorting = {:name => :asc} conf.create.link.label = "Add Domain" # conf.columns[:records].label = 'All Records' diff --git a/app/controllers/hosts_controller.rb b/app/controllers/hosts_controller.rb index ff48fae..024081d 100644 --- a/app/controllers/hosts_controller.rb +++ b/app/controllers/hosts_controller.rb @@ -5,10 +5,12 @@ class HostsController < ApplicationController conf.create.columns = [:name, :host_domain, :content, :ttl,] conf.update.columns = [:name, :host_domain, :content, :ttl] conf.list.label = 'Hosts' + conf.list.sorting = {:name => :asc} conf.create.link.label = "Add Host" conf.columns[:host_domain].form_ui = :select conf.columns[:host_domain].options = {:options => Settings.host_domains} conf.columns[:name].label = 'Host' + conf.columns[:name].description = 'Ex. "your-name"' conf.columns[:content].label = 'IP' conf.columns[:content].description = 'Ex. "10.10.5.12"' conf.columns[:change_date].list_ui = :timestamp diff --git a/app/views/pages/home/_slides.html.erb b/app/views/pages/home/_slides.html.erb index f6769a2..642f256 100644 --- a/app/views/pages/home/_slides.html.erb +++ b/app/views/pages/home/_slides.html.erb @@ -1,21 +1,24 @@
    - - - - + <%= image_tag 'marketing/domains.jpg' %> + <%= image_tag 'marketing/hosts.jpg' %>
    \ No newline at end of file diff --git a/db/samples.rb b/db/samples.rb new file mode 100644 index 0000000..377cefe --- /dev/null +++ b/db/samples.rb @@ -0,0 +1,14 @@ + +user = User.find_by_email('user@entrydns.net') +entrydns_org = Domain.find_by_name('entrydns.org') + +100.times do + domain = Factory.build(:domain, :user => user) + domain.setup(FactoryGirl.generate(:email)) + domain.save! + domain.soa_record.update_serial! +end + +100.times do + Factory.create(:a, :user => user, :domain => entrydns_org) +end diff --git a/db/seeds.rb b/db/seeds.rb index 1a48cd2..ea34e0f 100644 --- a/db/seeds.rb +++ b/db/seeds.rb @@ -8,6 +8,7 @@ admin = User.create!( :password_confirmation => 'garlik1', :confirmed_at => Time.now ) +admin.confirm! for name in Settings.host_domains entrudns_org = Domain.new(:name => name, :type => 'NATIVE', :user_id => admin.id) @@ -24,3 +25,4 @@ user = User.create!( :password_confirmation => 'useruser', :confirmed_at => Time.now ) +user.confirm! diff --git a/doc/README_FOR_APP b/doc/README_FOR_APP index cc3409a..e69de29 100644 --- a/doc/README_FOR_APP +++ b/doc/README_FOR_APP @@ -1,3 +0,0 @@ -# Simple API - -curl -H "Accept: application/json" -X PUT -d "" http://entrydns/records/modify/TOKEN diff --git a/lib/tasks/samples.rake b/lib/tasks/samples.rake new file mode 100644 index 0000000..676c5bc --- /dev/null +++ b/lib/tasks/samples.rake @@ -0,0 +1,9 @@ +namespace :db do + + desc 'Create sample data from db/samples.rb' + task :samples => :environment do + samples_file = File.join(Rails.root, "db", "samples.rb") + load(samples_file) if File.exist?(samples_file) + end + +end diff --git a/spec/factories.rb b/spec/factories.rb index ffd9064..4be1bdf 100644 --- a/spec/factories.rb +++ b/spec/factories.rb @@ -27,6 +27,7 @@ FactoryGirl.define do end factory :a do + name {Faker::Internet.domain_word} content {Faker::Internet.ip_v4_address} end