From f0ea1294b639ea2cea3de4482b1a7be4f6d35cad Mon Sep 17 00:00:00 2001 From: nael Date: Tue, 22 Jan 2019 16:32:28 +0100 Subject: [PATCH] wait #2537 @0.30 --- ongletsHTML/ongletsHTML-EN/init.js | 1 + ongletsHTML/ongletsHTML-EN/multimedia.js | 272 +++++++++++++++++++++ ongletsHTML/ongletsHTML-EN/ongletsHTML.zip | Bin 0 -> 5300 bytes ongletsHTML/ongletsHTML-EN/tabs.svg | 180 ++++++++++++++ 4 files changed, 453 insertions(+) create mode 100644 ongletsHTML/ongletsHTML-EN/init.js create mode 100644 ongletsHTML/ongletsHTML-EN/multimedia.js create mode 100644 ongletsHTML/ongletsHTML-EN/ongletsHTML.zip create mode 100644 ongletsHTML/ongletsHTML-EN/tabs.svg diff --git a/ongletsHTML/ongletsHTML-EN/init.js b/ongletsHTML/ongletsHTML-EN/init.js new file mode 100644 index 0000000..24ad355 --- /dev/null +++ b/ongletsHTML/ongletsHTML-EN/init.js @@ -0,0 +1 @@ +$($id).tabs($init); \ No newline at end of file diff --git a/ongletsHTML/ongletsHTML-EN/multimedia.js b/ongletsHTML/ongletsHTML-EN/multimedia.js new file mode 100644 index 0000000..e586731 --- /dev/null +++ b/ongletsHTML/ongletsHTML-EN/multimedia.js @@ -0,0 +1,272 @@ +(function ($) { + function JQtabs(element, data) { + this.element = element; + this.cont; + this.data = data; + this.visibility = {}; + + this.naturalDimensions = {width: 0, height: 0}; + + /* Change contents from here */ + + this.hideOnLastPage = true; + this.hideOnFirstPage = false; + this.hideOnPortrait = true; + + this.image = 'tabs.svg'; + + this.links = [ + {css: {height: '33%', top: 0}, page: 4, id: 'o1'}, + {css: {height: '33%', top: '33%'}, page: 22, id: 'o2'}, + {css: {height: '33%', top: '66%'}, page: 24, id: 'o3'} + ]; + + /* available modes & alignments : + side|right: tabs are stuck at the right of the publication + side|left: ______________________ left + top|center: tabs are placed on top of the publication centered horizontaly + top|left:_____________________________________________________ at left + top|right:____________________________________________________ at right + */ + this.mode = 'side'; + this.align = 'right'; + + this.margin = -25; // Space between tabs and book + + this.hideEdge = 'right'; // Possible values : left, right, both, none + + /* Stop changing contents here or do it AYOR */ + + this.hideOnZoom = true; // true is recommanded + + this.init(); + } + + JQtabs.prototype = { + init: function () { + var $this = this; + this.element.append('
'); + this.cont = this.element.find('.tabs'); + + $.get(this.data.path + this.image, {}, function (data) { + $this.cont.append(data); + $this.naturalDimensions.width = Math.floor(parseFloat($(data).attr('width'))); + $this.naturalDimensions.height = Math.floor(parseFloat($(data).attr('height'))); + $this.svg = $this.cont.find('svg'); + $this.svg.addClass('tabsimg').css({height: '100%', width: 'auto'}); + }, 'text'); + + this.createLinks(); + this.initStandardEvents(); + this.hoverOnglet(); + }, + + changePage: function (page) { + var id = 'oo'; + var $this = this; + $.each(this.links, function (k, v) { + if (page >= v.page) { + try { + if(v.last != undefined && page >= v.last){ + id='none'; + }else{ + id = v.id; + } + } catch (e) { + + } + + } + }); + + if(id=='none'){ + this.svg.find('.active').removeClass('active'); + }else{ + try { + this.svg.find('.active:not(#' + id + ')').removeClass('active'); + this.svg.find('#' + id).addClass('active'); + } catch (err) { + + } + } + }, + + hideEdges: function (hide) { + if (!hide) { + $("#edges .edge").css('visibility', 'visible'); + return; + } + if (this.hideEdge == undefined || this.hideEdge == 'none') { + return; + } + + if (this.hideEdge == 'left' || this.hideEdge == 'both') { + $("#edges .edge.left").css({visibility: 'hidden'}); + } + if (this.hideEdge == 'right' || this.hideEdge == 'both') { + $("#edges .edge.right").css({visibility: 'hidden'}); + } + }, + + createLinks: function () { + var $this = this; + var n = 1; + $(this.links).each(function (k, v) { + + var z = n++; + var l = $(''); + $this.cont.append(l); + l.css(v.css); + + if (v.page) { + l.attr('href', '#/page/' + v.page); + } + }); + }, + + //// function hover onglet //// + + hoverOnglet: function(){ + $('.tablink').on('mouseenter',function () { + console.log($(this).attr('data-id')); + $(".tabsimg").find('#o'+ $(this).attr('data-id') ).addClass('hover'); + }); + $('.tablink').on('mouseleave',function () { + $(".tabsimg").find('#o'+ $(this).attr('data-id') ).removeClass('hover'); + }); + }, + + initStandardEvents: function () { + var $this = this; + + $(fluidbook).on('fluidbook.resize', function (e, data) { + $this.resize(data); + return true; + }); + + if (this.hideOnZoom) { + this.visibility.zoomin = true; + $(fluidbook).on('fluidbook.zoom.in.start', function (e) { + $this.changeVisibility('zoomin', false); + }); + $(fluidbook).on('fluidbook.zoom.out.end', function (e) { + $this.changeVisibility('zoomin', true); + }); + } + + if (this.hideOnPortrait) { + this.visibility.portrait = true; + $(fluidbook).on('fluidbook.resize.orientation', function (e, data) { + if (data.orientation == 'portrait') { + $this.changeVisibility('portrait', false); + } else { + $this.changeVisibility('portrait', true); + } + }); + } + + if (this.hideOnLastPage || this.hideOnFirstPage) { + if (this.hideOnLastPage) { + this.visibility.lastpage = true; + } + if (this.hideOnFirstPage) { + this.visibility.firstpage = true; + } + + $(fluidbook).on('fluidbook.page.change.start', function (e, page) { + if ($this.hideOnFirstPage) { + if (page <= 1) { + $this.changeVisibility('firstpage', false); + } + } + if ($this.hideOnLastPage) { + var last = fluidbook.datas.pages; + if (last % 2 == 1) { + last--; + } + if (page >= last) { + $this.changeVisibility('lastpage', false); + } + } + $this.changePage(page); + }); + + $(fluidbook).on('fluidbook.page.change.end', function (e, page) { + if ($this.hideOnFirstPage) { + if (page > 1) { + this.changeVisibility('firstpage', true); + } + } + if ($this.hideOnLastPage) { + var last = fluidbook.datas.pages; + if (last % 2 == 1) { + last--; + } + if (page < last) { + $this.changeVisibility('lastpage', true); + } + } + }); + } + }, + + changeVisibility: function (type, visible) { + this.visibility[type] = visible; + var tabsvisible = true; + $.each(this.visibility, function (k, v) { + if (!v) { + tabsvisible = false; + return false; + } + }); + + if (!tabsvisible) { + this.cont.addClass('hide'); + } else { + this.cont.removeClass('hide'); + } + + this.hideEdges(tabsvisible); + }, + + resize: function (data) { + var css = {position: 'absolute'}; + var svgcss={height:css.height}; + if (this.mode == 'side') { + var scale = data.fluidbookrect.height / this.naturalDimensions.height; + var w = this.naturalDimensions.width * scale; + + css.top = data.fluidbookrect.top; + css.height = data.fluidbookrect.height; + if(fluidbook.support.IE>0) { + svgcss.width = w; + } + css.width = 'auto'; + if (this.align == 'right') { + css.left = data.fluidbookrect.left + data.fluidbookrect.width + (this.margin * scale); + } else if (this.align == 'left') { + css.left = data.fluidbookrectrect.left - w - this.margin; + } + } + + // This trick allows to fix a dimension bug in ios + try{ + this.svg.css(svgcss); + }catch(e){ + + } + this.cont.css(css); + }, + + }; + + jQuery.fn.tabs = function (data) { + return this.each(function () { + var $this = $(this); + if ($(this).data('tabs') === undefined) { + $(this).data('tabs', new JQtabs($this, data)); + } + }) + }; +})(jQuery); + diff --git a/ongletsHTML/ongletsHTML-EN/ongletsHTML.zip b/ongletsHTML/ongletsHTML-EN/ongletsHTML.zip new file mode 100644 index 0000000000000000000000000000000000000000..abc27f0f1a0cc2c39bc72b7576716f03249b4711 GIT binary patch literal 5300 zcmZ{oWl$W=QJYC(@Ki+y(6_K6+0RR9RAVHs7srdT6HsSBppFsT`HjXy#oVIQn zQ>r6MQ!{KYl~_?4&YmmsRU@eWyD!y1K*b@ZO+XS20H9|80I+}eIe6H++c>6dhnVMNKec4`H@F+Zg$Snx?v8g^jpxLzA1 zbdpJf7gEVtAVo86bl|Vju*YsM2hR9(KjyAOM8=YGDI+$bz@zf6Dn{PF5Qmr+Ox$1i z$XMai+2J>Yi!$)7jd@pB3sw-kk{I&(rYiS1MlQC5Ld>7|~UU{A3s-kXn=`1vco59a>kHk7`zPFIm|Z z&}`q}QkN`+?$IeprdUCGtrRxIbL*)Q)k89vFu;_dTkWx|6&VY zImHGy=9<$eVRbe_(D_jAp=8)i2{XYPaj{BJtK~9`K_k!zFBDsg?KwL`KRz&6?PaAN z@+i+Hg~hnt*K@{UJ#2J$1ca*~WU5eE`tS=uO~wOd`tq}1D8>@$DP3izoxMLv?-|)V z=}m(5StNXZKWAHfWxZ{qBZf6;msILq`}hfe4{B2D1Fe&|xY*!8UWR6(WBSRJfO=hA z8JuL3`{U}%=aq1McAc(i!>{Jz%+UbW{_i4K?1GC52U-3kTy!5;0j~pMorD$UOF6kB zx=q?#K!Xp4*l0EiO#+MgYb658$gN^VBWhVm6P4O%0 z^$@D40g$^zA%b13jcV)(@w14>Qv15#>YWepu}VjE95H`gH@COpFD8im?*fl`q($j_ zg2YlYKd(suUXJ+3Ek1vVqAS=8)3WN_BN{Do_pmZhP%m3=jDbB^JHS7)=@T zuCVkyAh{&Aodbxh3p$Bl_uM$-tjb>Awey*NeKeMvz8q(J#&3wjY3_8pII&-v2IUr7 zPX4}6K-UH8A;FEp@fw&#i{o=wZ=88SlbsL!l`oOA=Of+2bKz@Y;8exu*0jv%8X~JV zDRQqr8GTb&ftyyqyf03#Z&D{lMR!9=sMtQ8{*vMr@}yqBMw;K}+g{gyi^kSrRJoB> zyhnm^eQ2;O*vY^ObY%i~+tn*)L0|j4Cl>ET<;#gilagl-SO@6-O3(S?)?ysUB`?Bs za>#dy!EJ_wqpmWnSLG{PZ_GDL#Dg(^pJZ@tQm5`AeDa##t}|6cK+a*8WGW-dyN|bT z+c;z@d?gq|;U?RhJKg+Sk+}eWKAI9v%eF|{ILGZbisRh0YBgP`_yg{mWvom zu1UW*J0O*-ms&9A_;~e@V&5!R zGZ&TdbDkVy%a+rbH^LJmMGN?i7ot;M8=z$8@PX_{tb{K8!OxxjJSj^Ao=TrE5pHsq zjo>{#1?DyP4I<)YvHWX7vnb#59P?k%zx#OLYq97&SWqK~rCZZrSN6d!&nmLWU ztosByEC!*+KI+&3B7b~~-fldFzHx*R`wn_)c9IyP)3f$NBg7XzUoM&!i-xY8+iS4t zuM={M2?=OFaT8UP+@z0-AGav=&C|_I(~Xb8vKiiG?{qBhwKjSzrzR9q_|St?Xjt6% z(LM7stj@9fYkoB2$INS8turV?#Qa;dRwaw#A9@5Uxd%6l|5s~Z7z(Joo*TRG!vFxJ zg#M@&0KnbU%#G8{)9O%P(P=@R04gH!h@|5-k1XH5qAYxh7!wkL%UgyJ-pOGhXHM1+ zH_}Mv<;{BP(wd#6XBe|w*tb9$z@blp1!{Wf1YBx0oi#7yTD{v;_Hyy?5lt=4eM16H zuwsh45--SjiY%K1FN_^|H|y2bCgR{aIXR8#8yYR;f>~(>Xd1UzUlc6Fjjdd1rFj^F zzv-9ziV}V=u$n*i@9ey(GwN;qG1)MCw&vdi&7c1PGwK!|79bg0xYmKw5|YgfpUBQt z2RUU9ecIeyt1=|EirZ>AfA{fKCOCmJvt_<~3zV{7-eJV2`fz7C&*3C6HZN}6?W<^L zvA98sT!`=^;^unUxB>8#Vql1Hku!%>{)6=^>%g$DV?%qtgk7*0uqete|U~jqD)X0y?3~)>l5BjL;jVOY~oU@}RdO0V<>Z3^raX`RiVv zDL!`^Rq5zXa|)|Ey)M&5(F!7Ns|wiFnaK1&+DeKuAS$j})rV=(VKDb^ORaWm@RaQZ zjpInKM9uho7KNA)q42f4x21J8f_4_FGQ8xHAE=4s?V(TM}lQ+ry}djj4}Ql zuK}pm1rl;xC_RE?-P$gvDyE3ErfydDwRzBQ{;iQ#8`erI%4ftB9SP}*ftoW@4~p)O zeJ7O4v@-*C(oH8~wK!J^r4Z!7F|(V1*$CH3GsT>@y&1CQA*Fl3Yc|L00DW5*oMO(y zic^sOsMe}NH_HKrFnoug)>6aT8z1Auc6-LG((Z>*kt$wy2&D~X>b`m{mgsA8)VtGa zmbyA_x5{_4P7Yw8mr)0YY5kpM3$#`??nj7lOGt!FNZ4Y=kgCa>Uuj=F)##iLT~@G< zbqC2+a+Z(%@;*Jjw+s)!6k2XCo7m41`GiVJhX>e$b_*QVY z2N6V?Wi!knp8LLLpw~4~&nG*`Dv4BOud2D&Yg}yZi&td~9(4Sv*9{5p;7w9n7mkwI1%(KKa^0XxRL#A8 zB}8lB{Yc9t=PD_viYyUA55Gv}l#=PfJcjRn^jIa_9!uv$EtOyA#HGtnVu}iMEUETH z3OsC{nidR0b|~86nww53oEt*U{zkp{jHMSnIIx4log4w_5-JM3`O;H|(SyrX_+2xg z(l~K}2{D0ZTqw9r<0BYx^QDW;d4vSMR~?RTIUT&sqHaIkiE9J7bR3N8Lr+y%@+BZ5 z>P`}lNkDy5^aM`~xPDKCr9MT?8Ktk-0tH8^%s-L~m>(Za?u+;(dZgYx+eNAr3RQ=D zGpneP_skC2U<=6OkKj&gf;8>2fKsUrw+e6-Ew+dT5${#>yEy0dX#S&&A8lZcQDU}D zC(AFa-0KeLS|xqtxsOJ)STvM5_mt1Eu)V+X9qkv2SG%7eJWnL0)`P)t~M zj*I&Blg>}PXg&^dMHm}A@>aWtuYc45mO93f`JFwmV5- zj40j@op^gMcxCzu>yEBE3GcLe0#z(`P0qx*EdwW5h6YGIN79q8K1CozOH+LP0FXI;l31uz2+^csn8P6BXiz%rh zYxa_vXb(yADGo%UJV&B5&pD>UwnN!mC^iRCdfO5sg0w)I<^rHW?==idOUsRpI=rSi z?B>nrEQMyUCg;%Be81`d>jjJD8xu_H;j{-GBLDTrvgiJ`ctjFfIC{%!0M`5jSXwQ& z)Xi2OZwi~7^^Iz2gf-o8&@z1todaT-^{@(0x^P`M-Q&2u1~FO@ossctsRazv8f*z4yCubwPU9A zOqVKDD7QvRFyJNg#rfhMj&X-GK9_@&hhKtSt}haFt4F<_Pa3X`ECsY}`TnkkncNmOsQ)=%OZWY#T)y)v8gk_KTc?OlqO@tC%Q)j5#U;4ud zVd^d^vhVI_1Z}Fw$oS@z_h-zl&ki>Xu&UCZ+J#8SpKn5_c8&Q3vX6g4sJ5%lOz&1D zmdOWiWioz=h$XeitqXDur{S2I&Dc(R+4?SDo7{N?jg~AZq}!XiCHm$LR5YhTnB4Jf z`SE@3BoP)vEjqo^g5Ik)aVbjm9Xgg;WlBfqXV^gNX=W0TJ=Wfe z>7j2X(NqpmTBph~6A`>zA*5!0HfMT=h1Ni&Zo9%u-6ISa<&;mkiXp#O{rb5haOrRh zqwdQ6+Y$ygW1aXeRrV@_JqYR=vT3d1g=+XSTrG^Taq1~)Q2|MXvnphb(#f~AtwPQ9t8N{`- z9(H~m*24MwFH5qoQ*1gA1kt~ooxW>2r9ZA8?}G?IdXDJ=Zt1=JoxZsSwLh2t3T3b% zOX?|N?!};dp!l>>MXy@73V(#E22%&36598jimj$pp*IEK)w|z17Xc9n`2XBE`rlgj&!GNS{q(=_g zF!S&FH~2s8y1&7Y-|+uq-u;cg;hom~gZ-yAnf>=Mf8+mCq5q99`7PN0(d&PcJ+(cS g|B%P8UH?^&9{(XDqx`up((g%t006xGV@v}63yY`C0{{R3 literal 0 HcmV?d00001 diff --git a/ongletsHTML/ongletsHTML-EN/tabs.svg b/ongletsHTML/ongletsHTML-EN/tabs.svg new file mode 100644 index 0000000..98767fd --- /dev/null +++ b/ongletsHTML/ongletsHTML-EN/tabs.svg @@ -0,0 +1,180 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- 2.39.5