(function(A){var B=function(D,F,C,E){this.x1=D;this.x2=C;this.y1=F;this.y2=E};B.prototype.contains=function(C){return(this.x1<=C.x1&&C.x2<=this.x2)&&(this.y1<=C.y1&&C.y2<=this.y2)};B.prototype.transform=function(C,D){return new B(this.x1+C,this.y1+D,this.x2+C,this.y2+D)};A.fn.positionBy=function(I){var K=new Date();if(this.length==0){return this}var I=A.extend({target:null,targetPos:null,elementPos:null,x:null,y:null,positions:null,addClass:false,force:false,container:window,hideAfterPosition:false},I);if(I.x!=null){var F=I.x;var G=I.y;var E=0;var J=0}else{var C=A(A(I.target)[0]);var E=C.outerWidth();var J=C.outerHeight();var H=C.offset();var F=H.left;var G=H.top}var D=F+E;var L=G+J;return this.each(function(){var Z=A(this);if(!Z.is(":visible")){Z.css({left:-3000,top:-3000}).show()}var a=Z.outerWidth();var Y=Z.outerHeight();var R=[];var Q=[];R[0]=new B(D,G,D+a,G+Y);Q[0]=[1,7,4];R[1]=new B(D,L-Y,D+a,L);Q[1]=[0,6,4];R[2]=new B(D,L,D+a,L+Y);Q[2]=[1,3,10];R[3]=new B(D-a,L,D,L+Y);Q[3]=[1,6,10];R[4]=new B(F,L,F+a,L+Y);Q[4]=[1,6,9];R[5]=new B(F-a,L,F,L+Y);Q[5]=[6,4,9];R[6]=new B(F-a,L-Y,F,L);Q[6]=[7,1,4];R[7]=new B(F-a,G,F,G+Y);Q[7]=[6,0,4];R[8]=new B(F-a,G-Y,F,G);Q[8]=[7,9,4];R[9]=new B(F,G-Y,F+a,G);Q[9]=[0,7,4];R[10]=new B(D-a,G-Y,D,G);Q[10]=[0,7,3];R[11]=new B(D,G-Y,D+a,G);Q[11]=[0,10,3];R[12]=new B(D-a,G,D,G+Y);Q[12]=[13,7,10];R[13]=new B(D-a,L-Y,D,L);Q[13]=[12,6,3];R[14]=new B(F,L-Y,F+a,L);Q[14]=[15,1,4];R[15]=new B(F,G,F+a,G+Y);Q[15]=[14,0,9];if(I.positions!==null){var W=I.positions[0]}else{if(I.targetPos!=null&&I.elementPos!=null){var W=[];W[0]=[];W[0][0]=15;W[0][1]=7;W[0][2]=8;W[0][3]=9;W[1]=[];W[1][0]=0;W[1][1]=12;W[1][2]=10;W[1][3]=11;W[2]=[];W[2][0]=2;W[2][1]=3;W[2][2]=13;W[2][3]=1;W[3]=[];W[3][0]=4;W[3][1]=5;W[3][2]=6;W[3][3]=14;var W=W[I.targetPos][I.elementPos]}}var P=R[W];var O=W;if(!I.force){$window=A(window);var X=$window.scrollLeft();var V=$window.scrollTop();var M=new B(X,V,X+$window.width(),V+$window.height());var U;if(I.positions){U=I.positions}else{U=[W]}var T=[];while(U.length>0){var N=U.shift();if(T[N]){continue}T[N]=true;if(!M.contains(R[N])){if(I.positions===null){U=jQuery.merge(U,Q[N])}}else{P=R[N];break}}}Z.parents().each(function(){var c=A(this);if(c.css("position")!="static"){var b=c.offset();P=P.transform(-b.left,-b.top);return false}});var S={left:P.x1,top:P.y1};if(I.hideAfterPosition){S.display="none"}Z.css(S);if(I.addClass){Z.removeClass("positionBy0 positionBy1 positionBy2 positionBy3 positionBy4 positionBy5 positionBy6 positionBy7 positionBy8 positionBy9 positionBy10 positionBy11 positionBy12 positionBy13 positionBy14 positionBy15").addClass("positionBy"+N)}})}})(jQuery);
