origin33/app/html/retail_files/viewer/js/akamai-viewer.js

4 lines
60 KiB
JavaScript
Raw Permalink Normal View History

2024-03-19 12:48:13 +00:00
/*! Akamai Image Viewer - v - 2017-06-01
* Copyright (c) 2017 Akamai */
!function(a){"function"==typeof define&&define.amd?define(["shoestring"],a):"object"==typeof module&&module.exports?module.exports=a():a()}(function(){function a(b,c){var d,e=typeof b,f=[];if(!b)return new i(f);if(b.call)return a.ready(b);if(b.constructor===i&&!c)return b;if("string"===e&&0===b.indexOf("<")){var j=h.createElement("div");return j.innerHTML=b,a(j).children().each(function(){j.removeChild(this)})}return"string"===e?c?a(c).find(b):(d=h.querySelectorAll(b),new i(d,b)):"[object Array]"===Object.prototype.toString.call(e)||g.NodeList&&b instanceof g.NodeList?new i(b,b):b.constructor===Array?new i(b,b):new i([b],b)}function b(a,b){var c=!1;return a.each(function(){for(var a=0;a<b.length;)this===b[a]&&(c=!0),a++}),c}function c(a,b){a.shoestringData||(a.shoestringData={}),a.shoestringData.events||(a.shoestringData.events={}),a.shoestringData.loop||(a.shoestringData.loop={}),a.shoestringData.events[b]||(a.shoestringData.events[b]=[])}function d(a,b,c){var d={};d.isCustomEvent=c.isCustomEvent,d.callback=c.callfunc,d.originalCallback=c.originalCallback,d.namespace=c.namespace,a.shoestringData.events[b].push(d),c.customEventLoop&&(a.shoestringData.loop[b]=c.customEventLoop)}function e(a,b,c){var d=this.shoestringData.events[a];if(d&&d.length){var e,f,g=[];for(e=0,f=d.length;e<f;e++)b&&b!==d[e].namespace||void 0!==c&&c!==d[e].originalCallback||(this.removeEventListener(a,d[e].callback,!1),g.push(e));for(e=0,f=g.length;e<f;e++)this.shoestringData.events[a].splice(e,1)}}function f(a,b){for(var c in this.shoestringData.events)e.call(this,c,a,b)}var g="undefined"!=typeof window?window:this,h=g.document,i=function(b,c){this.length=0,this.selector=c,a.merge(this,b)};i.prototype.reverse=[].reverse,a.fn=i.prototype,a.Shoestring=i,a.extend=function(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a},a.merge=function(a,b){var c,d,e;for(c=+b.length,d=0,e=a.length;d<c;d++)a[e++]=b[d];return a.length=e,a},g.shoestring=a,a.ajax=function(b,c){var d,e,f="",g=new XMLHttpRequest;if(d=a.extend({},a.ajax.settings),c&&a.extend(d,c),b||(b=d.url),g&&b){if(d.data)for(e in d.data)d.data.hasOwnProperty(e)&&(""!==f&&(f+="&"),f+=encodeURIComponent(e)+"="+encodeURIComponent(d.data[e]));if("GET"===d.method&&f&&(b+="?"+f),g.open(d.method,b,d.async),g.setRequestHeader){g.setRequestHeader("X-Requested-With","XMLHttpRequest"),"POST"===d.method&&f&&g.setRequestHeader("Content-type","application/x-www-form-urlencoded");for(e in d.headers)d.headers.hasOwnProperty(e)&&g.setRequestHeader(e,d.headers[e])}return g.onreadystatechange=function(){if(4===g.readyState){var a=(g.responseText||"").replace(/^\s+|\s+$/g,"");if(0===g.status.toString().indexOf("0"))return d.cancel(a,g.status,g);if(g.status.toString().match(/^(4|5)/)&&RegExp.$1)return d.error(a,g.status,g);if(d.success)return d.success(a,g.status,g)}},4===g.readyState?g:("POST"===d.method&&f?g.send(f):g.send(),g)}},a.ajax.settings={success:function(){},error:function(){},cancel:function(){},method:"GET",async:!0,data:null,headers:{}},a.get=function(b,c){return a.ajax(b,{success:c})},a.fn.load=function(b,c){var d=this,e=arguments,f=function(b){d.each(function(){a(this).html(b)}),c&&c.apply(d,e)};return a.ajax(b,{success:f}),this},a.post=function(b,c,d){return a.ajax(b,{data:c,method:"POST",success:d})},a.fn.each=function(b){return a.each(this,b)},a.each=function(a,b){for(var c=0,d=a.length;c<d&&!1!==b.call(a[c],c,a[c]);c++);return a},a.inArray=function(a,b){for(var c=-1,d=0,e=b.length;d<e;d++)b.hasOwnProperty(d)&&b[d]===a&&(c=d);return c},a.ready=function(a){return j&&a?a.call(h):a?k.push(a):l(),[h]},a.fn.ready=function(b){return a.ready(b),this};var j=!1,k=[],l=function(){if(!j){for(;k.length;)k.shift().call(h);j=!0}};(h.attachEvent?"complete"===h.readyState:"loading"!==h.readyState)?l():(h.addEventListener("DOMContentLoaded",l,!1),h.addEventListener("readystatechange",l,!1),g.addEventListener("load",l,!1)),a.fn.is=function(c){var d,e,f=!1,g=this;return"string"!=typeof c?(e=c.length&&c[0]?c:[c],b(this,e)):(d=this.parent(),d.length||(d=a(h)),d.each(function(a,d){var e;e=d.querySelectorAll(c),f
i(B[0],B[0].scrollLeft+D.width()/F,!1,function(){B.trigger(c+".after-next")})}function r(){i(B[0],B[0].scrollLeft-D.width()/F,!1,function(){B.trigger(c+".after-prev")})}function s(){i(B[0],0)}function t(){i(B[0],D.width()-B.width())}function u(b,c,d){void 0!==a.toss?a.toss(b,{left:c,top:d}):(b.scrollLeft=c,b.scrollTop=d)}function v(){var a=B[0].scrollLeft,b=f(D),c=f(G),d=g(G),e=Math.round(a/b*F)||0,h=G.find("a").removeClass(H),i=h.eq(e).addClass(H),j=i[0].offsetLeft-c/2,k=i[0].offsetTop-d/2;u(J[0],j,k)}if(void 0===k){var w,x=this,y=b(x),z=y.is("[data-"+c+"-nextprev]"),A=y.attr("data-autoplay")||y.attr("data-snapper-autoplay"),B=b("."+c+"_pane",x),C=c+"-enhanced",D=B.find("."+c+"_items"),E=D.children();E.addClass(c+"_item");var F=E.length,G=b("."+c+"_nav",x),H=c+"_nav_item-selected",I="false"!==y.attr("data-snapper-deeplinking");if("string"!=typeof d){var J=G.find("."+c+"_nav_inner");if(J.length||(J=b('<div class="'+c+'_nav_inner"></div>').append(G.children()).appendTo(G)),B.attr("tabindex","0"),e(),b(x).addClass(C),z){var K=b('<ul class="snapper_nextprev"><li class="snapper_nextprev_item"><a href="#prev" class="snapper_nextprev_prev">Prev</a></li><li class="snapper_nextprev_item"><a href="#next" class="snapper_nextprev_next">Next</a></li></ul>'),L=b(".snapper_nextprev_contain",x);L.length||(L=b(x)),K.appendTo(L)}b("a",this).bind("click",function(c){clearInterval(w);var d=b(this).attr("href");if(b(this).is(".snapper_nextprev_next"))return c.preventDefault(),p(!0);if(b(this).is(".snapper_nextprev_prev"))return c.preventDefault(),p(!1);if(0===d.indexOf("#")&&d.length>1){c.preventDefault();var e=b(d,x);e.length&&(i(B[0],e[0].offsetLeft),I&&"replaceState"in a.history&&a.history.replaceState({},document.title,d))}}),b(this).bind("keydown",function(a){37!==a.keyCode&&38!==a.keyCode||(clearInterval(w),a.preventDefault(),a.stopImmediatePropagation(),p(!1)),39!==a.keyCode&&40!==a.keyCode||(clearInterval(w),a.preventDefault(),a.stopImmediatePropagation(),p(!0))});var M,N;b(a).bind("resize",n),G.length&&(B.bind("scroll",v),v());var O;if(B.bind("scroll",function(a){m&&(O&&clearTimeout(O),O=setTimeout(j,50))}),y.bind("touchstart",function(){clearTimeout(w)}),A){var P=!1;try{A=parseInt(A,10)}catch(a){P=!0}if(!A||P){throw new Error("Snapper: `data-autoplay` must have an natural number value.")}w=setInterval(function(){p(!0)},A)}}else{var Q,R=Array.prototype.slice.call(l,1),S=D.width()/F;switch(d){case"goto":Q=R[0]%F,offset=S*Q,i(B[0],offset,!1,function(){j(),"function"==typeof R[1]&&R[1]()});break;case"getIndex":k=Math.floor((B[0].scrollLeft+1)/S);break;case"updateWidths":e()}}}}),void 0!==k?k:j}}(this,jQuery),function(a){var b=function(){var b=a.jQuery,c="enlarge";b.fn[c]=function(d){var e=arguments,f={button:!0,hoverZoomWithoutClick:!0,delay:300,flyout:{width:200,height:200},placement:"inline",magnification:3};"string"!=typeof d&&(f=b.extend(f,d));var g,h=this.each(function(){function h(){"inline"===f.placement?(B=A,L=K,J=I):(B=U.find("img")[0],L=J=U)}function i(){U.css({width:f.flyout.width+"px",height:f.flyout.height+"px",top:"",left:"","margin-left":"","margin-top":""});var a=f.placement.match(/left|right/);a&&U.css(a[0],-f.flyout.width+"px"),f.placement.match(/loupe/)&&U.css({"margin-left":-f.flyout.width/2+"px","margin-top":-f.flyout.height/2+"px"}),U[0].className=U[0].className.replace(/enlarge_flyout\-[^$\s]+/," "),U.addClass("enlarge_flyout-"+f.placement)}function j(){M=!M,u.data("zoomed",M)}function k(){if(M){var a=new Image;a.className="enlarge_img-loading",b(a).insertBefore(B),a.onload=function(){B.sizes=a.sizes,y||(B.src=F),b(a).remove()},a.sizes=n()+"px",a.srcset=D,y||(a.src=F)}else B.sizes=E,y||(B.src=C)}function l(){var a=J.width(),b=J.height(),c=B.offsetWidth,d=B.offsetHeight;J[0].scrollLeft=c/2-a/2,J[0].scrollTop=d/2-b/2}function m(){if(N)K.add(L).removeClass(O),N=!1,J.removeAttr("tabindex");else{if(f.disabled)return!1;K.add(L).addClass(O),N=!0,J.attr("tabindex","0"),J[0].focus()}}function n(){return K[0].offsetWidth*f.magnification}function o(){if(M){if(f.disabled)return!1;"inline"===f.placement&&I.add(K).css({width