Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
thewickedkarma
GitHub Repository: thewickedkarma/blackeye-im
Path: blob/master/sites/bitcoin/js/helper-plugins.min.js
777 views
1
function Swipe(t, e) {
2
function n() {
3
p = v.children, m = new Array(p.length), g = t.getBoundingClientRect().width || t.offsetWidth, v.style.width = p.length * g + "px";
4
for (var e = p.length; e--;) {
5
var n = p[e];
6
n.style.width = g + "px", n.setAttribute("data-index", e), d.transitions && (n.style.left = e * -g + "px", r(e, y > e ? -g : e > y ? g : 0, 0))
7
}
8
d.transitions || (v.style.left = y * -g + "px"), t.style.visibility = "visible"
9
}
10
11
function i() {
12
y ? o(y - 1) : e.continuous && o(p.length - 1)
13
}
14
15
function s() {
16
y < p.length - 1 ? o(y + 1) : e.continuous && o(0)
17
}
18
19
function o(t, n) {
20
if (y != t) {
21
if (d.transitions) {
22
for (var i = Math.abs(y - t) - 1, s = Math.abs(y - t) / (y - t); i--;) r((t > y ? t : y) - i - 1, g * s, 0);
23
r(y, g * s, n || w), r(t, 0, n || w)
24
} else u(y * -g, t * -g, n || w);
25
y = t, f(e.callback && e.callback(y, p[y]))
26
}
27
}
28
29
function r(t, e, n) {
30
a(t, e, n), m[t] = e
31
}
32
33
function a(t, e, n) {
34
var i = p[t],
35
s = i && i.style;
36
s && (s.webkitTransitionDuration = s.MozTransitionDuration = s.msTransitionDuration = s.OTransitionDuration = s.transitionDuration = n + "ms", s.webkitTransform = "translate(" + e + "px,0)translateZ(0)", s.msTransform = s.MozTransform = s.OTransform = "translateX(" + e + "px)")
37
}
38
39
function u(t, n, i) {
40
if (!i) return void(v.style.left = n + "px");
41
var s = +new Date,
42
o = setInterval(function() {
43
var r = +new Date - s;
44
return r > i ? (v.style.left = n + "px", x && c(), e.transitionEnd && e.transitionEnd.call(event, y, p[y]), void clearInterval(o)) : void(v.style.left = (n - t) * (Math.floor(r / i * 100) / 100) + t + "px")
45
}, 4)
46
}
47
48
function c() {
49
b = setTimeout(s, x)
50
}
51
52
function l() {
53
x = 0, clearTimeout(b)
54
}
55
var h = function() {},
56
f = function(t) {
57
setTimeout(t || h, 0)
58
},
59
d = {
60
addEventListener: !!window.addEventListener,
61
touch: "ontouchstart" in window || window.DocumentTouch && document instanceof DocumentTouch,
62
transitions: function(t) {
63
var e = ["transitionProperty", "WebkitTransition", "MozTransition", "OTransition", "msTransition"];
64
for (var n in e)
65
if (void 0 !== t.style[e[n]]) return !0;
66
return !1
67
}(document.createElement("swipe"))
68
};
69
if (t) {
70
var p, m, g, v = t.children[0];
71
e = e || {};
72
var y = parseInt(e.startSlide, 10) || 0,
73
w = e.speed || 300;
74
e.continuous = void 0 !== e.continuous ? e.continuous : !0;
75
var b, _, x = e.auto || 0,
76
k = {},
77
M = {},
78
A = {
79
handleEvent: function(t) {
80
switch (t.type) {
81
case "touchstart":
82
this.start(t);
83
break;
84
case "touchmove":
85
this.move(t);
86
break;
87
case "touchend":
88
f(this.end(t));
89
break;
90
case "webkitTransitionEnd":
91
case "msTransitionEnd":
92
case "oTransitionEnd":
93
case "otransitionend":
94
case "transitionend":
95
f(this.transitionEnd(t));
96
break;
97
case "resize":
98
f(n.call())
99
}
100
e.stopPropagation && t.stopPropagation()
101
},
102
start: function(t) {
103
var e = t.touches[0];
104
k = {
105
x: e.pageX,
106
y: e.pageY,
107
time: +new Date
108
}, _ = void 0, M = {}, v.addEventListener("touchmove", this, !1), v.addEventListener("touchend", this, !1)
109
},
110
move: function(t) {
111
if (!(t.touches.length > 1 || t.scale && 1 !== t.scale)) {
112
e.disableScroll && t.preventDefault();
113
var n = t.touches[0];
114
M = {
115
x: n.pageX - k.x,
116
y: n.pageY - k.y
117
}, "undefined" == typeof _ && (_ = !!(_ || Math.abs(M.x) < Math.abs(M.y))), _ || (t.preventDefault(), l(), M.x = M.x / (!y && M.x > 0 || y == p.length - 1 && M.x < 0 ? Math.abs(M.x) / g + 1 : 1), a(y - 1, M.x + m[y - 1], 0), a(y, M.x + m[y], 0), a(y + 1, M.x + m[y + 1], 0))
118
}
119
},
120
end: function(t) {
121
var n = +new Date - k.time,
122
i = Number(n) < 250 && Math.abs(M.x) > 20 || Math.abs(M.x) > g / 2,
123
s = !y && M.x > 0 || y == p.length - 1 && M.x < 0,
124
o = M.x < 0;
125
_ || (i && !s ? (o ? (r(y - 1, -g, 0), r(y, m[y] - g, w), r(y + 1, m[y + 1] - g, w), y += 1) : (r(y + 1, g, 0), r(y, m[y] + g, w), r(y - 1, m[y - 1] + g, w), y += -1), e.callback && e.callback(y, p[y])) : (r(y - 1, -g, w), r(y, 0, w), r(y + 1, g, w))), v.removeEventListener("touchmove", A, !1), v.removeEventListener("touchend", A, !1)
126
},
127
transitionEnd: function(t) {
128
parseInt(t.target.getAttribute("data-index"), 10) == y && (x && c(), e.transitionEnd && e.transitionEnd.call(t, y, p[y]))
129
}
130
};
131
return n(), x && c(), d.addEventListener ? (d.touch && v.addEventListener("touchstart", A, !1), d.transitions && (v.addEventListener("webkitTransitionEnd", A, !1), v.addEventListener("msTransitionEnd", A, !1), v.addEventListener("oTransitionEnd", A, !1), v.addEventListener("otransitionend", A, !1), v.addEventListener("transitionend", A, !1)), window.addEventListener("resize", A, !1)) : window.onresize = function() {
132
n()
133
}, {
134
setup: function() {
135
n()
136
},
137
slide: function(t, e) {
138
l(), o(t, e)
139
},
140
prev: function() {
141
l(), i()
142
},
143
next: function() {
144
l(), s()
145
},
146
getPos: function() {
147
return y
148
},
149
getNumSlides: function() {
150
return p.length
151
},
152
kill: function() {
153
l(), v.style.width = "auto", v.style.left = 0;
154
for (var t = p.length; t--;) {
155
var e = p[t];
156
e.style.width = "100%", e.style.left = 0, d.transitions && a(t, 0, 0)
157
}
158
d.addEventListener ? (v.removeEventListener("touchstart", A, !1), v.removeEventListener("webkitTransitionEnd", A, !1), v.removeEventListener("msTransitionEnd", A, !1), v.removeEventListener("oTransitionEnd", A, !1), v.removeEventListener("otransitionend", A, !1), v.removeEventListener("transitionend", A, !1), window.removeEventListener("resize", A, !1)) : window.onresize = null
159
}
160
}
161
}
162
}! function(t) {
163
var e, n, i = t.event;
164
e = i.special.debouncedresize = {
165
setup: function() {
166
t(this).on("resize", e.handler)
167
},
168
teardown: function() {
169
t(this).off("resize", e.handler)
170
},
171
handler: function(t, s) {
172
var o = this,
173
r = arguments,
174
a = function() {
175
t.type = "debouncedresize", i.dispatch.apply(o, r)
176
};
177
n && clearTimeout(n), s ? a() : n = setTimeout(a, e.threshold)
178
},
179
threshold: 150
180
}
181
}(jQuery),
182
function(t) {
183
var e = {
184
topSpacing: 0,
185
bottomSpacing: 0,
186
className: "is-sticky",
187
wrapperClassName: "sticky-wrapper",
188
center: !1,
189
getWidthFrom: ""
190
},
191
n = t(window),
192
i = t(document),
193
s = [],
194
o = n.height(),
195
r = function() {
196
for (var e = n.scrollTop(), r = i.height(), a = r - o, u = e > a ? a - e : 0, c = 0; c < s.length; c++) {
197
var l = s[c],
198
h = l.stickyWrapper.offset().top,
199
f = h - l.topSpacing - u;
200
if (f >= e) null !== l.currentTop && (l.stickyElement.css("position", "").css("top", ""), l.stickyElement.parent().removeClass(l.className), l.currentTop = null);
201
else {
202
var d = r - l.stickyElement.outerHeight() - l.topSpacing - l.bottomSpacing - e - u;
203
0 > d ? d += l.topSpacing : d = l.topSpacing, l.currentTop != d && (l.stickyElement.css("position", "fixed").css("top", d), "undefined" != typeof l.getWidthFrom && l.stickyElement.css("width", t(l.getWidthFrom).width()), l.stickyElement.parent().addClass(l.className), l.currentTop = d)
204
}
205
}
206
},
207
a = function() {
208
o = n.height()
209
},
210
u = {
211
init: function(n) {
212
var i = t.extend(e, n);
213
return this.each(function() {
214
var e = t(this),
215
n = e.attr("id"),
216
o = t("<div></div>").attr("id", n + "-sticky-wrapper").addClass(i.wrapperClassName);
217
e.wrapAll(o), i.center && e.parent().css({
218
width: e.outerWidth(),
219
marginLeft: "auto",
220
marginRight: "auto"
221
}), "right" == e.css("float") && e.css({
222
"float": "none"
223
}).parent().css({
224
"float": "right"
225
});
226
var r = e.parent();
227
r.css("height", e.outerHeight()), s.push({
228
topSpacing: i.topSpacing,
229
bottomSpacing: i.bottomSpacing,
230
stickyElement: e,
231
currentTop: null,
232
stickyWrapper: r,
233
className: i.className,
234
getWidthFrom: i.getWidthFrom
235
})
236
})
237
},
238
update: r
239
};
240
window.addEventListener ? (window.addEventListener("scroll", r, !1), window.addEventListener("resize", a, !1)) : window.attachEvent && (window.attachEvent("onscroll", r), window.attachEvent("onresize", a)), t.fn.sticky = function(e) {
241
return u[e] ? u[e].apply(this, Array.prototype.slice.call(arguments, 1)) : "object" != typeof e && e ? void t.error("Method " + e + " does not exist on jQuery.sticky") : u.init.apply(this, arguments)
242
}, t(function() {
243
setTimeout(r, 0)
244
})
245
}(jQuery),
246
function(t, e, n) {
247
"use strict";
248
var i, s = t.document,
249
o = t.Modernizr,
250
r = function(t) {
251
return t.charAt(0).toUpperCase() + t.slice(1)
252
},
253
a = "Moz Webkit O Ms".split(" "),
254
u = function(t) {
255
var e, n = s.documentElement.style;
256
if ("string" == typeof n[t]) return t;
257
t = r(t);
258
for (var i = 0, o = a.length; o > i; i++)
259
if (e = a[i] + t, "string" == typeof n[e]) return e
260
},
261
c = u("transform"),
262
l = u("transitionProperty"),
263
h = {
264
csstransforms: function() {
265
return !!c
266
},
267
csstransforms3d: function() {
268
var t = !!u("perspective");
269
if (t) {
270
var n = " -o- -moz- -ms- -webkit- -khtml- ".split(" "),
271
i = "@media (" + n.join("transform-3d),(") + "modernizr)",
272
s = e("<style>" + i + "{#modernizr{height:3px}}</style>").appendTo("head"),
273
o = e('<div id="modernizr" />').appendTo("html");
274
t = 3 === o.height(), o.remove(), s.remove()
275
}
276
return t
277
},
278
csstransitions: function() {
279
return !!l
280
}
281
};
282
if (o)
283
for (i in h) o.hasOwnProperty(i) || o.addTest(i, h[i]);
284
else {
285
o = t.Modernizr = {
286
_version: "1.6ish: miniModernizr for Isotope"
287
};
288
var f, d = " ";
289
for (i in h) f = h[i](), o[i] = f, d += " " + (f ? "" : "no-") + i;
290
e("html").addClass(d)
291
}
292
if (o.csstransforms) {
293
var p = o.csstransforms3d ? {
294
translate: function(t) {
295
return "translate3d(" + t[0] + "px, " + t[1] + "px, 0) "
296
},
297
scale: function(t) {
298
return "scale3d(" + t + ", " + t + ", 1) "
299
}
300
} : {
301
translate: function(t) {
302
return "translate(" + t[0] + "px, " + t[1] + "px) "
303
},
304
scale: function(t) {
305
return "scale(" + t + ") "
306
}
307
},
308
m = function(t, n, i) {
309
var s, o, r = e.data(t, "isoTransform") || {},
310
a = {},
311
u = {};
312
a[n] = i, e.extend(r, a);
313
for (s in r) o = r[s], u[s] = p[s](o);
314
var l = u.translate || "",
315
h = u.scale || "",
316
f = l + h;
317
e.data(t, "isoTransform", r), t.style[c] = f
318
};
319
e.cssNumber.scale = !0, e.cssHooks.scale = {
320
set: function(t, e) {
321
m(t, "scale", e)
322
},
323
get: function(t, n) {
324
var i = e.data(t, "isoTransform");
325
return i && i.scale ? i.scale : 1
326
}
327
}, e.fx.step.scale = function(t) {
328
e.cssHooks.scale.set(t.elem, t.now + t.unit)
329
}, e.cssNumber.translate = !0, e.cssHooks.translate = {
330
set: function(t, e) {
331
m(t, "translate", e)
332
},
333
get: function(t, n) {
334
var i = e.data(t, "isoTransform");
335
return i && i.translate ? i.translate : [0, 0]
336
}
337
}
338
}
339
var g, v;
340
o.csstransitions && (g = {
341
WebkitTransitionProperty: "webkitTransitionEnd",
342
MozTransitionProperty: "transitionend",
343
OTransitionProperty: "oTransitionEnd otransitionend",
344
transitionProperty: "transitionend"
345
}[l], v = u("transitionDuration"));
346
var y, w = e.event,
347
b = e.event.handle ? "handle" : "dispatch";
348
w.special.smartresize = {
349
setup: function() {
350
e(this).bind("resize", w.special.smartresize.handler)
351
},
352
teardown: function() {
353
e(this).unbind("resize", w.special.smartresize.handler)
354
},
355
handler: function(t, e) {
356
var n = this,
357
i = arguments;
358
t.type = "smartresize", y && clearTimeout(y), y = setTimeout(function() {
359
w[b].apply(n, i)
360
}, "execAsap" === e ? 0 : 100)
361
}
362
}, e.fn.smartresize = function(t) {
363
return t ? this.bind("smartresize", t) : this.trigger("smartresize", ["execAsap"])
364
}, e.Isotope = function(t, n, i) {
365
this.element = e(n), this._create(t), this._init(i)
366
};
367
var _ = ["width", "height"],
368
x = e(t);
369
e.Isotope.settings = {
370
resizable: !0,
371
layoutMode: "masonry",
372
containerClass: "isotope",
373
itemClass: "isotope-item",
374
hiddenClass: "isotope-hidden",
375
hiddenStyle: {
376
opacity: 0,
377
scale: .001
378
},
379
visibleStyle: {
380
opacity: 1,
381
scale: 1
382
},
383
containerStyle: {
384
position: "relative",
385
overflow: "hidden"
386
},
387
animationEngine: "best-available",
388
animationOptions: {
389
queue: !1,
390
duration: 800
391
},
392
sortBy: "original-order",
393
sortAscending: !0,
394
resizesContainer: !0,
395
transformsEnabled: !0,
396
itemPositionDataEnabled: !1
397
}, e.Isotope.prototype = {
398
_create: function(t) {
399
this.options = e.extend({}, e.Isotope.settings, t), this.styleQueue = [], this.elemCount = 0;
400
var n = this.element[0].style;
401
this.originalStyle = {};
402
var i = _.slice(0);
403
for (var s in this.options.containerStyle) i.push(s);
404
for (var o = 0, r = i.length; r > o; o++) s = i[o], this.originalStyle[s] = n[s] || "";
405
this.element.css(this.options.containerStyle), this._updateAnimationEngine(), this._updateUsingTransforms();
406
var a = {
407
"original-order": function(t, e) {
408
return e.elemCount++, e.elemCount
409
},
410
random: function() {
411
return Math.random()
412
}
413
};
414
this.options.getSortData = e.extend(this.options.getSortData, a), this.reloadItems(), this.offset = {
415
left: parseInt(this.element.css("padding-left") || 0, 10),
416
top: parseInt(this.element.css("padding-top") || 0, 10)
417
};
418
var u = this;
419
setTimeout(function() {
420
u.element.addClass(u.options.containerClass)
421
}, 0), this.options.resizable && x.bind("smartresize.isotope", function() {
422
u.resize()
423
}), this.element.delegate("." + this.options.hiddenClass, "click", function() {
424
return !1
425
})
426
},
427
_getAtoms: function(t) {
428
var e = this.options.itemSelector,
429
n = e ? t.filter(e).add(t.find(e)) : t,
430
i = {
431
position: "absolute"
432
};
433
return n = n.filter(function(t, e) {
434
return 1 === e.nodeType
435
}), this.usingTransforms && (i.left = 0, i.top = 0), n.css(i).addClass(this.options.itemClass), this.updateSortData(n, !0), n
436
},
437
_init: function(t) {
438
this.$filteredAtoms = this._filter(this.$allAtoms), this._sort(), this.reLayout(t)
439
},
440
option: function(t) {
441
if (e.isPlainObject(t)) {
442
this.options = e.extend(!0, this.options, t);
443
var n;
444
for (var i in t) n = "_update" + r(i), this[n] && this[n]()
445
}
446
},
447
_updateAnimationEngine: function() {
448
var t, e = this.options.animationEngine.toLowerCase().replace(/[ _\-]/g, "");
449
switch (e) {
450
case "css":
451
case "none":
452
t = !1;
453
break;
454
case "jquery":
455
t = !0;
456
break;
457
default:
458
t = !o.csstransitions
459
}
460
this.isUsingJQueryAnimation = t, this._updateUsingTransforms()
461
},
462
_updateTransformsEnabled: function() {
463
this._updateUsingTransforms()
464
},
465
_updateUsingTransforms: function() {
466
var t = this.usingTransforms = this.options.transformsEnabled && o.csstransforms && o.csstransitions && !this.isUsingJQueryAnimation;
467
t || (delete this.options.hiddenStyle.scale, delete this.options.visibleStyle.scale), this.getPositionStyles = t ? this._translate : this._positionAbs
468
},
469
_filter: function(t) {
470
var e = "" === this.options.filter ? "*" : this.options.filter;
471
if (!e) return t;
472
var n = this.options.hiddenClass,
473
i = "." + n,
474
s = t.filter(i),
475
o = s;
476
if ("*" !== e) {
477
o = s.filter(e);
478
var r = t.not(i).not(e).addClass(n);
479
this.styleQueue.push({
480
$el: r,
481
style: this.options.hiddenStyle
482
})
483
}
484
return this.styleQueue.push({
485
$el: o,
486
style: this.options.visibleStyle
487
}), o.removeClass(n), t.filter(e)
488
},
489
updateSortData: function(t, n) {
490
var i, s, o = this,
491
r = this.options.getSortData;
492
t.each(function() {
493
i = e(this), s = {};
494
for (var t in r) n || "original-order" !== t ? s[t] = r[t](i, o) : s[t] = e.data(this, "isotope-sort-data")[t];
495
e.data(this, "isotope-sort-data", s)
496
})
497
},
498
_sort: function() {
499
var t = this.options.sortBy,
500
e = this._getSorter,
501
n = this.options.sortAscending ? 1 : -1,
502
i = function(i, s) {
503
var o = e(i, t),
504
r = e(s, t);
505
return o === r && "original-order" !== t && (o = e(i, "original-order"), r = e(s, "original-order")), (o > r ? 1 : r > o ? -1 : 0) * n
506
};
507
this.$filteredAtoms.sort(i)
508
},
509
_getSorter: function(t, n) {
510
return e.data(t, "isotope-sort-data")[n]
511
},
512
_translate: function(t, e) {
513
return {
514
translate: [t, e]
515
}
516
},
517
_positionAbs: function(t, e) {
518
return {
519
left: t,
520
top: e
521
}
522
},
523
_pushPosition: function(t, e, n) {
524
e = Math.round(e + this.offset.left), n = Math.round(n + this.offset.top);
525
var i = this.getPositionStyles(e, n);
526
this.styleQueue.push({
527
$el: t,
528
style: i
529
}), this.options.itemPositionDataEnabled && t.data("isotope-item-position", {
530
x: e,
531
y: n
532
})
533
},
534
layout: function(t, e) {
535
var n = this.options.layoutMode;
536
if (this["_" + n + "Layout"](t), this.options.resizesContainer) {
537
var i = this["_" + n + "GetContainerSize"]();
538
this.styleQueue.push({
539
$el: this.element,
540
style: i
541
})
542
}
543
this._processStyleQueue(t, e), this.isLaidOut = !0
544
},
545
_processStyleQueue: function(t, n) {
546
var i, s, r, a, u = this.isLaidOut && this.isUsingJQueryAnimation ? "animate" : "css",
547
c = this.options.animationOptions,
548
l = this.options.onLayout;
549
if (s = function(t, e) {
550
e.$el[u](e.style, c)
551
}, this._isInserting && this.isUsingJQueryAnimation) s = function(t, e) {
552
i = e.$el.hasClass("no-transition") ? "css" : u, e.$el[i](e.style, c)
553
};
554
else if (n || l || c.complete) {
555
var h = !1,
556
f = [n, l, c.complete],
557
d = this;
558
if (r = !0, a = function() {
559
if (!h) {
560
for (var e, n = 0, i = f.length; i > n; n++) e = f[n], "function" == typeof e && e.call(d.element, t, d);
561
h = !0
562
}
563
}, this.isUsingJQueryAnimation && "animate" === u) c.complete = a, r = !1;
564
else if (o.csstransitions) {
565
for (var p, m = 0, y = this.styleQueue[0], w = y && y.$el; !w || !w.length;) {
566
if (p = this.styleQueue[m++], !p) return;
567
w = p.$el
568
}
569
var b = parseFloat(getComputedStyle(w[0])[v]);
570
b > 0 && (s = function(t, e) {
571
e.$el[u](e.style, c).one(g, a)
572
}, r = !1)
573
}
574
}
575
e.each(this.styleQueue, s), r && a(), this.styleQueue = []
576
},
577
resize: function() {
578
this["_" + this.options.layoutMode + "ResizeChanged"]() && this.reLayout()
579
},
580
reLayout: function(t) {
581
this["_" + this.options.layoutMode + "Reset"](), this.layout(this.$filteredAtoms, t)
582
},
583
addItems: function(t, e) {
584
var n = this._getAtoms(t);
585
this.$allAtoms = this.$allAtoms.add(n), e && e(n)
586
},
587
insert: function(t, e) {
588
this.element.append(t);
589
var n = this;
590
this.addItems(t, function(t) {
591
var i = n._filter(t);
592
n._addHideAppended(i), n._sort(), n.reLayout(), n._revealAppended(i, e)
593
})
594
},
595
appended: function(t, e) {
596
var n = this;
597
this.addItems(t, function(t) {
598
n._addHideAppended(t), n.layout(t), n._revealAppended(t, e)
599
})
600
},
601
_addHideAppended: function(t) {
602
this.$filteredAtoms = this.$filteredAtoms.add(t), t.addClass("no-transition"), this._isInserting = !0, this.styleQueue.push({
603
$el: t,
604
style: this.options.hiddenStyle
605
})
606
},
607
_revealAppended: function(t, e) {
608
var n = this;
609
setTimeout(function() {
610
t.removeClass("no-transition"), n.styleQueue.push({
611
$el: t,
612
style: n.options.visibleStyle
613
}), n._isInserting = !1, n._processStyleQueue(t, e)
614
}, 10)
615
},
616
reloadItems: function() {
617
this.$allAtoms = this._getAtoms(this.element.children())
618
},
619
remove: function(t, e) {
620
this.$allAtoms = this.$allAtoms.not(t), this.$filteredAtoms = this.$filteredAtoms.not(t);
621
var n = this,
622
i = function() {
623
t.remove(), e && e.call(n.element)
624
};
625
t.filter(":not(." + this.options.hiddenClass + ")").length ? (this.styleQueue.push({
626
$el: t,
627
style: this.options.hiddenStyle
628
}), this._sort(), this.reLayout(i)) : i()
629
},
630
shuffle: function(t) {
631
this.updateSortData(this.$allAtoms), this.options.sortBy = "random", this._sort(), this.reLayout(t)
632
},
633
destroy: function() {
634
var t = this.usingTransforms,
635
e = this.options;
636
this.$allAtoms.removeClass(e.hiddenClass + " " + e.itemClass).each(function() {
637
var e = this.style;
638
e.position = "", e.top = "", e.left = "", e.opacity = "", t && (e[c] = "")
639
});
640
var n = this.element[0].style;
641
for (var i in this.originalStyle) n[i] = this.originalStyle[i];
642
this.element.unbind(".isotope").undelegate("." + e.hiddenClass, "click").removeClass(e.containerClass).removeData("isotope"), x.unbind(".isotope")
643
},
644
_getSegments: function(t) {
645
var e, n = this.options.layoutMode,
646
i = t ? "rowHeight" : "columnWidth",
647
s = t ? "height" : "width",
648
o = t ? "rows" : "cols",
649
a = this.element[s](),
650
u = this.options[n] && this.options[n][i] || this.$filteredAtoms["outer" + r(s)](!0) || a;
651
e = Math.floor(a / u), e = Math.max(e, 1), this[n][o] = e, this[n][i] = u
652
},
653
_checkIfSegmentsChanged: function(t) {
654
var e = this.options.layoutMode,
655
n = t ? "rows" : "cols",
656
i = this[e][n];
657
return this._getSegments(t), this[e][n] !== i
658
},
659
_masonryReset: function() {
660
this.masonry = {}, this._getSegments();
661
var t = this.masonry.cols;
662
for (this.masonry.colYs = []; t--;) this.masonry.colYs.push(0)
663
},
664
_masonryLayout: function(t) {
665
var n = this,
666
i = n.masonry;
667
t.each(function() {
668
var t = e(this),
669
s = Math.ceil(t.outerWidth(!0) / i.columnWidth);
670
if (s = Math.min(s, i.cols), 1 === s) n._masonryPlaceBrick(t, i.colYs);
671
else {
672
var o, r, a = i.cols + 1 - s,
673
u = [];
674
for (r = 0; a > r; r++) o = i.colYs.slice(r, r + s), u[r] = Math.max.apply(Math, o);
675
n._masonryPlaceBrick(t, u)
676
}
677
})
678
},
679
_masonryPlaceBrick: function(t, e) {
680
for (var n = Math.min.apply(Math, e), i = 0, s = 0, o = e.length; o > s; s++)
681
if (e[s] === n) {
682
i = s;
683
break
684
}
685
var r = this.masonry.columnWidth * i,
686
a = n;
687
this._pushPosition(t, r, a);
688
var u = n + t.outerHeight(!0),
689
c = this.masonry.cols + 1 - o;
690
for (s = 0; c > s; s++) this.masonry.colYs[i + s] = u
691
},
692
_masonryGetContainerSize: function() {
693
var t = Math.max.apply(Math, this.masonry.colYs);
694
return {
695
height: t
696
}
697
},
698
_masonryResizeChanged: function() {
699
return this._checkIfSegmentsChanged()
700
},
701
_fitRowsReset: function() {
702
this.fitRows = {
703
x: 0,
704
y: 0,
705
height: 0
706
}
707
},
708
_fitRowsLayout: function(t) {
709
var n = this,
710
i = this.element.width(),
711
s = this.fitRows;
712
t.each(function() {
713
var t = e(this),
714
o = t.outerWidth(!0),
715
r = t.outerHeight(!0);
716
0 !== s.x && o + s.x > i && (s.x = 0, s.y = s.height), n._pushPosition(t, s.x, s.y), s.height = Math.max(s.y + r, s.height), s.x += o
717
})
718
},
719
_fitRowsGetContainerSize: function() {
720
return {
721
height: this.fitRows.height
722
}
723
},
724
_fitRowsResizeChanged: function() {
725
return !0
726
},
727
_cellsByRowReset: function() {
728
this.cellsByRow = {
729
index: 0
730
}, this._getSegments(), this._getSegments(!0)
731
},
732
_cellsByRowLayout: function(t) {
733
var n = this,
734
i = this.cellsByRow;
735
t.each(function() {
736
var t = e(this),
737
s = i.index % i.cols,
738
o = Math.floor(i.index / i.cols),
739
r = (s + .5) * i.columnWidth - t.outerWidth(!0) / 2,
740
a = (o + .5) * i.rowHeight - t.outerHeight(!0) / 2;
741
n._pushPosition(t, r, a), i.index++
742
})
743
},
744
_cellsByRowGetContainerSize: function() {
745
return {
746
height: Math.ceil(this.$filteredAtoms.length / this.cellsByRow.cols) * this.cellsByRow.rowHeight + this.offset.top
747
}
748
},
749
_cellsByRowResizeChanged: function() {
750
return this._checkIfSegmentsChanged()
751
},
752
_straightDownReset: function() {
753
this.straightDown = {
754
y: 0
755
}
756
},
757
_straightDownLayout: function(t) {
758
var n = this;
759
t.each(function(t) {
760
var i = e(this);
761
n._pushPosition(i, 0, n.straightDown.y), n.straightDown.y += i.outerHeight(!0)
762
})
763
},
764
_straightDownGetContainerSize: function() {
765
return {
766
height: this.straightDown.y
767
}
768
},
769
_straightDownResizeChanged: function() {
770
return !0
771
},
772
_masonryHorizontalReset: function() {
773
this.masonryHorizontal = {}, this._getSegments(!0);
774
var t = this.masonryHorizontal.rows;
775
for (this.masonryHorizontal.rowXs = []; t--;) this.masonryHorizontal.rowXs.push(0)
776
},
777
_masonryHorizontalLayout: function(t) {
778
var n = this,
779
i = n.masonryHorizontal;
780
t.each(function() {
781
var t = e(this),
782
s = Math.ceil(t.outerHeight(!0) / i.rowHeight);
783
if (s = Math.min(s, i.rows), 1 === s) n._masonryHorizontalPlaceBrick(t, i.rowXs);
784
else {
785
var o, r, a = i.rows + 1 - s,
786
u = [];
787
for (r = 0; a > r; r++) o = i.rowXs.slice(r, r + s), u[r] = Math.max.apply(Math, o);
788
n._masonryHorizontalPlaceBrick(t, u)
789
}
790
})
791
},
792
_masonryHorizontalPlaceBrick: function(t, e) {
793
for (var n = Math.min.apply(Math, e), i = 0, s = 0, o = e.length; o > s; s++)
794
if (e[s] === n) {
795
i = s;
796
break
797
}
798
var r = n,
799
a = this.masonryHorizontal.rowHeight * i;
800
this._pushPosition(t, r, a);
801
var u = n + t.outerWidth(!0),
802
c = this.masonryHorizontal.rows + 1 - o;
803
for (s = 0; c > s; s++) this.masonryHorizontal.rowXs[i + s] = u
804
},
805
_masonryHorizontalGetContainerSize: function() {
806
var t = Math.max.apply(Math, this.masonryHorizontal.rowXs);
807
return {
808
width: t
809
}
810
},
811
_masonryHorizontalResizeChanged: function() {
812
return this._checkIfSegmentsChanged(!0)
813
},
814
_fitColumnsReset: function() {
815
this.fitColumns = {
816
x: 0,
817
y: 0,
818
width: 0
819
}
820
},
821
_fitColumnsLayout: function(t) {
822
var n = this,
823
i = this.element.height(),
824
s = this.fitColumns;
825
t.each(function() {
826
var t = e(this),
827
o = t.outerWidth(!0),
828
r = t.outerHeight(!0);
829
0 !== s.y && r + s.y > i && (s.x = s.width, s.y = 0), n._pushPosition(t, s.x, s.y), s.width = Math.max(s.x + o, s.width), s.y += r
830
})
831
},
832
_fitColumnsGetContainerSize: function() {
833
return {
834
width: this.fitColumns.width
835
}
836
},
837
_fitColumnsResizeChanged: function() {
838
return !0
839
},
840
_cellsByColumnReset: function() {
841
this.cellsByColumn = {
842
index: 0
843
}, this._getSegments(), this._getSegments(!0)
844
},
845
_cellsByColumnLayout: function(t) {
846
var n = this,
847
i = this.cellsByColumn;
848
t.each(function() {
849
var t = e(this),
850
s = Math.floor(i.index / i.rows),
851
o = i.index % i.rows,
852
r = (s + .5) * i.columnWidth - t.outerWidth(!0) / 2,
853
a = (o + .5) * i.rowHeight - t.outerHeight(!0) / 2;
854
n._pushPosition(t, r, a), i.index++
855
})
856
},
857
_cellsByColumnGetContainerSize: function() {
858
return {
859
width: Math.ceil(this.$filteredAtoms.length / this.cellsByColumn.rows) * this.cellsByColumn.columnWidth
860
}
861
},
862
_cellsByColumnResizeChanged: function() {
863
return this._checkIfSegmentsChanged(!0)
864
},
865
_straightAcrossReset: function() {
866
this.straightAcross = {
867
x: 0
868
}
869
},
870
_straightAcrossLayout: function(t) {
871
var n = this;
872
t.each(function(t) {
873
var i = e(this);
874
n._pushPosition(i, n.straightAcross.x, 0), n.straightAcross.x += i.outerWidth(!0)
875
})
876
},
877
_straightAcrossGetContainerSize: function() {
878
return {
879
width: this.straightAcross.x
880
}
881
},
882
_straightAcrossResizeChanged: function() {
883
return !0
884
}
885
}, e.fn.imagesLoaded = function(t) {
886
function n() {
887
t.call(s, o)
888
}
889
890
function i(t) {
891
var s = t.target;
892
s.src !== a && -1 === e.inArray(s, u) && (u.push(s), --r <= 0 && (setTimeout(n), o.unbind(".imagesLoaded", i)))
893
}
894
var s = this,
895
o = s.find("img").add(s.filter("img")),
896
r = o.length,
897
a = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==",
898
u = [];
899
return r || n(), o.bind("load.imagesLoaded error.imagesLoaded", i).each(function() {
900
var t = this.src;
901
this.src = a, this.src = t
902
}), s
903
};
904
var k = function(e) {
905
t.console && t.console.error(e)
906
};
907
e.fn.isotope = function(t, n) {
908
if ("string" == typeof t) {
909
var i = Array.prototype.slice.call(arguments, 1);
910
this.each(function() {
911
var n = e.data(this, "isotope");
912
return n ? e.isFunction(n[t]) && "_" !== t.charAt(0) ? void n[t].apply(n, i) : void k("no such method '" + t + "' for isotope instance") : void k("cannot call methods on isotope prior to initialization; attempted to call method '" + t + "'")
913
})
914
} else this.each(function() {
915
var i = e.data(this, "isotope");
916
i ? (i.option(t), i._init(n)) : e.data(this, "isotope", new e.Isotope(t, this, n))
917
});
918
return this
919
}
920
}(window, jQuery),
921
function(t, e) {
922
e.extend(e.Isotope.prototype, {
923
_sloppyMasonryReset: function() {
924
var t = this.element.width(),
925
e = this.options.sloppyMasonry && this.options.sloppyMasonry.columnWidth || this.$filteredAtoms.outerWidth(!0) || t;
926
this.sloppyMasonry = {
927
cols: Math.round(t / e),
928
columnWidth: e
929
};
930
var n = this.sloppyMasonry.cols;
931
for (this.sloppyMasonry.colYs = []; n--;) this.sloppyMasonry.colYs.push(0)
932
},
933
_sloppyMasonryLayout: function(t) {
934
var n = this,
935
i = n.sloppyMasonry;
936
t.each(function() {
937
var t = e(this),
938
s = Math.round(t.outerWidth(!0) / i.columnWidth);
939
if (s = Math.min(s, i.cols), 1 === s) n._sloppyMasonryPlaceBrick(t, i.colYs);
940
else {
941
var o, r, a = i.cols + 1 - s,
942
u = [];
943
for (r = 0; a > r; r++) o = i.colYs.slice(r, r + s), u[r] = Math.max.apply(Math, o);
944
n._sloppyMasonryPlaceBrick(t, u)
945
}
946
})
947
},
948
_sloppyMasonryPlaceBrick: function(t, e) {
949
for (var n = Math.min.apply(Math, e), i = 0, s = 0, o = e.length; o > s; s++)
950
if (e[s] === n) {
951
i = s;
952
break
953
}
954
var r = this.sloppyMasonry.columnWidth * i,
955
a = n;
956
this._pushPosition(t, r, a);
957
var u = n + t.outerHeight(!0),
958
c = this.sloppyMasonry.cols + 1 - o;
959
for (s = 0; c > s; s++) this.sloppyMasonry.colYs[i + s] = u
960
},
961
_sloppyMasonryGetContainerSize: function() {
962
var t = Math.max.apply(Math, this.sloppyMasonry.colYs);
963
return {
964
height: t
965
}
966
},
967
_sloppyMasonryResizeChanged: function() {
968
return !0
969
}
970
})
971
}(this, this.jQuery),
972
function(t) {
973
function e(e) {
974
return !e || void 0 !== e.allowPageScroll || void 0 === e.swipe && void 0 === e.swipeStatus || (e.allowPageScroll = a), e || (e = {}), e = t.extend({}, t.fn.swipe.defaults, e), this.each(function() {
975
var i = t(this),
976
s = i.data(v);
977
s || (s = new n(this, e), i.data(v, s))
978
})
979
}
980
981
function n(e, n) {
982
function y(t) {
983
var e, t = t.originalEvent,
984
i = g ? t.touches[0] : t;
985
return B = f, g ? W = t.touches.length : t.preventDefault(), P = 0, j = null, H = 0, g && W !== n.fingers && n.fingers !== h ? _(t) : (E = S = i.pageX, C = z = i.pageY, Y = (new Date).getTime(), n.swipeStatus && (e = x(t, B))), !1 === e ? (B = m, x(t, B), e) : (R.bind(L, w), void R.bind(Q, b))
986
}
987
988
function w(t) {
989
if (t = t.originalEvent, B !== p && B !== m) {
990
var e, f = g ? t.touches[0] : t;
991
S = f.pageX, z = f.pageY, $ = (new Date).getTime(), j = A(), g && (W = t.touches.length), B = d;
992
var f = t,
993
v = j;
994
if (n.allowPageScroll === a) f.preventDefault();
995
else {
996
var y = n.allowPageScroll === u;
997
switch (v) {
998
case i:
999
(n.swipeLeft && y || !y && n.allowPageScroll != c) && f.preventDefault();
1000
break;
1001
case s:
1002
(n.swipeRight && y || !y && n.allowPageScroll != c) && f.preventDefault();
1003
break;
1004
case o:
1005
(n.swipeUp && y || !y && n.allowPageScroll != l) && f.preventDefault();
1006
break;
1007
case r:
1008
(n.swipeDown && y || !y && n.allowPageScroll != l) && f.preventDefault()
1009
}
1010
}
1011
W !== n.fingers && n.fingers !== h && g ? (B = m, x(t, B)) : (P = M(), H = $ - Y, n.swipeStatus && (e = x(t, B, j, P, H)), n.triggerOnTouchEnd || (f = !(n.maxTimeThreshold ? !(H >= n.maxTimeThreshold) : 1), !0 === k() ? (B = p, e = x(t, B)) : f && (B = m, x(t, B)))), !1 === e && (B = m, x(t, B))
1012
}
1013
}
1014
1015
function b(t) {
1016
if (t = t.originalEvent, t.preventDefault(), $ = (new Date).getTime(), P = M(), j = A(), H = $ - Y, n.triggerOnTouchEnd || !1 === n.triggerOnTouchEnd && B === d)
1017
if (B = p, W !== n.fingers && n.fingers !== h && g || 0 === S) B = m, x(t, B);
1018
else {
1019
var e = !(n.maxTimeThreshold ? !(H >= n.maxTimeThreshold) : 1);
1020
!0 !== k() && null !== k() || e ? (e || !1 === k()) && (B = m, x(t, B)) : x(t, B)
1021
}
1022
else B === d && (B = m, x(t, B));
1023
R.unbind(L, w, !1), R.unbind(Q, b, !1)
1024
}
1025
1026
function _() {
1027
Y = $ = z = S = C = E = W = 0
1028
}
1029
1030
function x(t, e) {
1031
var a = void 0;
1032
if (n.swipeStatus && (a = n.swipeStatus.call(R, t, e, j || null, P || 0, H || 0, W)), e !== m || !n.click || 1 !== W && g || !isNaN(P) && 0 !== P || (a = n.click.call(R, t, t.target)), e == p) switch (n.swipe && (a = n.swipe.call(R, t, j, P, H, W)), j) {
1033
case i:
1034
n.swipeLeft && (a = n.swipeLeft.call(R, t, j, P, H, W));
1035
break;
1036
case s:
1037
n.swipeRight && (a = n.swipeRight.call(R, t, j, P, H, W));
1038
break;
1039
case o:
1040
n.swipeUp && (a = n.swipeUp.call(R, t, j, P, H, W));
1041
break;
1042
case r:
1043
n.swipeDown && (a = n.swipeDown.call(R, t, j, P, H, W))
1044
}
1045
return (e === m || e === p) && _(t), a
1046
}
1047
1048
function k() {
1049
return null !== n.threshold ? P >= n.threshold : null
1050
}
1051
1052
function M() {
1053
return Math.round(Math.sqrt(Math.pow(S - E, 2) + Math.pow(z - C, 2)))
1054
}
1055
1056
function A() {
1057
var t;
1058
return t = Math.atan2(z - C, E - S), t = Math.round(180 * t / Math.PI), 0 > t && (t = 360 - Math.abs(t)), 45 >= t && t >= 0 ? i : 360 >= t && t >= 315 ? i : t >= 135 && 225 >= t ? s : t > 45 && 135 > t ? r : o
1059
}
1060
1061
function T() {
1062
R.unbind(O, y), R.unbind(D, _), R.unbind(L, w), R.unbind(Q, b)
1063
}
1064
var S, z, E, C, I = g || !n.fallbackToMouseEvents,
1065
O = I ? "touchstart" : "mousedown",
1066
L = I ? "touchmove" : "mousemove",
1067
Q = I ? "touchend" : "mouseup",
1068
D = "touchcancel",
1069
P = 0,
1070
j = null,
1071
H = 0,
1072
R = t(e),
1073
B = "start",
1074
W = 0,
1075
Y = z = S = C = E = 0,
1076
$ = 0;
1077
try {
1078
R.bind(O, y), R.bind(D, _)
1079
} catch (N) {
1080
t.error("events not supported " + O + "," + D + " on jQuery.swipe")
1081
}
1082
this.enable = function() {
1083
return R.bind(O, y), R.bind(D, _), R
1084
}, this.disable = function() {
1085
return T(), R
1086
}, this.destroy = function() {
1087
return T(), R.data(v, null), R
1088
}
1089
}
1090
var i = "left",
1091
s = "right",
1092
o = "up",
1093
r = "down",
1094
a = "none",
1095
u = "auto",
1096
c = "horizontal",
1097
l = "vertical",
1098
h = "all",
1099
f = "start",
1100
d = "move",
1101
p = "end",
1102
m = "cancel",
1103
g = "ontouchstart" in window,
1104
v = "TouchSwipe";
1105
t.fn.swipe = function(n) {
1106
var i = t(this),
1107
s = i.data(v);
1108
if (s && "string" == typeof n) {
1109
if (s[n]) return s[n].apply(this, Array.prototype.slice.call(arguments, 1));
1110
t.error("Method " + n + " does not exist on jQuery.swipe")
1111
} else if (!(s || "object" != typeof n && n)) return e.apply(this, arguments);
1112
return i
1113
}, t.fn.swipe.defaults = {
1114
fingers: 1,
1115
threshold: 75,
1116
maxTimeThreshold: null,
1117
swipe: null,
1118
swipeLeft: null,
1119
swipeRight: null,
1120
swipeUp: null,
1121
swipeDown: null,
1122
swipeStatus: null,
1123
click: null,
1124
triggerOnTouchEnd: !0,
1125
allowPageScroll: "auto",
1126
fallbackToMouseEvents: !0
1127
}, t.fn.swipe.phases = {
1128
PHASE_START: f,
1129
PHASE_MOVE: d,
1130
PHASE_END: p,
1131
PHASE_CANCEL: m
1132
}, t.fn.swipe.directions = {
1133
LEFT: i,
1134
RIGHT: s,
1135
UP: o,
1136
DOWN: r
1137
}, t.fn.swipe.pageScroll = {
1138
NONE: a,
1139
HORIZONTAL: c,
1140
VERTICAL: l,
1141
AUTO: u
1142
}, t.fn.swipe.fingers = {
1143
ONE: 1,
1144
TWO: 2,
1145
THREE: 3,
1146
ALL: h
1147
}
1148
}(jQuery),
1149
function(t, e) {
1150
var n, i = t.jQuery || t.Cowboy || (t.Cowboy = {});
1151
i.throttle = n = function(t, n, s, o) {
1152
function r() {
1153
function i() {
1154
u = +new Date, s.apply(c, h)
1155
}
1156
1157
function r() {
1158
a = e
1159
}
1160
var c = this,
1161
l = +new Date - u,
1162
h = arguments;
1163
o && !a && i(), a && clearTimeout(a), o === e && l > t ? i() : n !== !0 && (a = setTimeout(o ? r : i, o === e ? t - l : t))
1164
}
1165
var a, u = 0;
1166
return "boolean" != typeof n && (o = s, s = n, n = e), i.guid && (r.guid = s.guid = s.guid || i.guid++), r
1167
}, i.debounce = function(t, i, s) {
1168
return s === e ? n(t, i, !1) : n(t, s, i !== !1)
1169
}
1170
}(this),
1171
function(t) {
1172
function e(e, n, i) {
1173
var s = n.hash.slice(1),
1174
o = document.getElementById(s) || document.getElementsByName(s)[0];
1175
if (o) {
1176
e && e.preventDefault();
1177
var r = t(i.target);
1178
if (!(i.lock && r.is(":animated") || i.onBefore && i.onBefore.call(i, e, o, r) === !1)) {
1179
if (i.stop && r.stop(!0), i.hash) {
1180
var a = o.id == s ? "id" : "name",
1181
u = t("<a> </a>").attr(a, s).css({
1182
position: "absolute",
1183
top: t(window).scrollTop(),
1184
left: t(window).scrollLeft()
1185
});
1186
o[a] = "", t("body").prepend(u), location = n.hash, u.remove(), o[a] = s
1187
}
1188
r.scrollTo(o, i).trigger("notify.serialScroll", [o])
1189
}
1190
}
1191
}
1192
var n = location.href.replace(/#.*/, ""),
1193
i = t.localScroll = function(e) {
1194
t("body").localScroll(e)
1195
};
1196
i.defaults = {
1197
duration: 1e3,
1198
axis: "y",
1199
event: "click",
1200
stop: !0,
1201
target: window,
1202
reset: !0
1203
}, i.hash = function(n) {
1204
if (location.hash) {
1205
if (n = t.extend({}, i.defaults, n), n.hash = !1, n.reset) {
1206
var s = n.duration;
1207
delete n.duration, t(n.target).scrollTo(0, n), n.duration = s
1208
}
1209
e(0, location, n)
1210
}
1211
}, t.fn.localScroll = function(s) {
1212
function o() {
1213
return !!this.href && !!this.hash && this.href.replace(this.hash, "") == n && (!s.filter || t(this).is(s.filter))
1214
}
1215
return s = t.extend({}, i.defaults, s), s.lazy ? this.bind(s.event, function(n) {
1216
var i = t([n.target, n.target.parentNode]).filter(o)[0];
1217
i && e(n, i, s)
1218
}) : this.find("a,area").filter(o).bind(s.event, function(t) {
1219
e(t, this, s)
1220
}).end().end()
1221
}
1222
}(jQuery),
1223
function(t, e) {
1224
var n = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==";
1225
t.fn.imagesLoaded = function(i) {
1226
function s() {
1227
var e = t(f),
1228
n = t(d);
1229
u && (d.length ? u.reject(l, e, n) : u.resolve(l)), t.isFunction(i) && i.call(a, l, e, n)
1230
}
1231
1232
function o(t) {
1233
r(t.target, "error" === t.type)
1234
}
1235
1236
function r(e, i) {
1237
e.src !== n && -1 === t.inArray(e, h) && (h.push(e), i ? d.push(e) : f.push(e), t.data(e, "imagesLoaded", {
1238
isBroken: i,
1239
src: e.src
1240
}), c && u.notifyWith(t(e), [i, l, t(f), t(d)]), l.length === h.length && (setTimeout(s), l.unbind(".imagesLoaded", o)))
1241
}
1242
var a = this,
1243
u = t.isFunction(t.Deferred) ? t.Deferred() : 0,
1244
c = t.isFunction(u.notify),
1245
l = a.find("img").add(a.filter("img")),
1246
h = [],
1247
f = [],
1248
d = [];
1249
return t.isPlainObject(i) && t.each(i, function(t, e) {
1250
"callback" === t ? i = e : u && u[t](e)
1251
}), l.length ? l.bind("load.imagesLoaded error.imagesLoaded", o).each(function(i, s) {
1252
var o = s.src,
1253
a = t.data(s, "imagesLoaded");
1254
return a && a.src === o ? void r(s, a.isBroken) : s.complete && s.naturalWidth !== e ? void r(s, 0 === s.naturalWidth || 0 === s.naturalHeight) : void((s.readyState || s.complete) && (s.src = n, s.src = o))
1255
}) : s(), u ? u.promise(a) : a
1256
}
1257
}(jQuery), jQuery.easing.jswing = jQuery.easing.swing, jQuery.extend(jQuery.easing, {
1258
def: "easeOutQuad",
1259
swing: function(t, e, n, i, s) {
1260
return jQuery.easing[jQuery.easing.def](t, e, n, i, s)
1261
},
1262
easeInQuad: function(t, e, n, i, s) {
1263
return i * (e /= s) * e + n
1264
},
1265
easeOutQuad: function(t, e, n, i, s) {
1266
return -i * (e /= s) * (e - 2) + n
1267
},
1268
easeInOutQuad: function(t, e, n, i, s) {
1269
return (e /= s / 2) < 1 ? i / 2 * e * e + n : -i / 2 * (--e * (e - 2) - 1) + n
1270
},
1271
easeInCubic: function(t, e, n, i, s) {
1272
return i * (e /= s) * e * e + n
1273
},
1274
easeOutCubic: function(t, e, n, i, s) {
1275
return i * ((e = e / s - 1) * e * e + 1) + n
1276
},
1277
easeInOutCubic: function(t, e, n, i, s) {
1278
return (e /= s / 2) < 1 ? i / 2 * e * e * e + n : i / 2 * ((e -= 2) * e * e + 2) + n
1279
},
1280
easeInQuart: function(t, e, n, i, s) {
1281
return i * (e /= s) * e * e * e + n
1282
},
1283
easeOutQuart: function(t, e, n, i, s) {
1284
return -i * ((e = e / s - 1) * e * e * e - 1) + n
1285
},
1286
easeInOutQuart: function(t, e, n, i, s) {
1287
return (e /= s / 2) < 1 ? i / 2 * e * e * e * e + n : -i / 2 * ((e -= 2) * e * e * e - 2) + n
1288
},
1289
easeInQuint: function(t, e, n, i, s) {
1290
return i * (e /= s) * e * e * e * e + n
1291
},
1292
easeOutQuint: function(t, e, n, i, s) {
1293
return i * ((e = e / s - 1) * e * e * e * e + 1) + n
1294
},
1295
easeInOutQuint: function(t, e, n, i, s) {
1296
return (e /= s / 2) < 1 ? i / 2 * e * e * e * e * e + n : i / 2 * ((e -= 2) * e * e * e * e + 2) + n
1297
},
1298
easeInSine: function(t, e, n, i, s) {
1299
return -i * Math.cos(e / s * (Math.PI / 2)) + i + n
1300
},
1301
easeOutSine: function(t, e, n, i, s) {
1302
return i * Math.sin(e / s * (Math.PI / 2)) + n
1303
},
1304
easeInOutSine: function(t, e, n, i, s) {
1305
return -i / 2 * (Math.cos(Math.PI * e / s) - 1) + n
1306
},
1307
easeInExpo: function(t, e, n, i, s) {
1308
return 0 == e ? n : i * Math.pow(2, 10 * (e / s - 1)) + n
1309
},
1310
easeOutExpo: function(t, e, n, i, s) {
1311
return e == s ? n + i : i * (-Math.pow(2, -10 * e / s) + 1) + n
1312
},
1313
easeInOutExpo: function(t, e, n, i, s) {
1314
return 0 == e ? n : e == s ? n + i : (e /= s / 2) < 1 ? i / 2 * Math.pow(2, 10 * (e - 1)) + n : i / 2 * (-Math.pow(2, -10 * --e) + 2) + n
1315
},
1316
easeInCirc: function(t, e, n, i, s) {
1317
return -i * (Math.sqrt(1 - (e /= s) * e) - 1) + n
1318
},
1319
easeOutCirc: function(t, e, n, i, s) {
1320
return i * Math.sqrt(1 - (e = e / s - 1) * e) + n
1321
},
1322
easeInOutCirc: function(t, e, n, i, s) {
1323
return (e /= s / 2) < 1 ? -i / 2 * (Math.sqrt(1 - e * e) - 1) + n : i / 2 * (Math.sqrt(1 - (e -= 2) * e) + 1) + n
1324
},
1325
easeInElastic: function(t, e, n, i, s) {
1326
var o = 1.70158,
1327
r = 0,
1328
a = i;
1329
if (0 == e) return n;
1330
if (1 == (e /= s)) return n + i;
1331
if (r || (r = .3 * s), a < Math.abs(i)) {
1332
a = i;
1333
var o = r / 4
1334
} else var o = r / (2 * Math.PI) * Math.asin(i / a);
1335
return -(a * Math.pow(2, 10 * (e -= 1)) * Math.sin((e * s - o) * (2 * Math.PI) / r)) + n
1336
},
1337
easeOutElastic: function(t, e, n, i, s) {
1338
var o = 1.70158,
1339
r = 0,
1340
a = i;
1341
if (0 == e) return n;
1342
if (1 == (e /= s)) return n + i;
1343
if (r || (r = .3 * s), a < Math.abs(i)) {
1344
a = i;
1345
var o = r / 4
1346
} else var o = r / (2 * Math.PI) * Math.asin(i / a);
1347
return a * Math.pow(2, -10 * e) * Math.sin((e * s - o) * (2 * Math.PI) / r) + i + n
1348
},
1349
easeInOutElastic: function(t, e, n, i, s) {
1350
var o = 1.70158,
1351
r = 0,
1352
a = i;
1353
if (0 == e) return n;
1354
if (2 == (e /= s / 2)) return n + i;
1355
if (r || (r = s * (.3 * 1.5)), a < Math.abs(i)) {
1356
a = i;
1357
var o = r / 4
1358
} else var o = r / (2 * Math.PI) * Math.asin(i / a);
1359
return 1 > e ? -.5 * (a * Math.pow(2, 10 * (e -= 1)) * Math.sin((e * s - o) * (2 * Math.PI) / r)) + n : a * Math.pow(2, -10 * (e -= 1)) * Math.sin((e * s - o) * (2 * Math.PI) / r) * .5 + i + n
1360
},
1361
easeInBack: function(t, e, n, i, s, o) {
1362
return void 0 == o && (o = 1.70158), i * (e /= s) * e * ((o + 1) * e - o) + n
1363
},
1364
easeOutBack: function(t, e, n, i, s, o) {
1365
return void 0 == o && (o = 1.70158), i * ((e = e / s - 1) * e * ((o + 1) * e + o) + 1) + n
1366
},
1367
easeInOutBack: function(t, e, n, i, s, o) {
1368
return void 0 == o && (o = 1.70158), (e /= s / 2) < 1 ? i / 2 * (e * e * (((o *= 1.525) + 1) * e - o)) + n : i / 2 * ((e -= 2) * e * (((o *= 1.525) + 1) * e + o) + 2) + n
1369
},
1370
easeInBounce: function(t, e, n, i, s) {
1371
return i - jQuery.easing.easeOutBounce(t, s - e, 0, i, s) + n
1372
},
1373
easeOutBounce: function(t, e, n, i, s) {
1374
return (e /= s) < 1 / 2.75 ? i * (7.5625 * e * e) + n : 2 / 2.75 > e ? i * (7.5625 * (e -= 1.5 / 2.75) * e + .75) + n : 2.5 / 2.75 > e ? i * (7.5625 * (e -= 2.25 / 2.75) * e + .9375) + n : i * (7.5625 * (e -= 2.625 / 2.75) * e + .984375) + n
1375
},
1376
easeInOutBounce: function(t, e, n, i, s) {
1377
return s / 2 > e ? .5 * jQuery.easing.easeInBounce(t, 2 * e, 0, i, s) + n : .5 * jQuery.easing.easeOutBounce(t, 2 * e - s, 0, i, s) + .5 * i + n
1378
}
1379
}),
1380
function(t) {
1381
(jQuery.browser = jQuery.browser || {}).mobile = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(t) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0, 4))
1382
}(navigator.userAgent || navigator.vendor || window.opera),
1383
function(t, e) {
1384
var n, i = t.jQuery || t.Cowboy || (t.Cowboy = {});
1385
i.throttle = n = function(t, n, s, o) {
1386
function r() {
1387
function i() {
1388
u = +new Date, s.apply(c, h)
1389
}
1390
1391
function r() {
1392
a = e
1393
}
1394
var c = this,
1395
l = +new Date - u,
1396
h = arguments;
1397
o && !a && i(), a && clearTimeout(a), o === e && l > t ? i() : n !== !0 && (a = setTimeout(o ? r : i, o === e ? t - l : t))
1398
}
1399
var a, u = 0;
1400
return "boolean" != typeof n && (o = s, s = n, n = e), i.guid && (r.guid = s.guid = s.guid || i.guid++), r
1401
}, i.debounce = function(t, i, s) {
1402
return s === e ? n(t, i, !1) : n(t, s, i !== !1)
1403
}
1404
}(this),
1405
function(t) {
1406
t.fn.hoverIntent = function(e, n, i) {
1407
var s = {
1408
interval: 100,
1409
sensitivity: 7,
1410
timeout: 0
1411
};
1412
s = "object" == typeof e ? t.extend(s, e) : t.isFunction(n) ? t.extend(s, {
1413
over: e,
1414
out: n,
1415
selector: i
1416
}) : t.extend(s, {
1417
over: e,
1418
out: e,
1419
selector: n
1420
});
1421
var o, r, a, u, c = function(t) {
1422
o = t.pageX, r = t.pageY
1423
},
1424
l = function(e, n) {
1425
return n.hoverIntent_t = clearTimeout(n.hoverIntent_t), Math.abs(a - o) + Math.abs(u - r) < s.sensitivity ? (t(n).off("mousemove.hoverIntent", c), n.hoverIntent_s = 1, s.over.apply(n, [e])) : (a = o, u = r, n.hoverIntent_t = setTimeout(function() {
1426
l(e, n)
1427
}, s.interval), void 0)
1428
},
1429
h = function(t, e) {
1430
return e.hoverIntent_t = clearTimeout(e.hoverIntent_t), e.hoverIntent_s = 0, s.out.apply(e, [t])
1431
},
1432
f = function(e) {
1433
var n = jQuery.extend({}, e),
1434
i = this;
1435
i.hoverIntent_t && (i.hoverIntent_t = clearTimeout(i.hoverIntent_t)), "mouseenter" == e.type ? (a = n.pageX, u = n.pageY, t(i).on("mousemove.hoverIntent", c), 1 != i.hoverIntent_s && (i.hoverIntent_t = setTimeout(function() {
1436
l(n, i)
1437
}, s.interval))) : (t(i).off("mousemove.hoverIntent", c), 1 == i.hoverIntent_s && (i.hoverIntent_t = setTimeout(function() {
1438
h(n, i)
1439
}, s.timeout)))
1440
};
1441
return this.on({
1442
"mouseenter.hoverIntent": f,
1443
"mouseleave.hoverIntent": f
1444
}, s.selector)
1445
}
1446
}(jQuery),
1447
function(t) {
1448
function e(t) {
1449
return "object" == typeof t ? t : {
1450
top: t,
1451
left: t
1452
}
1453
}
1454
var n = t.scrollTo = function(e, n, i) {
1455
t(window).scrollTo(e, n, i)
1456
};
1457
n.defaults = {
1458
axis: "xy",
1459
duration: parseFloat(t.fn.jquery) >= 1.3 ? 0 : 1,
1460
limit: !0
1461
}, n.window = function(e) {
1462
return t(window)._scrollable()
1463
}, t.fn._scrollable = function() {
1464
return this.map(function() {
1465
var e = this,
1466
n = !e.nodeName || -1 != t.inArray(e.nodeName.toLowerCase(), ["iframe", "#document", "html", "body"]);
1467
if (!n) return e;
1468
var i = (e.contentWindow || e).document || e.ownerDocument || e;
1469
return /webkit/i.test(navigator.userAgent) || "BackCompat" == i.compatMode ? i.body : i.documentElement
1470
})
1471
}, t.fn.scrollTo = function(i, s, o) {
1472
return "object" == typeof s && (o = s, s = 0), "function" == typeof o && (o = {
1473
onAfter: o
1474
}), "max" == i && (i = 9e9), o = t.extend({}, n.defaults, o), s = s || o.duration, o.queue = o.queue && o.axis.length > 1, o.queue && (s /= 2), o.offset = e(o.offset), o.over = e(o.over), this._scrollable().each(function() {
1475
function r(t) {
1476
c.animate(h, s, o.easing, t && function() {
1477
t.call(this, i, o)
1478
})
1479
}
1480
if (null != i) {
1481
var a, u = this,
1482
c = t(u),
1483
l = i,
1484
h = {},
1485
f = c.is("html,body");
1486
switch (typeof l) {
1487
case "number":
1488
case "string":
1489
if (/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(l)) {
1490
l = e(l);
1491
break
1492
}
1493
if (l = t(l, this), !l.length) return;
1494
case "object":
1495
(l.is || l.style) && (a = (l = t(l)).offset())
1496
}
1497
t.each(o.axis.split(""), function(t, e) {
1498
var i = "x" == e ? "Left" : "Top",
1499
s = i.toLowerCase(),
1500
d = "scroll" + i,
1501
p = u[d],
1502
m = n.max(u, e);
1503
if (a) h[d] = a[s] + (f ? 0 : p - c.offset()[s]), o.margin && (h[d] -= parseInt(l.css("margin" + i)) || 0, h[d] -= parseInt(l.css("border" + i + "Width")) || 0), h[d] += o.offset[s] || 0, o.over[s] && (h[d] += l["x" == e ? "width" : "height"]() * o.over[s]);
1504
else {
1505
var g = l[s];
1506
h[d] = g.slice && "%" == g.slice(-1) ? parseFloat(g) / 100 * m : g
1507
}
1508
o.limit && /^\d+$/.test(h[d]) && (h[d] = h[d] <= 0 ? 0 : Math.min(h[d], m)), !t && o.queue && (p != h[d] && r(o.onAfterFirst), delete h[d])
1509
}), r(o.onAfter)
1510
}
1511
}).end()
1512
}, n.max = function(e, n) {
1513
var i = "x" == n ? "Width" : "Height",
1514
s = "scroll" + i;
1515
if (!t(e).is("html,body")) return e[s] - t(e)[i.toLowerCase()]();
1516
var o = "client" + i,
1517
r = e.ownerDocument.documentElement,
1518
a = e.ownerDocument.body;
1519
return Math.max(r[s], a[s]) - Math.min(r[o], a[o])
1520
}
1521
}(jQuery),
1522
function(t) {
1523
"function" == typeof define && define.amd && define.amd.jQuery ? define(["jquery"], t) : t(jQuery)
1524
}(function(t) {
1525
function e(t) {
1526
return t
1527
}
1528
1529
function n(t) {
1530
return decodeURIComponent(t.replace(s, " "))
1531
}
1532
1533
function i(t) {
1534
0 === t.indexOf('"') && (t = t.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, "\\"));
1535
try {
1536
return o.json ? JSON.parse(t) : t
1537
} catch (e) {}
1538
}
1539
var s = /\+/g,
1540
o = t.cookie = function(s, r, a) {
1541
if (void 0 !== r) {
1542
if (a = t.extend({}, o.defaults, a), "number" == typeof a.expires) {
1543
var u = a.expires,
1544
c = a.expires = new Date;
1545
c.setDate(c.getDate() + u)
1546
}
1547
return r = o.json ? JSON.stringify(r) : String(r), document.cookie = [encodeURIComponent(s), "=", o.raw ? r : encodeURIComponent(r), a.expires ? "; expires=" + a.expires.toUTCString() : "", a.path ? "; path=" + a.path : "", a.domain ? "; domain=" + a.domain : "", a.secure ? "; secure" : ""].join("")
1548
}
1549
for (var l = o.raw ? e : n, h = document.cookie.split("; "), f = s ? void 0 : {}, d = 0, p = h.length; p > d; d++) {
1550
var m = h[d].split("="),
1551
g = l(m.shift()),
1552
v = l(m.join("="));
1553
if (s && s === g) {
1554
f = i(v);
1555
break
1556
}
1557
s || (f[g] = i(v))
1558
}
1559
return f
1560
};
1561
o.defaults = {}, t.removeCookie = function(e, n) {
1562
return void 0 !== t.cookie(e) ? (t.cookie(e, "", t.extend(n, {
1563
expires: -1
1564
})), !0) : !1
1565
}
1566
}), (window.jQuery || window.Zepto) && ! function(t) {
1567
t.fn.Swipe = function(e) {
1568
return this.each(function() {
1569
t(this).data("Swipe", new Swipe(t(this)[0], e))
1570
})
1571
}
1572
}(window.jQuery || window.Zepto),
1573
function(t) {
1574
t.fn.twittie = function(e) {
1575
var n = t.extend({
1576
count: 10,
1577
hideReplies: !1,
1578
dateFormat: "%b/%d/%Y",
1579
template: "{{date}} - {{tweet}}"
1580
}, e),
1581
i = function(t) {
1582
for (var e = t.split(" "), n = "", i = 0, s = e.length; s > i; i++) {
1583
var o = e[i],
1584
r = "https://twitter.com/#!/"; - 1 !== o.indexOf("#") && (o = '<a href="' + r + "search/" + o.replace("#", "%23").replace(/[^A-Za-z0-9]/, "") + '" target="_blank">' + o + "</a>"), -1 !== o.indexOf("@") && (o = '<a href="' + r + o.replace("@", "").replace(/[^A-Za-z0-9]/, "") + '" target="_blank">' + o + "</a>"), -1 !== o.indexOf("http://") && (o = '<a href="' + o + '" target="_blank">' + o + "</a>"), n += o + " "
1585
}
1586
return n
1587
},
1588
s = function(t) {
1589
var e = t.split(" ");
1590
t = new Date(Date.parse(e[1] + " " + e[2] + ", " + e[5] + " " + e[3] + " UTC"));
1591
for (var i = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], s = {
1592
"%d": t.getDate(),
1593
"%m": t.getMonth() + 1,
1594
"%b": i[t.getMonth()].substr(0, 3),
1595
"%B": i[t.getMonth()],
1596
"%y": String(t.getFullYear()).slice(-2),
1597
"%Y": t.getFullYear()
1598
}, o = n.dateFormat, r = n.dateFormat.match(/%[dmbByY]/g), a = 0, u = r.length; u > a; a++) o = o.replace(r[a], s[r[a]]);
1599
return o
1600
},
1601
o = function(t) {
1602
for (var e = n.template, i = ["date", "tweet", "avatar"], s = 0, o = i.length; o > s; s++) e = e.replace(new RegExp("{{" + i[s] + "}}", "gi"), t[i[s]]);
1603
return e
1604
};
1605
this.html("<span>Loading...</span>");
1606
var r = this;
1607
t.getJSON("api/tweet.php", {
1608
count: n.count,
1609
exclude_replies: n.hideReplies
1610
}, function(t) {
1611
r.find("span").fadeOut("fast", function() {
1612
r.html("<ul></ul>");
1613
for (var e = 0; e < n.count && t[e]; e++) {
1614
var a = {
1615
date: s(t[e].created_at),
1616
tweet: i(t[e].text),
1617
avatar: '<img src="' + t[e].user.profile_image_url + '" />'
1618
};
1619
r.find("ul").append("<li>" + o(a) + "</li>")
1620
}
1621
})
1622
})
1623
}
1624
}(jQuery),
1625
function(t) {
1626
t.fn.appear = function(e, n) {
1627
var i = t.extend({
1628
data: void 0,
1629
one: !0,
1630
accX: 0,
1631
accY: 0
1632
}, n);
1633
return this.each(function() {
1634
var n = t(this);
1635
if (n.appeared = !1, !e) return void n.trigger("appear", i.data);
1636
var s = t(window),
1637
o = function() {
1638
if (!n.is(":visible")) return void(n.appeared = !1);
1639
var t = s.scrollLeft(),
1640
e = s.scrollTop(),
1641
o = n.offset(),
1642
r = o.left,
1643
a = o.top,
1644
u = i.accX,
1645
c = i.accY,
1646
l = n.height(),
1647
h = s.height(),
1648
f = n.width(),
1649
d = s.width();
1650
a + l + c >= e && e + h + c >= a && r + f + u >= t && t + d + u >= r ? n.appeared || n.trigger("appear", i.data) : n.appeared = !1
1651
},
1652
r = function() {
1653
if (n.appeared = !0, i.one) {
1654
s.unbind("scroll", o);
1655
var r = t.inArray(o, t.fn.appear.checks);
1656
r >= 0 && t.fn.appear.checks.splice(r, 1)
1657
}
1658
e.apply(this, arguments)
1659
};
1660
i.one ? n.one("appear", i.data, r) : n.bind("appear", i.data, r), s.scroll(o), t.fn.appear.checks.push(o), o()
1661
})
1662
}, t.extend(t.fn.appear, {
1663
checks: [],
1664
timeout: null,
1665
checkAll: function() {
1666
var e = t.fn.appear.checks.length;
1667
if (e > 0)
1668
for (; e--;) t.fn.appear.checks[e]()
1669
},
1670
run: function() {
1671
t.fn.appear.timeout && clearTimeout(t.fn.appear.timeout), t.fn.appear.timeout = setTimeout(t.fn.appear.checkAll, 20)
1672
}
1673
}), t.each(["append", "prepend", "after", "before", "attr", "removeAttr", "addClass", "removeClass", "toggleClass", "remove", "css", "show", "hide"], function(e, n) {
1674
var i = t.fn[n];
1675
i && (t.fn[n] = function() {
1676
var e = i.apply(this, arguments);
1677
return t.fn.appear.run(), e
1678
})
1679
})
1680
}(jQuery),
1681
function(t) {
1682
var e = t(window),
1683
n = e.height();
1684
e.resize(function() {
1685
n = e.height()
1686
}), t.fn.parallax = function(i, s, o) {
1687
function r() {
1688
c.each(function() {
1689
u = c.offset().top
1690
}), a = o ? function(t) {
1691
return t.outerHeight(!0)
1692
} : function(t) {
1693
return t.height()
1694
}, (arguments.length < 1 || null === i) && (i = "50%"), (arguments.length < 2 || null === s) && (s = .5), (arguments.length < 3 || null === o) && (o = !0);
1695
var r = e.scrollTop();
1696
c.each(function() {
1697
var e = t(this),
1698
o = e.offset().top,
1699
l = a(e);
1700
r > o + l || o > r + n || c.css("backgroundPosition", i + " " + Math.round((u - r) * s) + "px")
1701
})
1702
}
1703
var a, u, c = t(this);
1704
e.bind("scroll", r).resize(r), r()
1705
}
1706
}(jQuery),
1707
function(t) {
1708
function e(t) {
1709
if (t in a.style) return t;
1710
var e = ["Moz", "Webkit", "O", "ms"],
1711
n = t.charAt(0).toUpperCase() + t.substr(1);
1712
if (t in a.style) return t;
1713
for (t = 0; t < e.length; ++t) {
1714
var i = e[t] + n;
1715
if (i in a.style) return i
1716
}
1717
}
1718
1719
function n(t) {
1720
return "string" == typeof t && this.parse(t), this
1721
}
1722
1723
function i(e, n, i, s) {
1724
var o = [];
1725
t.each(e, function(e) {
1726
e = t.camelCase(e), e = t.transit.propertyMap[e] || t.cssProps[e] || e, e = e.replace(/([A-Z])/g, function(t) {
1727
return "-" + t.toLowerCase()
1728
}), -1 === t.inArray(e, o) && o.push(e)
1729
}), t.cssEase[i] && (i = t.cssEase[i]);
1730
var a = "" + r(n) + " " + i;
1731
0 < parseInt(s, 10) && (a += " " + r(s));
1732
var u = [];
1733
return t.each(o, function(t, e) {
1734
u.push(e + " " + a)
1735
}), u.join(", ")
1736
}
1737
1738
function s(e, n) {
1739
n || (t.cssNumber[e] = !0), t.transit.propertyMap[e] = u.transform, t.cssHooks[e] = {
1740
get: function(n) {
1741
return t(n).css("transit:transform").get(e)
1742
},
1743
set: function(n, i) {
1744
var s = t(n).css("transit:transform");
1745
s.setFromString(e, i), t(n).css({
1746
"transit:transform": s
1747
})
1748
}
1749
}
1750
}
1751
1752
function o(t, e) {
1753
return "string" != typeof t || t.match(/^[\-0-9\.]+$/) ? "" + t + e : t
1754
}
1755
1756
function r(e) {
1757
return t.fx.speeds[e] && (e = t.fx.speeds[e]), o(e, "ms")
1758
}
1759
t.transit = {
1760
version: "0.9.9",
1761
propertyMap: {
1762
marginLeft: "margin",
1763
marginRight: "margin",
1764
marginBottom: "margin",
1765
marginTop: "margin",
1766
paddingLeft: "padding",
1767
paddingRight: "padding",
1768
paddingBottom: "padding",
1769
paddingTop: "padding"
1770
},
1771
enabled: !0,
1772
useTransitionEnd: !1
1773
};
1774
var a = document.createElement("div"),
1775
u = {},
1776
c = -1 < navigator.userAgent.toLowerCase().indexOf("chrome");
1777
u.transition = e("transition"), u.transitionDelay = e("transitionDelay"), u.transform = e("transform"), u.transformOrigin = e("transformOrigin"), a.style[u.transform] = "", a.style[u.transform] = "rotateY(90deg)", u.transform3d = "" !== a.style[u.transform];
1778
var l, h = u.transitionEnd = {
1779
transition: "transitionEnd",
1780
MozTransition: "transitionend",
1781
OTransition: "oTransitionEnd",
1782
WebkitTransition: "webkitTransitionEnd",
1783
msTransition: "MSTransitionEnd"
1784
}[u.transition] || null;
1785
for (l in u) u.hasOwnProperty(l) && "undefined" == typeof t.support[l] && (t.support[l] = u[l]);
1786
a = null, t.cssEase = {
1787
_default: "ease",
1788
"in": "ease-in",
1789
out: "ease-out",
1790
"in-out": "ease-in-out",
1791
snap: "cubic-bezier(0,1,.5,1)",
1792
easeOutCubic: "cubic-bezier(.215,.61,.355,1)",
1793
easeInOutCubic: "cubic-bezier(.645,.045,.355,1)",
1794
easeInCirc: "cubic-bezier(.6,.04,.98,.335)",
1795
easeOutCirc: "cubic-bezier(.075,.82,.165,1)",
1796
easeInOutCirc: "cubic-bezier(.785,.135,.15,.86)",
1797
easeInExpo: "cubic-bezier(.95,.05,.795,.035)",
1798
easeOutExpo: "cubic-bezier(.19,1,.22,1)",
1799
easeInOutExpo: "cubic-bezier(1,0,0,1)",
1800
easeInQuad: "cubic-bezier(.55,.085,.68,.53)",
1801
easeOutQuad: "cubic-bezier(.25,.46,.45,.94)",
1802
easeInOutQuad: "cubic-bezier(.455,.03,.515,.955)",
1803
easeInQuart: "cubic-bezier(.895,.03,.685,.22)",
1804
easeOutQuart: "cubic-bezier(.165,.84,.44,1)",
1805
easeInOutQuart: "cubic-bezier(.77,0,.175,1)",
1806
easeInQuint: "cubic-bezier(.755,.05,.855,.06)",
1807
easeOutQuint: "cubic-bezier(.23,1,.32,1)",
1808
easeInOutQuint: "cubic-bezier(.86,0,.07,1)",
1809
easeInSine: "cubic-bezier(.47,0,.745,.715)",
1810
easeOutSine: "cubic-bezier(.39,.575,.565,1)",
1811
easeInOutSine: "cubic-bezier(.445,.05,.55,.95)",
1812
easeInBack: "cubic-bezier(.6,-.28,.735,.045)",
1813
easeOutBack: "cubic-bezier(.175, .885,.32,1.275)",
1814
easeInOutBack: "cubic-bezier(.68,-.55,.265,1.55)"
1815
}, t.cssHooks["transit:transform"] = {
1816
get: function(e) {
1817
return t(e).data("transform") || new n
1818
},
1819
set: function(e, i) {
1820
var s = i;
1821
s instanceof n || (s = new n(s)), e.style[u.transform] = "WebkitTransform" !== u.transform || c ? s.toString() : s.toString(!0), t(e).data("transform", s)
1822
}
1823
}, t.cssHooks.transform = {
1824
set: t.cssHooks["transit:transform"].set
1825
}, "1.8" > t.fn.jquery && (t.cssHooks.transformOrigin = {
1826
get: function(t) {
1827
return t.style[u.transformOrigin]
1828
},
1829
set: function(t, e) {
1830
t.style[u.transformOrigin] = e
1831
}
1832
}, t.cssHooks.transition = {
1833
get: function(t) {
1834
return t.style[u.transition]
1835
},
1836
set: function(t, e) {
1837
t.style[u.transition] = e
1838
}
1839
}), s("scale"), s("translate"), s("rotate"), s("rotateX"), s("rotateY"), s("rotate3d"), s("perspective"), s("skewX"), s("skewY"), s("x", !0), s("y", !0), n.prototype = {
1840
setFromString: function(t, e) {
1841
var i = "string" == typeof e ? e.split(",") : e.constructor === Array ? e : [e];
1842
i.unshift(t), n.prototype.set.apply(this, i)
1843
},
1844
set: function(t) {
1845
var e = Array.prototype.slice.apply(arguments, [1]);
1846
this.setter[t] ? this.setter[t].apply(this, e) : this[t] = e.join(",")
1847
},
1848
get: function(t) {
1849
return this.getter[t] ? this.getter[t].apply(this) : this[t] || 0
1850
},
1851
setter: {
1852
rotate: function(t) {
1853
this.rotate = o(t, "deg")
1854
},
1855
rotateX: function(t) {
1856
this.rotateX = o(t, "deg")
1857
},
1858
rotateY: function(t) {
1859
this.rotateY = o(t, "deg")
1860
},
1861
scale: function(t, e) {
1862
void 0 === e && (e = t), this.scale = t + "," + e
1863
},
1864
skewX: function(t) {
1865
this.skewX = o(t, "deg")
1866
},
1867
skewY: function(t) {
1868
this.skewY = o(t, "deg")
1869
},
1870
perspective: function(t) {
1871
this.perspective = o(t, "px")
1872
},
1873
x: function(t) {
1874
this.set("translate", t, null)
1875
},
1876
y: function(t) {
1877
this.set("translate", null, t)
1878
},
1879
translate: function(t, e) {
1880
void 0 === this._translateX && (this._translateX = 0), void 0 === this._translateY && (this._translateY = 0), null !== t && void 0 !== t && (this._translateX = o(t, "px")), null !== e && void 0 !== e && (this._translateY = o(e, "px")), this.translate = this._translateX + "," + this._translateY
1881
}
1882
},
1883
getter: {
1884
x: function() {
1885
return this._translateX || 0
1886
},
1887
y: function() {
1888
return this._translateY || 0
1889
},
1890
scale: function() {
1891
var t = (this.scale || "1,1").split(",");
1892
return t[0] && (t[0] = parseFloat(t[0])), t[1] && (t[1] = parseFloat(t[1])), t[0] === t[1] ? t[0] : t
1893
},
1894
rotate3d: function() {
1895
for (var t = (this.rotate3d || "0,0,0,0deg").split(","), e = 0; 3 >= e; ++e) t[e] && (t[e] = parseFloat(t[e]));
1896
return t[3] && (t[3] = o(t[3], "deg")), t
1897
}
1898
},
1899
parse: function(t) {
1900
var e = this;
1901
t.replace(/([a-zA-Z0-9]+)\((.*?)\)/g, function(t, n, i) {
1902
e.setFromString(n, i)
1903
})
1904
},
1905
toString: function(t) {
1906
var e, n = [];
1907
for (e in this) this.hasOwnProperty(e) && (u.transform3d || "rotateX" !== e && "rotateY" !== e && "perspective" !== e && "transformOrigin" !== e) && "_" !== e[0] && (t && "scale" === e ? n.push(e + "3d(" + this[e] + ",1)") : t && "translate" === e ? n.push(e + "3d(" + this[e] + ",0)") : n.push(e + "(" + this[e] + ")"));
1908
return n.join(" ")
1909
}
1910
}, t.fn.transition = t.fn.transit = function(e, n, s, o) {
1911
var a = this,
1912
c = 0,
1913
l = !0;
1914
"function" == typeof n && (o = n, n = void 0), "function" == typeof s && (o = s, s = void 0), "undefined" != typeof e.easing && (s = e.easing, delete e.easing), "undefined" != typeof e.duration && (n = e.duration, delete e.duration), "undefined" != typeof e.complete && (o = e.complete, delete e.complete), "undefined" != typeof e.queue && (l = e.queue, delete e.queue), "undefined" != typeof e.delay && (c = e.delay, delete e.delay), "undefined" == typeof n && (n = t.fx.speeds._default), "undefined" == typeof s && (s = t.cssEase._default), n = r(n);
1915
var f = i(e, n, s, c),
1916
d = t.transit.enabled && u.transition ? parseInt(n, 10) + parseInt(c, 10) : 0;
1917
if (0 === d) return n = l, s = function(t) {
1918
a.css(e), o && o.apply(a), t && t()
1919
}, !0 === n ? a.queue(s) : n ? a.queue(n, s) : s(), a;
1920
var p = {};
1921
return n = l, s = function(n) {
1922
this.offsetWidth;
1923
var i = !1,
1924
s = function() {
1925
i && a.unbind(h, s), d > 0 && a.each(function() {
1926
this.style[u.transition] = p[this] || null
1927
}), "function" == typeof o && o.apply(a), "function" == typeof n && n()
1928
};
1929
d > 0 && h && t.transit.useTransitionEnd ? (i = !0, a.bind(h, s)) : window.setTimeout(s, d), a.each(function() {
1930
d > 0 && (this.style[u.transition] = f), t(this).css(e)
1931
})
1932
}, !0 === n ? a.queue(s) : n ? a.queue(n, s) : s(), this
1933
}, t.transit.getTransitionValue = i
1934
}(jQuery),
1935
function(t) {
1936
function e(e) {
1937
var n = e || window.event,
1938
i = [].slice.call(arguments, 1),
1939
s = 0,
1940
o = 0,
1941
r = 0;
1942
return e = t.event.fix(n), e.type = "mousewheel", n.wheelDelta && (s = n.wheelDelta / 120), n.detail && (s = -n.detail / 3), r = s, void 0 !== n.axis && n.axis === n.HORIZONTAL_AXIS && (r = 0, o = -1 * s), void 0 !== n.wheelDeltaY && (r = n.wheelDeltaY / 120), void 0 !== n.wheelDeltaX && (o = -1 * n.wheelDeltaX / 120), i.unshift(e, s, o, r), (t.event.dispatch || t.event.handle).apply(this, i)
1943
}
1944
var n = ["DOMMouseScroll", "mousewheel"];
1945
if (t.event.fixHooks)
1946
for (var i = n.length; i;) t.event.fixHooks[n[--i]] = t.event.mouseHooks;
1947
t.event.special.mousewheel = {
1948
setup: function() {
1949
if (this.addEventListener)
1950
for (var t = n.length; t;) this.addEventListener(n[--t], e, !1);
1951
else this.onmousewheel = e
1952
},
1953
teardown: function() {
1954
if (this.removeEventListener)
1955
for (var t = n.length; t;) this.removeEventListener(n[--t], e, !1);
1956
else this.onmousewheel = null
1957
}
1958
}, t.fn.extend({
1959
mousewheel: function(t) {
1960
return t ? this.bind("mousewheel", t) : this.trigger("mousewheel")
1961
},
1962
unmousewheel: function(t) {
1963
return this.unbind("mousewheel", t)
1964
}
1965
})
1966
}(jQuery);
1967