From 85d08680328866a997094ecd2851b07107f15547 Mon Sep 17 00:00:00 2001 From: Yannick Tivisse Date: Fri, 20 Nov 2015 10:53:23 +0100 Subject: [PATCH] [ADD] Library to embed youtube and vimeo videos in a clean way Coming from https://gist.github.com/dbrgn/2922648 --- _extensions/demo_link.pyc | Bin 0 -> 7949 bytes _extensions/embedded_video.py | 66 +++++++++++++++++++++++++ _extensions/embedded_video.pyc | Bin 0 -> 3359 bytes _extensions/github_link.pyc | Bin 0 -> 2961 bytes _extensions/html_domain.pyc | Bin 0 -> 9018 bytes _extensions/odoo/__init__.pyc | Bin 0 -> 5079 bytes _extensions/odoo/pygments_override.pyc | Bin 0 -> 3359 bytes _extensions/odoo/switcher.pyc | Bin 0 -> 2415 bytes _extensions/odoo/translator.pyc | Bin 0 -> 44595 bytes conf.py | 1 + 10 files changed, 67 insertions(+) create mode 100644 _extensions/demo_link.pyc create mode 100644 _extensions/embedded_video.py create mode 100644 _extensions/embedded_video.pyc create mode 100644 _extensions/github_link.pyc create mode 100644 _extensions/html_domain.pyc create mode 100644 _extensions/odoo/__init__.pyc create mode 100644 _extensions/odoo/pygments_override.pyc create mode 100644 _extensions/odoo/switcher.pyc create mode 100644 _extensions/odoo/translator.pyc diff --git a/_extensions/demo_link.pyc b/_extensions/demo_link.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c027fd27f6fa78f5921b839fa874dcaa0f0e81ca GIT binary patch literal 7949 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 bEaKQ3wZ+#K7Zzvh80WPRv|5cTjrxB8scW-R literal 0 HcmV?d00001 diff --git a/_extensions/embedded_video.py b/_extensions/embedded_video.py new file mode 100644 index 000000000..2f8829880 --- /dev/null +++ b/_extensions/embedded_video.py @@ -0,0 +1,66 @@ +# -*- coding: utf-8 -*- +""" + ReST directive for embedding Youtube and Vimeo videos. + There are two directives added: ``youtube`` and ``vimeo``. The only + argument is the video id of the video to include. + Both directives have three optional arguments: ``height``, ``width`` + and ``align``. Default height is 281 and default width is 500. + Example:: + .. youtube:: anwy2MPT5RE + :height: 315 + :width: 560 + :align: left + :copyright: (c) 2012 by Danilo Bargen. + :license: BSD 3-clause +""" +from __future__ import absolute_import +from docutils import nodes +from docutils.parsers.rst import Directive, directives + + +def align(argument): + """Conversion function for the "align" option.""" + return directives.choice(argument, ('left', 'center', 'right')) + + +class IframeVideo(Directive): + has_content = False + required_arguments = 1 + optional_arguments = 0 + final_argument_whitespace = False + option_spec = { + 'height': directives.nonnegative_int, + 'width': directives.nonnegative_int, + 'align': align, + } + default_width = 500 + default_height = 281 + + def run(self): + self.options['video_id'] = directives.uri(self.arguments[0]) + if not self.options.get('width'): + self.options['width'] = self.default_width + if not self.options.get('height'): + self.options['height'] = self.default_height + if not self.options.get('align'): + self.options['align'] = 'left' + return [nodes.raw('', self.html % self.options, format='html')] + + +class Youtube(IframeVideo): + html = '' + + +class Vimeo(IframeVideo): + html = '' + + +def setup(builder): + directives.register_directive('youtube', Youtube) + directives.register_directive('vimeo', Vimeo) \ No newline at end of file diff --git a/_extensions/embedded_video.pyc b/_extensions/embedded_video.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3165a5a07e7b1ef9e28f902ff51a005c39dbe06a GIT binary patch literal 3359 zcmd5;UvC^W5TCujP1-b>l3*1kK3-Sx5d z<{HFXdEuRp!N-Abz#EV70hk%@-KD?-4?%FzI`()xp7H$VXV-sQTm9wNXhGJ7K^vt__zsuf0NDc7 zf)OriljJ49^T7(p8=zKLy0Vb2f?Sz<5g%TrE2$h{FDRn*;&rRvdGbQ3&ic_5_BQCU5#&&t>vxzEj4nH?DOB+_iQYzUO z!{Mc0KOC}!;qZcN42NBTONGhPOSTgi<1$mZ6WR)g6TFAeQkc<|u`@#FNm@$fcRw_4 za&^;5jPAQhq0sWwX_Ln(`sOWLa%Q6Rc;be`kFh_~(oKd#zdZ&w9LA|0=j7Uv8pUPm zgjXk@c0Re!{>y5H7t_S<_O|!s$%{CfrmEj(gLJIjuBd|V_i^#;a_5ULpY4WE77C=) z_j~lkgZsO$PVg3evHNiQRXKav7pWRKp6DlLdRb6hebGs_#Lo8p9dULkj^bRWMjYY+ zsNDP5Pj#YltNP;b{7)pRml60^t^?M!4vTj-az3T zEFJ6vH}(j7y@|nB!ngmkN}Wau=<%l25S(WbSPj=dE)%@d3Z3gs|>%8@~nSHC4C2* zzh?GFoL^-2yhe`QdC6%$M_+5OhY82tIl5d2oUn%kf%7J}s8NT#9I62+AvREH%#zkz zsqrVJCM$hUA$ju{A(?Uh7}_jdspdA2CFKf2E*J-hI)du4518WT>_l3Iw{Q?rHaO&v zK!kBsFhMkCv19N}T$ZvC4ry zlnq`{#Ium9#zT|5u__(?8?Yq*iZcI@wxAs$crUmeyitAY0pAsl&MJy>#Ay_9xkpiE zWSP>CitA~dTE%Fd#5PI{7H00;ZJa68*Ci5#jF!hk;yFKG5#K@aNF!%2WYKJ*owCz7 zQU17zo^q4tYK&!ffee*9&KK|OO-6RAl8|aF+@OZ6F3*j7*H+UZq3Ip`EN#^a=705I zmHuitt}z&@OEf_({!yL}4{#k}z?ZkgBCk_IthAY}TzV zm2P4(Pcyx{ojH!T>?YkRf)TdAdAGxzt#Y%v%Shz0Ml!a4W(ui_{mt!ar8@gcyU)_p z%$}BMdXnI6nv2YQ6O(9!BI`we9@DmXp;)``N&DX24$~dF^k}c=V|m0B9nz77?^44U z$Ig`$U0-(IN4q=tG1;~n3{-x?{PR5gjLZKn57RWhR7IB`Gn@!cz<-#CE4ljrCE^1- z#ZQ-sNC@Ke5%)Ykzyy(kzeex^aW#4%1l71kgh*p7kQ0W_F_%rMZgh65xyZ7 zbUMOkc7b#n;xsVd(hI}s)cRZDO%%^1-DzClgTr%zs0#@}2-Ny|vXEgUYRyI%TZ dFZcXC@QA3HFOU{SxgKoPSDG7dZ?rese*hvuKEwb3 literal 0 HcmV?d00001 diff --git a/_extensions/github_link.pyc b/_extensions/github_link.pyc new file mode 100644 index 0000000000000000000000000000000000000000..dd7e40c0c623122b2745921e1325b8b4447499ad GIT binary patch literal 2961 zcmb_e&2HO95S}F|+ftm^i5n+w5mZ3yLMa+6r?!W{h|%`YHgEvCX;LEvL6IwqGR0-M zD);4)azhU6S!Ok011wp*{P6 z-+oV_={gY8DxVg%%rlqpn1?&S%@)~b5a&c=F^J9b=&etx8CqDe81i^$=hIt{)EUtb zmbB7Mp(1TY~0&cMb9=bED}Xnp$09Es-ux+>MLzvNB_xIC~RABR9z( zl<|>%keI^h*DhgeSqVF~f!jWX4>K|M*r#fp(q%eea}|v}GTUMW+CJHD%-IrLn zO!F12y^FQ0-X7 z3!ikl&ChYN%2UUwpO|!-YxoYBO!K^mC)zRkc3cZGGF5g|_E&F3$#t%c2)Go3UoWIr0VAX%{q&ckxXHS!rQ!X6{0D=s4~XYjKPtP%d&?D**%E<$V_zKq{fJdQhm}- zO){P60s+oU@qjD4AE8=xVbQn!OWy1N59}p-mY7sWfDj|B%j&;{pkP%6>aGgB+x`;d zn%Y#G9>#p1Hq>R`ggkD5(oTgEYl;|YRr#fVmNDMJraE94W zo&}>LHX~$G48MZtG4{gkk6koKq99{e=X88RTY=aAG-~ zZ0rxX?JEfI9GDqI0&WMvfyclZpgAxZH$cx|B{TvmA2Jn#7ntY3R^VuAF>_%MXGB}b z3zUPkB$Sm<+M!~ZQV@?vn?q0*pC7#azUAci-*8&z{WlFn&_bDMJO))#L$Y@M#cJD4H!S(6aK$hp!=P-@KVBxd3;i!9^t$#yCynq*8A4NWzP z-6c-oO;2>ixC?omq+ifc=ash%zhLo@1&3e2fkROW41KyntcRTBUvS$`S+i<;ZN=A` zT0)z#TVDyIVsW#pb_8)Q`9`K!t9y%%M`-ie-n{hbFOP$G4k_nMwaaa!5|U3kyaqnb zh|Uz9c{CK1yvGTRMvETFX96S5K8EP-rD;RuQXAdjv`Dz9yId*E^B{gV(%obV@-JMM z59cmkH}t=sK}nrcoi-mB%r)$q9M|{wwRnb&&+&&vz#BuEa0ID?9(%uU8UNdM+e(`1 z8st#cEl!=xlbp(-!gdIs@-fgbot+Mc+3PFJrtI`6k0*mP-sJ?zVdbmKpEVq(8gGoP z3uK1hqbuKEnav98P%~P(gV^FksSw*9N2!MCcRZPk4+LK3F_@GOOa^!JAtY@un5(oF z4=>^o@?zQUY8WfL4}C9j*JR~wsi3v0KKFa#Ad`70#}Zp-><*VvD5v)d2BfYktLtL? mnkO?MOI?WK+IS3IW!cqTW=f36+TN!lt@vsyA_a+lp% z$~NHip)!&_G)4bP-}?s&owh{BJqrL>#|UZ0n+CT3DL zao$YPyC7lxz@ph=__&1FZCV!{D|$~zIIoLNYJEyiS}2B3OL+Xi@QGshjD&98=;~9& z@L35@A6R{+7+#d{?1ACMV)&ed=MD^?FNV)ccwuDtf@1zwG5nT<7Y__yDuypg*f=nJ zxfs4A;Sz!MhJ;tNaaqEv+E|isQvY9*S782C39pZA+qY}A27Y#k~DvZ>%+9&@0ujnjd(&k z?e@|HJ+>D83%@25NAgKjNg5ift$rTG)(uoK@Idj2c1>Ob} zthv4lS1B@W&MBjC>3tOYcT_J$wz1TcJx@FWCCSSJ%>`?rsi>h?d!9EOp3vb54uBm8 zhQW7F@`~hB!*$R55(0)+K|!a8CmYj(OE{IyXS7k19302cjO4T0s7pSljakW^e$Poh z&z`NSJow^*d|r|-J^2zyFYqcaOY#y|ftC5~U*)qdz?nW5gInC2}KygJPu2-B#qqrh(R$R+YVQ6&)7rRqaqW`1=&||Hma34_xBEAv_7Yx-vlh2O<8sA>JyV-5}dh zA&(O4gx$oj3Y2NqeYHlm8^p1W?renmcNYS$avpSh&EuG;h6&diNU4I4Ahpg0sl;-W z>fn=k{u~!^i*}Sdv$h-AC~ql9Dut$pLlpL@%&K(2(m>Uyf1!yDR#Kj9o<%z*?__Cz ztE1+yPpcloCi*8a?w?{sP4Ovuuuv*Js++3Vtf0?MV}q_a6w!C2G|02sKlG~ z>Rx47mlnN?-g)m`Pf66~1pdf~dnlGlYT$Q0@gFLL!b={kGd>of&m~5(kp-!-i7-_yrw!UN(J5F zeH8mGDrdy@KnW}=%r(pze87vFI$W0QF6C)^asVO%UF3|CBo)~bHa<(5+wSG^ern_nsu4{0b69?}E)R6HanM7Po8kIp|X7IK%ECP?zml-3kr` z+s^42JQJpD(E#&iYnGR-MX1F77}bZ#ZV*RdL*tc3kVBw1`nhSKw{IGoh#HozS%f&l zIN-Lz%PPr(7)L!`PF-Zk1I_6Kw$)A(IFVchdpnI1w_wmob01_|8l70b35o9Jnh=|1&dam}%z|2Df0!wIRtX8nW**o&ydt9i%0vRCyMOEqX?1?`K_%muVB zcuh4}*NM#yR7ztq10NOKh|8l9+!&f472Jr+ha zOH)A3#}4vJj9&TN>baokDnN}X;SV)tyTuN=B|g580^@N}LLk$&i<_)}6aDJD_XE5! zIY&MSKSoh|A)ZTzkw9xmy1jPfJ~*DkH5ljyJBG={kM@yhlj1C-j52Bk4L%Q)_~6pl zj$I}BN`~z++jxmE1qYr!))0Bk=N3h-hxbxWUMTh}-bdgncnePAWisR;&wgXBL|^=g zBiJ-1@_o!#WfN@~4}moO^Gj~WJ&S7)ExiVfmLm(U0kYr%e25LQahB4zx^m6ld2`b0 z5vDk{Qi;cnx{o~-b$0}FDK7H5f|iQ1UmUxS#h7SEZT*A@Py__ele*Vti&P;6b&R5q z$QR^8%nMRN3jT!17x_~BN90@5C>X&n-pXZ0!Jsnq9Abi}Gak+QjGY+Oer~;{k1>4> zMoE-Mc&ys43zLbA?RBE$xkk*IR@WR%u(6S~2LaWS`JDqM!dKrFTyvk#9y#D+i{Sd)O0cY*+c`%ZhgC=Pw?D zd^z?&XNBx}iK!)T#5OB;G#(BaZqZu(%{2GlLBH4J0089gbNe9#vs5oFofhh;n6_|FwtO8X4bNnWL%N*k; zHr;Mshw2VkP+-;p#}$|ZA}5%c<%?R?xTEHmUt0I`_xkqt`I*UQa>i%!(Wf7GS$CRM zmABXO?@e-YU)?m7s1h0n8z%P2AD40=?fef|5e$BN!5WLJvx6*??C-~h&znZ#z zc57=)zL-4TL9t7yTyCxGO?kCa87ag4e^clq)O;J$RM}eiLefT_ei|M8>cg0Si z*SycLds&mEnO)9o?o-HJj`r#srYslPVY|$)l>P)JYVOs!=Vf)x>H{vH1jf+u`)@p5qPF7qx%Iy6m_XU3zJfwIqXHyoSBLsqz>NlRO#u4?lC;X6%qu*}7;C(QJ+G zg~&uD>jIgCatukjj!e2l;0gipkVmNU@5nJE+k(21W8)hjEbQ@8uR+fU1nicTa3;7V zdEa*AVeF=b+rXg8swx@sib-Zh>8x;ILBy1Y?&6zhbL31@riHuqCcNF2%<+r6^1eH0 z_6$0I*BzCMmrhLScsY@yVO5R>_!aFeg>-vdP0ej`s2vzQyq#6U8P$@yyehY5)-<>E zV5?5|%@&S!;C|2t)SV;Vxa35m zaY#6&@t~@l1)_euPF>O(mMU9jx=#Wom zrZv3E16tuxRVqlBf@_S4shPJRFxm)7TUw_C8^MrvKxWxgP>4bD07((#7VB>&&v+=HD9!%i?EhDL?k{d_u3txJYTe`i*Ue`^6z?wb8@gO&0cWy z7gcaiAmfRi_vo`Dd5NIZl}Vr9|I2=}9z6Z3<(6FeOW5mksBUhpXoa-&A~30r9(0z$ z9A6$1$R805aZeC@g8L(s?+ngE=Jp@xRw8`v)@hSYBgWRdk@I$-Gfbi~J={y1eDwT{ zr3$L=tC1CJEgiz|+2WLz-cFl*f9!G^nr0*Qh^(pVta?_$6Cnc%Vh-7I)&72A zEJFzbNjjg?*B5ILEoTk@*&e7%(RvxH%S@>c$9a)8h^QUF3;Ys~5JWurOr2};y_qvM z=Fz$bArJ|}nwWbW!)9Yf21JHNw?jK1q{GHckz90`mqlKh0qLuFs69payDOa{w=T)y z_PPS=50D!n9i39?r|;-`u4e%@^A1k4dPr|Iyc(>pTn~ETh44~vAy^CF3s!^8<<;;q zVC!i8U@cIs3@HOPGW(Du7&PF2KH=HVG5e^{{OR&TvoO5I*s7Q@l|`efiD)p9W~0*G zjk2n|;UZnaEo0*?%Uk=+Xfm@d8mDDem?($k(T2;anWlw$!p#V@uqir8WV+uAki2RJ zLZZ)`s$@!?2UU%}47PhSn1*Q--a46MvZ$LGa@jIQ)AT4awHqrbmpj;EQk8{IyThs| z(i&-z=9rhmVwRb4o@J(d3reKkT2V3g!n~2fy{LW$l%-2aPt9#wl?UeekN|$DvIl7P zDmsI56wymqNujbuWapqG@y>u0GzDzFOHlqoX;Lbo{5f2R1W54(0a>9a5*13?>|0gL!7~oM zw0OeE2c@dWR9vT36UGc{za|SjM1nyVy_$29(Dsu=EqVdi-a}J08OJ^FX)Fungc@z+5423-=SkthjYNMPz?E664s?9B+@@ir~9lfSMdXB zdb>gF#5P(FjPYxrmpysWBQaJiLk@Njmk2_cgkwPKI0ym&c2qd_127SNGHUbm&1i34 z$0OiJk3W6Ls^NKViY!71)k0xKV`cn(Y}5e1?b8;oS68)W!uSd%D)MP+5!w^fqw!t9 z;ydUDl!Asum~YZXCT}%A;F=HFeZ-DuX!1q4I#JZASq_u-JTSHa@wWh3K2&6BBiO_v z;4<=B7dcMVN9SZy`~4CF6c2FZ#T&KxH>XhCVgQk|Iz<&q^+CtbbSMX1Y5p~@OA%?X z37XpEi&pG_pUuJEo)nWPCs=lr&Uti^G z<)@|K`{b!-8l^G3hBfuvs6c#2AAZ}aXRW&8Z{XHiq_G^?+Ha~^9el*wV6vhTr6MU6=u@GPRG~=B0Hhsv}=85wSNb3cND8J^mKv@weGU?7qv6Z?O0~ z?5?BJv^y+J+6<_ggLi5v6T=KYgysL}axgEu(k_S3XL(MlgxIUzOUA?~Bt`vlS_ z97$w^fdZxh4A=EujHFD?VJ1EpqZftUTqkALxV-D#Sb@%cpVIyyCPCLi~FfWP0t eSc{hR0Ds{soOnIx_xs(|4|>5y?@IsL`TqfwjClnB literal 0 HcmV?d00001 diff --git a/_extensions/odoo/pygments_override.pyc b/_extensions/odoo/pygments_override.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d932f824374c7338fd36aeb43df11fa748bc4569 GIT binary patch literal 3359 zcmcIm$$HyH5-w7*Hf!?|+wqEwCkdU2MNy`xWjr2BBrGeYNDU;#6I}RVX^Eh*@B^B* zdCojSUL#L2*St+mIc5Ip24QEpjvzLwtE&I1uCA`a)Xz%`^S|tU>rwtUh4*v(vZWG{ zkN*;dL{W+C5|wyfrm#%W6xmZ0O_M!M(Iv7kQ8YvL3`MhK&r&o;_8dj?WY1HyK=uMf zm&v|N(IVN46fKdxMA0(Y%M`7Uy#idot&$J8E93+2D*1rBMn2%KlMlF0$OqgF@&R{~ ze8AlzA8?${zLRV(RcP;wTmkh-Xr_oguYMqee$o8{eZ+h z8W6jL6!&TH7ZyGBuh2>58p0C%ioXg%L-G=a6FCk=Wr?S=7+#6- zyCn7HH0X{K3B_zCQ6yq1XOw;##20F*nWjmqG*88QE$xgVSEO|~-2)w8bz0?UarXOx>@uTT_?a9WI^PE1f zZ`3_ai!HI^yPDqGYKW~`&OdL|Ha9hWzO&=jCbaPCwQbF>Z@Z1{oWJRMbvMUfZ@3MS z)7!O8*Qv{S_|x^1M1}4*X}1qa_EVWi5N8{b%`S8PA=3m>;}QuZ#ViFTi8&JU)PPJZ zP(xfMv8ZQDm@Si7(X$mAtQORjg1TBz*Fcp?T-S{2H29>TZUE^fiw3s}-lqk18`3*U zdROb+(<0>3eK6qO1N}1aLQ)x=NXlPO4?m&?z+@z_{|X8_0R=DEHmJ`F)h`O^m!LFc zrI0=yI>$zp#BaD2M6kDA^it#(J&J zwou_d#6}7yQucPkz!PyMc8&d$mf}bRo^*Ng-1?4_m#U4LyS1~Us&OD4tjf5MyGiI9 zsv0v@>42r`aIY7mj`w=1_V#*F;*Ua}@~QTEe&T`V^6!gtXB5hwIzy$rzt?|Hi4teXj2ABI6UCY!c7WWT}d6Ijy zWwtDK+*)J~yVL9*9hsd|i=_(v2o42d5bHK{oQh$Zc)AUt35A+{G8A6mgqCV)+9cN9_{z?AX1m>et()9< zC@jWTv)Aa778|fo?lo(_eP$}?Jt@<`9ZBsUCz%X%b8Ci9mMIbDJ zWx~0xY^&RlRluhYL)ON$+D{@;P4FF{hMq6pR?{XtLJDD;+}zOU)9tnuzE4nL2M(E%Y_xDxp%)y1~FaZJt>c>P4@8*fFhJEWgdeT^{c6u+77lJUrup zJ+;2VppN$V%sOtHD)cH(1LOv$dN$5fMxj!2;i#Q1@^2viyv1lDp{JuGP2}o#=A*X zd?7hf#Z&M^JPIdH@O>>iffJXkl4+@XW_tSP>mG-HZmjqI+W#(<CyjaB_D_nl!t%E1MWETUG90C`*dt;-vW~+&gz`s z0GDK0oUQEeG~sx;_{KV2cYs|tlEz-@PiC_LUZTX&zP)iZwR=@oRZ8N_zS+yFbUwAE zPkdgLFXqnHd$B$DwshcKvv_6W?(9Ni<*c92I#B3nw3tm3t>K-L;lr4Gi{U;3u}GE? zi{ysP_%+y;M8|5UMvz+>30ml$U~dz#E9gN8Cjmh+302yXE2JBeP)-qDV-`l`ZJBhI z3%GerE-@R5ITcw1ay}zJ>B`}2D~pf`z66D6of)ZrlgmIR_r$+PdDfC`oHE(qS>|l0 zvbJoy-^Jf2)*$``$LbcKjizB2R$yYe<$EfBAX!&n0ahNqek_ZY9=S;=ryt6tx&sS- z3gqk$`PImxty6HYE0=9rO=o-RY-kqnvBU2M%14fIUiTXMB5@8#W+6V4Zu3`ThPXpMB!3Kb_If10nH_nT!h8qH67a&^XwLP2Trpn@5TfgMoHpod{qU=@^@!K)V#?6w{ zM$f6^T_T5OKfzG@fgJt?NBToRVb05s_kI(4qQNujEAg&2o7(Nx&PT+Fe*iMOIOT=u scJ;@A)BX_=p9)mP=4~qU>&`A;`twy&j9=4Q$78q5X0RFbT3a9g1Nod3O#lD@ literal 0 HcmV?d00001 diff --git a/_extensions/odoo/translator.pyc b/_extensions/odoo/translator.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9d5a29b5bb7430818234447ae9c4a58ff44f7e36 GIT binary patch literal 44595 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