JAVASCRIPT   23

jquery touchSwipe js

Guest on 18th August 2022 12:44:51 PM

  1. (function(e) {
  2.     var o = "left",
  3.         n = "right",
  4.         d = "up",
  5.         v = "down",
  6.         c = "in",
  7.         w = "out",
  8.         l = "none",
  9.         r = "auto",
  10.         k = "swipe",
  11.         s = "pinch",
  12.         x = "tap",
  13.         i = "doubletap",
  14.         b = "longtap",
  15.         A = "horizontal",
  16.         t = "vertical",
  17.         h = "all",
  18.         q = 10,
  19.         f = "start",
  20.         j = "move",
  21.         g = "end",
  22.         p = "cancel",
  23.         a = "ontouchstart" in window,
  24.         y = "TouchSwipe";
  25.     var m = {
  26.         fingers: 1,
  27.         threshold: 75,
  28.         cancelThreshold: null,
  29.         pinchThreshold: 20,
  30.         maxTimeThreshold: null,
  31.         fingerReleaseThreshold: 250,
  32.         longTapThreshold: 500,
  33.         doubleTapThreshold: 200,
  34.         swipe: null,
  35.         swipeLeft: null,
  36.         swipeRight: null,
  37.         swipeUp: null,
  38.         swipeDown: null,
  39.         swipeStatus: null,
  40.         pinchIn: null,
  41.         pinchOut: null,
  42.         pinchStatus: null,
  43.         click: null,
  44.         tap: null,
  45.         doubleTap: null,
  46.         longTap: null,
  47.         triggerOnTouchEnd: true,
  48.         triggerOnTouchLeave: false,
  49.         allowPageScroll: "auto",
  50.         fallbackToMouseEvents: true,
  51.         excludedElements: "button, input, select, textarea, a, .noSwipe"
  52.     };
  53.     e.fn.swipe = function(D) {
  54.         var C = e(this),
  55.             B = C.data(y);
  56.         if (B && typeof D === "string") {
  57.             if (B[D]) {
  58.                 return B[D].apply(this, Array.prototype.slice.call(arguments, 1))
  59.             } else {
  60.                 e.error("Method " + D + " does not exist on jQuery.swipe")
  61.             }
  62.         } else {
  63.             if (!B && (typeof D === "object" || !D)) {
  64.                 return u.apply(this, arguments)
  65.             }
  66.         }
  67.         return C
  68.     };
  69.     e.fn.swipe.defaults = m;
  70.     e.fn.swipe.phases = {
  71.         PHASE_START: f,
  72.         PHASE_MOVE: j,
  73.         PHASE_END: g,
  74.         PHASE_CANCEL: p
  75.     };
  76.     e.fn.swipe.directions = {
  77.         LEFT: o,
  78.         RIGHT: n,
  79.         UP: d,
  80.         DOWN: v,
  81.         IN: c,
  82.         OUT: w
  83.     };
  84.     e.fn.swipe.pageScroll = {
  85.         NONE: l,
  86.         HORIZONTAL: A,
  87.         VERTICAL: t,
  88.         AUTO: r
  89.     };
  90.     e.fn.swipe.fingers = {
  91.         ONE: 1,
  92.         TWO: 2,
  93.         THREE: 3,
  94.         ALL: h
  95.     };
  96.  
  97.     function u(B) {
  98.         if (B && (B.allowPageScroll === undefined && (B.swipe !== undefined || B.swipeStatus !== undefined))) {
  99.             B.allowPageScroll = l
  100.         }
  101.         if (B.click !== undefined && B.tap === undefined) {
  102.             B.tap = B.click
  103.         }
  104.         if (!B) {
  105.             B = {}
  106.         }
  107.         B = e.extend({}, e.fn.swipe.defaults, B);
  108.         return this.each(function() {
  109.             var D = e(this);
  110.             var C = D.data(y);
  111.             if (!C) {
  112.                 C = new z(this, B);
  113.                 D.data(y, C)
  114.             }
  115.         })
  116.     }
  117.  
  118.     function z(a0, aq) {
  119.         var av = (a || !aq.fallbackToMouseEvents),
  120.             G = av ? "touchstart" : "mousedown",
  121.             au = av ? "touchmove" : "mousemove",
  122.             R = av ? "touchend" : "mouseup",
  123.             P = av ? null : "mouseleave",
  124.             az = "touchcancel";
  125.         var ac = 0,
  126.             aL = null,
  127.             Y = 0,
  128.             aX = 0,
  129.             aV = 0,
  130.             D = 1,
  131.             am = 0,
  132.             aF = 0,
  133.             J = null;
  134.         var aN = e(a0);
  135.         var W = "start";
  136.         var T = 0;
  137.         var aM = null;
  138.         var Q = 0,
  139.             aY = 0,
  140.             a1 = 0,
  141.             aa = 0,
  142.             K = 0;
  143.         var aS = null;
  144.         try {
  145.             aN.bind(G, aJ);
  146.             aN.bind(az, a5)
  147.         } catch (ag) {
  148.             e.error("events not supported " + G + "," + az + " on jQuery.swipe")
  149.         }
  150.         this.enable = function() {
  151.             aN.bind(G, aJ);
  152.             aN.bind(az, a5);
  153.             return aN
  154.         };
  155.         this.disable = function() {
  156.             aG();
  157.             return aN
  158.         };
  159.         this.destroy = function() {
  160.             aG();
  161.             aN.data(y, null);
  162.             return aN
  163.         };
  164.         this.option = function(a8, a7) {
  165.             if (aq[a8] !== undefined) {
  166.                 if (a7 === undefined) {
  167.                     return aq[a8]
  168.                 } else {
  169.                     aq[a8] = a7
  170.                 }
  171.             } else {
  172.                 e.error("Option " + a8 + " does not exist on jQuery.swipe.options")
  173.             }
  174.         };
  175.  
  176.         function aJ(a9) {
  177.             if (ax()) {
  178.                 return
  179.             }
  180.             if (e(a9.target).closest(aq.excludedElements, aN).length > 0) {
  181.                 return
  182.             }
  183.             var ba = a9.originalEvent ? a9.originalEvent : a9;
  184.             var a8, a7 = a ? ba.touches[0] : ba;
  185.             W = f;
  186.             if (a) {
  187.                 T = ba.touches.length
  188.             } else {
  189.                 a9.preventDefault()
  190.             }
  191.             ac = 0;
  192.             aL = null;
  193.             aF = null;
  194.             Y = 0;
  195.             aX = 0;
  196.             aV = 0;
  197.             D = 1;
  198.             am = 0;
  199.             aM = af();
  200.             J = X();
  201.             O();
  202.             if (!a || (T === aq.fingers || aq.fingers === h) || aT()) {
  203.                 ae(0, a7);
  204.                 Q = ao();
  205.                 if (T == 2) {
  206.                     ae(1, ba.touches[1]);
  207.                     aX = aV = ap(aM[0].start, aM[1].start)
  208.                 }
  209.                 if (aq.swipeStatus || aq.pinchStatus) {
  210.                     a8 = L(ba, W)
  211.                 }
  212.             } else {
  213.                 a8 = false
  214.             }
  215.             if (a8 === false) {
  216.                 W = p;
  217.                 L(ba, W);
  218.                 return a8
  219.             } else {
  220.                 ak(true)
  221.             }
  222.         }
  223.  
  224.         function aZ(ba) {
  225.             var bd = ba.originalEvent ? ba.originalEvent : ba;
  226.             if (W === g || W === p || ai()) {
  227.                 return
  228.             }
  229.             var a9, a8 = a ? bd.touches[0] : bd;
  230.             var bb = aD(a8);
  231.             aY = ao();
  232.             if (a) {
  233.                 T = bd.touches.length
  234.             }
  235.             W = j;
  236.             if (T == 2) {
  237.                 if (aX == 0) {
  238.                     ae(1, bd.touches[1]);
  239.                     aX = aV = ap(aM[0].start, aM[1].start)
  240.                 } else {
  241.                     aD(bd.touches[1]);
  242.                     aV = ap(aM[0].end, aM[1].end);
  243.                     aF = an(aM[0].end, aM[1].end)
  244.                 }
  245.                 D = a3(aX, aV);
  246.                 am = Math.abs(aX - aV)
  247.             }
  248.             if ((T === aq.fingers || aq.fingers === h) || !a || aT()) {
  249.                 aL = aH(bb.start, bb.end);
  250.                 ah(ba, aL);
  251.                 ac = aO(bb.start, bb.end);
  252.                 Y = aI();
  253.                 aE(aL, ac);
  254.                 if (aq.swipeStatus || aq.pinchStatus) {
  255.                     a9 = L(bd, W)
  256.                 }
  257.                 if (!aq.triggerOnTouchEnd || aq.triggerOnTouchLeave) {
  258.                     var a7 = true;
  259.                     if (aq.triggerOnTouchLeave) {
  260.                         var bc = aU(this);
  261.                         a7 = B(bb.end, bc)
  262.                     }
  263.                     if (!aq.triggerOnTouchEnd && a7) {
  264.                         W = ay(j)
  265.                     } else {
  266.                         if (aq.triggerOnTouchLeave && !a7) {
  267.                             W = ay(g)
  268.                         }
  269.                     }
  270.                     if (W == p || W == g) {
  271.                         L(bd, W)
  272.                     }
  273.                 }
  274.             } else {
  275.                 W = p;
  276.                 L(bd, W)
  277.             }
  278.             if (a9 === false) {
  279.                 W = p;
  280.                 L(bd, W)
  281.             }
  282.         }
  283.  
  284.         function I(a7) {
  285.             var a8 = a7.originalEvent;
  286.             if (a) {
  287.                 if (a8.touches.length > 0) {
  288.                     C();
  289.                     return true
  290.                 }
  291.             }
  292.             if (ai()) {
  293.                 T = aa
  294.             }
  295.             a7.preventDefault();
  296.             aY = ao();
  297.             Y = aI();
  298.             if (a6()) {
  299.                 W = p;
  300.                 L(a8, W)
  301.             } else {
  302.                 if (aq.triggerOnTouchEnd || (aq.triggerOnTouchEnd == false && W === j)) {
  303.                     W = g;
  304.                     L(a8, W)
  305.                 } else {
  306.                     if (!aq.triggerOnTouchEnd && a2()) {
  307.                         W = g;
  308.                         aB(a8, W, x)
  309.                     } else {
  310.                         if (W === j) {
  311.                             W = p;
  312.                             L(a8, W)
  313.                         }
  314.                     }
  315.                 }
  316.             }
  317.             ak(false)
  318.         }
  319.  
  320.         function a5() {
  321.             T = 0;
  322.             aY = 0;
  323.             Q = 0;
  324.             aX = 0;
  325.             aV = 0;
  326.             D = 1;
  327.             O();
  328.             ak(false)
  329.         }
  330.  
  331.         function H(a7) {
  332.             var a8 = a7.originalEvent;
  333.             if (aq.triggerOnTouchLeave) {
  334.                 W = ay(g);
  335.                 L(a8, W)
  336.             }
  337.         }
  338.  
  339.         function aG() {
  340.             aN.unbind(G, aJ);
  341.             aN.unbind(az, a5);
  342.             aN.unbind(au, aZ);
  343.             aN.unbind(R, I);
  344.             if (P) {
  345.                 aN.unbind(P, H)
  346.             }
  347.             ak(false)
  348.         }
  349.  
  350.         function ay(bb) {
  351.             var ba = bb;
  352.             var a9 = aw();
  353.             var a8 = aj();
  354.             var a7 = a6();
  355.             if (!a9 || a7) {
  356.                 ba = p
  357.             } else {
  358.                 if (a8 && bb == j && (!aq.triggerOnTouchEnd || aq.triggerOnTouchLeave)) {
  359.                     ba = g
  360.                 } else {
  361.                     if (!a8 && bb == g && aq.triggerOnTouchLeave) {
  362.                         ba = p
  363.                     }
  364.                 }
  365.             }
  366.             return ba
  367.         }
  368.  
  369.         function L(a9, a7) {
  370.             var a8 = undefined;
  371.             if (F() || S()) {
  372.                 a8 = aB(a9, a7, k)
  373.             } else {
  374.                 if ((M() || aT()) && a8 !== false) {
  375.                     a8 = aB(a9, a7, s)
  376.                 }
  377.             }
  378.             if (aC() && a8 !== false) {
  379.                 a8 = aB(a9, a7, i)
  380.             } else {
  381.                 if (al() && a8 !== false) {
  382.                     a8 = aB(a9, a7, b)
  383.                 } else {
  384.                     if (ad() && a8 !== false) {
  385.                         a8 = aB(a9, a7, x)
  386.                     }
  387.                 }
  388.             }
  389.             if (a7 === p) {
  390.                 a5(a9)
  391.             }
  392.             if (a7 === g) {
  393.                 if (a) {
  394.                     if (a9.touches.length == 0) {
  395.                         a5(a9)
  396.                     }
  397.                 } else {
  398.                     a5(a9)
  399.                 }
  400.             }
  401.             return a8
  402.         }
  403.  
  404.         function aB(ba, a7, a9) {
  405.             var a8 = undefined;
  406.             if (a9 == k) {
  407.                 aN.trigger("swipeStatus", [a7, aL || null, ac || 0, Y || 0, T]);
  408.                 if (aq.swipeStatus) {
  409.                     a8 = aq.swipeStatus.call(aN, ba, a7, aL || null, ac || 0, Y || 0, T);
  410.                     if (a8 === false) {
  411.                         return false
  412.                     }
  413.                 }
  414.                 if (a7 == g && aR()) {
  415.                     aN.trigger("swipe", [aL, ac, Y, T]);
  416.                     if (aq.swipe) {
  417.                         a8 = aq.swipe.call(aN, ba, aL, ac, Y, T);
  418.                         if (a8 === false) {
  419.                             return false
  420.                         }
  421.                     }
  422.                     switch (aL) {
  423.                         case o:
  424.                             aN.trigger("swipeLeft", [aL, ac, Y, T]);
  425.                             if (aq.swipeLeft) {
  426.                                 a8 = aq.swipeLeft.call(aN, ba, aL, ac, Y, T)
  427.                             }
  428.                             break;
  429.                         case n:
  430.                             aN.trigger("swipeRight", [aL, ac, Y, T]);
  431.                             if (aq.swipeRight) {
  432.                                 a8 = aq.swipeRight.call(aN, ba, aL, ac, Y, T)
  433.                             }
  434.                             break;
  435.                         case d:
  436.                             aN.trigger("swipeUp", [aL, ac, Y, T]);
  437.                             if (aq.swipeUp) {
  438.                                 a8 = aq.swipeUp.call(aN, ba, aL, ac, Y, T)
  439.                             }
  440.                             break;
  441.                         case v:
  442.                             aN.trigger("swipeDown", [aL, ac, Y, T]);
  443.                             if (aq.swipeDown) {
  444.                                 a8 = aq.swipeDown.call(aN, ba, aL, ac, Y, T)
  445.                             }
  446.                             break
  447.                     }
  448.                 }
  449.             }
  450.             if (a9 == s) {
  451.                 aN.trigger("pinchStatus", [a7, aF || null, am || 0, Y || 0, T, D]);
  452.                 if (aq.pinchStatus) {
  453.                     a8 = aq.pinchStatus.call(aN, ba, a7, aF || null, am || 0, Y || 0, T, D);
  454.                     if (a8 === false) {
  455.                         return false
  456.                     }
  457.                 }
  458.                 if (a7 == g && a4()) {
  459.                     switch (aF) {
  460.                         case c:
  461.                             aN.trigger("pinchIn", [aF || null, am || 0, Y || 0, T, D]);
  462.                             if (aq.pinchIn) {
  463.                                 a8 = aq.pinchIn.call(aN, ba, aF || null, am || 0, Y || 0, T, D)
  464.                             }
  465.                             break;
  466.                         case w:
  467.                             aN.trigger("pinchOut", [aF || null, am || 0, Y || 0, T, D]);
  468.                             if (aq.pinchOut) {
  469.                                 a8 = aq.pinchOut.call(aN, ba, aF || null, am || 0, Y || 0, T, D)
  470.                             }
  471.                             break
  472.                     }
  473.                 }
  474.             }
  475.             if (a9 == x) {
  476.                 if (a7 === p || a7 === g) {
  477.                     clearTimeout(aS);
  478.                     if (V() && !E()) {
  479.                         K = ao();
  480.                         aS = setTimeout(e.proxy(function() {
  481.                             K = null;
  482.                             aN.trigger("tap", [ba.target]);
  483.                             if (aq.tap) {
  484.                                 a8 = aq.tap.call(aN, ba, ba.target)
  485.                             }
  486.                         }, this), aq.doubleTapThreshold)
  487.                     } else {
  488.                         K = null;
  489.                         aN.trigger("tap", [ba.target]);
  490.                         if (aq.tap) {
  491.                             a8 = aq.tap.call(aN, ba, ba.target)
  492.                         }
  493.                     }
  494.                 }
  495.             } else {
  496.                 if (a9 == i) {
  497.                     if (a7 === p || a7 === g) {
  498.                         clearTimeout(aS);
  499.                         K = null;
  500.                         aN.trigger("doubletap", [ba.target]);
  501.                         if (aq.doubleTap) {
  502.                             a8 = aq.doubleTap.call(aN, ba, ba.target)
  503.                         }
  504.                     }
  505.                 } else {
  506.                     if (a9 == b) {
  507.                         if (a7 === p || a7 === g) {
  508.                             clearTimeout(aS);
  509.                             K = null;
  510.                             aN.trigger("longtap", [ba.target]);
  511.                             if (aq.longTap) {
  512.                                 a8 = aq.longTap.call(aN, ba, ba.target)
  513.                             }
  514.                         }
  515.                     }
  516.                 }
  517.             }
  518.             return a8
  519.         }
  520.  
  521.         function aj() {
  522.             var a7 = true;
  523.             if (aq.threshold !== null) {
  524.                 a7 = ac >= aq.threshold
  525.             }
  526.             return a7
  527.         }
  528.  
  529.         function a6() {
  530.             var a7 = false;
  531.             if (aq.cancelThreshold !== null && aL !== null) {
  532.                 a7 = (aP(aL) - ac) >= aq.cancelThreshold
  533.             }
  534.             return a7
  535.         }
  536.  
  537.         function ab() {
  538.             if (aq.pinchThreshold !== null) {
  539.                 return am >= aq.pinchThreshold
  540.             }
  541.             return true
  542.         }
  543.  
  544.         function aw() {
  545.             var a7;
  546.             if (aq.maxTimeThreshold) {
  547.                 if (Y >= aq.maxTimeThreshold) {
  548.                     a7 = false
  549.                 } else {
  550.                     a7 = true
  551.                 }
  552.             } else {
  553.                 a7 = true
  554.             }
  555.             return a7
  556.         }
  557.  
  558.         function ah(a7, a8) {
  559.             if (aq.allowPageScroll === l || aT()) {
  560.                 a7.preventDefault()
  561.             } else {
  562.                 var a9 = aq.allowPageScroll === r;
  563.                 switch (a8) {
  564.                     case o:
  565.                         if ((aq.swipeLeft && a9) || (!a9 && aq.allowPageScroll != A)) {
  566.                             a7.preventDefault()
  567.                         }
  568.                         break;
  569.                     case n:
  570.                         if ((aq.swipeRight && a9) || (!a9 && aq.allowPageScroll != A)) {
  571.                             a7.preventDefault()
  572.                         }
  573.                         break;
  574.                     case d:
  575.                         if ((aq.swipeUp && a9) || (!a9 && aq.allowPageScroll != t)) {
  576.                             a7.preventDefault()
  577.                         }
  578.                         break;
  579.                     case v:
  580.                         if ((aq.swipeDown && a9) || (!a9 && aq.allowPageScroll != t)) {
  581.                             a7.preventDefault()
  582.                         }
  583.                         break
  584.                 }
  585.             }
  586.         }
  587.  
  588.         function a4() {
  589.             var a8 = aK();
  590.             var a7 = U();
  591.             var a9 = ab();
  592.             return a8 && a7 && a9
  593.         }
  594.  
  595.         function aT() {
  596.             return !!(aq.pinchStatus || aq.pinchIn || aq.pinchOut)
  597.         }
  598.  
  599.         function M() {
  600.             return !!(a4() && aT())
  601.         }
  602.  
  603.         function aR() {
  604.             var ba = aw();
  605.             var bc = aj();
  606.             var a9 = aK();
  607.             var a7 = U();
  608.             var a8 = a6();
  609.             var bb = !a8 && a7 && a9 && bc && ba;
  610.             return bb
  611.         }
  612.  
  613.         function S() {
  614.             return !!(aq.swipe || aq.swipeStatus || aq.swipeLeft || aq.swipeRight || aq.swipeUp || aq.swipeDown)
  615.         }
  616.  
  617.         function F() {
  618.             return !!(aR() && S())
  619.         }
  620.  
  621.         function aK() {
  622.             return ((T === aq.fingers || aq.fingers === h) || !a)
  623.         }
  624.  
  625.         function U() {
  626.             return aM[0].end.x !== 0
  627.         }
  628.  
  629.         function a2() {
  630.             return !!(aq.tap)
  631.         }
  632.  
  633.         function V() {
  634.             return !!(aq.doubleTap)
  635.         }
  636.  
  637.         function aQ() {
  638.             return !!(aq.longTap)
  639.         }
  640.  
  641.         function N() {
  642.             if (K == null) {
  643.                 return false
  644.             }
  645.             var a7 = ao();
  646.             return (V() && ((a7 - K) <= aq.doubleTapThreshold))
  647.         }
  648.  
  649.         function E() {
  650.             return N()
  651.         }
  652.  
  653.         function at() {
  654.             return ((T === 1 || !a) && (isNaN(ac) || ac === 0))
  655.         }
  656.  
  657.         function aW() {
  658.             return ((Y > aq.longTapThreshold) && (ac < q))
  659.         }
  660.  
  661.         function ad() {
  662.             return !!(at() && a2())
  663.         }
  664.  
  665.         function aC() {
  666.             return !!(N() && V())
  667.         }
  668.  
  669.         function al() {
  670.             return !!(aW() && aQ())
  671.         }
  672.  
  673.         function C() {
  674.             a1 = ao();
  675.             aa = event.touches.length + 1
  676.         }
  677.  
  678.         function O() {
  679.             a1 = 0;
  680.             aa = 0
  681.         }
  682.  
  683.         function ai() {
  684.             var a7 = false;
  685.             if (a1) {
  686.                 var a8 = ao() - a1;
  687.                 if (a8 <= aq.fingerReleaseThreshold) {
  688.                     a7 = true
  689.                 }
  690.             }
  691.             return a7
  692.         }
  693.  
  694.         function ax() {
  695.             return !!(aN.data(y + "_intouch") === true)
  696.         }
  697.  
  698.         function ak(a7) {
  699.             if (a7 === true) {
  700.                 aN.bind(au, aZ);
  701.                 aN.bind(R, I);
  702.                 if (P) {
  703.                     aN.bind(P, H)
  704.                 }
  705.             } else {
  706.                 aN.unbind(au, aZ, false);
  707.                 aN.unbind(R, I, false);
  708.                 if (P) {
  709.                     aN.unbind(P, H, false)
  710.                 }
  711.             }
  712.             aN.data(y + "_intouch", a7 === true)
  713.         }
  714.  
  715.         function ae(a8, a7) {
  716.             var a9 = a7.identifier !== undefined ? a7.identifier : 0;
  717.             aM[a8].identifier = a9;
  718.             aM[a8].start.x = aM[a8].end.x = a7.pageX || a7.clientX;
  719.             aM[a8].start.y = aM[a8].end.y = a7.pageY || a7.clientY;
  720.             return aM[a8]
  721.         }
  722.  
  723.         function aD(a7) {
  724.             var a9 = a7.identifier !== undefined ? a7.identifier : 0;
  725.             var a8 = Z(a9);
  726.             a8.end.x = a7.pageX || a7.clientX;
  727.             a8.end.y = a7.pageY || a7.clientY;
  728.             return a8
  729.         }
  730.  
  731.         function Z(a8) {
  732.             for (var a7 = 0; a7 < aM.length; a7++) {
  733.                 if (aM[a7].identifier == a8) {
  734.                     return aM[a7]
  735.                 }
  736.             }
  737.         }
  738.  
  739.         function af() {
  740.             var a7 = [];
  741.             for (var a8 = 0; a8 <= 5; a8++) {
  742.                 a7.push({
  743.                     start: {
  744.                         x: 0,
  745.                         y: 0
  746.                     },
  747.                     end: {
  748.                         x: 0,
  749.                         y: 0
  750.                     },
  751.                     identifier: 0
  752.                 })
  753.             }
  754.             return a7
  755.         }
  756.  
  757.         function aE(a7, a8) {
  758.             a8 = Math.max(a8, aP(a7));
  759.             J[a7].distance = a8
  760.         }
  761.  
  762.         function aP(a7) {
  763.             return J[a7].distance
  764.         }
  765.  
  766.         function X() {
  767.             var a7 = {};
  768.             a7[o] = ar(o);
  769.             a7[n] = ar(n);
  770.             a7[d] = ar(d);
  771.             a7[v] = ar(v);
  772.             return a7
  773.         }
  774.  
  775.         function ar(a7) {
  776.             return {
  777.                 direction: a7,
  778.                 distance: 0
  779.             }
  780.         }
  781.  
  782.         function aI() {
  783.             return aY - Q
  784.         }
  785.  
  786.         function ap(ba, a9) {
  787.             var a8 = Math.abs(ba.x - a9.x);
  788.             var a7 = Math.abs(ba.y - a9.y);
  789.             return Math.round(Math.sqrt(a8 * a8 + a7 * a7))
  790.         }
  791.  
  792.         function a3(a7, a8) {
  793.             var a9 = (a8 / a7) * 1;
  794.             return a9.toFixed(2)
  795.         }
  796.  
  797.         function an() {
  798.             if (D < 1) {
  799.                 return w
  800.             } else {
  801.                 return c
  802.             }
  803.         }
  804.  
  805.         function aO(a8, a7) {
  806.             return Math.round(Math.sqrt(Math.pow(a7.x - a8.x, 2) + Math.pow(a7.y - a8.y, 2)))
  807.         }
  808.  
  809.         function aA(ba, a8) {
  810.             var a7 = ba.x - a8.x;
  811.             var bc = a8.y - ba.y;
  812.             var a9 = Math.atan2(bc, a7);
  813.             var bb = Math.round(a9 * 180 / Math.PI);
  814.             if (bb < 0) {
  815.                 bb = 360 - Math.abs(bb)
  816.             }
  817.             return bb
  818.         }
  819.  
  820.         function aH(a8, a7) {
  821.             var a9 = aA(a8, a7);
  822.             if ((a9 <= 45) && (a9 >= 0)) {
  823.                 return o
  824.             } else {
  825.                 if ((a9 <= 360) && (a9 >= 315)) {
  826.                     return o
  827.                 } else {
  828.                     if ((a9 >= 135) && (a9 <= 225)) {
  829.                         return n
  830.                     } else {
  831.                         if ((a9 > 45) && (a9 < 135)) {
  832.                             return v
  833.                         } else {
  834.                             return d
  835.                         }
  836.                     }
  837.                 }
  838.             }
  839.         }
  840.  
  841.         function ao() {
  842.             var a7 = new Date();
  843.             return a7.getTime()
  844.         }
  845.  
  846.         function aU(a7) {
  847.             a7 = e(a7);
  848.             var a9 = a7.offset();
  849.             var a8 = {
  850.                 left: a9.left,
  851.                 right: a9.left + a7.outerWidth(),
  852.                 top: a9.top,
  853.                 bottom: a9.top + a7.outerHeight()
  854.             };
  855.             return a8
  856.         }
  857.  
  858.         function B(a7, a8) {
  859.             return (a7.x > a8.left && a7.x < a8.right && a7.y > a8.top && a7.y < a8.bottom)
  860.         }
  861.     }
  862. })(jQuery);

Raw Paste


Login or Register to edit or fork this paste. It's free.