-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathjquery.piff.min.js
11 lines (10 loc) · 11.5 KB
/
jquery.piff.min.js
1
2
3
4
5
6
7
8
9
10
11
/**
* PIFF v1.0.1
* http://github.com/terrasoftlabs/piff
*
* Copyright © 2012 Gabriel Nahmias.
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
*
*/
(function(a){var b="a[href$='.pdf']";(function(a5,a3,a1){function aa(j,i,h){var f=a3.createElement(j);return i&&(f.id=aW+i),h&&(f.style.cssText=h),a5(f);}function aB(e){var d=aD.length,f=(aj+e)%d;return f<0?d+f:f;}function a8(d,c){return Math.round((/%/.test(d)?(c==="x"?aC.width():aC.height())/100:1)*parseInt(d,10));}function a9(c){return ap.photo||/\.(gif|png|jpe?g|bmp|ico)((#|\?).*)?$/i.test(c);}function a7(){var c;ap=a5.extend({},a5.data(ak,aX));for(c in ap){a5.isFunction(ap[c])&&c.slice(0,2)!=="on"&&(ap[c]=ap[c].call(ak));}ap.rel=ap.rel||ak.rel||"nofollow",ap.href=ap.href||a5(ak).attr("href"),ap.title=ap.title||ak.title,typeof ap.href=="string"&&(ap.href=a5.trim(ap.href));}function a6(d,e){a5.event.trigger(d),e&&e.call(ak);}function a4(){var h,f=aW+"Slideshow_",l="click."+aW,k,j,i;ap.slideshow&&aD[1]?(k=function(){av.text(ap.slideshowStop).unbind(l).bind(aS,function(){if(ap.loop||aD[aj+1]){h=setTimeout(ad.next,ap.slideshowSpeed);}}).bind(aT,function(){clearTimeout(h);}).one(l+" "+aR,j),aK.removeClass(f+"off").addClass(f+"on"),h=setTimeout(ad.next,ap.slideshowSpeed);},j=function(){clearTimeout(h),av.text(ap.slideshowStart).unbind([aS,aT,aR,l].join(" ")).one(l,function(){ad.next(),k();}),aK.removeClass(f+"on").addClass(f+"off");},ap.slideshowAuto?k():j()):aK.removeClass(f+"off "+f+"on");}function a2(c){af||(ak=c,a7(),aD=a5(ak),aj=0,ap.rel!=="nofollow"&&(aD=a5("."+aV).filter(function(){var d=a5.data(this,aX).rel||this.rel;return d===ap.rel;}),aj=aD.index(ak),aj===-1&&(aD=aD.add(ak),aj=aD.length-1)),ah||(ah=ag=!0,aK.show(),ap.returnFocus&&a5(ak).blur().one(aQ,function(){a5(this).focus();}),aL.css({opacity:+ap.opacity,cursor:ap.overlayClose?"pointer":"auto"}).show(),ap.w=a8(ap.initialWidth,"x"),ap.h=a8(ap.initialHeight,"y"),ad.position(),aN&&aC.bind("resize."+aM+" scroll."+aM,function(){aL.css({width:aC.width(),height:aC.height(),top:aC.scrollTop(),left:aC.scrollLeft()});}).trigger("resize."+aM),a6(aU,ap.onOpen),aq.add(ax).hide(),ar.html(ap.close).show()),ad.load(!0));}function a0(){!aK&&a3.body&&(ab=!1,aC=a5(a1),aK=aa(ac).attr({id:aX,"class":aO?aW+(aN?"IE6":"IE"):""}).hide(),aL=aa(ac,"Overlay",aN?"position:absolute":"").hide(),aJ=aa(ac,"Wrapper"),aI=aa(ac,"Content").append(aA=aa(ac,"LoadedContent","width:0; height:0; overflow:hidden"),ay=aa(ac,"LoadingOverlay").add(aa(ac,"LoadingGraphic")),ax=aa(ac,"Title"),aw=aa(ac,"Current"),au=aa(ac,"Next"),at=aa(ac,"Previous"),av=aa(ac,"Slideshow").bind(aU,a4),ar=aa(ac,"Close")),aJ.append(aa(ac).append(aa(ac,"TopLeft"),aH=aa(ac,"TopCenter"),aa(ac,"TopRight")),aa(ac,!1,"clear:left").append(aG=aa(ac,"MiddleLeft"),aI,aF=aa(ac,"MiddleRight")),aa(ac,!1,"clear:left").append(aa(ac,"BottomLeft"),aE=aa(ac,"BottomCenter"),aa(ac,"BottomRight"))).find("div div").css({"float":"left"}),az=aa(ac,!1,"position:absolute; width:9999px; visibility:hidden; display:none"),aq=au.add(at).add(aw).add(av),a5(a3.body).append(aL,aK.append(aJ,az)));}function aY(){return aK?(ab||(ab=!0,ao=aH.height()+aE.height()+aI.outerHeight(!0)-aI.height(),an=aG.width()+aF.width()+aI.outerWidth(!0)-aI.width(),am=aA.outerHeight(!0),al=aA.outerWidth(!0),aK.css({"padding-bottom":ao,"padding-right":an}),au.click(function(){ad.next();}),at.click(function(){ad.prev();}),ar.click(function(){ad.close();}),aL.click(function(){ap.overlayClose&&ad.close();}),a5(a3).bind("keydown."+aW,function(d){var c=d.keyCode;ah&&ap.escKey&&c===27&&(d.preventDefault(),ad.close()),ah&&ap.arrowKey&&aD[1]&&(c===37?(d.preventDefault(),at.click()):c===39&&(d.preventDefault(),au.click()));}),a5("."+aV,a3).live("click",function(c){c.which>1||c.shiftKey||c.altKey||c.metaKey||(c.preventDefault(),a2(this));})),!0):!1;}var aZ={transition:"elastic",speed:300,width:!1,initialWidth:"600",innerWidth:!1,maxWidth:!1,height:!1,initialHeight:"450",innerHeight:!1,maxHeight:!1,scalePhotos:!0,scrolling:!0,inline:!1,html:!1,iframe:!1,fastIframe:!0,photo:!1,href:!1,title:!1,rel:!1,opacity:0.9,preloading:!0,current:"image {current} of {total}",previous:"previous",next:"next",close:"close",open:!1,returnFocus:!0,reposition:!0,loop:!0,slideshow:!1,slideshowAuto:!0,slideshowSpeed:2500,slideshowStart:"start slideshow",slideshowStop:"stop slideshow",onOpen:!1,onLoad:!1,onComplete:!1,onCleanup:!1,onClosed:!1,overlayClose:!0,escKey:!0,arrowKey:!0,top:!1,bottom:!1,left:!1,right:!1,fixed:!1,data:undefined},aX="colorbox",aW="cbox",aV=aW+"Element",aU=aW+"_open",aT=aW+"_load",aS=aW+"_complete",aR=aW+"_cleanup",aQ=aW+"_closed",aP=aW+"_purge",aO=!a5.support.opacity&&!a5.support.style,aN=aO&&!a1.XMLHttpRequest,aM=aW+"_IE6",aL,aK,aJ,aI,aH,aG,aF,aE,aD,aC,aA,az,ay,ax,aw,av,au,at,ar,aq,ap,ao,an,am,al,ak,aj,ai,ah,ag,af,ae,ad,ac="div",ab;if(a5.colorbox){return;}a5(a0),ad=a5.fn[aX]=a5[aX]=function(d,g){var e=this;d=d||{},a0();if(aY()){if(!e[0]){if(e.selector){return e;}e=a5("<a/>"),d.open=!0;}g&&(d.onComplete=g),e.each(function(){a5.data(this,aX,a5.extend({},a5.data(this,aX)||aZ,d));}).addClass(aV),(a5.isFunction(d.open)&&d.open.call(e)||d.open)&&a2(e[0]);}return e;},ad.position=function(j,f){function k(c){aH[0].style.width=aE[0].style.width=aI[0].style.width=c.style.width,aI[0].style.height=aG[0].style.height=aF[0].style.height=c.style.height;}var p=0,o=0,n=aK.offset(),m=aC.scrollTop(),l=aC.scrollLeft();aC.unbind("resize."+aW),aK.css({top:-90000,left:-90000}),ap.fixed&&!aN?(n.top-=m,n.left-=l,aK.css({position:"fixed"})):(p=m,o=l,aK.css({position:"absolute"})),ap.right!==!1?o+=Math.max(aC.width()-ap.w-al-an-a8(ap.right,"x"),0):ap.left!==!1?o+=a8(ap.left,"x"):o+=Math.round(Math.max(aC.width()-ap.w-al-an,0)/2),ap.bottom!==!1?p+=Math.max(aC.height()-ap.h-am-ao-a8(ap.bottom,"y"),0):ap.top!==!1?p+=a8(ap.top,"y"):p+=Math.round(Math.max(aC.height()-ap.h-am-ao,0)/2),aK.css({top:n.top,left:n.left}),j=aK.width()===ap.w+al&&aK.height()===ap.h+am?0:j||0,aJ[0].style.width=aJ[0].style.height="9999px",aK.dequeue().animate({width:ap.w+al,height:ap.h+am,top:p,left:o},{duration:j,complete:function(){k(this),ag=!1,aJ[0].style.width=ap.w+al+an+"px",aJ[0].style.height=ap.h+am+ao+"px",ap.reposition&&setTimeout(function(){aC.bind("resize."+aW,ad.position);},1),f&&f();},step:function(){k(this);}});},ad.resize=function(c){ah&&(c=c||{},c.width&&(ap.w=a8(c.width,"x")-al-an),c.innerWidth&&(ap.w=a8(c.innerWidth,"x")),aA.css({width:ap.w}),c.height&&(ap.h=a8(c.height,"y")-am-ao),c.innerHeight&&(ap.h=a8(c.innerHeight,"y")),!c.innerHeight&&!c.height&&(aA.css({height:"auto"}),ap.h=aA.height()),aA.css({height:ap.h}),ad.position(ap.transition==="none"?0:ap.speed));},ad.prep=function(e){function i(){return ap.w=ap.w||aA.width(),ap.w=ap.mw&&ap.mw<ap.w?ap.mw:ap.w,ap.w;}function f(){return ap.h=ap.h||aA.height(),ap.h=ap.mh&&ap.mh<ap.h?ap.mh:ap.h,ap.h;}if(!ah){return;}var k,j=ap.transition==="none"?0:ap.speed;aA.remove(),aA=aa(ac,"LoadedContent").append(e),aA.hide().appendTo(az.show()).css({width:i(),overflow:ap.scrolling?"auto":"hidden"}).css({height:f()}).prependTo(aI),az.hide(),a5(ai).css({"float":"none"}),aN&&a5("select").not(aK.find("select")).filter(function(){return this.style.visibility!=="hidden";}).css({visibility:"hidden"}).one(aR,function(){this.style.visibility="inherit";}),k=function(){function d(){aO&&aK[0].style.removeAttribute("filter");}var x,w,v=aD.length,u,t="frameBorder",s="allowTransparency",r,n,m;if(!ah){return;}r=function(){clearTimeout(ae),ay.hide(),a6(aS,ap.onComplete);},aO&&ai&&aA.fadeIn(100),ax.html(ap.title).add(aA).show();if(v>1){typeof ap.current=="string"&&aw.html(ap.current.replace("{current}",aj+1).replace("{total}",v)).show(),au[ap.loop||aj<v-1?"show":"hide"]().html(ap.next),at[ap.loop||aj?"show":"hide"]().html(ap.previous),ap.slideshow&&av.show();if(ap.preloading){x=[aB(-1),aB(1)];while(w=aD[x.pop()]){n=a5.data(w,aX).href||w.href,a5.isFunction(n)&&(n=n.call(w)),a9(n)&&(m=new Image,m.src=n);}}}else{aq.hide();}ap.iframe?(u=aa("iframe")[0],t in u&&(u[t]=0),s in u&&(u[s]="true"),u.name=aW+ +(new Date),ap.fastIframe?r():a5(u).one("load",r),u.src=ap.href,ap.scrolling||(u.scrolling="no"),a5(u).addClass(aW+"Iframe").appendTo(aA).one(aP,function(){u.src="//about:blank";})):r(),ap.transition==="fade"?aK.fadeTo(j,1,d):d();},ap.transition==="fade"?aK.fadeTo(j,0,function(){ad.position(0,k);}):ad.position(j,k);},ad.load=function(f){var i,h,g=ad.prep;ag=!0,ai=!1,ak=aD[aj],f||a7(),a6(aP),a6(aT,ap.onLoad),ap.h=ap.height?a8(ap.height,"y")-am-ao:ap.innerHeight&&a8(ap.innerHeight,"y"),ap.w=ap.width?a8(ap.width,"x")-al-an:ap.innerWidth&&a8(ap.innerWidth,"x"),ap.mw=ap.w,ap.mh=ap.h,ap.maxWidth&&(ap.mw=a8(ap.maxWidth,"x")-al-an,ap.mw=ap.w&&ap.w<ap.mw?ap.w:ap.mw),ap.maxHeight&&(ap.mh=a8(ap.maxHeight,"y")-am-ao,ap.mh=ap.h&&ap.h<ap.mh?ap.h:ap.mh),i=ap.href,ae=setTimeout(function(){ay.show();},100),ap.inline?(aa(ac).hide().insertBefore(a5(i)[0]).one(aP,function(){a5(this).replaceWith(aA.children());}),g(a5(i))):ap.iframe?g(" "):ap.html?g(ap.html):a9(i)?(a5(ai=new Image).addClass(aW+"Photo").error(function(){ap.title=!1,g(aa(ac,"Error").text("This image could not be loaded"));}).load(function(){var c;ai.onload=null,ap.scalePhotos&&(h=function(){ai.height-=ai.height*c,ai.width-=ai.width*c;},ap.mw&&ai.width>ap.mw&&(c=(ai.width-ap.mw)/ai.width,h()),ap.mh&&ai.height>ap.mh&&(c=(ai.height-ap.mh)/ai.height,h())),ap.h&&(ai.style.marginTop=Math.max(ap.h-ai.height,0)/2+"px"),aD[1]&&(ap.loop||aD[aj+1])&&(ai.style.cursor="pointer",ai.onclick=function(){ad.next();}),aO&&(ai.style.msInterpolationMode="bicubic"),setTimeout(function(){g(ai);},1);}),setTimeout(function(){ai.src=i;},1)):i&&az.load(i,ap.data,function(e,k,j){g(k==="error"?aa(ac,"Error").text("Request unsuccessful: "+j.statusText):a5(this).contents());});},ad.next=function(){!ag&&aD[1]&&(ap.loop||aD[aj+1])&&(aj=aB(1),ad.load());},ad.prev=function(){!ag&&aD[1]&&(ap.loop||aj)&&(aj=aB(-1),ad.load());},ad.close=function(){ah&&!af&&(af=!0,ah=!1,a6(aR,ap.onCleanup),aC.unbind("."+aW+" ."+aM),aL.fadeTo(200,0),aK.stop().fadeTo(300,0,function(){aK.add(aL).css({opacity:1,cursor:"auto"}).hide(),a6(aP),aA.remove(),setTimeout(function(){af=!1,a6(aQ,ap.onClosed);},1);}));},ad.remove=function(){a5([]).add(aK).add(aL).remove(),aK=null,a5("."+aV).removeData(aX).removeClass(aV).die();},ad.element=function(){return a5(ak);},ad.settings=aZ;})(jQuery,document,this);a.fn.piff=function(g){var f=this;var i="bizarre-stick-out-class-so-no-one-elses-elements-will-get-fudged";var e="piff";var h=a.extend(true,{cssDir:"css",dir:null,exceptions:null,modal:true,theme:"pro",window:{height:675,onComplete:function(){a("iframe#"+e+"."+i)[0].contentWindow.focus();},scrolling:false,width:775}},g);d("core");d(h.theme,true);return this.each(function(){var j=a(this);if(!j.attr("href").match(RegExp(h.exceptions))){j.click(function(k){c(j,k);});}});return this;function d(k,l){var j="themes/"+h.theme+"/theme";a("head").append('<link href="'+h.cssDir+"/"+((l)?j:k)+'.css" rel="stylesheet" type="text/css" />');}function c(k,l){var k=a(k);var m=window.location.href;sPath=m.substring(0,m.lastIndexOf("/"));var j="http://docs.google.com/gview?url="+sPath+((sPath[sPath.length-1]=="/")?"":"/")+k.attr("href")+"&embedded=true";var n='<iframe class="'+i+" "+h.theme+'" frameborder="0" height="100%" id="'+e+'" src="'+j+'" width="100%"></iframe>';if(!h.modal){window.open(j,"pdf","status="+((h.window.status)?1:0)+",toolbar="+((h.window.toolbar)?1:0)+",location="+((h.window.location)?1:0)+",menubar="+((h.window.menubar)?1:0)+",directories="+((h.window.directories)?1:0)+",width="+h.window.width+",height="+h.window.height);}else{if(h.modal=="fancybox"){a.fancybox(a.extend({href:j,type:"iframe"},h.window));}else{a.colorbox(a.extend({html:n},h.window));}}l.preventDefault();}};a.piff=function(c){a(b).piff(c);};})(jQuery);