From f8bb3366093e1a97d3fd706cd2c943e023a1c40d Mon Sep 17 00:00:00 2001 From: Jairo Llopis Date: Fri, 6 Nov 2015 17:45:53 +0100 Subject: [PATCH 01/10] Split model in abstract & concrete. --- base_multi_image/README.rst | 91 +++++ base_multi_image/__init__.py | 7 + base_multi_image/__openerp__.py | 27 ++ base_multi_image/hooks.py | 33 ++ base_multi_image/i18n/sv.po | 22 ++ base_multi_image/images/form.png | Bin 0 -> 50135 bytes base_multi_image/images/kanban.png | Bin 0 -> 141910 bytes base_multi_image/models/__init__.py | 6 + base_multi_image/models/image.py | 181 ++++++++++ base_multi_image/models/owner.py | 101 ++++++ base_multi_image/security/ir.model.access.csv | 2 + base_multi_image/static/description/icon.png | Bin 0 -> 14901 bytes base_multi_image/static/description/icon.svg | 320 ++++++++++++++++++ base_multi_image/views/image_view.xml | 139 ++++++++ 14 files changed, 929 insertions(+) create mode 100644 base_multi_image/README.rst create mode 100644 base_multi_image/__init__.py create mode 100644 base_multi_image/__openerp__.py create mode 100644 base_multi_image/hooks.py create mode 100644 base_multi_image/i18n/sv.po create mode 100644 base_multi_image/images/form.png create mode 100644 base_multi_image/images/kanban.png create mode 100644 base_multi_image/models/__init__.py create mode 100644 base_multi_image/models/image.py create mode 100644 base_multi_image/models/owner.py create mode 100644 base_multi_image/security/ir.model.access.csv create mode 100644 base_multi_image/static/description/icon.png create mode 100644 base_multi_image/static/description/icon.svg create mode 100644 base_multi_image/views/image_view.xml diff --git a/base_multi_image/README.rst b/base_multi_image/README.rst new file mode 100644 index 000000000..e45a4b160 --- /dev/null +++ b/base_multi_image/README.rst @@ -0,0 +1,91 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +==================== +Multiple Images Base +==================== + +This module extends the functionality of any model to support multiple images +(a gallery) attached to it and allow you to manage them. + +Installation +============ + +This module adds abstract models to work on. Its sole purpose is to serve as +base for other modules that implement galleries, so if you install this one +manually you will notice no change. You should install any other module based +on this one and this will get installed automatically. + +Usage +===== + +To manage all stored images, you need to: + +* Go to *Settings > Configuration > Multi images*. + +... but you probably prefer to manage them from the forms supplied by +submodules that inherit this behavior. + +Development +=========== + +To develop a module based on this one: + +* See module ``product_multi_image`` as an example. +* You have to inherit model ``base_multi_image.owner`` to the model that needs + the gallery:: + + class MyOwner(models.Model): + _name = "mymodule.name" + _inherit = "base_multi_image.owner" + + # If you need this, you will need ``post_init_hook_for_submodules`` + old_image_field = fields.Binary(related="image_main", store=False) + +.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas + :alt: Try me on Runbot + :target: https://runbot.odoo-community.org/runbot/149/8.0 + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues +`_. In case of trouble, please +check there if your issue has already been reported. If you spotted it first, +help us smashing it by providing a detailed and welcomed `feedback +`_. + +Credits +======= + +Original implementation +----------------------- +This module is inspired in previous module *product_images* from OpenLabs +and Akretion. + +Contributors +------------ + +* Sharoon Thomas +* Pedro M. Baeza +* Rafael Blasco +* Jairo Llopis + +Maintainer +---------- + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +This module is maintained by the OCA. + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +To contribute to this module, please visit http://odoo-community.org. diff --git a/base_multi_image/__init__.py b/base_multi_image/__init__.py new file mode 100644 index 000000000..ef1af5949 --- /dev/null +++ b/base_multi_image/__init__.py @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +# © 2014 Serv. Tecnol. Avanzados (http://www.serviciosbaeza.com) +# Pedro M. Baeza +# © 2015 Antiun Ingeniería S.L. - Jairo Llopis +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from . import models diff --git a/base_multi_image/__openerp__.py b/base_multi_image/__openerp__.py new file mode 100644 index 000000000..e7fefd8e8 --- /dev/null +++ b/base_multi_image/__openerp__.py @@ -0,0 +1,27 @@ +# -*- coding: utf-8 -*- +# © 2014 Serv. Tecnol. Avanzados (http://www.serviciosbaeza.com) +# Pedro M. Baeza +# © 2015 Antiun Ingeniería S.L. - Jairo Llopis +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +{ + "name": "Multiple images base", + "summary": "Allow multiple images for database objects", + "version": "8.0.1.0.0", + "author": "Serv. Tecnol. Avanzados - Pedro M. Baeza, " + "Antiun Ingeniería, S.L., " + "Odoo Community Association (OCA)", + "license": "AGPL-3", + "website": "http://www.antiun.com", + "category": "Tools", + "depends": ['base'], + 'installable': True, + "data": [ + "security/ir.model.access.csv", + "views/image_view.xml", + ], + "images": [ + "images/form.png", + "images/kanban.png", + ], +} diff --git a/base_multi_image/hooks.py b/base_multi_image/hooks.py new file mode 100644 index 000000000..8d11fefe6 --- /dev/null +++ b/base_multi_image/hooks.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- +# © 2016 Antiun Ingeniería S.L. - Jairo Llopis +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from openerp import SUPERUSER_ID +import logging + +_logger = logging.getLogger(__name__) + + +def post_init_hook_for_submodules(cr, registry, model, field): + """Moves images from single to multi mode. + + Feel free to use this as a ``post_init_hook`` for submodules. + + :param str model: + Model name, like ``product.template``. + + :param str field: + Binary field that had the images in that :param:`model`, like + ``image``. + """ + with cr.savepoint(): + records = registry[model].search( + cr, + SUPERUSER_ID, + [(field, "!=", False)], + context=dict()) + + _logger.info("Moving images from %s to multi image mode.", model) + for r in registry[model].browse(cr, SUPERUSER_ID, records): + _logger.debug("Setting up multi image for record %d.", r.id) + r.image_main = r[field] diff --git a/base_multi_image/i18n/sv.po b/base_multi_image/i18n/sv.po new file mode 100644 index 000000000..ba538d6ff --- /dev/null +++ b/base_multi_image/i18n/sv.po @@ -0,0 +1,22 @@ +# Translation of OpenERP Server. +# This file contains the translation of the following modules: +# * product_images_olbs +# +msgid "" +msgstr "" +"Project-Id-Version: OpenERP Server 5.0.14\n" +"Report-Msgid-Bugs-To: support@openerp.com\n" +"POT-Creation-Date: 2010-11-22 10:19:32+0000\n" +"PO-Revision-Date: 2010-11-22 10:19:32+0000\n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: product_images_olbs +#: model:ir.module.module,shortdesc:product_images_olbs.module_meta_information +msgid "Product Image Gallery" +msgstr "Product Image Gallery" + diff --git a/base_multi_image/images/form.png b/base_multi_image/images/form.png new file mode 100644 index 0000000000000000000000000000000000000000..62f619b6af44a30eb9adf1bd061258f0a6867a16 GIT binary patch literal 50135 zcmeFZ2T)eq(k;5kNDvSdB#Qw-GDwmj5>${VL69U-a?Vkaqy&*DQBg#4mYgIh2nYyB z&LEO=hS$q|JmT7Zl3tCH%Myq--tultf|D|_)jKQQ^vJJcT4z4-g8Y}x4h)HG93wdg(iU@aJ?r`{fu%EgF>3dGY&;t1q<=!JkCMNeE`!Zw)ci=6} z7cXAK+F2fvw6@Mw3sIZ47fMV@npj#2y&@m4x}a@QNts$`#d1)-_&}cY8SBcsm+|ph z%ctkJ+#mB%CyKb8>Ce^ilX;i%Vqcu}^y$;9TU*j8VqR}lSuaFJcMMv7v&sy8zKlmk z*7a^s;Q7znXUNE|dzRXa$(Wn74i=kXadPIlujG+1h=m*<9rQ0;FV0Aj#B^jQcO!X5haWdcogY`?3t5)i?9I^|@}Q_eiAoOyrb~ z@(865N6D;>*BvY@Tq2cZf@%PTglypyxQ*>_nFN+46W~5#Z@wR zK9`r03azfqBV4=~927+TX>rl={f7^!9y`lQS7n($iUwtW*slrD<_JtrXV%uyv77yN zzO1aQZe*mo+kw8Z`s0f8H41{O6a-&p?7tZC;6FwD>XB;Q@Y(i+i-LkwvT23gJoXL_ zcE7$~cwC~D(P5wo*Oi?DSSEL>^IQjA2o*Obfj{Qu%a@&ozwH~Eng%|>!ZSG7Ucx6J z;0Zp>-^bq@P<~KfF9KV)eO$wlkJ{J#=b1BSzJIcM$Wmu$ML~cw_{r+UvuDp(v2^=v zIpOOl*~=6J{&(x-a?}ln%j|3&9Ev{DzP=Z5bg(0L-g>guc;(&QfLJQco_WWsY;4b} zt3~;!<=@3qvf^V}T3RZps9+{3Fk9K6<}2K35F~yX6htrI_kFA%XFEblN{aZQu5R*O zrZ&HI#=N=N*?`^MUDiC!-s-Cy95N~@XNYjIs;a8q*C|R5wY!nNwlau`z4g|Y5&!#R zK2mH9Yin!N3i)O|S6HY_M68q#_jjklCw~7Xczq8yO@&1?|Hs1C)vH&z%=`wvzj^Rd zA>B_mFRvfB|9Zh_vx9ikQfLXdan~O=Rz3Ka8wbcI=9;um+n3)hRFGz^qy*#3#jr`p z%05?}ZDH^sA|W9u8e(sMkLjD5%H+8-;&QGX8`h#IxsP_*l>cn2b z!KA+N`rZ|s65sCg)?nes-S2}3mX?>7&xLys5D?gc*L>{#%^H3d8$&`uVs&Rn;9(8b z>Y3U`hmiCug98KgeSPZj+xWviU9V)*G7Civ&ziUfpYS)=>q*yhtc^AQ{4h9vGdU>e zn_JYs9+}B}F{HoYOtcPjn`>nnwuEn99w)!mpi!5bdo?|HQ#41kvh%6nLbpDC0x|e2KSu5N1xfnS)72~@f^a`g>Mm56{R0orvKh>S2 zkX~yOB)m6##XI+^zWNNcZZn?x93DG9CWI%}VFo%no!qL#MA~mjHz>Qhy1sOD#ME?t z{aW9hCRboNP-uQqsOIb`k5`nDk@2(Kf!TVjCUkPrV0V9?iH}d!J=9I-OM82cUBb17 z`Ws+~4_A)7?%cuG`eYfrwa_0sbkZ%yIk7xaDQG)>({II(+WiPj^t%Usw)T}dCC-vY z*zxM;&!4|-M+6542fcXF5JYy7by2dYsHnhp;+E%XJ)W(T6OK}a?S23;jqTQNHEdj5 zgVrdP{L<3A1KhX8HYZ#CdUiX@I-B!7cwo^jdpbiQA)%ku9s&^8{Jf9$dk?l+yBD@x zmrDBe4Gpo7@8%_NJOUKbc`J3YdbPBjy}iXICnwpGyQ!$Cf?(TzWM6Q~?k38MC-TM6 z|N83k%?R+X;Eg?O>*_SV+Vw;8;ir6;=+7&eDIx%Ia0 zHLq#D`<6MnomNAia@5_Tdn-R!F!?f zwS<}nJ<*#V&tPM~&wq8N5q^+Qz_v|f)%g7*HHGGMR|k((=|Dfq{WI0ULT)Pl4;20a74>l)rBJi zB06CT78aH=+X+kv2!UojAJBaAxjB@E+j>~gaq%aa`0?(=Fb46{i0fo9GnYXlKAbD< zGFuGsqfK%Z6_xQ{zk=RM1~Of`)M%ODB&_2<^JCkal#HzRLoI`#Eu;6rl7QJG6$#RO zpA&B)T0v6rlfxoaZ)Ih&)YMel!(BT#q9S|Kk*@P;vEVO$7bFA5dlbc+OjEo9G<4l? zL_M|}_qP_-hHPr<^|{6~(vv^SaaOD5j>*Z(OWWBM47l&@?P*qt;hI1(6_heIXpaUt!5{=dNd?-|`kxmZ;0PpPp~rb}n+QK20u`^!$02t*zYLTq;p_z9?DaoZJ$Z6&x*#>h1ZfZEAX*cbS8^Z@tP1}Vq)5k*I`Ug zPmec{h)cny*BtL#EDjXmb&4IZfdRgk+UR{t5FpXW({1|Qo7I)B$WUaJ`!TUqJJxz}CaJ7Nt%eQZh5LA?ulzd6V4@t+o57};)9;V4-ad9i@#1NoOD{J(z%I{vkJL!qtd=*tj3E5 zPP@Nup1_cgZml<+ot@o-3P%i~d}I8kuWb@I&wY`E=IsfnqcAj%3jnr^v6=H8rKl^cO~zm-5X{ zPse%587e3!l#F%nj<}3z@}((XiM#*~f9c@lQD&_4!dz#Hjq?GVA2d_kOB5uNPvFNv zLa473TvN}!>O#kz|Gt0W+963M&sljhirUgB*|b~A$`KT6{2UE}yEw?(w{L%ae~Sh9 zA&g%1x!cBUeODJ*SXdZ7Az?!p-3>0!U0XKYDk?~;q}USs40rF|4Zb_Hsm8ziKytvx1{@d&dCL=S_p`?9 z2HeH6o4M79CsEK2(+`h?f2bu>l@$%4MW&rGh1pHsYTwH2U0edej|*QwtZi#2%KDgm zHsY(%?qX4=E!@w%M2Ga5>`8L&V!WEM(D@rK%e3ejk$!QmzP|o#x1q(x8-;H*tOvZj zJ25h^@2Sscmle*OJ9lofQ~ZQ4q1QB*o=({DCPeHk(a;}drzbV!CvTmTH{+{Oa$?0r zz)&w|U&OFq6A+-3kLQaxcXwlboz;cCfZMn>&sy|%sysXxWWn1qGPok5qVlbG<>i}7 zEc&_h>k#B-kxBcTUUN9_JiNSXvk5ja*W|!MSXfR$hF8k!?KZG(b~-b}7Tb1>y`|fK zR?wB1DYf-Sac%#+BNdMkJ{lx9mq%#uPSe(n*ZZZ-pMs5qxCU>1+?RcxkD3@;0=>t} z+Pcdt?VFp9d{%?S+T)U>*p?#|XR&aJe8a=TqrP3h zz1nzFQCyTej=r=>)Yo0*9G&LncRze z)qL{$7bX@LL##(CCZ@v0Wt5aiQO}HsxIhQN3744q*~gDpzrE(ggJinUpVtD1Nq+xv z!O7xKDJOs-Zo_6G3Wx|ronn%e&P!a7SnWvy8{hN;!bt1v)j5pux&*aACX|s1$s)m! z$u9EoQ9NbThp6FtxYi=SFJ&jO3(%y`lB)sGNE>JEvs-Up((8xP-8h$}kr&|ShX!%? zo#oJz)1 zJx;0D_f1NoLva{*fvT2`kB`r{WKkMG4oVrS*K0mpMiC>$*|QR9DtAfFG^IrA=5dye zbeHmBM%OmJ;ea9>YF&t~26es|_(Vk6o4arbAQ7}$DiOIN_o*q_wTzs7jEpV?oThtz zc<9NdS3?Wz1qx@FE?$)H5TGKmwX>7Bc@sIu_P|$B{HR!F>*HfRClt`HZf-Un?rjuU z^mCwS7BaG!m{^>s2S0#}_j>0FETQMY?rGW}Fk;-2IJ07M$aRapKQ8&z=oi=*%ByeN9tJPv?%Cvh)gnV_ zjbF-_@iBFMj+~&d!jX&R@P~SVTv6o0Q8f!Z5foDXm6eqP-x#^yFqt61Ha98!u7Rd-VMz-`KSy zCDv#-^d$;Ymw+|P;@I~n80%TsQo2e3-&GO6x}9L)b9wu%@c~c4Sn2zd>?LZ3vyT|= zN=b#Ya(@RxEUi}3Nth1MSg}^lkCm9ExvW%G)<;kohRR&TiD|T&e3;a0Ua~1*V|)x= zF$ueww;n$^HVt0GMMd@%Pp;};FgAGD9KvVCXaZ+&SLDC5(gRH z=Kghg`F>U}R94{hzISO@6T2TD4ya6G8lO#zKF=v-L%T{=8f;9Zr#Gz8!`x}ymig5Y z$L=PlOnT_h#ZlKak15WAB;z4Qg&{5tnfieR>`(#8IR=AO)tUze&I1Dg;i34K>)PAII3eqK;YTHpXf1iYS4}e@014i>(QimhLqCNVW{|J= zZ8!6|-5C|NC!d9hU9VGYk*%74qi^CTCyOwq@2yeZyjq$Bk>D+a=JUYy0R&}|f0QLF z?`LuSGA_2odcFcMo_#qFA-2j#w-7u7b`I~Er1Pn7 zmKR(d3Mf3FHcT*Yp!WVCC8g?;odz^d6$wh_#a33{KslvOdkpVMlrr`s0A1K8rHc?v9$0K6;e@5W$x0TE)IlsdsmG+b;CwxTmDz zBM{EA``1wjlbHDZgFH=HMTM4QSlrSqpc}hS4<#?+erP1Bdd^dn$&}0-b2(;VY01hy zaeyWCDdQWkyrB1?V1?s6CNp!oxxn-z77mVPaFwnKCyU60zJISG^>)d>cye=E5fPE! z*NeXXL|+D>49`C2H)+ubhfc-j&7zUtuhtU8nqnz>r2}Hsv-}m(uThFn025{Ps^|(w z{s)x|TOe>RUAdA9jBr4^+bVFU<8yO?+e<@od6anHKf+_rF1Nhfr$`A3TDDj`^3wU^ z?^2=i043qEl^#6Uy;(Ry%~P&@`u6SHd^V%QmLIgsePheU-rb4))`3%I;D%5ITj{~_KPm$;6BB>m_5$W1z>37m4X{(tU-BS9+5Th(ffEtnSZ z_jT0a_V=l?g#UgS^szt*A+r9vmWZv7Tn%!K8KM6yLQ3j~((4yiEavvm%J}C}mTV$I zlkT6(yf|*+-z!#E+|Ivt^Y0r~W2sjEzKrRAeE$F1|KS?{&-?u`{{6v)tVI8tUJwD6 z?%!J&sr`TN7O5Yzo_6(7cchCTHuQpUOGC@|61?k zt*1bb{rL3KuqAgY){9a}Sy?uX_Fc;%9i8y*k8PE|J0%sJ=~TDS$?F1yj9s^>fB;_c z;|Yu$^}uJ(*eEEX5X6WFJ38O->+j8H}pDxpHW3MU)2dF~hD zw0k!fZo`LeGWMFw8rl_5b92wV@5I8xHK?mQ{qid|;w$q`^4>Si#NbM->QP^x6Vkwe zJmQFLa_}AHk%O)N7r(xD;W<0E2I`yz=SU4qRmaHdNw=2F>BB@S9L=6cT%eQRz7}mC zLe+)!b;mv;G0`t11hcUvossK1%~|CNi3QgD5vQ&B8P1p$k>1jWL3JZa7G_ zs{DZX`dEpEwZ%qaAbB11AtvqG_mWj=YHbCNH&W!v+%6Ii4EV2ZI?9aIEOnL35#r0N zl~h$3(EdE3JVRa-k)(rfYI;LtJ5FGK+lqv;|6n2Hd~EeEzqtaRlgo`sHKC>{OV2xW z4$U2g&@K9{_UO^6)3m#Uogy2h|9K!AvygDbh?Ip$*wBmTkCV* z?BVAVOg;B%jGb47X-mPuX=5}*H*ejV-|6UZemwXiZP=;iXqzgGp)%~p50Q_(!k3um z00AmaeBQ%;w_xV5T286GiOESy;+RDydOdAd$}DscJ+bv^gXruXLQHpIcgTKS|u|b~qdokhEMh zM(ReMu{r);4BXuGgqzPl;2w{T)d+ct8SR*?Zz3~Y{oZnOi4xJ!@X)S^dp1-mSJW6r zUmd{VV}SwI9;rNeCY$!e&yV<)Waa0cw)3UdX;Y;q+P5U05S$!eINf7P$~!*SeuC$GvI(t{4&Q_XEKIEGwQ1j*(=%rcPi$geI&$LS>@}^f z+so8?WBmFtz$ZD{o$Z18T>MA1O_{WA1W8O>V%3Rl>+O};ui5p{RH><1&M(zSEqmbi ztWp#4ZG6`4Gcrv3GV=bjMyZ}9j8_9^FxFf7-?9A)+1Vv23kDccKrf+h6E|| zx~AjaDx|NEXZC$&Y3X_K50S>E5g7vmejXlzR-BazXRF}302e=P-K=MV=rZt9Pa?x7 z>W*t|=bUjnQWWdPj{80@+G%R~KRDRBKyfZ6&a(3>%Pj>3vdO#;`i&bSUGHu$*w1+v zZMztmQeq-1D)tetUcGqlF>t3W;c_S$#`tJ8t>u{a8G0Ma#8E z+aJH$8T1|b69(h^WaJHmc%#u-u9tP(*fd>AIf5EzkM-A90D+&bn_JUPXF(~3(tcmF z^HTieWYZ;Z!<$*XcQJC4MITO$*I)b6sd0fbk1ANEhj!?^ygy%G?#R*7r%wcBWj`(Lq8@cbW@+H&T60T1byo#LYZROy*VZIB4#Sj^^T@ z-j3zzYW$b0W~v2f9Qc}aYiS1h)IRSrJl0*N0y!+&%KZ(- z$WyD^c7AzzH(tFejClFd-(yD>>(SCsLQ2QuQyQfQ77|1ZUBo$BZm&fD;MOu!V3ueFZp@L7 z&&)i-z`{yHB4pk*B#WBbt>~Uc>Uw(aYMBxuVC1gi4BqbUb-Ulw?0*`rWs(_D4V|5I z%!-(E9i!3b3U~6P>#~CTk1+1r6*LjV!U~a z@0X+dVyFjRL^!F(73^^P6)G_q*TrOQQn&{W# zxRupg-_%53?Ou|zb{$P3)MpeGnIWk9j*;lpww`of!`4LRYO1(sAsDS6<%KU3{ynoo2p!r{TB@$J#p0rmv%wRmxgn1g{b?8G-cP z<)^&hONl^#nEv><-4=x}Rj?iCe3Phlu>>WL+`rPOS(ArCoR8Bct`{pXSdWQpvDVpTuXuugeyVR z*Jx;P0*Du$S`8^g4VhYa_*^X$n58}5EbT!KI`@0l7mjaMwuZ4WidL>)q4V?X`lLf18Nz`; zEV^tx$~NLWBg>PkeHRyTbrr537*NpCx|P-)R~1~qANMETkYL_EgN6uo1yWzr|1POU-C%?J7BfGSfx|Oq6k%N93!bsK1G5c>|{UeAQWzGJ%vj5)(hn4;8H)h)db#Tz^1DE;q z{|duLH++L!ZT{_l^)oQe|0p55YVJ@d^R6B!X4}nQ%9og#8=!tiN#|#$$kFbEhLa_q zNk?Mv`}dci2b$h$C@Cp9v9R#s`YHT824 zHW(c3Z@EtRQ*t@X-qWsfRj!zY-pA_itULqYC|#koX1Bj-W|rc*Y*Tv_0Illy9EZn` zuR;qW4CPD>Tf&;)PN<55O{anaR@4j)JCk+(cvMtY(yuG|-~ko79}GT+WbW0vgFetJ z{+1|2KGhQ5QsK04Z(B`G&)gNdyU>5o%Hk<3EMz@ADl+o%$}iR-d1sB%DUAh6k}k`` zLfYl_()-$x7Ky?wa$X(|24?{P^?7KB=Jo5>LE+)Ift`fr9>@vPHkK9_S3#vy*W8TDS+mP@ zhMXJ&2|P`Qi2xPFc= zA{$%wu<07fvDd*i2BPb|XT15lmryc*s2-Z}`8H!>(3qNprZFy3wf{Q{ZEHlt#RX{= zncVF!cweK+3%BSL-Ju=zSP`}SnU8^kgY&CDk3rXc{xV24(D%Lz7yC@9=lKL2l!!1ckZktgN z%h9Uypp`(s2~LR`@MEv}y?DM;U|h$vo%h-I(-j`I#jxMGckfwbBsp}Lf+rdRH7dbn zf8_fI1fbh5>b`jsKE0~Cn%km}4HYN|I?NKGUz&E%7F!LS12r4k255RgsjQ;%6q=<5 z(Ej@MBZJ(xJA0e%hVz@UGOBknp`UBK4(|1_i`q})gCPQ@r;T>^_8v_(2LA$=Di=|Yu3~wW--VUU)X&dYroV_6m=~znCQ4pKB zQKd_wxDP$_<)gy(`fHEkDg8j@7)XNzd<2FjI4s-3d?suUqkx9XMdg<E9 zKI_wWv$aZO^?~%2<<=lYfGuvLx?e&jw)M{a(TG-gmc2kTf6K*r+Jj_A@0Q zRi35npYN77aZw|DYgzL1E#~_4VLW&PMXTWuSmci2Hin>2ut(Xv$qA3Q^Qy zuA>QLM$pc{hql%dd8`A#KMiikevrUa-5F2CnUtLDFXY{klZz}ITp0ALI;RFwE3Z~j z5fRr_Mu;Ycg-g&pM^hs=w6*Ugi=0PgY6v4QFFBmmS7C(2#M0W@iN(6PuG*Tj9S6`v z=JMKiL|=%CFJL#qS?+((Kipm0or%@U%zmMs)dYs;dh{6^^&W`5yqY9xS-ogxMw8K% zdvU&?Ba_VP?OW{t`ob&2?%7p%5B7Xpfie! z$m@W z$k!4Z8>O-z6ktLQ0u4r<+Mn}7&O2~zpAD4jpMm-(V_+bGhBYJ!5P~5)=@*`BETn@vC!621qoXD?j101wa2 zp<5LMS|nYeFwgWl~yx&38G4+YLkT8Gd` zYz776+GdZUhE{A`92Ep8vbI>xK=8%&nKt=Wfev5Jt5@q#ks&}l1HdUIwIByoH8rPQ z1w|+-cSBtP5YzNc0;PDsD?s|yQtYxLtrDqYYM3LxQS@-mu~IcpDjybsrI(~7u~f`|!p z;@!xiME{O56Rr!ukFHF$Ye*WF4mT-wRLxBc1i~(KG5vo0P-P*!26zCDvdVdb?^%nR z+HV{)-)M6PoT4qSth~t1E>FOr1CIW3+G6E`=XrKF@d zhQygIPfTF=-%>XIum`(}1&S3^cnP|*%YX#g2wcybw%807f4y|W8&;>*cbT969I9KQ zw*_s?>64X{Bk_zw5cC^@Rv5&}{#jYqU}obPF%3W3Likbl!~FCc=+p16O>ui4?#hO5 zY;W^x-YHx(RUWW1?zhH2eOkuWHh;k4L7|fIfMMqTaIKHe=E~TZr6%Ds>jO$XfH%o)6NdRg61Z^NL5tY*N0}wXAJEU&ko&qU!pjJ*ZB!IQ)NJUHp#LUm& z3rUXHsmhg_$PSQZVJitcp=wYNNS7AdKveu$<;Dvj1B3veCe>UXWQ~@ken|)R2L$=- zE7IFD%_LisDU_GlVT zUqo~?PP8n}8^^9SI9yB|9H+C?b8gw%a)H+ReaXcqzfDW7Ma#ZVPe-RgOb(V?w|V_) z9?|eUCI!u8SEY*$t*|4$A1*P^fZoVGhcygir&#uaOE+o?E27$G!5kTP_rCcuGnvzx zR|QaZHGqTeZ!f(7sp6yhr#L7ok_o4`+TMjI@9OHRzr8pRC+;Km^yyPn>=QySN)6gO zRE4|-;hy~B?Xakh0?^XAx(cGI9FJ{alZP}01x&tCVPj*DqXOioIE17W6we?v(nH3} z1VDF1aaTS2!4vpQf*nQBSVGG+?z+Xf*^VTT?LA}?5vkH$4hH!Q)E|G41!zyf=cGU? z3L5B1_beK81_yMEXo6Ho5exP8MI4uh&m*=_LxKGn?ti%V1PT=Zia>YxM6zresC!6A zVDQ_F5=G0ZnW-PdaT|`0kNd{O#hI_lj+c(IYcDJ;AR43pV)b{w$&2zKsHlVeSt2vEEbZqBi zG13T|Yyho8jkF6;R#{t{2;>6(gp`m_u;8J87MYT$vYv%K@gou2MF74wg19&k3R@;n zcYgZxsoT!Djc-TONZWg0s&%=jm;(xr&w%i`Ku-tyH_!_c0cLsCstGkM%=Ns+P=uq_ zJ7Pf`Oi#+45WGAkdVwi*KecCm6~JCx)yV0a{)C}D@2mj3qX=viB#!n6A-wHYR#s?c zX6ZQuL7C^9t?XY3S)e^Ymv}*Lw$MfG8-M18@o>D-a+5IG`^y8i}7@ zRy;#UNLb)7r@%pE{%q$NG+|!Aum%A7DjaXpdb>Nj)%PM1hIp-^__4&$^w`_rth^I0MQ}}SlJ%rBOrD{ zC9&Xo_eOPP0k|+Qw4wDs8QD=M2=%%ksiG=no9eA|TE&l_aa60WnRhsS5tIT z9P~V{8|?xN&Or8kjQOw4(*LKMozDjov%4PWqdG28cM24itgqjKk{rc2fYAEX{?KZF zSS2>~DI!iNOTdo|K&kMhtxa;SBk3(jz{$z|1V&x4SfevJ7C`GGB~`Ks1>>Wc*64qA zn6`4EYAGlv5cD|~ao_y)#AVbC58Ukg!qzU>c@3b7A&BbYMBI30zrFSY(HQzABtVo2 z0S&}zp3f0sf1X}Tf=x~E%a^2R6b7CIowLi+tzJzzIm83K28s^5V5$wN16~9@PblZp z*-3(eSAYZ_f+)NS`Xo6yf5>g1W8~IDmaI z5hz&j^z_C8weN!irS5A?5kWgs5eoq*&PJSS#B(0B?wFv?11&0o0HVYNkqIc!FNlfJ zBd8=kDvDy>0aVUu_K~k%*#e^igEuH_gaskKXd)gcG)8dZ6AkZ1$?7y`w`0 z1brZLHy>m($3~Y2BNO@%l%aTi3JRB+!*w|%tv(-MR4PPK`0g!GO^O}w8d4Dj1ZrEL zt1W>6n#RV)I;ix}Y5_1WJWg6jE;@gJ05|g#96+ow9%aaTYpG3LFEcY^`9`T-EG#XB z=!S>NWZ&?`mB48P9ta02d?;5z?k@%0#^lr#$f7Hpmspc*V8%~TY!4d(w=3vpfpx$~ z1RZ~oB8(RF%WEpRXdlR1 z+1ll208If1YX+~8Zw`(zf=z>CtoH~Y^e##poE+4i_yMTX^;o)YWMri3o($BhmewFv zCNzjeWz7>O(7GDcphB_Er`cdJ)f@_81%$@8=W!?q9Ot`nG;*~u5R?xBaVyH|fQ42+ z6LLOqtOlfrAnG|<{tyr(bJPJU69a9yL-X!quN-qmgb-AbsG1OTs*yOZrk%;aO1Wae zz!ZXTbjX32=ouQv(9sn%??ZWjakahpwW!CZuj^!~|2w`dGK3B`1Vo-9keg6V@bYlE zALJ8F0`;ILg-{!xMdvhNj0}#~g=oXOpTw@~!os_;WK2y>i*3fxsYX->i3(ZKsg8%A zEF}yKm>^1W*-zggVi2RXsanHD^kGczXPMnaMAbF>Dq!X@uN^u9LPB(=2d&xr`aX4U zpfhbC3`Hl-pfp2k?f11B04zak@UXGD852Pz)KH?V*$^_N%Ag?}3Ndsz4p1aoC$oVv z7a~|AV0xI9wmS3W_h|JEfCCW;2`^652{SS>BB)|jOpb_Ngz70HBha@fvoq?oqk|?$ zn1IeTBmWpdc-Yd*gT_5_7`Jru-iP~G3kP?c>7 z?zsdu#7EFd28K7%j=<|8ozBB}8i!sDQHfS41V<)VI}N{O9gw7?babJqsZ1=AN<_|T z&e^{}MgE}B=u`}c&U19Y8XPriQzTTz4-x@g7-)>#erIm7~<4xL4Q z^ymU;Cs$!`24W2s>=q_ELp zEimgNsKudaC(bIWnBD`DCPrpvJgCbWgUFzplA}5b^YZX+44A=ykywN7_jkJq%K%ZW zWvV6T{!dk(_CHmhva<4(6hA*dU{)-*skN)tyDr4G6}WAfK<54op&E^VP-;%V*28Qb z&|r(B)imgYob$>kKs|<^Lqp<==CD(}S#RDj9?prM)B_$t<1!HQHz9Cex+EnmlcCBa zDoTgKX5boaVGt}^vj`V9F=n(5CDIA%N;c1K~zK2z&TFcZ+LO)tUzM{MfgOU<2D2UsD>~~wAe)t`CDEY zHkCYk(tUltu&C&oXlF;qX$G%NGUug1e>gvkK+;1$A$1e;eQ_}#gvGDZ)CP6XE2qwb zTuvs+20o0ApT%(Mg`uDaU{~xYIyZt20RR=E4+ssNT>qyOSbb>$zd1m)7T|FJkbN)= zio(e9@^a{?G{NC{4|BQavGDNl08qSvCRp4J7Y+zj`5rsgz%W20it?CBE&$TM*u0kj zW>#fj+CbQ4nFtZ|+UMKfSpoj-SlnZW{<4P7+|hBh%Scvb)=H`4vcN6IOVmNW7qGA? zqPQ+HHSqp=^Atab_C)D6iR*oR=hVxacfO?c z+}-zH$z0A|7(F;tu6A*865hG_X2UI~_eE~z*k~=(WYj*h&1Qd;=rAuzQ(KYNYf z=_$2^6i*ZrD2Q&Uf+`>te(;cExln5`UURTK70jGGj{bQYNYCo3BPAsk_aj(Y%=XY*ykF19OXA{i zfk|g_yQ0s2&(3ZpY?4B@t>8Ck(Y3)Jk2-Eh5>65+y^w_S4Vs=~g)!(!h(jO58`Nxy zg4+?d>EFJ4=eLks83uu@5FGn>HBg*lb4~a`NsVVdF$oDTAK&y+#cpivp+B&d8!z+@ zpMnp;h#D#W%XSkt82iS!liu^})&<7e9uGlUvFrlitHfd2^jbqh!{MwzEsE^%L{E?3 z7~4BN2EBDnXnZ}n`R2|3YNA8OgiGxKo!)+TEEP5NI=@-jS~Ja9(E%WwmXwLIq#Ef_ zJZc)6>gF;)#_RQKP@Zm7jvZOo&OsZ!;HB zhv<%W&1M>>8%9DZ_fzIJ&TChI?UCXfRy|4DlV_@8%{1$jB77B<@4SV^7j~ zkJs>qmu7e0p;Z$tZvz*Qk;W2{o)D=b$fbR((IAUn5qG7Z#Qv$Q;IDhE1XW<^KbMh; z@;Icsf3C>qn4JH-o{a3ZDuwIUgXf=W;I}TISA=0&9pI3Et}Fj6@6WqB>Mnekk*&`Ve?F->+0fE(skZx5c* z^MRtl?bqAD#}*cb(2Db1c1W4}2FWwE0Jt-3Xvs3bG#vdHxa;1$qE9P~QI#L>FPPcb z;MEnft?c-<&#Rk3I1GVb9`L-dkjJ`w=9~ib3z7Kv__CFn11RM2-YNwFO={afEI|6A zY1<67(Emv(QWM*dWE}DwVT{<%XF3$m-B(cRP>d2m?iWczasEhI3eGnrpC--8<_3`6h z`C$)%&q1IXeg`JGcg1f?Fk7!S8JfX#T|Xb%R7azKDwit=Q#xCKmHVxxLN}i{VH<~j zFt(or9A4`9goNs;sWrh5W@mz>%GO)2l>^j<8HhofWMEeiTOd7(EC+ZvYIY534re%F ziZ%Xejp^St{WbaRp^w$2rIfyaik{9vSrhKM2+%?BV6n&ztgiXV@^!!D;^W!u?CeVv z1Q=kPJD1LkTIlVyYPgO+!K+G%kEgb--s(G=o&WtCbNt7BMI00kgTUf@SC=x^vc3a~ zcksgh9IS{)Z6~Mei1@)kXPl736)4I(Iuu~!INa6J(C{KUHpnNBw#}hB{0fw1xLHRq zM8=xEcALqKy$7Y%bhV&dMPsIBmFt@K2E?F3FgI|JG7lfp1WQed4zQzoYX#b^KPOV? ztBzxrG*v)7*s#Ipc+SUu$g0$?M_!=o#}7v-LkCDKV_pIfVRCG|2phP{4wfsw&e$W^ zm>3lm6##mc$l8S>^p1XO9QKGGk^Ahm=~Z3Xy?*`rL1^V>w;aaq45!am8}AJo?^Qnr z3K3K|9~t?t=NtwQyw_J+(=Hy%?w7K9FN6qXy6;U>x zQ#4QwZvbkGY&SuV9O1qTy4}-;f?-pMzh1yEgMh%b6WiP@14+&+l~WRq&c~0R|BuD7 z3BfRjR8Caq{O6i>RrdeyM_DxVpx2l8ssE=VEc*OtApiew@qaVp{WmwN$)`%;M{o3a z+SZMM-k;K*jKOBqQPI+`1@dAX#D!xYu-R9Ai2pv~A}Z~&!-$L>9G_kJt&Qe4^jbf5 z(#Fi&T5wrUziu-rs8GL=lw>D-W2$Q3{9;P^Z#D%{r&jJxr@8QB{F~Co+yHaNXgBu$ z`kIlw&}`kpR{wVX?AP|uslvjmJs;FwwrMU7^|y`d$6NMIzQxmKVC9XoAAZR9!a!o=Ht*V z&mZ5qS=TalG@>%7h4{Rx79k{!#`7b#- zHV2bj%E)H>keeH|!TI2(v2lTb_2TuTT9-q1MbQ%fW}T$XEn;O&&ClyI8xI_ti=T2r zcgIfG(+=-od;9xX$|Z{R`|9Ure)!)yB^w?B8JnOCt^)cO!vTEeQ@QYTE= z{}Cu;xK@0WH($CiF!FOo)Y@WUZtUc!7Ncs-V|#No?_`YdLCjKU+YDPkKzDKRX2GKd zYwNNJPg&W|fu1lX2#Bk}-w>0tf5W15ZS%{{TdSc#g~#J*ttgUoD+Ocq4xGoUo8!&M zL2Hp9*Q}i4!V%{^5f)zs+Fal;Gi>qD`Ug1cic*p#Q^kwbk0? zV?xAuM)`P+L0r~ut={kb?5r5);`-jbm=uAO{e2Z`7pJw~S)tSR=YZD`E}BzaamnqA z5kr64-Hrcn)ckEm290m+u~Q(W>(O4Pje#cr2eW+pnOh$e*qP}S3ykG}87b)+6Zkeb z_o?9b`enRo1z2{3OHW{I$0lap@-nv4gMnl5+5?tkZ+Ai(0Y19{V>z&_Dl)ltsZ->L zzrEcHHMz=}*{J)!HETTS3%U z-ZAw`j*_mJ=frmQU~EUUbF^9%@jRl5RS{kX!9dhmj2P#9M&d!7R^n0h6GhA8EiVatGMZwux^UoOAyL>Zq~!fP4vKZkRo}1 z;~^3iOG&pbjE=*N%GZzo>KAi(imMAUnFPRQMdRgO9v*v3HYdNm=CFP((M_hsIaz?TkOKp~6+0$XJ&-F=vO|@tgNBncE z8^vLo?B9onTNZ_`3!YvaiuI{^f9all=w}YtlE^1+Y;Uh}(j~yLDa8=~Q_^QXR3mjtpTD-@VJS0xUNU=`-V&=p>u3c+% z9lQX$D+sZfb4gzS}MuY`=t9@#6K z`|+yx=llEq?&Ev^b05duarCZt#dTfJ*ZDlp$N4zV^Kq^fWLO(`HT^EMWVZ8JuMTTx zWGtt1aJj@sZgWg~Gj6QGO`)c?nJ=_%+_0)@;W-D(H9nD$b(&*2DuTn9mK2p?zV%2^ zP7XN8jI$yxfy1(3YT{3NUBQQb3VCIngaV54@{6o=G;F1Gk|txxB}cTJ^NO6!MFTdbtAh@!8{(ZBm1k#TZS20bd`b4k ztrkL*kNjROOUNHauD$?wtO5(lM{SwxV%1b_$%wD#` z9g{3IlCfq*)+Ie<588KZr1s1umwIYk`tVucoc-J@#YaMRLwa4z{%=mX$;gCUk+h`V ztLDroC)YmGR##XZ8L94;+U}!9xFV}QgFpG`EID*&oH}D*=zO(^4x{zaO|E|OwY;9hCfH{+Kr7&e9NT#d7pX6*}DJ71djA`+H63D zvU-7Se<;7>Sf(l4j^pqmRXRbU)uDIzyF_t&bf-k)j`$cvi9Xe=-B{3Hwd63?k|F7@fQck@?L8-0nlA^EZM)kAG1)~j`%0lon@ttXFuC^I- z_e@QXU(y-1UfAy!HaE*>u6{DuwVNi-Y50Pw+sYR6%KLVHy9g)EJ-;FWhd8h^TD3AT zTGYCTH(5zb(CJXrsgKs#v=c~OJLZz?JIcm;N4X3>zB~3hFK^`4fN1?fo1RaQUc;|n z<0rKu1QWutvXCImgV|93R?vXXKw|$4vo6JnV zCLtjt3)b%wxQ_&E>DGB>IZS({^mhK*DB0!lKK>8v z;z{q0^{(W>HHlBpw8Hldjyyxhk?WCy*B3TwR67Vv`y}3MO-l&y^+g_eT{8BWr>7M{ zZ*vAI_~%b&dLi?uAbwz(2w4Q}b@LNm2G3>n=NrO=DF?@y;_}VEXv!Yw>?yB_009}e zQM~5I``tN{-_$!CbVzd%MvTr=0S4Dq#TWOM;&Z9oSxV*%*J#fUs^DIuH#iw?`+Pbm z6=5vOvEP)lLVwh{b&LAklFRZa*>(QiJrgyXNu%XI!fr?Wr6+&fG9R6Dva}4DuF@OFUt;2lN$XGQGxGA2T4}x_VGI4$iLt5t zXAk*nY!fwg+CV{jYdZUER*ly=*SM>vC${GM}cHDqE_#3$#OHjuoEDObC~QYV+T-YMcbr4!bazk8}t%}b@);q!D=q+-S5tXOVo zLtGyf>BEN|56()4%5M9xpxPc<`*~=0n^nbSc`IRDNM!2Nvf--Sn2OKj!=F?9-n5p79C_Btrd2$Q0b%rT!rWYgRk|M zB?LEn^6bkDkFGiaMPQMCKlWYQO+<;mKlt89)Nc7-grI+q-2eVp|8Ge@;${9nOi4p` zf$_aIa|A$}`0;(|;r~u)E+1W7hi7!Ym#SLSQ^)5`NVO%;v%``YWS}V)`Je;W-Rtom zQOeBZp|d5|Dl=m5xy<`N?w>neYPn@~n8jKtSd`D~we>UBH`ir}e=hfrS7pxD`R=v6 zTD*4o)D3#uPftk6B%l2{t?6^wMjtA?@J4j4>(_=scV<{Oso6&kRyb(X=7OK_pF7-| ze)QuvD^cHD^qM{f%0FFu+F6M+ih##aL9;39z&(>$K|8fk&^KvKA3YsD{*B387yRf( z=M@KXgH)C9Pye>3WfLt#zP41{Oi{j)Y}&dcTFYP`VHCDg!N`YISYptMBhRGuTM8#< z#i8H||BAlv`l;v*fy~7{`@_VEd=Y&gEYJaFo8oguhIQ$Fdkg%GXx_RGRcRSV$AxPYc1sPPR+m@`nv895Dz{dnesiZy( zZp7y0MTMJXc|&paCCU&!i;GTqf6_=qzn;^*dzqMhavV;~K;b|(S|XCDKA;_7Kjz&W zJtddB=-2{eBvyv5f$(EgQBfhpLn(;1kN*RM8!?gff8=0mJ36-YR?eNC z*qB3JUS8Fz?1-xCLSM(;80dV0e=dlZTrpyC8az0bzqab3UI9+H7)UXHr(daZrd8kB ziqZB-T3TAwd!uO^rvGmY@VJDW&GP+zvF6jPZrs~u7tX9+>7jF*m+EkymP0|TIyi6U z$h!Ll2mMah4s3r~;yY-4S_L`wA-KBq(b^{AufwF#uD$sVo_F$`w#UZ$_nacACuS81 zo)k+lvY+`0b7h6IyMtPTjYn#lc`60uoF!OY^WA#IBIJa^k3?Q2j5Fs>-R@26bEdyE zYCn?K@lshF6dRi(E{JcH<#<=)Pvj~4#fUl@$iQy!y{Ar}K3y3t8I6A8Y4f!|<`m0| zP5J$?!Rp%REKqeCibeJHsoO%Z8>J?Ca0zA~I?&c*nFCYc=o)_h?5|4xf8?j5Cc<17 z8=^5^v4<;rgzu`@r~n~m=ejbiVZF98M^%gCMkS>J#bVISuII#A3~&eLS6p%SuB-E< zl6xXZB$D5~u}m)u5$9TC#~vTyFR%>;W@g=zC%cJ}qYdLd7HOY96GGUiFrK+`W$PU3 zIS+fb36cxP7Uu6+eo9VCPZy%5rY0I!P(|*-11UZ@Alf`&`8ImEZj0BthsBhy>kiP; z_Nk`d-Mn@0Rg4*RP#=h_o@&-%TIixvnC=ma)~yN%FYDuUwH;SccS+msj{K9LCDa{{ ztbK_$c)m6u=Eo}@(Iu84S^j5qw9TdI)^caGV(KbM>}ZZJRTb3)QvSB-rv?jSYs=iO z&I17*qAAKxA*vn8x~eI-HpP7{xoguy)E2)YUTm_tTfHWJVjbG*GN3X8B zE-o$(j*iC0$9s*9nL)b`{q`{#8No?OT*Utj49LWK^;1{oswI|8 zz^|8}yVPN->}YONoBL4E9kZ^(tP7hIRV_E5)|e|?`YUaF(JD3${M!*=OiA=GjgF4O z4>6Z&VXgt48pip?PfB}2;$%>`DCZ#cqVV zrh7YIev+fC&t!FCBH`nmj7Z06W6&-oDSD|b4L_ug^~M|73$reKHwm+|=eJc6tuv%| zuL=*(9O~cdI9#QV-ao-=apQhhYZk+(-5mYXwI1B5y;A)1%X@=T@7eFAJ3YVUN=-yz zmThYbp4f2yjBrR?AuEgPtXeL?vY$EYAYix9F|V#PCX&HdZpoa|@=@_@pTq#y;YwXT z8d}=zKAs@*QHLb{A||j(Uncfu#{y090s2k5DmQmdFH9^rcPzBKs*Slx#n2Dggc%Bu z^9}@F)@l_h)TEED8IXU5iZWm5v!>pT)0b}D+9?t3cjmyEW4jLR+OnO7I@dVabjiJf zgA%1_iRhYy^VX%t_R{eA_BEDtIVVn>$Z=af>NIkKi>trOi&Y;r9%y6-;~NNtZca%*|aB#rhs3%tIg(TdKOid#v!t$m9NfQNBbPkdzGqgDkCocI6|DVb#xTQfD za$}uRY3pg5gCjm8BeU82ymryB_;b{8&&AMFBrA=$m$Kf?^Jt%*+-6{c$|;(eC|(8z zI!4#T_`;_WH+u5+j;Hjj(%mB4!i5E`8>;rwKkW+^PRcPnn4oChUCvR{3nImm+3;6G zRf|E5R?jzf=8bmaW7?}Zr^cNPqEClw*4A_%X>c4#ZjwH-b-cZ>UvzDGL)%p2a>|wH z8aC$YwY7k&eQ48RO;9))la=*Vtp7ea$*pPJ4_LeH8#TYqlCsZue4po4o#?I99td3P z?o+ttN25gU<|aAmz+BAp`20B~g*_E1h}R;%QU~adi6~lH@}`^KqwQ-y;+te5H2g>o zUxBV6l=NNmSxYTZ3)eO@+*Fa06Z>rJ#f6NNN*)@VNS6geYc=lYWPHEo1t8U(hklgRK2xp(bbwb-gHaEPeH)#m&pq9~8y$v)KakKoa$T2~2n z7@IZxL1%&&f?hyJhdTUCPE$fc0_A*5jq5kGsX!6i#?J1hs;YRGD$1Lv6ot<_OAt*C z<8EvBSez%$qPawsCn+l{3TW_?A^cZPFT-pHI%d=5^}NnP@MjLo8zhPU1(pWwc|rzbNC(jJR;2 z#BhV=g$vs!@3X;iH>b-P7(|?wJMBD~HQoFv#ycu%eYU;5b#Wvqx zYX~0H_}0fgBB~aJ8!(ydAH6bS5P_J9-`6c!QCXlSmyBW?LN*K0m9UEVo`Uw~yt&-* zWZkkCEB%X&B-aZtPNEQ-+xamrj@lhJTTyW@dW!q71E4QZQN4>W6PSx$u_rAB0Sh)d zvu?}|ddi&_f;rPi=%F4!mduocie2eI|Nep);%V9kZ~8LVeO*UQa=wr*hua(itX*1F z*8e%+As^vCd^%3Zg(>pMmo&(q6fZQkik;`&^G$#j$(qofRo3EjInUPeWI$MfTF#<9RU{)W_P? zyA-4|{o2Vf7WNl21RwN>+`fGqDwPvUE9$dBODbH!FzQZ`ZRlzF+GCm0!nv}tf^R6m zh#}qe`DBexFL`%uaimmr(Cp=pofjRZc=9;)7MSp8X>#C_I0w5+=(EF!n+5S*NS$k$UYPGm#(88?y&`#!F(p zt^3i`wDV~RAu1m||MlpX?k61EjH9SrSS~GQvLxO&2$o`Z;#v9V-Aw1Wp|puVEO zt-LfI{M8}l0oTmf{iW+##lAMUwGgE#iV#%Q6xCZwD)$9aREDXQaBz=ncjWv!{OiTC z=Co3f9G5}Qbl=+Vm66mtl;3qvRx647^zG1NWyf0bupXa zo|Sd#_wV2DNThgt>F?in%gf8rIS%?5R)Hzf^Ka^$)0(8md0NwR`#jL3Ktqk@gx8-x zzkKp!3)(Z@B_-*jSss|@DT3kU%a>tEsAk_%SHFtafk4E}>}=hyU*&*QhGu4QBobXk z3cf9l^p={M9Os^5OXkI;B{Z4DqXP>Ac@KVWGrK;Z;JyFuMsvb%pYr5S=UQ>;{;x+1 z)8wf(LpL#0R4KVOEqUw4jjqwDV|)raI&U)ArZoS5XoDX1=j zO7W~QNHMIt&9&NW1e$S&_b$o2X&J7yRyxa{%Bh3DFaIs_5JgL{t6{>W!g-d*lk24m zb=;$ub!myZr&q)PQ7&jpZQVre!YOGkaWBlt(0F_x=#BzjLKx|seo+?%YrgJwy4C35 zT%vxM!}Lu!-agvejiz|g?p9@=)q0P@2c1TQ;gjCq*SO89w`iyrbv{urWouzzfEkXjG#$WY+7&y6=u1bAy&;+wEy_QGgt5Pa`_yv6d0 z3KYXcF;w_HEwa3SJS0_>bZjKfZl-+bIMo14i$9P8vn<8*IbS zadr`Yn&3v+@cT@63Tt!9`SC{CkF7 z_BnVnAOG8AS6WT$-`3~quE^Ub;=8vJuo>Ser|)T(=3@)C@3opQ?9-?LAzGvthwz0MKmu2@pe+V5#JZV~|fVYi*nYS*?Awl~+YK68!&f~`?C15gABFwHN z3Gjq}oA6|}{C!%!K1^Ib?UNSHdMEBG{5GEqS1@^ZT}o=tht#Q+bPTHS=0quR%^82lW}}~2)XuEf+t5OD;fUUb>~qH~IOjJkW~$bE5V`Lc(#b>hXdRp%l7D=Q=Wdb#<8GzRGS*Q{b2FE!;}`Or@hq zA(z>9z|u`x*%^IyZ1VzsMPznza(aC6&20sR9h=r~TJJJ5H><@^Ev@m<-@@?i2V)z9 zB4-C(aJ+eM^cX8FZs0Kq_9@m9KEvc+BhGhMm$%Lm(HS3;;J8hM zt{mI-IwyzO9Vz>ZGF{i;qHgU&{*M(W`<{=-_K7U)-?ieZA;DI(Z*T9jkt{dwk}=bJFu+zlP>!X;agam`E)gpF>j> z&iVWy|DKu6AOIp%(GmLgRo^qDpqFY!{WmNeu{G0sY1(RIZ_h6xA}ue!J2o~JkLA~| zU!Wll?C|boO5J!Vh)HEZUD<3l&~%{qLtU&Z1vP`2V32o@yOFQ!5nJX@oWdhknA+UG z@j)RE@)sie42El7E_}XMv(GB?!3mNqyY=JC$933lmuoc4|2{D%@g?6+ePB>fKUJBg zf%&*}YMK6Y1s4^i7l7!gNB}2fxYFzacw0JQ?C=D{T7p(j__I@DV(;I*gAdvX(yN^< z%_snn!2j0Y23V^XO!=xc?V`2q-q1E0035qJE8Z|2||v zyDLXW1^=wX*n~A{^2*+$P8|#jr^V_S$n6K~Et%_w1aPyyYRA%S+os(r zl&tj3ZdkVv z`>eQF=H~ldB_%gr*YN=O2nY-Jh-{mkO+z;9Gt+pvdu~CRjhcaBuvkEj+a!gvVmNcd zLZ8Q*n4gA^cDZIB7~zxKNyS4;RV}4ZV(K#{keReT7)<@!RrYgW#V#&?}<)$lSgrFExkl^mwaaC751&Aa&4a_YN$(#(wS)rcuZ-iXg0!;^YWazaACuc zjc3Og%OU?w*7`L>V9dxc(fSkNc>c|ee}NLA5K;}faZAL9>;0b(2Pz|=OfxL5N$~^{ zg6rz)Se|pw@b2A1^qVZu{(ehE zX}f%U&H(ErI#MdI_W}7ax-k(cfd(Zs@@_aEpf4Dhc9d5z3sgBkKao_j0-`Kof{}$8 zU7!vF40qJ}eeFs1MIX2${2hHB%#F=$@Gj9tO6@PrW)b0>7S=kEk6ZOf6>v6YS>;9_F# zH(V8?%_n2|$KD{l8|XEdZ7$d6cbB?x0%|%t>7ic5;3*@Zf+lygp%c6y*cMHK zJSZ2gyv81YO&EZ^Y&*0xHQgb+;5>e^xbt(v)i*IQlwc&V@d~kW(|})KN4B2-YFnt_@GE#hobJqJH>@QuCz+YYVN0%`kW-c(3*i_ zo~d!9aEKfGuEt^9G&Vb%sWlz1paY2jiU_yW1q$^qeF_ymD@0GXuA55zG2&x~u)pPB zh?@}QkTO!<9H}-+b9CeT=$ls%zXHn8=r>Qre*aa?okauXJq$u|bTkbVNAq{p(PqN( zd1ZI<$i&}-1KPRiA#w)9_^hn#$pvTi9y_mPbdSV_VO zn3Tpv@2`ojA%-m=TQX23+EHj9O%y3JkN@joe&2F9P-fv0?B%w+d>xrwgXv9lWh@WcUwKb!#yCSu8jpszAP-OH?9VM;#SDjc-!SV_5@C+}`0*Jy zGPq7m5wbD*yto<<4qOLzedYk!nj`Y+tvk0$kk_Nd9R2o1T|Dn^Z)p&~!y-%{g8(0l z?}D0|uGUahmDOkK<$vbf;3TZHg-G*mj0*}+SdrHZCAp2+-ZH7F8#2b(%dSQ}Q_%J? ze>JYO$KT>1;4y#>QkB;zQ4p{ISst!B(M6P#5uR2|F zr)Y3)sZ3=b$Oia98XB7CC=M_)zXj&dyC0Io`)+Spl{xpk!Po-%ZAZG%-MiXIzyP`UczD3)PCnoy(%YvXh^5)qfm=9X zs7>ckA#5rpY_;}{lUHCW-;XYqrkK*CU}7D&PVXE7AnXQFxWJMb_t41D5V^JRn(Oi# zjn+nD(`j$*k7A-fyZ5a=mC)q*2ql?kxl4auNVDa*Dw@6PqZTmhB=YO^>(;MxMN}Rf zAIFSDB)}5|LbP|_%kAFh-+lN%T_CWs5bIMtI3?bi!n3kd@kHisZI~@)BJ11QMg+r1 zA3y3MkH@D^H67lA>{3QEb?~JJ|CHG@iRtioo4}OIH%(npwr%N@={gSCszEPbzNqK}oe9Te?x=U^ zl2^vE^|Gyd5t#Py3FR!Xv@X&m5eeL)q^6Wj&>2ZBaC3 zc^4Ln$jb|U{yd^n@??4+Ad`j3A%FTZ-7o+_9)@q@!blA|#(WDx^3-&s*qNe@x<%eJ zg}YVFd??_oC@L4#>A1Ffx;foPYw^2iC#Zf_)b7|D;M%&T7aSJ)f>Aa;0wb{y$ytjR zPO2jshI`-t9azAH*g^BKOh5H}(S^6Sl%4h6-_tgLY^Iqx`dx3jViY_+oaE=UG|-!{ znFzkM+oV$*p_LBuDuvg7++i_P-lN$~;p=f{B9LU0lK7zDTlzE=P4R$Wy*)Ei!%RR~ z@5OU`teFvV%E}u!6e4OI2UckDiT!~XCZpG8*N4jbCXJb?+-bFBep=%)rgHc0aOkPT zXb`&Iv`oU-AR9_^wBh`r3p7W&-9esg9+G`>n@^67kv*WSYkETtkFkxiL7sUqlT#mA zBkyiivexI$a*ARvy*msNl5tB9Xjk34W+|fww*9dHW5cPwW7TN*`e*%*sYd2wH zE@cpP9kCM2C^wo(dn0IfJSIDW{$lVns$4;w3p^D;kyTL5afIM0F8wQ{srB_Y|CS_! zVQ?Q+9eG)onvcNAq7MJK6xrXCiO@Xf5WT({qdVKmbYJN5c^mmwN0MwR6q7Qq@U@@# zRL7z&QNY+R$U;;6t$)sTVO*NA>*<3!I~(2YeZYEceW7TkheBP_>p>%A`hYa($7 zR0bs@&35kCuBpX~g2KYcU+N5Bf;EC~%k8rtOY;1*mh{j}{zr1yyGxDDwH!OV(W-Ej zbC1qscL|Ir8MCgO72OZEavflxNr6}dL{??cyAT-}34yRj2t0%qh241b(CE2+G}PV~ z-yn^(Qm}h_?&O{8U4d2oTRJkbN33R4wvw&6g6Z;Qixufr`=a?L7i5?7mZ!~FlW(86 za4Iqmq?jhp;OscTbQQn(JGIiwCT!=eid+^v3pg13qtw&@{A*-|h;r(+f&v2Td#U(@ zIhiyb38ZgcNoHU==Cj6q#@w9SU;3e;z!pNA7G&xGWETf8UZ&t`hlSF)B1ZK zx-4wrrYa42RhDx$?`SCZ?b4IsF%fwoo6Y?F?1P?Ni>iHCj0-QU+MCcouL+;}A@F~KOw9$W#w98e0BEq=4v zs~A}@`j8xZ{V#n%-+_^_aZjXuN7r=pnm8b9SC-r)&8x5$^L}I(rC3^#_H{X$=qwH3UZt_yd_<49cO7*irq!>{B20nXw*w zjtRzl)!wU2G}QYT7z)PcZmEQkk6USKQn=#=AQ#GCoh4z|j2GP;Z}2?9Tq9NU)$wOx zWJew}PNq$w;de95RQ;CiyPW1bc49M+h{)jn0Mg>?0~6(QGwUMijzp`waZ{zV(A>ZN z{LF#x(6JiKO{Imyy`*HMwfld10hE$*{4$`T1`LuFUXb>phC}|A2y_KpNI1vW*a_U2#Qv zg2&P3JYBUsoWDv86%)+^m_9?z*Tci|#FdJi4@t=fUx?O6NCa2xS})hbk<)gd(lWyT z;-5z`3VDwCRK7Q^#{{vyq#GIWN135yVgj!pV)(Y1sh`W1xwYa-1ta>#w#oi&j$4zw zXV1bm;6k=vT~TdcnQ6DC;P)t$dw!tg)~=G+bD=K}mA%NFjA;%MPP?-^`{T=sJEE)J zD>Y`L3abuu6hpyk1Vg`rQbB0R_ zg^BL(T1>Q+_dGgBNuKlW2|2LIY*G1!xnke03)?*k-L;c}8M-7_;@7^GO0HUNW0jE2 zC&!Y)}(#}W8n~N&% zF^7xzPHc75Hz0jVPydE-)oT*b14Rq_zLl1W+Kn^|`f=dhnai!+g&{s3v6Oic5|k?} zyxELo$Vfwt@&HaZNH5e;?Ou$Y*_YSlDV(l7!mb`fH4QGz^XB{W@eL6Ev4nJxf`WqV zMB0}x-yt3$*QcOTXDffFyH?ar;sskwogwzyy;DfA$yS4I(W7(sv6^?+g=f#6eag$L z?(b)h8VKzX^_7ZmSST1LVxIb||Bj1kn?Zf2z5~5;M(c(H;Z`AQJR@{y$SBp4chdt_x>wgKbER3uq)0ZNO%t`Q4%2zp zu3o)KYEs7OsdDl2@tsR;dD~*bCnWR@MWdlvr`rkgkXZRTIEWOOgV0$b&zXNejnVSV z#(zm#X4Tu`7D}hwC?or}%vp01%>`B(YW<7K+3j(ScW-b7FDyi_IYzlI8o?@HYHTv+ z5*2i?CHugpW4pGPn3;u*K5g2P>u##mG?89DQ)ePH=@M;~S*giWV5@fV(xqh1r_dVV zla$1BGO)3EiGvaf*E2KoU0868!@xvuBJp1I{=Ju$9!~>{*znz234zJ2qhUg)_&>Vv zd~y2u<7B0+T2N3BL`GUy^W4^4i4r%_RA|{*dr;l6Z+Am=s9B`!8Z*mf$()$&%|FM! zOfP(XP;JQ!IifTb+EPnHp>RwAe@aOyn(Qg9+TqSaBkHpFIa6Jp=$y_G{x@OxN2E1f zPOsi#e)oDx7*3U&ks%dU2eg-a7RP_SYrM9)!pY4&{r;NE6X-YE=dYOhvYajlkMpUK zI+R+uK;AmjGegEx%dn`ZYs;q@UO~YN%%uY1au6bMafw9gilz31<~3Fd&Mdj$Y(UV8 zuPsk=a&q$U@@oB(BU)J7|BdupF*PguL%0zlda7Io=aRbi-ELy6bWQkemn|zR`|0!N z^Q5Mpg8NiIhHW9^c!{}mdFI-hfaGGG--L_Xo!G!05q*ob>LshhOLraO6i+!w1eDd9 zWjLbJh1SL`0RaJoFf4g)$mZ0prx#wZY1!EYrKJg4cYJ0fdh$E=|1GW@%J3HWyt(+f zUAEk=3%EP4kFDd;szMzfOO!+R=G7jzD{ziu(vaS1q#vcl>UrwmQ3ArMIY-)K{^L6$3&X;&_-?QWY;TNG!$EeNe zS?yeB>3M{N^iPD=KR5oegQkO7H9x%6XU}@dym4%wtgM}%xmGi6D6G;pSKxIpdA`-$ zE%^6$5m%vW)~Oe`0uFD}naUJrdtS5Kf-~4Ed7bx#Z&li~Cd?Hj-wt|He@XWm&~0ur zwD_IYAimZ%=l$Th&LuydWH(k1wz#HI&16AYx4U=4@>hRmI4&}g->U38_+&@7gS%j7eG9dB| zojw1Wf%ggt@J2Yt$FCo=wR~W%(B=DD=8oQ-rOHZG_9r_YXmY$n<*~F;PgsHn!8&vI zQ2rA<`SX9ibp82SRV4>KcSu2AjZZzgE-+d^aX9j!*2-0{k_FLk>_;EJ2r-CSx$~rN z$K-*S)^T2!!2|8CezARej8*Il=kEL0-MAdchd;53eG<*hQ}DWR>{E;3j)&VHX?uH@ z9cO2cKNeKZMpcmV{^!Maw~c=YGv#3TUmWe6giuh;^y8l9W$e7|SPKW0m~!dA3`z(s z7%Q&PBEDq<)A}BozslzWMgo=9oA^E*fGiIL>M2$`$V>N@;jTpeBq!H@5?tfhwC+jC zA+*3LC0)s`(}ay*v<@)Ks3;tgLL(9VdThu>{DX83Y`a@Th>2OPsbtQDvqIa|H3|}< zQ3L7@EUo4A4=I=C#&O802d#887ub z@im2;nK@_I5Y(&UKMa{tsvLxi{ZLCfQ32fsSoo;Q6~I>3n&+0WTV42GtFEaD&5QNq zIZDjMNLDK5P3^{z4dpvP$~)h|owwen(bLE_9#KP+OvF{xvvnd=!c* zr$~sISR+gl`eM-iyOhy-MDf@IQ~&duBd>ZLd$OtcIm%;P!TcHk=HIjb%QJ-FgpLPZ zM*9q@iN8>mxirIhL!B8_Ccd3IDPuRqpC#G-;@>BC9{s+1s*PVzhSa2EV)D!^qiSS? zQ)g*z`-SbH&q}|4-y|w|jg;NU^;@5hLdo(R{n6&L-;0XYL3ynYqAdD&&~RDIrJY~m zssvt(Jpx=_m43s)W)_`59>7 zuAL>W#a!=%eqe-{y)UE_Z;+ZoqoWOMZFje(9}li@h%#80IAd^~bB|o-hR&=-TgdwK z=GNxF!lOHM?+oMOTdBc~9``rj5E2%KrLRBhKAeT#K`hGVVdxa8Ze_VA!gINXpP6se z&hw|3k)y0+fSz)5dhV$8Sh^lx`xAyz-lX9jo(D^`{c(%`(;ou-YHZY-{>4Kh%chvN{D)&KIt&%WvC=wySylOE? zL8xOcozJTQf{}Sae_=cRvz~Hyv(RUj1Jga$BYm`?IJohn{{q&%uNH%W)XHL10mkzB zxeeF#3|^&At7d%Q@%^OcCChaspImCI=1d-_MvhAKx_$LS#_-H*I7=Xm7Gc`d6k9Vx zGaW)(T15N%`<0ZHwJa?`=jyCWyb?_6%;JJTJKH|A`+4bQYbuM3DSYb7N;0zi%=y$= zg6{87jU(ybk+gMpd>B1x8kqgldT7q1wS)21s!(Zu&q_KsKL9Y;fGq^12Ze&oPf9hpKisg$2ScJeC3hM|6X3c1qyObxmR)9 zo*aU}EDXCM1+WOLlxZuQ%!A=9eTCowM~A3OyDq?NVy=IQA!Y)475)WEUB7)vW0yHR zlLWnn_00vBU%j=?#$<`D8Za%;-ustOd|wV;o6=y|w@)iI8P4gbuMXT%{ME=JOV$2? zJ<4io@vWmT*t|0be0$I&XQ3AS*CVsZXsZXXZT9U6p|7-LM(}7c`MF*_!)Z1Gx8LWV zHb(CrVb!j*>EUBfEY#*c)EW;MlgH*QZ0BFBu8f}eYWAmAU*zrO;&?2FDA;e`R>(oh zDZ*`QR}T*j-G`$OEOpfJ!qS!K4*9||i+ep{ncaym7LH|VIu*?=5%9~ z?UH|z{fM0|SEIzs+U?0zXg8KhZ9x?d76M3SC?NgfVOg2X>tly#q*R+?6%y)(XOUI_ z9%GGfyIIp`VS-N(`w!*8esX6OtkXNL4G#~$tk4s$S+b zZrY$-_A_7KFv_tBeR-9|S)Z3tYhS&0KJ)WS&B=MzBZ9xHH%W(k#gt1svxtQ|gyFH! zTf}MRSkf>bGH(Dfg#<0-poNH};qD~~6dw@G=+}$*>YU3Hu$dO8tED06?zzkV0tt&n zBIV4u&9N0TpJ&fPC>P*-k3Eq!jvjCX2!l={7Nt{sOiBt11~>%|Nb}{X3(jHoGzbiU}WU&lv|BWOy5x9$Xr`p zG7<_0P2`l@k*<6f>E?pQr$+VA>ZSUBZ|vf~H+ItOOCmR|S$*xG$0pe#9%P2=u5$(B zgClXJz~iQoawY?Qe9FnGghH*XAX<{!?LJ0Y=Sn;-;K+3|w@t#^AS9_&oBDjk#y|<6 zl3cX7n6=P`ZgIS0WHFf*UF+Odn%t_eW)@=K-K;Bb+|C1|+S)eKytzh|ck{ijifDsE z6+ZWg9J4?7*Wj;(IsWt41!?O@Hk%eLN`5TGAmbBN1$dBU*LjeXnJEgGQ?a~E;6l0} zJ+vH~TP)98ZetNQq|S`L-(b-xC~iFBAtZiVl6LY#;|aRcGxP{x3JDh=&?-Z0gSv!` zNhzF!AS^M9v}f<$g&*+}B?JTUlG}CiDKUi7&%N5s4TA#!M5xqa2s`*EY1k}b;wA?~ z*}jkco0DwukoaD}VJiQuhXI8Di-%YihFwb#dlg^k4Zsxz1E9r_0tAZRKy4cUdi{XdfYJIl;j1!>!CwN#%^?Pj>A z(l6E{Hy2<;uych8?I+KLMn?95FGfymfmut-nZY{K!s_ZRB)TH8%uC$4Gdl>yz)i)q zpP3;>-LqWbw!rO(A;HHz4CJ}0VUGiVbT^OfVqju=(>hArxV=|VRiWgX|*x` zH6mY`E>OW=G8kgo2hvTgAx}&w+vyt^?8A#*KSp253p*O7E1n4RnDc5C@DgSoqgnLi zNbe}0`1UoDYP#XT7!vp8BJSmNL<2wZD2PSuxWmtlO-+4DN-o63$BWwj-UTlLt>C&* zJDAItqzXtXgXQ@)=K|1AfS7nyt{z7gm^>CEm~74L7Wo->k?=`p{(hdvBTsrnzFL~7 z>?{5DZ9?3S(A)Y*B27akc?l;1_nNC!E_q568oM`2&QsD!F7trVfIB9xTy{JArgiS7 z#S8mOdEL;Es}z)G8r8H>d59gUT=2j9Epv zk3;|oyi8#4mKNoP?$GM)ED#=u|7@F+hQkV1Z|v$?%6tE{qR*;8p@g}OIhw%V3jfI? z+Tmb9oWn^&6c%@U)+zFCS~+CQ30Txtvl6lIrpEi*^RXI>M+m_)Ky*1Cfws8$v(*Rg zi5)(C7hAp9Yi`77ck{tq|ESSs_fsiIIwH&lLMWLEyv$%K$BZ&}iT3u2lw*6ILM8^N8zun} z=`dwg?2kYSccO^7v~bR)TLjjQlL&PSawS_bj>XZOvnECu`6m|5+ii<>+ioG`_)qKz%QN9;QGhF z4Krl0YT)|;N4Uz=z?2q~DNKDNfB7Pfgxti0#@#O4^xT=&bm*_Z{o-)R<2_kPo6~Xr zn@c7onlp_XC4F@nmumo`k=jCna~6`g5O*El|D8XLO& za&0mZg5j~r6#bo*#?%*~XBgHZ52Ol?7l}AdiWF+FA!JW!Wc27LjRv{;(@5lJsknh_ zt+c5vA2ZGI@xi!g@_@%cbbztpLM<+y!dzibpQ1*Wm*nz6LNnR#^dAOR=+9b;@8u5A z%FQcW?p{Yc1rFnc9~UpBr%TxV0x^;rQ$Obdw3Igv&v%wS>O?)0`q6nxX~v@ zwIS4jMw>FN#rmr1f1)^SmGFkyK+OPnY(ka4X1Y?;F8ylU**gTQaE(2n#!AKUd4 zH$;i^Ma=-|!w(ch{QrldVhPxG=2}ATg9FWb1Y&n9OsuXyQQYM}oW=fCCZWKS)nYVe ziS@0(t1GbwZ!?z?;RkD8!TwzGW!8efnVhuz+0=wu9Nc|sR^B)GxrT;@INMZ+Vpa43 zcVPn;V!F(ZRLUJZlF_%5mA=loJR(F6o9_S5X$TzKw=DqHr^R4q+;SyfayhC!O4tRr zr=dJV!6mKL6s-G-D|x+S)AVw7pr?DWpTNX#n^SlQ-tesdI8B>V`@wN+S_dx;rSsQ~ zcP+b$HUtF+gWyNl`A6((CmTvw|LPEFTMU(ea>siL;u!v`hNN728+aK5GL;WbVbubn zvQ?%Db(uk`GKDzO@XaJIfv*^T`71;VBH~0vy{5sJUnUMAt749CJw0BxZ+TFls>mLI zZ4+1(f{zUVgjWZ*0-f?&6QL?&WEEJY(FF+cxz!XADM&9lGt=lnG8D8MO>{rrKEcVw zg`zVM8S)E>Xkn>QpsLCm-2qNs!UNg=_}lfFQu?>%S2!(h(kirD15hJtENQ?IYJsG= zoKM3iY5Q;?$m8Lp;Gm$8&`>RuR+E!?0Zvf}JY#|k?`ph9_+&_AB)k`&pkT?&i~t-h zn#3A@f!5Pv;1d-!@;%MRr%gQNpl^kRZXQOFnxc&m1q%+|dEx&X(AXBJ$6xpH{gCrR*k@KP|GD*b)?_aBL_p=zZ%C+~>Ba!8|+<9~Vq{#PmO z3qVD7yHJ7OswXG&Z zWhYg^lT7!Mf18@qUggf6D32+qOf zSgZX52j(*xPO#%c_b|Rpfvp2b<~M6TIPfKjKgUcD_WDrXlGz%&K>G&<&`g7SKp>T7 z2#TQ96-6x&2%KEpz~1<*paQzGxDd#IfH4*9s{_Kl6v&`Cy$X1Y(02!LK(YYq&KnQs z;agGu-%3-ueyOJ6pliT9rkma>=@qHA4JFOGnyWZx_l*DHhwo=D)tADej6=Y@Z`Da? z?uREw)fNaH48l*@9YnU?}y4fJhb;O?Cc8wggm$dVbZ+1h$1ASQT$ z8;1=ESzx$SOZDv%!sQMOJJtCl$dqlR}Zr)M}_HSAoS9mX% zs-~l3OJx_T8T`{VuaBW}2U_Yfa_DqZ7KctsMjvWqsxL1eVP|ItJ%%bBT!?If?kNt= zP3sUzk6w#F~f4f3>brR{9+)a2-xqm22at;q-6qp8CS4 zei&u67W`EBiqa$UCy++^(klQ#D1KaxmqK9#zF|osY4`=i=F#4TJRMoa>toucrd1{y zvI#@55wO9Y2f-P@!A(Qb9d_jFqbDR9H+LwqefNdB^w7VudDZ`9gLUZ`S$;=Rt00OS zz&rBLRM~yA;n!M3ZJ%qEQV4`TFw)by^nIO2abz1yrv5ueXGymV$u2I=+Z8IuMwPgd}q^fY?Bw={Y45_~C& zcGzrgjeU85N_d87P6xe6xPC1E`SJy7Bm^&!(1> z(W;Z07R^v36-qRtrpYp9vhT_kLY8CSrb4S0gX}ZuD0Hak*q1`q(+SCPEa_N7M-Gl- zeXh?@-`Dr~8=mLqx3p%)V=WN~v6e54$~gs&O|roM5pD^rQNY2$!LRRVXBP%_0vmmMJ`14- zzW!g;P<#O{^h;XtR2p6cbvHH#EZ}v(G;0YrR8gz#Mp|l0^3bjka z>zus2YBYjZB~<`WzR$+^w$Y?*vsbq-N7mU50vk4kqlqVh*=x@ zbtjb&*WtMN@d=bhyHgZqNv|2JB@^KK_*vnDq~nMV-Lwh1b3i!Z9g>G-gjA6jhF5(6 zzjZBZZ%yqq609GuV-R(>Ywi|ro&ZzwUH#!&cR5R3X$iALy*HQ*_QkRHKBJ@`QbX6UVVZwn}skLlyhX z;Gq!}MNF-WBSBGpR6ugNGWZqEm#0Tfz#5NEEX*cwjh!ZdU5pbk6%Uv^YtnQmc9r1e zMOaJ}#jm1vo!0orig_5pR3Xf{e_SM6>XqK6sMU#rpxQu@Ex7fN9}ocH?B_;A=I`L> zAyLD$L&U$#mV;*vNfkNiH`voyWzI1Mhv!=PPCGh$H-QSAG0u7PTqe{1NbP;C(&0&1S$Y_lW$G4d43o4y*M%FP7KACRw#UD>| zjkO8UD4U6-8+idr63nl3#jtbW$OZ-mA2Boy)S<+lJt>X$U;*If(SiCAHWshg=bbz% zM6*eCbacI`u_=lco0|7uwOL!QPoX$J;1cq*+sacvBHfABw=+&+DS(PVjX>m8W~E*A zx9*vp@}b-97CSB-g|vKMv zXgSo2`WoY{;D;4`C-#Q1h@1y1E*vhx^xmq9tgVoRuK*h3l%}AbAsc@O%x zF#0st-zV(uTivij0B?w>GYKV41tv$I&NY#MDcZld`T#9MmI{D`nLW=~q z%Iv-Aop36t4j?fxq7ie?%GvXCY!qw&040VN({#;q)7Ag|V|yZlgEnUO5Mu7_BBDML zNvI4!n|}b$Ews$|UmZYBz>!mQ0!UWD0JdU&7zdN25N5dMj?)c|dzCs7lz;!%qq@f4 zc(A;QOn*9sIg0$F3>S(0b9aBI6C|8{0E%pYL$+o|>$plcHJiQBc$zoJ=AZYZXOY(lB~ZUGI03oQOvgef?9VdTCR zX|u9l=~2-oFNK}$G)nV!ogPsVVQ|3B0eIHVXhMs%K!U-ZpX;3Wef|110bu@_bx1zV zhrK`t?qfg`Gm;*my=9ml3=f2X=Yh{6JHDSO|usDhI&c9 z&wz6KrA3K;@suuvd=;2Tib=tQGIT>lRx8Rlq!<8;VdZO<0N9cUm*o`KUzfn)o$f;7 z=6KI;)yEO?!;BWiBnM=I^iYB{-96!ROxiTBj9?2Ve-00w<_j*Sk)J#t1D59XEKnRO`mT+iTwn8%z3+A!kRJ6pT zQAuVB%Q@C)1Rj>pyYxGOpg-gb@lFH{LkF6y+Q}sbun`^I#irGjD5MrKFHXvlo>O%H7=Wk1CZO2Vyc=na^+ZC5M}%8ZS63%m4#Cjs zoU&Vhv-tbB>ljkbHeI~h3;);#v+t#09vVd(*ZXl@rGXE+O-wn7s%uYU@yHk!l7Dr&F>(owBX^_N>ag|0z$Z8yf;EE`Imj| zkMFNe@g#*pr~+N6j%4)o-72f)r5BlfTUO`QuOxiScZz%y{ZB%i?RI=>#BW~^Ar6T` zk^psFLLWSOt{?9J(H9i#MK9rQ{t^_oz|Gs_p8bs%4rkLl(BLX-Q}SX~(vK+0w14jL zPVmNEfapO3upP*agM*j04%1R535_1j5f&Ee$OKEY$hc7->Dm&rQtCZB@(E*&_=fQ$~&68eH+50t9Ou2O{+r8wCi@tPP!tltKQVC$@eoEn zSrpj#1;-r&SN98PHgoit;Uh!X`Ag~j_p12~*jJIsKQU1WrS7UKH78(#nqkW@a zWS3;d*dQ_yK*74E{Nv=YAd|Z~a{?X&EPhdX)1Zy0Wucj^pI=*TYD{!AigL3LuYy;> zM*Zl2m~h49o&X4EZ_cAuokL!J@#OQ}yKB3hL>%p&E)d z46@rjH12~G3u}Dq*HS#tTPflDD83sF0k0t4{`4tzb3vjWg~EoI)yB(TtY0`=JUQY5 z_AyH*Ieonsg;Q0}1+JVxbcy*|L0>g#7&*?%ijjm@C_MNSNG)EGuZSe-E?{st(2y7L zaXD<(HP&RR=FQSAVwkVQM_;Up!dT6<46)TW1+>3JhzsK8E1&ccegE>s;ta(9Y$l~) z0Q*sGv7f+Cgpy@8+z`NqWJcGykQ&}AY!V`9dk>0ZH0ofVLMNL`FDDeO2W)=}WlIra z#N2=dpHr!|uHp-A-%YrQ?aON=UPE-&y0w8;o`w-3c?a$}K2FB!!6`u33Eb$h zpV1-Ry&LEsJQ*BBc}%J`hFMaz-gWzAfQvaGQ?fYYdIMttX<-hh` z?meue;g3L5oje8}m3M^d3as~FEZwnDEuoLVDF7sVQDQ7n!xrjTQf`CIZVN=<26$O} z;1DT~lEJi_Y+jj(GNohNg0Jh|x;Z@#)_>(sY!u!c3}&PKUAhgJ0->O7;;#azns)&7 z$eTav+qB{2T2MKtra(bqZtLBc6=BNtS#TEgbqKJ-$C zuzmz(-~FJLx#jow@7sE>n3MUi!Y}PQW?ZbzRbD`Qcd&mml8w+iOt}sF-W0-D+aWP@ zUgb-OaxC^x1Jo`jb(x_+W??+3Y@}ZDDr@tp~_4h`69yk~g`4ZKA znf{SG%Coxi!UYy-E2W@uZjp_po2@@jsefOoW0V`AN2UaZ4zIt6zzsp%vTl)WGPAV< zg`1pGbco#0)&DVt=<$9c-~lqN$C;T^)wE$p)s}|iLbOW{yVhLrN^iXQblu51-Pl#3 zX%7$v(Y$oYDI}q|&xA4x*+DIX0f&0+!By0xs1~^XfF7B{kmMrxBx}mHe^_qJsd}}) zZNl4gnQP01iPRD&uQ&Q)YLr9=uLOYlvOhE5uu_Sq=$=hlxPZ;O7Q&nfDNQ~2lzJ|uPX6}%H2bogqGzi9w+Vb>zVhy7G<8`U(-Z7al z3G-KY^S(>Q+>A9pSDaw!S=Tz8)cC2vetaNnT7HTcG|2xrDdyYTnHbrR%(Be|N?a}k zeBls@t{|PWY882|bepnj_LhrXuU2l9+3PkmS=4U&j5uP%r&8-_TFGE&pl6leY=2S( zE!b2bJX}|Ks$X`FnXR?>;y`^Xt;E5@Bi^>iH-yr&>=s=*De0tygrpMhTKLVd4fMeP zwz^hkUh8)svIF~Uy*|y)9<{O2OVQ)RDJfQof=sCEAEg)j+{#6ev59*2?0YmVjc@bq z93!i&KAu$9W8CQ%FQtFDx%s@dWDk0UpT@kOB|X;z>27n*^V1B@SVM+O*UW(}TO5Bq zr4Gb+#pnF_?U73ZxtG=bdZc8cx#{V&N%Q%rj1e~#?wZ?vV?PSi)Cgmo$KK4SrpHbB zR+-X`_6hmyXf$C&;Ii!~)%vz9ApAjOjxmpxxxUQ7zFztJg$2K7Y>a85Gn#me zd7ifkqpQ2BYS1UHrDhQN#K8Pv^5CE&8o0U@j8?A?7;f5zxf!FneKVs`i9H{K*K@eR z!AIuDi;Dy<(iwRT6m^FgC@Q2~;_kCg{;84QZtLW9d82tjr3!D4))~p3jtPTrht9V# z-NuVbbzJ&ux`TFFPXX%S>-1-}GO+}Mjuee>CM~ENE z*ogI;e6>-z+If}{n8=u|oy|#CO>1N^ibub1YF)ZtCHp07TXA^eEPLCB%Db|hS?HQF z1={=>>*j|N16%!yjcPcIIo=~pa*KS?mz6GY7R(Kab7P^CFU)=80w+aO&Rxox`Zd&f zo<86ZX!gx8m}Tjb1!A$L0@uq)k=BJQ?lDfgT<>7uh=_Q1*KN|G531Xa9G75?)XLco zaCaum&n;EvaoH^s9Ws7hNhF0oSaqjvbDZbK^)(|JGv+=eC7X`!+@@GP|0O?gMMEPJcvKt&&!6ua|Og@V_`bv2iKl@FFTbb751GNO(| za-mY=f4V(jc4<0qzRYKPW~=CSc#{iqm##NjWZ1&d5~Rhyg6)`t($Kp zk_2~G%vKGmB(8J*vzB4j;{*Hljiae}C5`Bjp1&Ar8JXEXxJB)Nn@97kL*QSUE~k?{uD+P>;gF8CM%2}P zX)EwPx<|{bwkmvM_^y4_n&+NuJ-GrrMbM+xxJ&w_&&w6vrd;oJ_t(7{YU8yn=0Xny z@K1w2IQ25Evof`j{8L0~eUs--`4A`TbLU)t^%L8)DPhjU*m%6eXWp6O+hNBTjID1o zQ5p2Vu|ZdP)KA3v z*NkUe}1)IhaP02gNd-OfBzq`{|ow#s%Yaa@d*g@FYs~-gN~rF>2`RuNfvj zTs{2#RwCd+$JWZ1CbOycX1Gs^@|xqi~os_wbAtLpWwwB$Y;f3ELf zL!HY{r=QOcYq`!&U5u2G=^2WaQgpSF^ui(OE_cp;(=%SQj_&ZO;hm0}7UTHpxi9RL zCr>J?Bh+2HehKUdWLv$i!2G(Dn7N9oP_)M=0G-u4HQwd!$+aD*|D>bqe<;!aefa0k z4vGO!q?j}+eKh$DenipVHp=wg69dEP9|I)t9wnjP_b_%7PkLGO03IzvYl>O&odKibBZo@>5twpFGA~JnZw#cW;Ib!t^@Vsf7gg&9^Yzf?q|)GsdMUP z0oJM$g=7U))$Gxif_t`2nvus}4K;rmQdQZA2mEJwFA3fGH+0*o1pc&j>qfUB1AS=^ z^P2vCFMEgL$f>FFmI7JP)i1ak0FXm!}bbf-UKV(c?H(+odS9ue+nn#$li2gfCY~VhrzglMDc&=^35)Q&GcxqpxPrhl z>+rRJQm*)1+gAQpAxmV4zgM0dA&$>KfBYZ)w#R&p)*@ZD^qK3#YMeg#`-${lEH3>I Dfo-{- literal 0 HcmV?d00001 diff --git a/base_multi_image/images/kanban.png b/base_multi_image/images/kanban.png new file mode 100644 index 0000000000000000000000000000000000000000..067cd40889d72d8dad27cab9d22323f89357513a GIT binary patch literal 141910 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

h-L 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 +# © 2015 Antiun Ingeniería S.L. - Jairo Llopis +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +import base64 +import urllib +import os +import logging +from openerp import models, fields, api, exceptions, _ +from openerp import tools + +_logger = logging.getLogger(__name__) + + +class ImageABC(models.Model): + _name = "base_multi_image.image" + _sql_constraints = [ + ('uniq_name_owner', 'UNIQUE(owner_id, owner_model, name)', + _('A document can have only one image with the same name.')), + ] + + owner_id = fields.Integer( + "Owner", + required=True) + owner_model = fields.Char( + required=True) + storage = fields.Selection( + [('url', 'URL'), ('file', 'OS file'), ('db', 'Database')], + required=True, + default='db') + name = fields.Char( + 'Image title', + required=True, + translate=True) + filename = fields.Char() + extension = fields.Char( + 'File extension', + readonly=True) + file_db_store = fields.Binary( + 'Image stored in database', + filters='*.png,*.jpg,*.gif') + path = fields.Char( + "Image path", + help="Image path") + url = fields.Char( + 'Image remote URL') + image_main = fields.Binary( + "Full-sized image", + compute="_get_image") + image_medium = fields.Binary( + "Medium-sized image", + compute="_get_image_sizes", + help="Medium-sized image. It is automatically resized as a " + "128 x 128 px image, with aspect ratio preserved, only when the " + "image exceeds one of those sizes. Use this field in form views " + "or kanban views.") + image_small = fields.Binary( + "Small-sized image", + compute="_get_image_sizes", + help="Small-sized image. It is automatically resized as a 64 x 64 px " + "image, with aspect ratio preserved. Use this field anywhere a " + "small image is required.") + comments = fields.Text( + 'Comments', + translate=True) + show_technical = fields.Boolean( + compute="_show_technical") + + @api.multi + @api.depends('storage', 'path', 'file_db_store', 'url') + def _get_image(self): + """Get image data from the right storage type.""" + for s in self: + s.image_main = getattr(s, "_get_image_from_%s" % s.storage)() + + @api.multi + @api.depends("owner_id", "owner_model") + def _show_technical(self): + """Know if you need to show the technical fields.""" + self.show_technical = all( + "default_owner_%s" % f not in self.env.context + for f in ("id", "model")) + + @api.multi + def _get_image_from_db(self): + return self.file_db_store + + @api.multi + def _get_image_from_file(self): + if self.path and os.path.exists(self.path): + try: + with open(self.path, 'rb') as f: + return base64.b64encode(f.read()) + except Exception as e: + _logger.error("Can not open the image %s, error : %s", + self.path, e, exc_info=True) + else: + _logger.error("The image %s doesn't exist ", self.path) + + return False + + @api.multi + def _get_image_from_url(self): + if self.url: + try: + (filename, header) = urllib.urlretrieve(self.url) + with open(filename, 'rb') as f: + return base64.b64encode(f.read()) + except: + _logger.error("URL %s cannot be fetched", self.url, + exc_info=True) + + return False + + @api.multi + @api.depends('image_main') + def _get_image_sizes(self): + for s in self: + try: + vals = tools.image_get_resized_images( + s.with_context(bin_size=False).image_main) + except: + vals = {"image_medium": False, + "image_small": False} + s.update(vals) + + @api.multi + def _check_filestore(self): + """check if the filestore is created, and do it otherwise.""" + for s in self: + dir_path = os.path.dirname(s.path) + try: + if not os.path.exists(dir_path): + os.makedirs(dir_path) + except OSError as e: + raise exceptions.Warning( + _('The image filestore cannot be created, %s') % e) + + @api.model + def _make_pretty(self, name): + return name.replace('_', ' ').capitalize() + + @api.onchange('url') + def _onchange_url(self): + if self.url: + filename = self.url.split('/')[-1] + self.name, self.extension = os.path.splitext(filename) + self.name = self._make_pretty(self.name) + + @api.onchange('path') + def _onchange_path(self): + if self.path: + self.name, self.extension = os.path.splitext(os.path.basename( + self.path)) + self.name = self._make_pretty(self.name) + + @api.onchange('filename') + def _onchange_filename(self): + if self.filename: + self.name, self.extension = os.path.splitext(self.filename) + self.name = self._make_pretty(self.name) + + @api.constrains('storage', 'url') + def _check_url(self): + if self.storage == 'url' and not self.url: + raise exceptions.ValidationError( + 'You must provide an URL for the image.') + + @api.constrains('storage', 'path') + def _check_path(self): + if self.storage == 'file' and not self.path: + raise exceptions.ValidationError( + 'You must provide a file path for the image.') + + @api.constrains('storage', 'file_db_store') + def _check_store(self): + if self.storage == 'db' and not self.file_db_store: + raise exceptions.ValidationError( + 'You must provide an attached file for the image.') diff --git a/base_multi_image/models/owner.py b/base_multi_image/models/owner.py new file mode 100644 index 000000000..1d6f74416 --- /dev/null +++ b/base_multi_image/models/owner.py @@ -0,0 +1,101 @@ +# -*- coding: utf-8 -*- +# © 2014 Serv. Tecnol. Avanzados (http://www.serviciosbaeza.com) +# Pedro M. Baeza +# © 2015 Antiun Ingeniería S.L. - Jairo Llopis +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from openerp import _, api, fields, models, tools + + +class Owner(models.AbstractModel): + _name = "base_multi_image.owner" + + image_ids = fields.One2many( + comodel_name='base_multi_image.image', + inverse_name='owner_id', + string='Images', + domain=lambda self: [("owner_model", "=", self._name)], + copy=True) + image_main = fields.Binary( + string="Main image", + store=False, + compute="_get_multi_image", + inverse="_set_multi_image_main") + image_main_medium = fields.Binary( + string="Medium image", + compute="_get_multi_image", + inverse="_set_multi_image_main_medium", + store=False) + image_main_small = fields.Binary( + string="Small image", + compute="_get_multi_image", + inverse="_set_multi_image_main_small", + store=False) + + @api.multi + @api.depends('image_ids') + def _get_multi_image(self): + """Get a the main image for this object. + + This is provided as a compatibility layer for submodels that already + had one image per record. + """ + for s in self: + s.image_main = False + s.image_main_medium = False + s.image_main_small = False + if s.image_ids: + s.image_main = s.image_ids[0].image_main + s.image_main_medium = s.image_ids[0].image_medium + s.image_main_small = s.image_ids[0].image_small + + @api.multi + def _set_multi_image(self, image=False, name=False): + """Save or delete the main image for this record. + + This is provided as a compatibility layer for submodels that already + had one image per record. + """ + # Values to save + values = { + "storage": "db", + "file_db_store": tools.image_resize_image_big(image), + "owner_model": self._name, + } + if name: + values["name"] = name + + for s in self: + if image: + values["owner_id"] = s.id + # Editing + if s.image_ids: + s.image_ids[0].write(values) + # Adding + else: + values.setdefault("name", name or _("Main image")) + s.image_ids = [(0, 0, values)] + # Deleting + elif s.image_ids: + s.image_ids[0].unlink() + + @api.multi + def _set_multi_image_main(self): + self._set_multi_image(self.image_main) + + @api.multi + def _set_multi_image_main_medium(self): + self._set_multi_image(self.image_main_medium) + + @api.multi + def _set_multi_image_main_small(self): + self._set_multi_image(self.image_main_small) + + @api.multi + def unlink(self): + """Mimic `ondelete="cascade"` for multi images.""" + images = self.mapped("image_ids") + result = super(Owner, self).unlink() + if result: + images.unlink() + return result diff --git a/base_multi_image/security/ir.model.access.csv b/base_multi_image/security/ir.model.access.csv new file mode 100644 index 000000000..0b4130359 --- /dev/null +++ b/base_multi_image/security/ir.model.access.csv @@ -0,0 +1,2 @@ +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" +"access_images","Manage multi images","model_base_multi_image_image","base.group_user",1,1,1,1 diff --git a/base_multi_image/static/description/icon.png b/base_multi_image/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c11adb164a2ec5b2574c0d84aa478db7fbcf74e0 GIT binary patch literal 14901 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 YO|$mlkxT~fz+54mik5QeEsL=K2f3bfYXATM literal 0 HcmV?d00001 diff --git a/base_multi_image/static/description/icon.svg b/base_multi_image/static/description/icon.svg new file mode 100644 index 000000000..8d552fcb9 --- /dev/null +++ b/base_multi_image/static/description/icon.svg @@ -0,0 +1,320 @@ + + + + + Drawings Icon + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + Openclipart + + + Drawings Icon + 2012-01-29T15:13:42 + Icon for Drawings/Pictures folder. + https://openclipart.org/detail/167547/drawings-icon-by-andreibranescu + + + andreibranescu + + + + + Inkscape + drawings + icon + pictures + + + + + + + + + + + diff --git a/base_multi_image/views/image_view.xml b/base_multi_image/views/image_view.xml new file mode 100644 index 000000000..dd4e31424 --- /dev/null +++ b/base_multi_image/views/image_view.xml @@ -0,0 +1,139 @@ + + + + + + Multi image form + base_multi_image.image + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Multi image tree + base_multi_image.image + + + + + + + + + + + + Product multi image kanban + base_multi_image.image + + + + + + + + + + + + + + + Multi images + base_multi_image.image + kanban,tree,form + + + + + + From 2b45f07e5f8698ad93fcf2a65b220fa7c090e951 Mon Sep 17 00:00:00 2001 From: Jairo Llopis Date: Thu, 3 Mar 2016 15:34:00 +0100 Subject: [PATCH 02/10] Extend model example. --- base_multi_image/README.rst | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/base_multi_image/README.rst b/base_multi_image/README.rst index e45a4b160..1bc488389 100644 --- a/base_multi_image/README.rst +++ b/base_multi_image/README.rst @@ -33,16 +33,28 @@ Development To develop a module based on this one: * See module ``product_multi_image`` as an example. + * You have to inherit model ``base_multi_image.owner`` to the model that needs the gallery:: class MyOwner(models.Model): - _name = "mymodule.name" - _inherit = "base_multi_image.owner" + _name = "my.model.name" + _inherit = ["my.model.name", "base_multi_image.owner"] # If you need this, you will need ``post_init_hook_for_submodules`` old_image_field = fields.Binary(related="image_main", store=False) +* Somewhere in the owner view, add:: + + + .. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas :alt: Try me on Runbot :target: https://runbot.odoo-community.org/runbot/149/8.0 From 000ede6eaab05f858b1ccba46641905d3dfa8aa3 Mon Sep 17 00:00:00 2001 From: Jairo Llopis Date: Thu, 3 Mar 2016 16:22:10 +0100 Subject: [PATCH 03/10] Tenames and typos. --- base_multi_image/models/image.py | 10 +++++----- base_multi_image/models/owner.py | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/base_multi_image/models/image.py b/base_multi_image/models/image.py index 5ba11544e..23053a060 100644 --- a/base_multi_image/models/image.py +++ b/base_multi_image/models/image.py @@ -14,7 +14,7 @@ from openerp import tools _logger = logging.getLogger(__name__) -class ImageABC(models.Model): +class Image(models.Model): _name = "base_multi_image.image" _sql_constraints = [ ('uniq_name_owner', 'UNIQUE(owner_id, owner_model, name)', @@ -139,7 +139,7 @@ class ImageABC(models.Model): _('The image filestore cannot be created, %s') % e) @api.model - def _make_pretty(self, name): + def _make_name_pretty(self, name): return name.replace('_', ' ').capitalize() @api.onchange('url') @@ -147,20 +147,20 @@ class ImageABC(models.Model): if self.url: filename = self.url.split('/')[-1] self.name, self.extension = os.path.splitext(filename) - self.name = self._make_pretty(self.name) + self.name = self._make_name_pretty(self.name) @api.onchange('path') def _onchange_path(self): if self.path: self.name, self.extension = os.path.splitext(os.path.basename( self.path)) - self.name = self._make_pretty(self.name) + self.name = self._make_name_pretty(self.name) @api.onchange('filename') def _onchange_filename(self): if self.filename: self.name, self.extension = os.path.splitext(self.filename) - self.name = self._make_pretty(self.name) + self.name = self._make_name_pretty(self.name) @api.constrains('storage', 'url') def _check_url(self): diff --git a/base_multi_image/models/owner.py b/base_multi_image/models/owner.py index 1d6f74416..883eb6d4d 100644 --- a/base_multi_image/models/owner.py +++ b/base_multi_image/models/owner.py @@ -35,7 +35,7 @@ class Owner(models.AbstractModel): @api.multi @api.depends('image_ids') def _get_multi_image(self): - """Get a the main image for this object. + """Get the main image for this object. This is provided as a compatibility layer for submodels that already had one image per record. From ae726003a5f24057f4c88a462aac19dae1862a2b Mon Sep 17 00:00:00 2001 From: Jairo Llopis Date: Thu, 3 Mar 2016 16:22:41 +0100 Subject: [PATCH 04/10] No default value for storage. --- base_multi_image/models/image.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/base_multi_image/models/image.py b/base_multi_image/models/image.py index 23053a060..2fac0fd54 100644 --- a/base_multi_image/models/image.py +++ b/base_multi_image/models/image.py @@ -28,8 +28,7 @@ class Image(models.Model): required=True) storage = fields.Selection( [('url', 'URL'), ('file', 'OS file'), ('db', 'Database')], - required=True, - default='db') + required=True) name = fields.Char( 'Image title', required=True, From 3d8fe4c7b08b12cf3a8a7dfaac146704d8c5e10b Mon Sep 17 00:00:00 2001 From: Jairo Llopis Date: Thu, 3 Mar 2016 16:22:50 +0100 Subject: [PATCH 05/10] Do not require a name. --- base_multi_image/models/image.py | 1 - 1 file changed, 1 deletion(-) diff --git a/base_multi_image/models/image.py b/base_multi_image/models/image.py index 2fac0fd54..45e906778 100644 --- a/base_multi_image/models/image.py +++ b/base_multi_image/models/image.py @@ -31,7 +31,6 @@ class Image(models.Model): required=True) name = fields.Char( 'Image title', - required=True, translate=True) filename = fields.Char() extension = fields.Char( From 13344c402fb25cfe0b9f69946c91704214a6ec91 Mon Sep 17 00:00:00 2001 From: Jairo Llopis Date: Thu, 3 Mar 2016 16:23:14 +0100 Subject: [PATCH 06/10] Add sequence to images. --- base_multi_image/models/image.py | 3 +++ base_multi_image/views/image_view.xml | 3 +++ 2 files changed, 6 insertions(+) diff --git a/base_multi_image/models/image.py b/base_multi_image/models/image.py index 45e906778..9a24cdf24 100644 --- a/base_multi_image/models/image.py +++ b/base_multi_image/models/image.py @@ -16,6 +16,7 @@ _logger = logging.getLogger(__name__) class Image(models.Model): _name = "base_multi_image.image" + _order = "sequence, owner_model, owner_id, id" _sql_constraints = [ ('uniq_name_owner', 'UNIQUE(owner_id, owner_model, name)', _('A document can have only one image with the same name.')), @@ -63,6 +64,8 @@ class Image(models.Model): comments = fields.Text( 'Comments', translate=True) + sequence = fields.Integer( + default=10) show_technical = fields.Boolean( compute="_show_technical") diff --git a/base_multi_image/views/image_view.xml b/base_multi_image/views/image_view.xml index dd4e31424..d6907a511 100644 --- a/base_multi_image/views/image_view.xml +++ b/base_multi_image/views/image_view.xml @@ -18,6 +18,7 @@ + @@ -72,6 +73,7 @@ + @@ -83,6 +85,7 @@ +
From 8d9acf8d494a312cf9063b0495d0235b2d7fa858 Mon Sep 17 00:00:00 2001 From: Jairo Llopis Date: Thu, 3 Mar 2016 16:24:50 +0100 Subject: [PATCH 07/10] Reduce methods. --- base_multi_image/models/image.py | 12 ------------ base_multi_image/models/owner.py | 11 ++++------- 2 files changed, 4 insertions(+), 19 deletions(-) diff --git a/base_multi_image/models/image.py b/base_multi_image/models/image.py index 9a24cdf24..f402ad38f 100644 --- a/base_multi_image/models/image.py +++ b/base_multi_image/models/image.py @@ -127,18 +127,6 @@ class Image(models.Model): "image_small": False} s.update(vals) - @api.multi - def _check_filestore(self): - """check if the filestore is created, and do it otherwise.""" - for s in self: - dir_path = os.path.dirname(s.path) - try: - if not os.path.exists(dir_path): - os.makedirs(dir_path) - except OSError as e: - raise exceptions.Warning( - _('The image filestore cannot be created, %s') % e) - @api.model def _make_name_pretty(self, name): return name.replace('_', ' ').capitalize() diff --git a/base_multi_image/models/owner.py b/base_multi_image/models/owner.py index 883eb6d4d..1f85bc03c 100644 --- a/base_multi_image/models/owner.py +++ b/base_multi_image/models/owner.py @@ -41,13 +41,10 @@ class Owner(models.AbstractModel): had one image per record. """ for s in self: - s.image_main = False - s.image_main_medium = False - s.image_main_small = False - if s.image_ids: - s.image_main = s.image_ids[0].image_main - s.image_main_medium = s.image_ids[0].image_medium - s.image_main_small = s.image_ids[0].image_small + first = s.image_ids[:1] + s.image_main = first.image_main + s.image_main_medium = first.image_medium + s.image_main_small = first.image_small @api.multi def _set_multi_image(self, image=False, name=False): From 979b84025358382555bc9b054063633813d95bc4 Mon Sep 17 00:00:00 2001 From: Jairo Llopis Date: Thu, 3 Mar 2016 16:25:00 +0100 Subject: [PATCH 08/10] Cache images' URL. --- base_multi_image/models/image.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/base_multi_image/models/image.py b/base_multi_image/models/image.py index f402ad38f..187cbbf90 100644 --- a/base_multi_image/models/image.py +++ b/base_multi_image/models/image.py @@ -104,13 +104,19 @@ class Image(models.Model): @api.multi def _get_image_from_url(self): - if self.url: + return self._get_image_from_url_cached(self.url) + + @api.model + @tools.ormcache(skiparg=1) + def _get_image_from_url_cached(self, url): + """Allow to download an image and cache it by its URL.""" + if url: try: - (filename, header) = urllib.urlretrieve(self.url) + (filename, header) = urllib.urlretrieve(url) with open(filename, 'rb') as f: return base64.b64encode(f.read()) except: - _logger.error("URL %s cannot be fetched", self.url, + _logger.error("URL %s cannot be fetched", url, exc_info=True) return False From 134e8129d4e61c6002740f3f2b6d698dd7c0f683 Mon Sep 17 00:00:00 2001 From: Jairo Llopis Date: Thu, 3 Mar 2016 16:37:56 +0100 Subject: [PATCH 09/10] Remove wrong copyright. --- base_multi_image/README.rst | 1 - base_multi_image/models/__init__.py | 1 - 2 files changed, 2 deletions(-) diff --git a/base_multi_image/README.rst b/base_multi_image/README.rst index 1bc488389..816148fe9 100644 --- a/base_multi_image/README.rst +++ b/base_multi_image/README.rst @@ -82,7 +82,6 @@ and Akretion. Contributors ------------ -* Sharoon Thomas * Pedro M. Baeza * Rafael Blasco * Jairo Llopis diff --git a/base_multi_image/models/__init__.py b/base_multi_image/models/__init__.py index ec7df8c77..aa8f852f6 100644 --- a/base_multi_image/models/__init__.py +++ b/base_multi_image/models/__init__.py @@ -1,5 +1,4 @@ # -*- coding: utf-8 -*- -# © 2009 Sharoon Thomas Open Labs Business Solutions # © 2015 Antiun Ingeniería S.L. - Jairo Llopis # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). From 2cc18f419af34c5edba67e7df7512717afdd3710 Mon Sep 17 00:00:00 2001 From: Jairo Llopis Date: Wed, 9 Mar 2016 16:35:43 +0100 Subject: [PATCH 10/10] Add known issues section. --- base_multi_image/README.rst | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/base_multi_image/README.rst b/base_multi_image/README.rst index 816148fe9..35934e6a1 100644 --- a/base_multi_image/README.rst +++ b/base_multi_image/README.rst @@ -59,6 +59,13 @@ To develop a module based on this one: :alt: Try me on Runbot :target: https://runbot.odoo-community.org/runbot/149/8.0 +Known issues / Roadmap +====================== + +* *OS file* storage mode for images is meant to provide a path where Odoo has + read access and the image is already found, **not for making the module store + images there**. It would be nice to add that feature though. + Bug Tracker ===========
+ X +
+ + + +
+
+ + + + +
+

+ + + +

+ +
+
+
+
+