4717 lines
253 KiB
JavaScript
4717 lines
253 KiB
JavaScript
!function (e, t) {
|
|
"object" == typeof module && "object" == typeof module.exports ? module.exports = e.document ? t(e, !0) : function (e) {
|
|
if (!e.document)throw new Error("jQuery requires a window with a document");
|
|
return t(e)
|
|
} : t(e)
|
|
}("undefined" != typeof window ? window : this, function (e, t) {
|
|
function n(e) {
|
|
var t = "length"in e && e.length, n = oe.type(e);
|
|
return "function" === n || oe.isWindow(e) ? !1 : 1 === e.nodeType && t ? !0 : "array" === n || 0 === t || "number" == typeof t && t > 0 && t - 1 in e
|
|
}
|
|
|
|
function r(e, t, n) {
|
|
if (oe.isFunction(t))return oe.grep(e, function (e, r) {
|
|
return !!t.call(e, r, e) !== n
|
|
});
|
|
if (t.nodeType)return oe.grep(e, function (e) {
|
|
return e === t !== n
|
|
});
|
|
if ("string" == typeof t) {
|
|
if (fe.test(t))return oe.filter(t, e, n);
|
|
t = oe.filter(t, e)
|
|
}
|
|
return oe.grep(e, function (e) {
|
|
return oe.inArray(e, t) >= 0 !== n
|
|
})
|
|
}
|
|
|
|
function o(e, t) {
|
|
do e = e[t]; while (e && 1 !== e.nodeType);
|
|
return e
|
|
}
|
|
|
|
function i(e) {
|
|
var t = we[e] = {};
|
|
return oe.each(e.match(_e) || [], function (e, n) {
|
|
t[n] = !0
|
|
}), t
|
|
}
|
|
|
|
function a() {
|
|
he.addEventListener ? (he.removeEventListener("DOMContentLoaded", s, !1), e.removeEventListener("load", s, !1)) : (he.detachEvent("onreadystatechange", s), e.detachEvent("onload", s))
|
|
}
|
|
|
|
function s() {
|
|
(he.addEventListener || "load" === event.type || "complete" === he.readyState) && (a(), oe.ready())
|
|
}
|
|
|
|
function c(e, t, n) {
|
|
if (void 0 === n && 1 === e.nodeType) {
|
|
var r = "data-" + t.replace(Te, "-$1").toLowerCase();
|
|
if (n = e.getAttribute(r), "string" == typeof n) {
|
|
try {
|
|
n = "true" === n ? !0 : "false" === n ? !1 : "null" === n ? null : +n + "" === n ? +n : Ce.test(n) ? oe.parseJSON(n) : n
|
|
} catch (o) {
|
|
}
|
|
oe.data(e, t, n)
|
|
} else n = void 0
|
|
}
|
|
return n
|
|
}
|
|
|
|
function u(e) {
|
|
var t;
|
|
for (t in e)if (("data" !== t || !oe.isEmptyObject(e[t])) && "toJSON" !== t)return !1;
|
|
return !0
|
|
}
|
|
|
|
function l(e, t, n, r) {
|
|
if (oe.acceptData(e)) {
|
|
var o, i, a = oe.expando, s = e.nodeType, c = s ? oe.cache : e, u = s ? e[a] : e[a] && a;
|
|
if (u && c[u] && (r || c[u].data) || void 0 !== n || "string" != typeof t)return u || (u = s ? e[a] = X.pop() || oe.guid++ : a), c[u] || (c[u] = s ? {} : {"toJSON": oe.noop}), ("object" == typeof t || "function" == typeof t) && (r ? c[u] = oe.extend(c[u], t) : c[u].data = oe.extend(c[u].data, t)), i = c[u], r || (i.data || (i.data = {}), i = i.data), void 0 !== n && (i[oe.camelCase(t)] = n), "string" == typeof t ? (o = i[t], null == o && (o = i[oe.camelCase(t)])) : o = i, o
|
|
}
|
|
}
|
|
|
|
function p(e, t, n) {
|
|
if (oe.acceptData(e)) {
|
|
var r, o, i = e.nodeType, a = i ? oe.cache : e, s = i ? e[oe.expando] : oe.expando;
|
|
if (a[s]) {
|
|
if (t && (r = n ? a[s] : a[s].data)) {
|
|
oe.isArray(t) ? t = t.concat(oe.map(t, oe.camelCase)) : t in r ? t = [t] : (t = oe.camelCase(t), t = t in r ? [t] : t.split(" ")), o = t.length;
|
|
for (; o--;)delete r[t[o]];
|
|
if (n ? !u(r) : !oe.isEmptyObject(r))return
|
|
}
|
|
(n || (delete a[s].data, u(a[s]))) && (i ? oe.cleanData([e], !0) : ne.deleteExpando || a != a.window ? delete a[s] : a[s] = null)
|
|
}
|
|
}
|
|
}
|
|
|
|
function f() {
|
|
return !0
|
|
}
|
|
|
|
function d() {
|
|
return !1
|
|
}
|
|
|
|
function h() {
|
|
try {
|
|
return he.activeElement
|
|
} catch (e) {
|
|
}
|
|
}
|
|
|
|
function m(e) {
|
|
var t = He.split("|"), n = e.createDocumentFragment();
|
|
if (n.createElement)for (; t.length;)n.createElement(t.pop());
|
|
return n
|
|
}
|
|
|
|
function g(e, t) {
|
|
var n, r, o = 0, i = typeof e.getElementsByTagName !== ke ? e.getElementsByTagName(t || "*") : typeof e.querySelectorAll !== ke ? e.querySelectorAll(t || "*") : void 0;
|
|
if (!i)for (i = [], n = e.childNodes || e; null != (r = n[o]); o++)!t || oe.nodeName(r, t) ? i.push(r) : oe.merge(i, g(r, t));
|
|
return void 0 === t || t && oe.nodeName(e, t) ? oe.merge([e], i) : i
|
|
}
|
|
|
|
function y(e) {
|
|
Ae.test(e.type) && (e.defaultChecked = e.checked)
|
|
}
|
|
|
|
function v(e, t) {
|
|
return oe.nodeName(e, "table") && oe.nodeName(11 !== t.nodeType ? t : t.firstChild, "tr") ? e.getElementsByTagName("tbody")[0] || e.appendChild(e.ownerDocument.createElement("tbody")) : e
|
|
}
|
|
|
|
function _(e) {
|
|
return e.type = (null !== oe.find.attr(e, "type")) + "/" + e.type, e
|
|
}
|
|
|
|
function w(e) {
|
|
var t = Ge.exec(e.type);
|
|
return t ? e.type = t[1] : e.removeAttribute("type"), e
|
|
}
|
|
|
|
function b(e, t) {
|
|
for (var n, r = 0; null != (n = e[r]); r++)oe._data(n, "globalEval", !t || oe._data(t[r], "globalEval"))
|
|
}
|
|
|
|
function x(e, t) {
|
|
if (1 === t.nodeType && oe.hasData(e)) {
|
|
var n, r, o, i = oe._data(e), a = oe._data(t, i), s = i.events;
|
|
if (s) {
|
|
delete a.handle, a.events = {};
|
|
for (n in s)for (r = 0, o = s[n].length; o > r; r++)oe.event.add(t, n, s[n][r])
|
|
}
|
|
a.data && (a.data = oe.extend({}, a.data))
|
|
}
|
|
}
|
|
|
|
function k(e, t) {
|
|
var n, r, o;
|
|
if (1 === t.nodeType) {
|
|
if (n = t.nodeName.toLowerCase(), !ne.noCloneEvent && t[oe.expando]) {
|
|
o = oe._data(t);
|
|
for (r in o.events)oe.removeEvent(t, r, o.handle);
|
|
t.removeAttribute(oe.expando)
|
|
}
|
|
"script" === n && t.text !== e.text ? (_(t).text = e.text, w(t)) : "object" === n ? (t.parentNode && (t.outerHTML = e.outerHTML), ne.html5Clone && e.innerHTML && !oe.trim(t.innerHTML) && (t.innerHTML = e.innerHTML)) : "input" === n && Ae.test(e.type) ? (t.defaultChecked = t.checked = e.checked, t.value !== e.value && (t.value = e.value)) : "option" === n ? t.defaultSelected = t.selected = e.defaultSelected : ("input" === n || "textarea" === n) && (t.defaultValue = e.defaultValue)
|
|
}
|
|
}
|
|
|
|
function C(t, n) {
|
|
var r, o = oe(n.createElement(t)).appendTo(n.body), i = e.getDefaultComputedStyle && (r = e.getDefaultComputedStyle(o[0])) ? r.display : oe.css(o[0], "display");
|
|
return o.detach(), i
|
|
}
|
|
|
|
function T(e) {
|
|
var t = he, n = Ze[e];
|
|
return n || (n = C(e, t), "none" !== n && n || (Ke = (Ke || oe("<iframe frameborder='0' width='0' height='0'/>")).appendTo(t.documentElement), t = (Ke[0].contentWindow || Ke[0].contentDocument).document, t.write(), t.close(), n = C(e, t), Ke.detach()), Ze[e] = n), n
|
|
}
|
|
|
|
function j(e, t) {
|
|
return {
|
|
"get": function () {
|
|
var n = e();
|
|
if (null != n)return n ? void delete this.get : (this.get = t).apply(this, arguments)
|
|
}
|
|
}
|
|
}
|
|
|
|
function N(e, t) {
|
|
if (t in e)return t;
|
|
for (var n = t.charAt(0).toUpperCase() + t.slice(1), r = t, o = ft.length; o--;)if (t = ft[o] + n, t in e)return t;
|
|
return r
|
|
}
|
|
|
|
function S(e, t) {
|
|
for (var n, r, o, i = [], a = 0, s = e.length; s > a; a++)r = e[a], r.style && (i[a] = oe._data(r, "olddisplay"), n = r.style.display, t ? (i[a] || "none" !== n || (r.style.display = ""), "" === r.style.display && Se(r) && (i[a] = oe._data(r, "olddisplay", T(r.nodeName)))) : (o = Se(r), (n && "none" !== n || !o) && oe._data(r, "olddisplay", o ? n : oe.css(r, "display"))));
|
|
for (a = 0; s > a; a++)r = e[a], r.style && (t && "none" !== r.style.display && "" !== r.style.display || (r.style.display = t ? i[a] || "" : "none"));
|
|
return e
|
|
}
|
|
|
|
function E(e, t, n) {
|
|
var r = ct.exec(t);
|
|
return r ? Math.max(0, r[1] - (n || 0)) + (r[2] || "px") : t
|
|
}
|
|
|
|
function A(e, t, n, r, o) {
|
|
for (var i = n === (r ? "border" : "content") ? 4 : "width" === t ? 1 : 0, a = 0; 4 > i; i += 2)"margin" === n && (a += oe.css(e, n + Ne[i], !0, o)), r ? ("content" === n && (a -= oe.css(e, "padding" + Ne[i], !0, o)), "margin" !== n && (a -= oe.css(e, "border" + Ne[i] + "Width", !0, o))) : (a += oe.css(e, "padding" + Ne[i], !0, o), "padding" !== n && (a += oe.css(e, "border" + Ne[i] + "Width", !0, o)));
|
|
return a
|
|
}
|
|
|
|
function D(e, t, n) {
|
|
var r = !0, o = "width" === t ? e.offsetWidth : e.offsetHeight, i = et(e), a = ne.boxSizing && "border-box" === oe.css(e, "boxSizing", !1, i);
|
|
if (0 >= o || null == o) {
|
|
if (o = tt(e, t, i), (0 > o || null == o) && (o = e.style[t]), rt.test(o))return o;
|
|
r = a && (ne.boxSizingReliable() || o === e.style[t]), o = parseFloat(o) || 0
|
|
}
|
|
return o + A(e, t, n || (a ? "border" : "content"), r, i) + "px"
|
|
}
|
|
|
|
function O(e, t, n, r, o) {
|
|
return new O.prototype.init(e, t, n, r, o)
|
|
}
|
|
|
|
function P() {
|
|
return setTimeout(function () {
|
|
dt = void 0
|
|
}), dt = oe.now()
|
|
}
|
|
|
|
function L(e, t) {
|
|
var n, r = {"height": e}, o = 0;
|
|
for (t = t ? 1 : 0; 4 > o; o += 2 - t)n = Ne[o], r["margin" + n] = r["padding" + n] = e;
|
|
return t && (r.opacity = r.width = e), r
|
|
}
|
|
|
|
function W(e, t, n) {
|
|
for (var r, o = (_t[t] || []).concat(_t["*"]), i = 0, a = o.length; a > i; i++)if (r = o[i].call(n, t, e))return r
|
|
}
|
|
|
|
function H(e, t, n) {
|
|
var r, o, i, a, s, c, u, l, p = this, f = {}, d = e.style, h = e.nodeType && Se(e), m = oe._data(e, "fxshow");
|
|
n.queue || (s = oe._queueHooks(e, "fx"), null == s.unqueued && (s.unqueued = 0, c = s.empty.fire, s.empty.fire = function () {
|
|
s.unqueued || c()
|
|
}), s.unqueued++, p.always(function () {
|
|
p.always(function () {
|
|
s.unqueued--, oe.queue(e, "fx").length || s.empty.fire()
|
|
})
|
|
})), 1 === e.nodeType && ("height"in t || "width"in t) && (n.overflow = [d.overflow, d.overflowX, d.overflowY], u = oe.css(e, "display"), l = "none" === u ? oe._data(e, "olddisplay") || T(e.nodeName) : u, "inline" === l && "none" === oe.css(e, "float") && (ne.inlineBlockNeedsLayout && "inline" !== T(e.nodeName) ? d.zoom = 1 : d.display = "inline-block")), n.overflow && (d.overflow = "hidden", ne.shrinkWrapBlocks() || p.always(function () {
|
|
d.overflow = n.overflow[0], d.overflowX = n.overflow[1], d.overflowY = n.overflow[2]
|
|
}));
|
|
for (r in t)if (o = t[r], mt.exec(o)) {
|
|
if (delete t[r], i = i || "toggle" === o, o === (h ? "hide" : "show")) {
|
|
if ("show" !== o || !m || void 0 === m[r])continue;
|
|
h = !0
|
|
}
|
|
f[r] = m && m[r] || oe.style(e, r)
|
|
} else u = void 0;
|
|
if (oe.isEmptyObject(f))"inline" === ("none" === u ? T(e.nodeName) : u) && (d.display = u); else {
|
|
m ? "hidden"in m && (h = m.hidden) : m = oe._data(e, "fxshow", {}), i && (m.hidden = !h), h ? oe(e).show() : p.done(function () {
|
|
oe(e).hide()
|
|
}), p.done(function () {
|
|
var t;
|
|
oe._removeData(e, "fxshow");
|
|
for (t in f)oe.style(e, t, f[t])
|
|
});
|
|
for (r in f)a = W(h ? m[r] : 0, r, p), r in m || (m[r] = a.start, h && (a.end = a.start, a.start = "width" === r || "height" === r ? 1 : 0))
|
|
}
|
|
}
|
|
|
|
function M(e, t) {
|
|
var n, r, o, i, a;
|
|
for (n in e)if (r = oe.camelCase(n), o = t[r], i = e[n], oe.isArray(i) && (o = i[1], i = e[n] = i[0]), n !== r && (e[r] = i, delete e[n]), a = oe.cssHooks[r], a && "expand"in a) {
|
|
i = a.expand(i), delete e[r];
|
|
for (n in i)n in e || (e[n] = i[n], t[n] = o)
|
|
} else t[r] = o
|
|
}
|
|
|
|
function R(e, t, n) {
|
|
var r, o, i = 0, a = vt.length, s = oe.Deferred().always(function () {
|
|
delete c.elem
|
|
}), c = function () {
|
|
if (o)return !1;
|
|
for (var t = dt || P(), n = Math.max(0, u.startTime + u.duration - t), r = n / u.duration || 0, i = 1 - r, a = 0, c = u.tweens.length; c > a; a++)u.tweens[a].run(i);
|
|
return s.notifyWith(e, [u, i, n]), 1 > i && c ? n : (s.resolveWith(e, [u]), !1)
|
|
}, u = s.promise({
|
|
"elem": e,
|
|
"props": oe.extend({}, t),
|
|
"opts": oe.extend(!0, {"specialEasing": {}}, n),
|
|
"originalProperties": t,
|
|
"originalOptions": n,
|
|
"startTime": dt || P(),
|
|
"duration": n.duration,
|
|
"tweens": [],
|
|
"createTween": function (t, n) {
|
|
var r = oe.Tween(e, u.opts, t, n, u.opts.specialEasing[t] || u.opts.easing);
|
|
return u.tweens.push(r), r
|
|
},
|
|
"stop": function (t) {
|
|
var n = 0, r = t ? u.tweens.length : 0;
|
|
if (o)return this;
|
|
for (o = !0; r > n; n++)u.tweens[n].run(1);
|
|
return t ? s.resolveWith(e, [u, t]) : s.rejectWith(e, [u, t]), this
|
|
}
|
|
}), l = u.props;
|
|
for (M(l, u.opts.specialEasing); a > i; i++)if (r = vt[i].call(u, e, l, u.opts))return r;
|
|
return oe.map(l, W, u), oe.isFunction(u.opts.start) && u.opts.start.call(e, u), oe.fx.timer(oe.extend(c, {
|
|
"elem": e,
|
|
"anim": u,
|
|
"queue": u.opts.queue
|
|
})), u.progress(u.opts.progress).done(u.opts.done, u.opts.complete).fail(u.opts.fail).always(u.opts.always)
|
|
}
|
|
|
|
function q(e) {
|
|
return function (t, n) {
|
|
"string" != typeof t && (n = t, t = "*");
|
|
var r, o = 0, i = t.toLowerCase().match(_e) || [];
|
|
if (oe.isFunction(n))for (; r = i[o++];)"+" === r.charAt(0) ? (r = r.slice(1) || "*", (e[r] = e[r] || []).unshift(n)) : (e[r] = e[r] || []).push(n)
|
|
}
|
|
}
|
|
|
|
function B(e, t, n, r) {
|
|
function o(s) {
|
|
var c;
|
|
return i[s] = !0, oe.each(e[s] || [], function (e, s) {
|
|
var u = s(t, n, r);
|
|
return "string" != typeof u || a || i[u] ? a ? !(c = u) : void 0 : (t.dataTypes.unshift(u), o(u), !1)
|
|
}), c
|
|
}
|
|
|
|
var i = {}, a = e === $t;
|
|
return o(t.dataTypes[0]) || !i["*"] && o("*")
|
|
}
|
|
|
|
function F(e, t) {
|
|
var n, r, o = oe.ajaxSettings.flatOptions || {};
|
|
for (r in t)void 0 !== t[r] && ((o[r] ? e : n || (n = {}))[r] = t[r]);
|
|
return n && oe.extend(!0, e, n), e
|
|
}
|
|
|
|
function z(e, t, n) {
|
|
for (var r, o, i, a, s = e.contents, c = e.dataTypes; "*" === c[0];)c.shift(), void 0 === o && (o = e.mimeType || t.getResponseHeader("Content-Type"));
|
|
if (o)for (a in s)if (s[a] && s[a].test(o)) {
|
|
c.unshift(a);
|
|
break
|
|
}
|
|
if (c[0]in n)i = c[0]; else {
|
|
for (a in n) {
|
|
if (!c[0] || e.converters[a + " " + c[0]]) {
|
|
i = a;
|
|
break
|
|
}
|
|
r || (r = a)
|
|
}
|
|
i = i || r
|
|
}
|
|
return i ? (i !== c[0] && c.unshift(i), n[i]) : void 0
|
|
}
|
|
|
|
function $(e, t, n, r) {
|
|
var o, i, a, s, c, u = {}, l = e.dataTypes.slice();
|
|
if (l[1])for (a in e.converters)u[a.toLowerCase()] = e.converters[a];
|
|
for (i = l.shift(); i;)if (e.responseFields[i] && (n[e.responseFields[i]] = t), !c && r && e.dataFilter && (t = e.dataFilter(t, e.dataType)), c = i, i = l.shift())if ("*" === i)i = c; else if ("*" !== c && c !== i) {
|
|
if (a = u[c + " " + i] || u["* " + i], !a)for (o in u)if (s = o.split(" "), s[1] === i && (a = u[c + " " + s[0]] || u["* " + s[0]])) {
|
|
a === !0 ? a = u[o] : u[o] !== !0 && (i = s[0], l.unshift(s[1]));
|
|
break
|
|
}
|
|
if (a !== !0)if (a && e["throws"])t = a(t); else try {
|
|
t = a(t)
|
|
} catch (p) {
|
|
return {"state": "parsererror", "error": a ? p : "No conversion from " + c + " to " + i}
|
|
}
|
|
}
|
|
return {"state": "success", "data": t}
|
|
}
|
|
|
|
function I(e, t, n, r) {
|
|
var o;
|
|
if (oe.isArray(t))oe.each(t, function (t, o) {
|
|
n || Gt.test(e) ? r(e, o) : I(e + "[" + ("object" == typeof o ? t : "") + "]", o, n, r)
|
|
}); else if (n || "object" !== oe.type(t))r(e, t); else for (o in t)I(e + "[" + o + "]", t[o], n, r)
|
|
}
|
|
|
|
function Q() {
|
|
try {
|
|
return new e.XMLHttpRequest
|
|
} catch (t) {
|
|
}
|
|
}
|
|
|
|
function U() {
|
|
try {
|
|
return new e.ActiveXObject("Microsoft.XMLHTTP")
|
|
} catch (t) {
|
|
}
|
|
}
|
|
|
|
function G(e) {
|
|
return oe.isWindow(e) ? e : 9 === e.nodeType ? e.defaultView || e.parentWindow : !1
|
|
}
|
|
|
|
var X = [], J = X.slice, V = X.concat, Y = X.push, K = X.indexOf, Z = {}, ee = Z.toString, te = Z.hasOwnProperty, ne = {}, re = "1.11.3", oe = function (e, t) {
|
|
return new oe.fn.init(e, t)
|
|
}, ie = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ae = /^-ms-/, se = /-([\da-z])/gi, ce = function (e, t) {
|
|
return t.toUpperCase()
|
|
};
|
|
oe.fn = oe.prototype = {
|
|
"jquery": re, "constructor": oe, "selector": "", "length": 0, "toArray": function () {
|
|
return J.call(this)
|
|
}, "get": function (e) {
|
|
return null != e ? 0 > e ? this[e + this.length] : this[e] : J.call(this)
|
|
}, "pushStack": function (e) {
|
|
var t = oe.merge(this.constructor(), e);
|
|
return t.prevObject = this, t.context = this.context, t
|
|
}, "each": function (e, t) {
|
|
return oe.each(this, e, t)
|
|
}, "map": function (e) {
|
|
return this.pushStack(oe.map(this, function (t, n) {
|
|
return e.call(t, n, t)
|
|
}))
|
|
}, "slice": function () {
|
|
return this.pushStack(J.apply(this, arguments))
|
|
}, "first": function () {
|
|
return this.eq(0)
|
|
}, "last": function () {
|
|
return this.eq(-1)
|
|
}, "eq": function (e) {
|
|
var t = this.length, n = +e + (0 > e ? t : 0);
|
|
return this.pushStack(n >= 0 && t > n ? [this[n]] : [])
|
|
}, "end": function () {
|
|
return this.prevObject || this.constructor(null)
|
|
}, "push": Y, "sort": X.sort, "splice": X.splice
|
|
}, oe.extend = oe.fn.extend = function () {
|
|
var e, t, n, r, o, i, a = arguments[0] || {}, s = 1, c = arguments.length, u = !1;
|
|
for ("boolean" == typeof a && (u = a, a = arguments[s] || {}, s++), "object" == typeof a || oe.isFunction(a) || (a = {}), s === c && (a = this, s--); c > s; s++)if (null != (o = arguments[s]))for (r in o)e = a[r], n = o[r], a !== n && (u && n && (oe.isPlainObject(n) || (t = oe.isArray(n))) ? (t ? (t = !1, i = e && oe.isArray(e) ? e : []) : i = e && oe.isPlainObject(e) ? e : {}, a[r] = oe.extend(u, i, n)) : void 0 !== n && (a[r] = n));
|
|
return a
|
|
}, oe.extend({
|
|
"expando": "jQuery" + (re + Math.random()).replace(/\D/g, ""), "isReady": !0, "error": function (e) {
|
|
throw new Error(e)
|
|
}, "noop": function () {
|
|
}, "isFunction": function (e) {
|
|
return "function" === oe.type(e)
|
|
}, "isArray": Array.isArray || function (e) {
|
|
return "array" === oe.type(e)
|
|
}, "isWindow": function (e) {
|
|
return null != e && e == e.window
|
|
}, "isNumeric": function (e) {
|
|
return !oe.isArray(e) && e - parseFloat(e) + 1 >= 0
|
|
}, "isEmptyObject": function (e) {
|
|
var t;
|
|
for (t in e)return !1;
|
|
return !0
|
|
}, "isPlainObject": function (e) {
|
|
var t;
|
|
if (!e || "object" !== oe.type(e) || e.nodeType || oe.isWindow(e))return !1;
|
|
try {
|
|
if (e.constructor && !te.call(e, "constructor") && !te.call(e.constructor.prototype, "isPrototypeOf"))return !1
|
|
} catch (n) {
|
|
return !1
|
|
}
|
|
if (ne.ownLast)for (t in e)return te.call(e, t);
|
|
for (t in e);
|
|
return void 0 === t || te.call(e, t)
|
|
}, "type": function (e) {
|
|
return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? Z[ee.call(e)] || "object" : typeof e
|
|
}, "globalEval": function (t) {
|
|
t && oe.trim(t) && (e.execScript || function (t) {
|
|
e.eval.call(e, t)
|
|
})(t)
|
|
}, "camelCase": function (e) {
|
|
return e.replace(ae, "ms-").replace(se, ce)
|
|
}, "nodeName": function (e, t) {
|
|
return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase()
|
|
}, "each": function (e, t, r) {
|
|
var o, i = 0, a = e.length, s = n(e);
|
|
if (r) {
|
|
if (s)for (; a > i && (o = t.apply(e[i], r), o !== !1); i++); else for (i in e)if (o = t.apply(e[i], r), o === !1)break
|
|
} else if (s)for (; a > i && (o = t.call(e[i], i, e[i]), o !== !1); i++); else for (i in e)if (o = t.call(e[i], i, e[i]), o === !1)break;
|
|
return e
|
|
}, "trim": function (e) {
|
|
return null == e ? "" : (e + "").replace(ie, "")
|
|
}, "makeArray": function (e, t) {
|
|
var r = t || [];
|
|
return null != e && (n(Object(e)) ? oe.merge(r, "string" == typeof e ? [e] : e) : Y.call(r, e)), r
|
|
}, "inArray": function (e, t, n) {
|
|
var r;
|
|
if (t) {
|
|
if (K)return K.call(t, e, n);
|
|
for (r = t.length, n = n ? 0 > n ? Math.max(0, r + n) : n : 0; r > n; n++)if (n in t && t[n] === e)return n
|
|
}
|
|
return -1
|
|
}, "merge": function (e, t) {
|
|
for (var n = +t.length, r = 0, o = e.length; n > r;)e[o++] = t[r++];
|
|
if (n !== n)for (; void 0 !== t[r];)e[o++] = t[r++];
|
|
return e.length = o, e
|
|
}, "grep": function (e, t, n) {
|
|
for (var r, o = [], i = 0, a = e.length, s = !n; a > i; i++)r = !t(e[i], i), r !== s && o.push(e[i]);
|
|
return o
|
|
}, "map": function (e, t, r) {
|
|
var o, i = 0, a = e.length, s = n(e), c = [];
|
|
if (s)for (; a > i; i++)o = t(e[i], i, r), null != o && c.push(o); else for (i in e)o = t(e[i], i, r), null != o && c.push(o);
|
|
return V.apply([], c)
|
|
}, "guid": 1, "proxy": function (e, t) {
|
|
var n, r, o;
|
|
return "string" == typeof t && (o = e[t], t = e, e = o), oe.isFunction(e) ? (n = J.call(arguments, 2), r = function () {
|
|
return e.apply(t || this, n.concat(J.call(arguments)))
|
|
}, r.guid = e.guid = e.guid || oe.guid++, r) : void 0
|
|
}, "now": function () {
|
|
return +new Date
|
|
}, "support": ne
|
|
}), oe.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function (e, t) {
|
|
Z["[object " + t + "]"] = t.toLowerCase()
|
|
});
|
|
var ue = function (e) {
|
|
function t(e, t, n, r) {
|
|
var o, i, a, s, c, u, p, d, h, m;
|
|
if ((t ? t.ownerDocument || t : B) !== O && D(t), t = t || O, n = n || [], s = t.nodeType, "string" != typeof e || !e || 1 !== s && 9 !== s && 11 !== s)return n;
|
|
if (!r && L) {
|
|
if (11 !== s && (o = ve.exec(e)))if (a = o[1]) {
|
|
if (9 === s) {
|
|
if (i = t.getElementById(a), !i || !i.parentNode)return n;
|
|
if (i.id === a)return n.push(i), n
|
|
} else if (t.ownerDocument && (i = t.ownerDocument.getElementById(a)) && R(t, i) && i.id === a)return n.push(i), n
|
|
} else {
|
|
if (o[2])return K.apply(n, t.getElementsByTagName(e)), n;
|
|
if ((a = o[3]) && b.getElementsByClassName)return K.apply(n, t.getElementsByClassName(a)), n
|
|
}
|
|
if (b.qsa && (!W || !W.test(e))) {
|
|
if (d = p = q, h = t, m = 1 !== s && e, 1 === s && "object" !== t.nodeName.toLowerCase()) {
|
|
for (u = T(e), (p = t.getAttribute("id")) ? d = p.replace(we, "\\$&") : t.setAttribute("id", d), d = "[id='" + d + "'] ", c = u.length; c--;)u[c] = d + f(u[c]);
|
|
h = _e.test(e) && l(t.parentNode) || t, m = u.join(",")
|
|
}
|
|
if (m)try {
|
|
return K.apply(n, h.querySelectorAll(m)), n
|
|
} catch (g) {
|
|
} finally {
|
|
p || t.removeAttribute("id")
|
|
}
|
|
}
|
|
}
|
|
return N(e.replace(ce, "$1"), t, n, r)
|
|
}
|
|
|
|
function n() {
|
|
function e(n, r) {
|
|
return t.push(n + " ") > x.cacheLength && delete e[t.shift()], e[n + " "] = r
|
|
}
|
|
|
|
var t = [];
|
|
return e
|
|
}
|
|
|
|
function r(e) {
|
|
return e[q] = !0, e
|
|
}
|
|
|
|
function o(e) {
|
|
var t = O.createElement("div");
|
|
try {
|
|
return !!e(t)
|
|
} catch (n) {
|
|
return !1
|
|
} finally {
|
|
t.parentNode && t.parentNode.removeChild(t), t = null
|
|
}
|
|
}
|
|
|
|
function i(e, t) {
|
|
for (var n = e.split("|"), r = e.length; r--;)x.attrHandle[n[r]] = t
|
|
}
|
|
|
|
function a(e, t) {
|
|
var n = t && e, r = n && 1 === e.nodeType && 1 === t.nodeType && (~t.sourceIndex || G) - (~e.sourceIndex || G);
|
|
if (r)return r;
|
|
if (n)for (; n = n.nextSibling;)if (n === t)return -1;
|
|
return e ? 1 : -1
|
|
}
|
|
|
|
function s(e) {
|
|
return function (t) {
|
|
var n = t.nodeName.toLowerCase();
|
|
return "input" === n && t.type === e
|
|
}
|
|
}
|
|
|
|
function c(e) {
|
|
return function (t) {
|
|
var n = t.nodeName.toLowerCase();
|
|
return ("input" === n || "button" === n) && t.type === e
|
|
}
|
|
}
|
|
|
|
function u(e) {
|
|
return r(function (t) {
|
|
return t = +t, r(function (n, r) {
|
|
for (var o, i = e([], n.length, t), a = i.length; a--;)n[o = i[a]] && (n[o] = !(r[o] = n[o]))
|
|
})
|
|
})
|
|
}
|
|
|
|
function l(e) {
|
|
return e && "undefined" != typeof e.getElementsByTagName && e
|
|
}
|
|
|
|
function p() {
|
|
}
|
|
|
|
function f(e) {
|
|
for (var t = 0, n = e.length, r = ""; n > t; t++)r += e[t].value;
|
|
return r
|
|
}
|
|
|
|
function d(e, t, n) {
|
|
var r = t.dir, o = n && "parentNode" === r, i = z++;
|
|
return t.first ? function (t, n, i) {
|
|
for (; t = t[r];)if (1 === t.nodeType || o)return e(t, n, i)
|
|
} : function (t, n, a) {
|
|
var s, c, u = [F, i];
|
|
if (a) {
|
|
for (; t = t[r];)if ((1 === t.nodeType || o) && e(t, n, a))return !0
|
|
} else for (; t = t[r];)if (1 === t.nodeType || o) {
|
|
if (c = t[q] || (t[q] = {}), (s = c[r]) && s[0] === F && s[1] === i)return u[2] = s[2];
|
|
if (c[r] = u, u[2] = e(t, n, a))return !0
|
|
}
|
|
}
|
|
}
|
|
|
|
function h(e) {
|
|
return e.length > 1 ? function (t, n, r) {
|
|
for (var o = e.length; o--;)if (!e[o](t, n, r))return !1;
|
|
return !0
|
|
} : e[0]
|
|
}
|
|
|
|
function m(e, n, r) {
|
|
for (var o = 0, i = n.length; i > o; o++)t(e, n[o], r);
|
|
return r
|
|
}
|
|
|
|
function g(e, t, n, r, o) {
|
|
for (var i, a = [], s = 0, c = e.length, u = null != t; c > s; s++)(i = e[s]) && (!n || n(i, r, o)) && (a.push(i), u && t.push(s));
|
|
return a
|
|
}
|
|
|
|
function y(e, t, n, o, i, a) {
|
|
return o && !o[q] && (o = y(o)), i && !i[q] && (i = y(i, a)), r(function (r, a, s, c) {
|
|
var u, l, p, f = [], d = [], h = a.length, y = r || m(t || "*", s.nodeType ? [s] : s, []), v = !e || !r && t ? y : g(y, f, e, s, c), _ = n ? i || (r ? e : h || o) ? [] : a : v;
|
|
if (n && n(v, _, s, c), o)for (u = g(_, d), o(u, [], s, c), l = u.length; l--;)(p = u[l]) && (_[d[l]] = !(v[d[l]] = p));
|
|
if (r) {
|
|
if (i || e) {
|
|
if (i) {
|
|
for (u = [], l = _.length; l--;)(p = _[l]) && u.push(v[l] = p);
|
|
i(null, _ = [], u, c)
|
|
}
|
|
for (l = _.length; l--;)(p = _[l]) && (u = i ? ee(r, p) : f[l]) > -1 && (r[u] = !(a[u] = p))
|
|
}
|
|
} else _ = g(_ === a ? _.splice(h, _.length) : _), i ? i(null, a, _, c) : K.apply(a, _)
|
|
})
|
|
}
|
|
|
|
function v(e) {
|
|
for (var t, n, r, o = e.length, i = x.relative[e[0].type], a = i || x.relative[" "], s = i ? 1 : 0, c = d(function (e) {
|
|
return e === t
|
|
}, a, !0), u = d(function (e) {
|
|
return ee(t, e) > -1
|
|
}, a, !0), l = [function (e, n, r) {
|
|
var o = !i && (r || n !== S) || ((t = n).nodeType ? c(e, n, r) : u(e, n, r));
|
|
return t = null, o
|
|
}]; o > s; s++)if (n = x.relative[e[s].type])l = [d(h(l), n)]; else {
|
|
if (n = x.filter[e[s].type].apply(null, e[s].matches), n[q]) {
|
|
for (r = ++s; o > r && !x.relative[e[r].type]; r++);
|
|
return y(s > 1 && h(l), s > 1 && f(e.slice(0, s - 1).concat({"value": " " === e[s - 2].type ? "*" : ""})).replace(ce, "$1"), n, r > s && v(e.slice(s, r)), o > r && v(e = e.slice(r)), o > r && f(e))
|
|
}
|
|
l.push(n)
|
|
}
|
|
return h(l)
|
|
}
|
|
|
|
function _(e, n) {
|
|
var o = n.length > 0, i = e.length > 0, a = function (r, a, s, c, u) {
|
|
var l, p, f, d = 0, h = "0", m = r && [], y = [], v = S, _ = r || i && x.find.TAG("*", u), w = F += null == v ? 1 : Math.random() || .1, b = _.length;
|
|
for (u && (S = a !== O && a); h !== b && null != (l = _[h]); h++) {
|
|
if (i && l) {
|
|
for (p = 0; f = e[p++];)if (f(l, a, s)) {
|
|
c.push(l);
|
|
break
|
|
}
|
|
u && (F = w)
|
|
}
|
|
o && ((l = !f && l) && d--, r && m.push(l))
|
|
}
|
|
if (d += h, o && h !== d) {
|
|
for (p = 0; f = n[p++];)f(m, y, a, s);
|
|
if (r) {
|
|
if (d > 0)for (; h--;)m[h] || y[h] || (y[h] = V.call(c));
|
|
y = g(y)
|
|
}
|
|
K.apply(c, y), u && !r && y.length > 0 && d + n.length > 1 && t.uniqueSort(c)
|
|
}
|
|
return u && (F = w, S = v), m
|
|
};
|
|
return o ? r(a) : a
|
|
}
|
|
|
|
var w, b, x, k, C, T, j, N, S, E, A, D, O, P, L, W, H, M, R, q = "sizzle" + 1 * new Date, B = e.document, F = 0, z = 0, $ = n(), I = n(), Q = n(), U = function (e, t) {
|
|
return e === t && (A = !0), 0
|
|
}, G = 1 << 31, X = {}.hasOwnProperty, J = [], V = J.pop, Y = J.push, K = J.push, Z = J.slice, ee = function (e, t) {
|
|
for (var n = 0, r = e.length; r > n; n++)if (e[n] === t)return n;
|
|
return -1
|
|
}, te = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", ne = "[\\x20\\t\\r\\n\\f]", re = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", oe = re.replace("w", "w#"), ie = "\\[" + ne + "*(" + re + ")(?:" + ne + "*([*^$|!~]?=)" + ne + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + oe + "))|)" + ne + "*\\]", ae = ":(" + re + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + ie + ")*)|.*)\\)|)", se = new RegExp(ne + "+", "g"), ce = new RegExp("^" + ne + "+|((?:^|[^\\\\])(?:\\\\.)*)" + ne + "+$", "g"), ue = new RegExp("^" + ne + "*," + ne + "*"), le = new RegExp("^" + ne + "*([>+~]|" + ne + ")" + ne + "*"), pe = new RegExp("=" + ne + "*([^\\]'\"]*?)" + ne + "*\\]", "g"), fe = new RegExp(ae), de = new RegExp("^" + oe + "$"), he = {
|
|
"ID": new RegExp("^#(" + re + ")"),
|
|
"CLASS": new RegExp("^\\.(" + re + ")"),
|
|
"TAG": new RegExp("^(" + re.replace("w", "w*") + ")"),
|
|
"ATTR": new RegExp("^" + ie),
|
|
"PSEUDO": new RegExp("^" + ae),
|
|
"CHILD": new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + ne + "*(even|odd|(([+-]|)(\\d*)n|)" + ne + "*(?:([+-]|)" + ne + "*(\\d+)|))" + ne + "*\\)|)", "i"),
|
|
"bool": new RegExp("^(?:" + te + ")$", "i"),
|
|
"needsContext": new RegExp("^" + ne + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + ne + "*((?:-\\d)?\\d*)" + ne + "*\\)|)(?=[^-]|$)", "i")
|
|
}, me = /^(?:input|select|textarea|button)$/i, ge = /^h\d$/i, ye = /^[^{]+\{\s*\[native \w/, ve = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, _e = /[+~]/, we = /'|\\/g, be = new RegExp("\\\\([\\da-f]{1,6}" + ne + "?|(" + ne + ")|.)", "ig"), xe = function (e, t, n) {
|
|
var r = "0x" + t - 65536;
|
|
return r !== r || n ? t : 0 > r ? String.fromCharCode(r + 65536) : String.fromCharCode(r >> 10 | 55296, 1023 & r | 56320)
|
|
}, ke = function () {
|
|
D()
|
|
};
|
|
try {
|
|
K.apply(J = Z.call(B.childNodes), B.childNodes), J[B.childNodes.length].nodeType
|
|
} catch (Ce) {
|
|
K = {
|
|
"apply": J.length ? function (e, t) {
|
|
Y.apply(e, Z.call(t))
|
|
} : function (e, t) {
|
|
for (var n = e.length, r = 0; e[n++] = t[r++];);
|
|
e.length = n - 1
|
|
}
|
|
}
|
|
}
|
|
b = t.support = {}, C = t.isXML = function (e) {
|
|
var t = e && (e.ownerDocument || e).documentElement;
|
|
return t ? "HTML" !== t.nodeName : !1
|
|
}, D = t.setDocument = function (e) {
|
|
var t, n, r = e ? e.ownerDocument || e : B;
|
|
return r !== O && 9 === r.nodeType && r.documentElement ? (O = r, P = r.documentElement, n = r.defaultView, n && n !== n.top && (n.addEventListener ? n.addEventListener("unload", ke, !1) : n.attachEvent && n.attachEvent("onunload", ke)), L = !C(r), b.attributes = o(function (e) {
|
|
return e.className = "i", !e.getAttribute("className")
|
|
}), b.getElementsByTagName = o(function (e) {
|
|
return e.appendChild(r.createComment("")), !e.getElementsByTagName("*").length
|
|
}), b.getElementsByClassName = ye.test(r.getElementsByClassName), b.getById = o(function (e) {
|
|
return P.appendChild(e).id = q, !r.getElementsByName || !r.getElementsByName(q).length
|
|
}), b.getById ? (x.find.ID = function (e, t) {
|
|
if ("undefined" != typeof t.getElementById && L) {
|
|
var n = t.getElementById(e);
|
|
return n && n.parentNode ? [n] : []
|
|
}
|
|
}, x.filter.ID = function (e) {
|
|
var t = e.replace(be, xe);
|
|
return function (e) {
|
|
return e.getAttribute("id") === t
|
|
}
|
|
}) : (delete x.find.ID, x.filter.ID = function (e) {
|
|
var t = e.replace(be, xe);
|
|
return function (e) {
|
|
var n = "undefined" != typeof e.getAttributeNode && e.getAttributeNode("id");
|
|
return n && n.value === t
|
|
}
|
|
}), x.find.TAG = b.getElementsByTagName ? function (e, t) {
|
|
return "undefined" != typeof t.getElementsByTagName ? t.getElementsByTagName(e) : b.qsa ? t.querySelectorAll(e) : void 0
|
|
} : function (e, t) {
|
|
var n, r = [], o = 0, i = t.getElementsByTagName(e);
|
|
if ("*" === e) {
|
|
for (; n = i[o++];)1 === n.nodeType && r.push(n);
|
|
return r
|
|
}
|
|
return i
|
|
}, x.find.CLASS = b.getElementsByClassName && function (e, t) {
|
|
return L ? t.getElementsByClassName(e) : void 0
|
|
}, H = [], W = [], (b.qsa = ye.test(r.querySelectorAll)) && (o(function (e) {
|
|
P.appendChild(e).innerHTML = "<a id='" + q + "'></a><select id='" + q + "-\f]' msallowcapture=''><option selected=''></option></select>", e.querySelectorAll("[msallowcapture^='']").length && W.push("[*^$]=" + ne + "*(?:''|\"\")"), e.querySelectorAll("[selected]").length || W.push("\\[" + ne + "*(?:value|" + te + ")"), e.querySelectorAll("[id~=" + q + "-]").length || W.push("~="), e.querySelectorAll(":checked").length || W.push(":checked"), e.querySelectorAll("a#" + q + "+*").length || W.push(".#.+[+~]")
|
|
}), o(function (e) {
|
|
var t = r.createElement("input");
|
|
t.setAttribute("type", "hidden"), e.appendChild(t).setAttribute("name", "D"), e.querySelectorAll("[name=d]").length && W.push("name" + ne + "*[*^$|!~]?="), e.querySelectorAll(":enabled").length || W.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), W.push(",.*:")
|
|
})), (b.matchesSelector = ye.test(M = P.matches || P.webkitMatchesSelector || P.mozMatchesSelector || P.oMatchesSelector || P.msMatchesSelector)) && o(function (e) {
|
|
b.disconnectedMatch = M.call(e, "div"), M.call(e, "[s!='']:x"), H.push("!=", ae)
|
|
}), W = W.length && new RegExp(W.join("|")), H = H.length && new RegExp(H.join("|")), t = ye.test(P.compareDocumentPosition), R = t || ye.test(P.contains) ? function (e, t) {
|
|
var n = 9 === e.nodeType ? e.documentElement : e, r = t && t.parentNode;
|
|
return e === r || !(!r || 1 !== r.nodeType || !(n.contains ? n.contains(r) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(r)))
|
|
} : function (e, t) {
|
|
if (t)for (; t = t.parentNode;)if (t === e)return !0;
|
|
return !1
|
|
}, U = t ? function (e, t) {
|
|
if (e === t)return A = !0, 0;
|
|
var n = !e.compareDocumentPosition - !t.compareDocumentPosition;
|
|
return n ? n : (n = (e.ownerDocument || e) === (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1, 1 & n || !b.sortDetached && t.compareDocumentPosition(e) === n ? e === r || e.ownerDocument === B && R(B, e) ? -1 : t === r || t.ownerDocument === B && R(B, t) ? 1 : E ? ee(E, e) - ee(E, t) : 0 : 4 & n ? -1 : 1)
|
|
} : function (e, t) {
|
|
if (e === t)return A = !0, 0;
|
|
var n, o = 0, i = e.parentNode, s = t.parentNode, c = [e], u = [t];
|
|
if (!i || !s)return e === r ? -1 : t === r ? 1 : i ? -1 : s ? 1 : E ? ee(E, e) - ee(E, t) : 0;
|
|
if (i === s)return a(e, t);
|
|
for (n = e; n = n.parentNode;)c.unshift(n);
|
|
for (n = t; n = n.parentNode;)u.unshift(n);
|
|
for (; c[o] === u[o];)o++;
|
|
return o ? a(c[o], u[o]) : c[o] === B ? -1 : u[o] === B ? 1 : 0
|
|
}, r) : O
|
|
}, t.matches = function (e, n) {
|
|
return t(e, null, null, n)
|
|
}, t.matchesSelector = function (e, n) {
|
|
if ((e.ownerDocument || e) !== O && D(e), n = n.replace(pe, "='$1']"), b.matchesSelector && L && (!H || !H.test(n)) && (!W || !W.test(n)))try {
|
|
var r = M.call(e, n);
|
|
if (r || b.disconnectedMatch || e.document && 11 !== e.document.nodeType)return r
|
|
} catch (o) {
|
|
}
|
|
return t(n, O, null, [e]).length > 0
|
|
}, t.contains = function (e, t) {
|
|
return (e.ownerDocument || e) !== O && D(e), R(e, t)
|
|
}, t.attr = function (e, t) {
|
|
(e.ownerDocument || e) !== O && D(e);
|
|
var n = x.attrHandle[t.toLowerCase()], r = n && X.call(x.attrHandle, t.toLowerCase()) ? n(e, t, !L) : void 0;
|
|
return void 0 !== r ? r : b.attributes || !L ? e.getAttribute(t) : (r = e.getAttributeNode(t)) && r.specified ? r.value : null
|
|
}, t.error = function (e) {
|
|
throw new Error("Syntax error, unrecognized expression: " + e)
|
|
}, t.uniqueSort = function (e) {
|
|
var t, n = [], r = 0, o = 0;
|
|
if (A = !b.detectDuplicates, E = !b.sortStable && e.slice(0), e.sort(U), A) {
|
|
for (; t = e[o++];)t === e[o] && (r = n.push(o));
|
|
for (; r--;)e.splice(n[r], 1)
|
|
}
|
|
return E = null, e
|
|
}, k = t.getText = function (e) {
|
|
var t, n = "", r = 0, o = e.nodeType;
|
|
if (o) {
|
|
if (1 === o || 9 === o || 11 === o) {
|
|
if ("string" == typeof e.textContent)return e.textContent;
|
|
for (e = e.firstChild; e; e = e.nextSibling)n += k(e)
|
|
} else if (3 === o || 4 === o)return e.nodeValue
|
|
} else for (; t = e[r++];)n += k(t);
|
|
return n
|
|
}, x = t.selectors = {
|
|
"cacheLength": 50,
|
|
"createPseudo": r,
|
|
"match": he,
|
|
"attrHandle": {},
|
|
"find": {},
|
|
"relative": {
|
|
">": {"dir": "parentNode", "first": !0},
|
|
" ": {"dir": "parentNode"},
|
|
"+": {"dir": "previousSibling", "first": !0},
|
|
"~": {"dir": "previousSibling"}
|
|
},
|
|
"preFilter": {
|
|
"ATTR": function (e) {
|
|
return e[1] = e[1].replace(be, xe), e[3] = (e[3] || e[4] || e[5] || "").replace(be, xe), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4)
|
|
}, "CHILD": function (e) {
|
|
return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || t.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])) : e[3] && t.error(e[0]), e
|
|
}, "PSEUDO": function (e) {
|
|
var t, n = !e[6] && e[2];
|
|
return he.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || "" : n && fe.test(n) && (t = T(n, !0)) && (t = n.indexOf(")", n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3))
|
|
}
|
|
},
|
|
"filter": {
|
|
"TAG": function (e) {
|
|
var t = e.replace(be, xe).toLowerCase();
|
|
return "*" === e ? function () {
|
|
return !0
|
|
} : function (e) {
|
|
return e.nodeName && e.nodeName.toLowerCase() === t
|
|
}
|
|
}, "CLASS": function (e) {
|
|
var t = $[e + " "];
|
|
return t || (t = new RegExp("(^|" + ne + ")" + e + "(" + ne + "|$)")) && $(e, function (e) {
|
|
return t.test("string" == typeof e.className && e.className || "undefined" != typeof e.getAttribute && e.getAttribute("class") || "")
|
|
})
|
|
}, "ATTR": function (e, n, r) {
|
|
return function (o) {
|
|
var i = t.attr(o, e);
|
|
return null == i ? "!=" === n : n ? (i += "", "=" === n ? i === r : "!=" === n ? i !== r : "^=" === n ? r && 0 === i.indexOf(r) : "*=" === n ? r && i.indexOf(r) > -1 : "$=" === n ? r && i.slice(-r.length) === r : "~=" === n ? (" " + i.replace(se, " ") + " ").indexOf(r) > -1 : "|=" === n ? i === r || i.slice(0, r.length + 1) === r + "-" : !1) : !0
|
|
}
|
|
}, "CHILD": function (e, t, n, r, o) {
|
|
var i = "nth" !== e.slice(0, 3), a = "last" !== e.slice(-4), s = "of-type" === t;
|
|
return 1 === r && 0 === o ? function (e) {
|
|
return !!e.parentNode
|
|
} : function (t, n, c) {
|
|
var u, l, p, f, d, h, m = i !== a ? "nextSibling" : "previousSibling", g = t.parentNode, y = s && t.nodeName.toLowerCase(), v = !c && !s;
|
|
if (g) {
|
|
if (i) {
|
|
for (; m;) {
|
|
for (p = t; p = p[m];)if (s ? p.nodeName.toLowerCase() === y : 1 === p.nodeType)return !1;
|
|
h = m = "only" === e && !h && "nextSibling"
|
|
}
|
|
return !0
|
|
}
|
|
if (h = [a ? g.firstChild : g.lastChild], a && v) {
|
|
for (l = g[q] || (g[q] = {}), u = l[e] || [], d = u[0] === F && u[1], f = u[0] === F && u[2], p = d && g.childNodes[d]; p = ++d && p && p[m] || (f = d = 0) || h.pop();)if (1 === p.nodeType && ++f && p === t) {
|
|
l[e] = [F, d, f];
|
|
break
|
|
}
|
|
} else if (v && (u = (t[q] || (t[q] = {}))[e]) && u[0] === F)f = u[1]; else for (; (p = ++d && p && p[m] || (f = d = 0) || h.pop()) && ((s ? p.nodeName.toLowerCase() !== y : 1 !== p.nodeType) || !++f || (v && ((p[q] || (p[q] = {}))[e] = [F, f]), p !== t)););
|
|
return f -= o, f === r || f % r === 0 && f / r >= 0
|
|
}
|
|
}
|
|
}, "PSEUDO": function (e, n) {
|
|
var o, i = x.pseudos[e] || x.setFilters[e.toLowerCase()] || t.error("unsupported pseudo: " + e);
|
|
return i[q] ? i(n) : i.length > 1 ? (o = [e, e, "", n], x.setFilters.hasOwnProperty(e.toLowerCase()) ? r(function (e, t) {
|
|
for (var r, o = i(e, n), a = o.length; a--;)r = ee(e, o[a]), e[r] = !(t[r] = o[a])
|
|
}) : function (e) {
|
|
return i(e, 0, o)
|
|
}) : i
|
|
}
|
|
},
|
|
"pseudos": {
|
|
"not": r(function (e) {
|
|
var t = [], n = [], o = j(e.replace(ce, "$1"));
|
|
return o[q] ? r(function (e, t, n, r) {
|
|
for (var i, a = o(e, null, r, []), s = e.length; s--;)(i = a[s]) && (e[s] = !(t[s] = i))
|
|
}) : function (e, r, i) {
|
|
return t[0] = e, o(t, null, i, n), t[0] = null, !n.pop()
|
|
}
|
|
}), "has": r(function (e) {
|
|
return function (n) {
|
|
return t(e, n).length > 0
|
|
}
|
|
}), "contains": r(function (e) {
|
|
return e = e.replace(be, xe), function (t) {
|
|
return (t.textContent || t.innerText || k(t)).indexOf(e) > -1
|
|
}
|
|
}), "lang": r(function (e) {
|
|
return de.test(e || "") || t.error("unsupported lang: " + e), e = e.replace(be, xe).toLowerCase(), function (t) {
|
|
var n;
|
|
do if (n = L ? t.lang : t.getAttribute("xml:lang") || t.getAttribute("lang"))return n = n.toLowerCase(), n === e || 0 === n.indexOf(e + "-"); while ((t = t.parentNode) && 1 === t.nodeType);
|
|
return !1
|
|
}
|
|
}), "target": function (t) {
|
|
var n = e.location && e.location.hash;
|
|
return n && n.slice(1) === t.id
|
|
}, "root": function (e) {
|
|
return e === P
|
|
}, "focus": function (e) {
|
|
return e === O.activeElement && (!O.hasFocus || O.hasFocus()) && !!(e.type || e.href || ~e.tabIndex)
|
|
}, "enabled": function (e) {
|
|
return e.disabled === !1
|
|
}, "disabled": function (e) {
|
|
return e.disabled === !0
|
|
}, "checked": function (e) {
|
|
var t = e.nodeName.toLowerCase();
|
|
return "input" === t && !!e.checked || "option" === t && !!e.selected
|
|
}, "selected": function (e) {
|
|
return e.parentNode && e.parentNode.selectedIndex, e.selected === !0
|
|
}, "empty": function (e) {
|
|
for (e = e.firstChild; e; e = e.nextSibling)if (e.nodeType < 6)return !1;
|
|
return !0
|
|
}, "parent": function (e) {
|
|
return !x.pseudos.empty(e)
|
|
}, "header": function (e) {
|
|
return ge.test(e.nodeName)
|
|
}, "input": function (e) {
|
|
return me.test(e.nodeName)
|
|
}, "button": function (e) {
|
|
var t = e.nodeName.toLowerCase();
|
|
return "input" === t && "button" === e.type || "button" === t
|
|
}, "text": function (e) {
|
|
var t;
|
|
return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (t = e.getAttribute("type")) || "text" === t.toLowerCase())
|
|
}, "first": u(function () {
|
|
return [0]
|
|
}), "last": u(function (e, t) {
|
|
return [t - 1]
|
|
}), "eq": u(function (e, t, n) {
|
|
return [0 > n ? n + t : n]
|
|
}), "even": u(function (e, t) {
|
|
for (var n = 0; t > n; n += 2)e.push(n);
|
|
return e
|
|
}), "odd": u(function (e, t) {
|
|
for (var n = 1; t > n; n += 2)e.push(n);
|
|
return e
|
|
}), "lt": u(function (e, t, n) {
|
|
for (var r = 0 > n ? n + t : n; --r >= 0;)e.push(r);
|
|
return e
|
|
}), "gt": u(function (e, t, n) {
|
|
for (var r = 0 > n ? n + t : n; ++r < t;)e.push(r);
|
|
return e
|
|
})
|
|
}
|
|
}, x.pseudos.nth = x.pseudos.eq;
|
|
for (w in{"radio": !0, "checkbox": !0, "file": !0, "password": !0, "image": !0})x.pseudos[w] = s(w);
|
|
for (w in{"submit": !0, "reset": !0})x.pseudos[w] = c(w);
|
|
return p.prototype = x.filters = x.pseudos, x.setFilters = new p, T = t.tokenize = function (e, n) {
|
|
var r, o, i, a, s, c, u, l = I[e + " "];
|
|
if (l)return n ? 0 : l.slice(0);
|
|
for (s = e, c = [], u = x.preFilter; s;) {
|
|
(!r || (o = ue.exec(s))) && (o && (s = s.slice(o[0].length) || s), c.push(i = [])), r = !1, (o = le.exec(s)) && (r = o.shift(), i.push({
|
|
"value": r,
|
|
"type": o[0].replace(ce, " ")
|
|
}), s = s.slice(r.length));
|
|
for (a in x.filter)!(o = he[a].exec(s)) || u[a] && !(o = u[a](o)) || (r = o.shift(), i.push({
|
|
"value": r,
|
|
"type": a,
|
|
"matches": o
|
|
}), s = s.slice(r.length));
|
|
if (!r)break
|
|
}
|
|
return n ? s.length : s ? t.error(e) : I(e, c).slice(0)
|
|
}, j = t.compile = function (e, t) {
|
|
var n, r = [], o = [], i = Q[e + " "];
|
|
if (!i) {
|
|
for (t || (t = T(e)), n = t.length; n--;)i = v(t[n]), i[q] ? r.push(i) : o.push(i);
|
|
i = Q(e, _(o, r)), i.selector = e
|
|
}
|
|
return i
|
|
}, N = t.select = function (e, t, n, r) {
|
|
var o, i, a, s, c, u = "function" == typeof e && e, p = !r && T(e = u.selector || e);
|
|
if (n = n || [], 1 === p.length) {
|
|
if (i = p[0] = p[0].slice(0), i.length > 2 && "ID" === (a = i[0]).type && b.getById && 9 === t.nodeType && L && x.relative[i[1].type]) {
|
|
if (t = (x.find.ID(a.matches[0].replace(be, xe), t) || [])[0], !t)return n;
|
|
u && (t = t.parentNode), e = e.slice(i.shift().value.length)
|
|
}
|
|
for (o = he.needsContext.test(e) ? 0 : i.length; o-- && (a = i[o], !x.relative[s = a.type]);)if ((c = x.find[s]) && (r = c(a.matches[0].replace(be, xe), _e.test(i[0].type) && l(t.parentNode) || t))) {
|
|
if (i.splice(o, 1), e = r.length && f(i), !e)return K.apply(n, r), n;
|
|
break
|
|
}
|
|
}
|
|
return (u || j(e, p))(r, t, !L, n, _e.test(e) && l(t.parentNode) || t), n
|
|
}, b.sortStable = q.split("").sort(U).join("") === q, b.detectDuplicates = !!A, D(), b.sortDetached = o(function (e) {
|
|
return 1 & e.compareDocumentPosition(O.createElement("div"))
|
|
}), o(function (e) {
|
|
return e.innerHTML = "<a href='#'></a>", "#" === e.firstChild.getAttribute("href")
|
|
}) || i("type|href|height|width", function (e, t, n) {
|
|
return n ? void 0 : e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2)
|
|
}), b.attributes && o(function (e) {
|
|
return e.innerHTML = "<input/>", e.firstChild.setAttribute("value", ""), "" === e.firstChild.getAttribute("value")
|
|
}) || i("value", function (e, t, n) {
|
|
return n || "input" !== e.nodeName.toLowerCase() ? void 0 : e.defaultValue
|
|
}), o(function (e) {
|
|
return null == e.getAttribute("disabled")
|
|
}) || i(te, function (e, t, n) {
|
|
var r;
|
|
return n ? void 0 : e[t] === !0 ? t.toLowerCase() : (r = e.getAttributeNode(t)) && r.specified ? r.value : null
|
|
}), t
|
|
}(e);
|
|
oe.find = ue, oe.expr = ue.selectors, oe.expr[":"] = oe.expr.pseudos, oe.unique = ue.uniqueSort, oe.text = ue.getText, oe.isXMLDoc = ue.isXML, oe.contains = ue.contains;
|
|
var le = oe.expr.match.needsContext, pe = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, fe = /^.[^:#\[\.,]*$/;
|
|
oe.filter = function (e, t, n) {
|
|
var r = t[0];
|
|
return n && (e = ":not(" + e + ")"), 1 === t.length && 1 === r.nodeType ? oe.find.matchesSelector(r, e) ? [r] : [] : oe.find.matches(e, oe.grep(t, function (e) {
|
|
return 1 === e.nodeType
|
|
}))
|
|
}, oe.fn.extend({
|
|
"find": function (e) {
|
|
var t, n = [], r = this, o = r.length;
|
|
if ("string" != typeof e)return this.pushStack(oe(e).filter(function () {
|
|
for (t = 0; o > t; t++)if (oe.contains(r[t], this))return !0
|
|
}));
|
|
for (t = 0; o > t; t++)oe.find(e, r[t], n);
|
|
return n = this.pushStack(o > 1 ? oe.unique(n) : n), n.selector = this.selector ? this.selector + " " + e : e, n
|
|
}, "filter": function (e) {
|
|
return this.pushStack(r(this, e || [], !1))
|
|
}, "not": function (e) {
|
|
return this.pushStack(r(this, e || [], !0))
|
|
}, "is": function (e) {
|
|
return !!r(this, "string" == typeof e && le.test(e) ? oe(e) : e || [], !1).length
|
|
}
|
|
});
|
|
var de, he = e.document, me = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, ge = oe.fn.init = function (e, t) {
|
|
var n, r;
|
|
if (!e)return this;
|
|
if ("string" == typeof e) {
|
|
if (n = "<" === e.charAt(0) && ">" === e.charAt(e.length - 1) && e.length >= 3 ? [null, e, null] : me.exec(e), !n || !n[1] && t)return !t || t.jquery ? (t || de).find(e) : this.constructor(t).find(e);
|
|
if (n[1]) {
|
|
if (t = t instanceof oe ? t[0] : t, oe.merge(this, oe.parseHTML(n[1], t && t.nodeType ? t.ownerDocument || t : he, !0)), pe.test(n[1]) && oe.isPlainObject(t))for (n in t)oe.isFunction(this[n]) ? this[n](t[n]) : this.attr(n, t[n]);
|
|
return this
|
|
}
|
|
if (r = he.getElementById(n[2]), r && r.parentNode) {
|
|
if (r.id !== n[2])return de.find(e);
|
|
this.length = 1, this[0] = r
|
|
}
|
|
return this.context = he, this.selector = e, this
|
|
}
|
|
return e.nodeType ? (this.context = this[0] = e, this.length = 1, this) : oe.isFunction(e) ? "undefined" != typeof de.ready ? de.ready(e) : e(oe) : (void 0 !== e.selector && (this.selector = e.selector, this.context = e.context), oe.makeArray(e, this))
|
|
};
|
|
ge.prototype = oe.fn, de = oe(he);
|
|
var ye = /^(?:parents|prev(?:Until|All))/, ve = {"children": !0, "contents": !0, "next": !0, "prev": !0};
|
|
oe.extend({
|
|
"dir": function (e, t, n) {
|
|
for (var r = [], o = e[t]; o && 9 !== o.nodeType && (void 0 === n || 1 !== o.nodeType || !oe(o).is(n));)1 === o.nodeType && r.push(o), o = o[t];
|
|
return r
|
|
}, "sibling": function (e, t) {
|
|
for (var n = []; e; e = e.nextSibling)1 === e.nodeType && e !== t && n.push(e);
|
|
return n
|
|
}
|
|
}), oe.fn.extend({
|
|
"has": function (e) {
|
|
var t, n = oe(e, this), r = n.length;
|
|
return this.filter(function () {
|
|
for (t = 0; r > t; t++)if (oe.contains(this, n[t]))return !0
|
|
})
|
|
}, "closest": function (e, t) {
|
|
for (var n, r = 0, o = this.length, i = [], a = le.test(e) || "string" != typeof e ? oe(e, t || this.context) : 0; o > r; r++)for (n = this[r]; n && n !== t; n = n.parentNode)if (n.nodeType < 11 && (a ? a.index(n) > -1 : 1 === n.nodeType && oe.find.matchesSelector(n, e))) {
|
|
i.push(n);
|
|
break
|
|
}
|
|
return this.pushStack(i.length > 1 ? oe.unique(i) : i)
|
|
}, "index": function (e) {
|
|
return e ? "string" == typeof e ? oe.inArray(this[0], oe(e)) : oe.inArray(e.jquery ? e[0] : e, this) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1
|
|
}, "add": function (e, t) {
|
|
return this.pushStack(oe.unique(oe.merge(this.get(), oe(e, t))))
|
|
}, "addBack": function (e) {
|
|
return this.add(null == e ? this.prevObject : this.prevObject.filter(e))
|
|
}
|
|
}), oe.each({
|
|
"parent": function (e) {
|
|
var t = e.parentNode;
|
|
return t && 11 !== t.nodeType ? t : null
|
|
}, "parents": function (e) {
|
|
return oe.dir(e, "parentNode")
|
|
}, "parentsUntil": function (e, t, n) {
|
|
return oe.dir(e, "parentNode", n)
|
|
}, "next": function (e) {
|
|
return o(e, "nextSibling")
|
|
}, "prev": function (e) {
|
|
return o(e, "previousSibling")
|
|
}, "nextAll": function (e) {
|
|
return oe.dir(e, "nextSibling")
|
|
}, "prevAll": function (e) {
|
|
return oe.dir(e, "previousSibling")
|
|
}, "nextUntil": function (e, t, n) {
|
|
return oe.dir(e, "nextSibling", n)
|
|
}, "prevUntil": function (e, t, n) {
|
|
return oe.dir(e, "previousSibling", n)
|
|
}, "siblings": function (e) {
|
|
return oe.sibling((e.parentNode || {}).firstChild, e)
|
|
}, "children": function (e) {
|
|
return oe.sibling(e.firstChild)
|
|
}, "contents": function (e) {
|
|
return oe.nodeName(e, "iframe") ? e.contentDocument || e.contentWindow.document : oe.merge([], e.childNodes)
|
|
}
|
|
}, function (e, t) {
|
|
oe.fn[e] = function (n, r) {
|
|
var o = oe.map(this, t, n);
|
|
return "Until" !== e.slice(-5) && (r = n), r && "string" == typeof r && (o = oe.filter(r, o)), this.length > 1 && (ve[e] || (o = oe.unique(o)), ye.test(e) && (o = o.reverse())), this.pushStack(o)
|
|
}
|
|
});
|
|
var _e = /\S+/g, we = {};
|
|
oe.Callbacks = function (e) {
|
|
e = "string" == typeof e ? we[e] || i(e) : oe.extend({}, e);
|
|
var t, n, r, o, a, s, c = [], u = !e.once && [], l = function (i) {
|
|
for (n = e.memory && i, r = !0, a = s || 0, s = 0, o = c.length, t = !0; c && o > a; a++)if (c[a].apply(i[0], i[1]) === !1 && e.stopOnFalse) {
|
|
n = !1;
|
|
break
|
|
}
|
|
t = !1, c && (u ? u.length && l(u.shift()) : n ? c = [] : p.disable())
|
|
}, p = {
|
|
"add": function () {
|
|
if (c) {
|
|
var r = c.length;
|
|
!function i(t) {
|
|
oe.each(t, function (t, n) {
|
|
var r = oe.type(n);
|
|
"function" === r ? e.unique && p.has(n) || c.push(n) : n && n.length && "string" !== r && i(n)
|
|
})
|
|
}(arguments), t ? o = c.length : n && (s = r, l(n))
|
|
}
|
|
return this
|
|
}, "remove": function () {
|
|
return c && oe.each(arguments, function (e, n) {
|
|
for (var r; (r = oe.inArray(n, c, r)) > -1;)c.splice(r, 1), t && (o >= r && o--, a >= r && a--)
|
|
}), this
|
|
}, "has": function (e) {
|
|
return e ? oe.inArray(e, c) > -1 : !(!c || !c.length)
|
|
}, "empty": function () {
|
|
return c = [], o = 0, this
|
|
}, "disable": function () {
|
|
return c = u = n = void 0, this
|
|
}, "disabled": function () {
|
|
return !c
|
|
}, "lock": function () {
|
|
return u = void 0, n || p.disable(), this
|
|
}, "locked": function () {
|
|
return !u
|
|
}, "fireWith": function (e, n) {
|
|
return !c || r && !u || (n = n || [], n = [e, n.slice ? n.slice() : n], t ? u.push(n) : l(n)), this
|
|
}, "fire": function () {
|
|
return p.fireWith(this, arguments), this
|
|
}, "fired": function () {
|
|
return !!r
|
|
}
|
|
};
|
|
return p
|
|
}, oe.extend({
|
|
"Deferred": function (e) {
|
|
var t = [["resolve", "done", oe.Callbacks("once memory"), "resolved"], ["reject", "fail", oe.Callbacks("once memory"), "rejected"], ["notify", "progress", oe.Callbacks("memory")]], n = "pending", r = {
|
|
"state": function () {
|
|
return n
|
|
}, "always": function () {
|
|
return o.done(arguments).fail(arguments), this
|
|
}, "then": function () {
|
|
var e = arguments;
|
|
return oe.Deferred(function (n) {
|
|
oe.each(t, function (t, i) {
|
|
var a = oe.isFunction(e[t]) && e[t];
|
|
o[i[1]](function () {
|
|
var e = a && a.apply(this, arguments);
|
|
e && oe.isFunction(e.promise) ? e.promise().done(n.resolve).fail(n.reject).progress(n.notify) : n[i[0] + "With"](this === r ? n.promise() : this, a ? [e] : arguments)
|
|
})
|
|
}), e = null
|
|
}).promise()
|
|
}, "promise": function (e) {
|
|
return null != e ? oe.extend(e, r) : r
|
|
}
|
|
}, o = {};
|
|
return r.pipe = r.then, oe.each(t, function (e, i) {
|
|
var a = i[2], s = i[3];
|
|
r[i[1]] = a.add, s && a.add(function () {
|
|
n = s
|
|
}, t[1 ^ e][2].disable, t[2][2].lock), o[i[0]] = function () {
|
|
return o[i[0] + "With"](this === o ? r : this, arguments), this
|
|
}, o[i[0] + "With"] = a.fireWith
|
|
}), r.promise(o), e && e.call(o, o), o
|
|
}, "when": function (e) {
|
|
var t, n, r, o = 0, i = J.call(arguments), a = i.length, s = 1 !== a || e && oe.isFunction(e.promise) ? a : 0, c = 1 === s ? e : oe.Deferred(), u = function (e, n, r) {
|
|
return function (o) {
|
|
n[e] = this, r[e] = arguments.length > 1 ? J.call(arguments) : o, r === t ? c.notifyWith(n, r) : --s || c.resolveWith(n, r)
|
|
}
|
|
};
|
|
if (a > 1)for (t = new Array(a), n = new Array(a), r = new Array(a); a > o; o++)i[o] && oe.isFunction(i[o].promise) ? i[o].promise().done(u(o, r, i)).fail(c.reject).progress(u(o, n, t)) : --s;
|
|
return s || c.resolveWith(r, i), c.promise()
|
|
}
|
|
});
|
|
var be;
|
|
oe.fn.ready = function (e) {
|
|
return oe.ready.promise().done(e), this
|
|
}, oe.extend({
|
|
"isReady": !1, "readyWait": 1, "holdReady": function (e) {
|
|
e ? oe.readyWait++ : oe.ready(!0)
|
|
}, "ready": function (e) {
|
|
if (e === !0 ? !--oe.readyWait : !oe.isReady) {
|
|
if (!he.body)return setTimeout(oe.ready);
|
|
oe.isReady = !0, e !== !0 && --oe.readyWait > 0 || (be.resolveWith(he, [oe]), oe.fn.triggerHandler && (oe(he).triggerHandler("ready"), oe(he).off("ready")))
|
|
}
|
|
}
|
|
}), oe.ready.promise = function (t) {
|
|
if (!be)if (be = oe.Deferred(), "complete" === he.readyState)setTimeout(oe.ready); else if (he.addEventListener)he.addEventListener("DOMContentLoaded", s, !1), e.addEventListener("load", s, !1); else {
|
|
he.attachEvent("onreadystatechange", s), e.attachEvent("onload", s);
|
|
var n = !1;
|
|
try {
|
|
n = null == e.frameElement && he.documentElement
|
|
} catch (r) {
|
|
}
|
|
n && n.doScroll && !function o() {
|
|
if (!oe.isReady) {
|
|
try {
|
|
n.doScroll("left")
|
|
} catch (e) {
|
|
return setTimeout(o, 50)
|
|
}
|
|
a(), oe.ready()
|
|
}
|
|
}()
|
|
}
|
|
return be.promise(t)
|
|
};
|
|
var xe, ke = "undefined";
|
|
for (xe in oe(ne))break;
|
|
ne.ownLast = "0" !== xe, ne.inlineBlockNeedsLayout = !1, oe(function () {
|
|
var e, t, n, r;
|
|
n = he.getElementsByTagName("body")[0], n && n.style && (t = he.createElement("div"), r = he.createElement("div"), r.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px", n.appendChild(r).appendChild(t), typeof t.style.zoom !== ke && (t.style.cssText = "display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1", ne.inlineBlockNeedsLayout = e = 3 === t.offsetWidth, e && (n.style.zoom = 1)), n.removeChild(r))
|
|
}), function () {
|
|
var e = he.createElement("div");
|
|
if (null == ne.deleteExpando) {
|
|
ne.deleteExpando = !0;
|
|
try {
|
|
delete e.test
|
|
} catch (t) {
|
|
ne.deleteExpando = !1
|
|
}
|
|
}
|
|
e = null
|
|
}(), oe.acceptData = function (e) {
|
|
var t = oe.noData[(e.nodeName + " ").toLowerCase()], n = +e.nodeType || 1;
|
|
return 1 !== n && 9 !== n ? !1 : !t || t !== !0 && e.getAttribute("classid") === t
|
|
};
|
|
var Ce = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, Te = /([A-Z])/g;
|
|
oe.extend({
|
|
"cache": {},
|
|
"noData": {"applet ": !0, "embed ": !0, "object ": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},
|
|
"hasData": function (e) {
|
|
return e = e.nodeType ? oe.cache[e[oe.expando]] : e[oe.expando], !!e && !u(e)
|
|
},
|
|
"data": function (e, t, n) {
|
|
return l(e, t, n)
|
|
},
|
|
"removeData": function (e, t) {
|
|
return p(e, t)
|
|
},
|
|
"_data": function (e, t, n) {
|
|
return l(e, t, n, !0)
|
|
},
|
|
"_removeData": function (e, t) {
|
|
return p(e, t, !0)
|
|
}
|
|
}), oe.fn.extend({
|
|
"data": function (e, t) {
|
|
var n, r, o, i = this[0], a = i && i.attributes;
|
|
if (void 0 === e) {
|
|
if (this.length && (o = oe.data(i), 1 === i.nodeType && !oe._data(i, "parsedAttrs"))) {
|
|
for (n = a.length; n--;)a[n] && (r = a[n].name, 0 === r.indexOf("data-") && (r = oe.camelCase(r.slice(5)), c(i, r, o[r])));
|
|
oe._data(i, "parsedAttrs", !0)
|
|
}
|
|
return o
|
|
}
|
|
return "object" == typeof e ? this.each(function () {
|
|
oe.data(this, e)
|
|
}) : arguments.length > 1 ? this.each(function () {
|
|
oe.data(this, e, t)
|
|
}) : i ? c(i, e, oe.data(i, e)) : void 0
|
|
}, "removeData": function (e) {
|
|
return this.each(function () {
|
|
oe.removeData(this, e)
|
|
})
|
|
}
|
|
}), oe.extend({
|
|
"queue": function (e, t, n) {
|
|
var r;
|
|
return e ? (t = (t || "fx") + "queue", r = oe._data(e, t), n && (!r || oe.isArray(n) ? r = oe._data(e, t, oe.makeArray(n)) : r.push(n)), r || []) : void 0
|
|
}, "dequeue": function (e, t) {
|
|
t = t || "fx";
|
|
var n = oe.queue(e, t), r = n.length, o = n.shift(), i = oe._queueHooks(e, t), a = function () {
|
|
oe.dequeue(e, t)
|
|
};
|
|
"inprogress" === o && (o = n.shift(), r--), o && ("fx" === t && n.unshift("inprogress"), delete i.stop, o.call(e, a, i)), !r && i && i.empty.fire()
|
|
}, "_queueHooks": function (e, t) {
|
|
var n = t + "queueHooks";
|
|
return oe._data(e, n) || oe._data(e, n, {
|
|
"empty": oe.Callbacks("once memory").add(function () {
|
|
oe._removeData(e, t + "queue"), oe._removeData(e, n)
|
|
})
|
|
})
|
|
}
|
|
}), oe.fn.extend({
|
|
"queue": function (e, t) {
|
|
var n = 2;
|
|
return "string" != typeof e && (t = e, e = "fx", n--), arguments.length < n ? oe.queue(this[0], e) : void 0 === t ? this : this.each(function () {
|
|
var n = oe.queue(this, e, t);
|
|
oe._queueHooks(this, e), "fx" === e && "inprogress" !== n[0] && oe.dequeue(this, e)
|
|
})
|
|
}, "dequeue": function (e) {
|
|
return this.each(function () {
|
|
oe.dequeue(this, e)
|
|
})
|
|
}, "clearQueue": function (e) {
|
|
return this.queue(e || "fx", [])
|
|
}, "promise": function (e, t) {
|
|
var n, r = 1, o = oe.Deferred(), i = this, a = this.length, s = function () {
|
|
--r || o.resolveWith(i, [i])
|
|
};
|
|
for ("string" != typeof e && (t = e, e = void 0), e = e || "fx"; a--;)n = oe._data(i[a], e + "queueHooks"), n && n.empty && (r++, n.empty.add(s));
|
|
return s(), o.promise(t)
|
|
}
|
|
});
|
|
var je = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, Ne = ["Top", "Right", "Bottom", "Left"], Se = function (e, t) {
|
|
return e = t || e, "none" === oe.css(e, "display") || !oe.contains(e.ownerDocument, e)
|
|
}, Ee = oe.access = function (e, t, n, r, o, i, a) {
|
|
var s = 0, c = e.length, u = null == n;
|
|
if ("object" === oe.type(n)) {
|
|
o = !0;
|
|
for (s in n)oe.access(e, t, s, n[s], !0, i, a)
|
|
} else if (void 0 !== r && (o = !0, oe.isFunction(r) || (a = !0), u && (a ? (t.call(e, r), t = null) : (u = t, t = function (e, t, n) {
|
|
return u.call(oe(e), n)
|
|
})), t))for (; c > s; s++)t(e[s], n, a ? r : r.call(e[s], s, t(e[s], n)));
|
|
return o ? e : u ? t.call(e) : c ? t(e[0], n) : i
|
|
}, Ae = /^(?:checkbox|radio)$/i;
|
|
!function () {
|
|
var e = he.createElement("input"), t = he.createElement("div"), n = he.createDocumentFragment();
|
|
if (t.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", ne.leadingWhitespace = 3 === t.firstChild.nodeType, ne.tbody = !t.getElementsByTagName("tbody").length, ne.htmlSerialize = !!t.getElementsByTagName("link").length, ne.html5Clone = "<:nav></:nav>" !== he.createElement("nav").cloneNode(!0).outerHTML, e.type = "checkbox", e.checked = !0, n.appendChild(e), ne.appendChecked = e.checked, t.innerHTML = "<textarea>x</textarea>", ne.noCloneChecked = !!t.cloneNode(!0).lastChild.defaultValue, n.appendChild(t), t.innerHTML = "<input type='radio' checked='checked' name='t'/>", ne.checkClone = t.cloneNode(!0).cloneNode(!0).lastChild.checked, ne.noCloneEvent = !0, t.attachEvent && (t.attachEvent("onclick", function () {
|
|
ne.noCloneEvent = !1
|
|
}), t.cloneNode(!0).click()), null == ne.deleteExpando) {
|
|
ne.deleteExpando = !0;
|
|
try {
|
|
delete t.test
|
|
} catch (r) {
|
|
ne.deleteExpando = !1
|
|
}
|
|
}
|
|
}(), function () {
|
|
var t, n, r = he.createElement("div");
|
|
for (t in{
|
|
"submit": !0,
|
|
"change": !0,
|
|
"focusin": !0
|
|
})n = "on" + t, (ne[t + "Bubbles"] = n in e) || (r.setAttribute(n, "t"), ne[t + "Bubbles"] = r.attributes[n].expando === !1);
|
|
r = null
|
|
}();
|
|
var De = /^(?:input|select|textarea)$/i, Oe = /^key/, Pe = /^(?:mouse|pointer|contextmenu)|click/, Le = /^(?:focusinfocus|focusoutblur)$/, We = /^([^.]*)(?:\.(.+)|)$/;
|
|
oe.event = {
|
|
"global": {},
|
|
"add": function (e, t, n, r, o) {
|
|
var i, a, s, c, u, l, p, f, d, h, m, g = oe._data(e);
|
|
if (g) {
|
|
for (n.handler && (c = n, n = c.handler, o = c.selector), n.guid || (n.guid = oe.guid++), (a = g.events) || (a = g.events = {}), (l = g.handle) || (l = g.handle = function (e) {
|
|
return typeof oe === ke || e && oe.event.triggered === e.type ? void 0 : oe.event.dispatch.apply(l.elem, arguments)
|
|
}, l.elem = e), t = (t || "").match(_e) || [""], s = t.length; s--;)i = We.exec(t[s]) || [], d = m = i[1], h = (i[2] || "").split(".").sort(), d && (u = oe.event.special[d] || {}, d = (o ? u.delegateType : u.bindType) || d, u = oe.event.special[d] || {}, p = oe.extend({
|
|
"type": d,
|
|
"origType": m,
|
|
"data": r,
|
|
"handler": n,
|
|
"guid": n.guid,
|
|
"selector": o,
|
|
"needsContext": o && oe.expr.match.needsContext.test(o),
|
|
"namespace": h.join(".")
|
|
}, c), (f = a[d]) || (f = a[d] = [], f.delegateCount = 0, u.setup && u.setup.call(e, r, h, l) !== !1 || (e.addEventListener ? e.addEventListener(d, l, !1) : e.attachEvent && e.attachEvent("on" + d, l))), u.add && (u.add.call(e, p), p.handler.guid || (p.handler.guid = n.guid)), o ? f.splice(f.delegateCount++, 0, p) : f.push(p), oe.event.global[d] = !0);
|
|
e = null
|
|
}
|
|
},
|
|
"remove": function (e, t, n, r, o) {
|
|
var i, a, s, c, u, l, p, f, d, h, m, g = oe.hasData(e) && oe._data(e);
|
|
if (g && (l = g.events)) {
|
|
for (t = (t || "").match(_e) || [""], u = t.length; u--;)if (s = We.exec(t[u]) || [], d = m = s[1], h = (s[2] || "").split(".").sort(), d) {
|
|
for (p = oe.event.special[d] || {}, d = (r ? p.delegateType : p.bindType) || d, f = l[d] || [], s = s[2] && new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)"), c = i = f.length; i--;)a = f[i], !o && m !== a.origType || n && n.guid !== a.guid || s && !s.test(a.namespace) || r && r !== a.selector && ("**" !== r || !a.selector) || (f.splice(i, 1), a.selector && f.delegateCount--, p.remove && p.remove.call(e, a));
|
|
c && !f.length && (p.teardown && p.teardown.call(e, h, g.handle) !== !1 || oe.removeEvent(e, d, g.handle), delete l[d])
|
|
} else for (d in l)oe.event.remove(e, d + t[u], n, r, !0);
|
|
oe.isEmptyObject(l) && (delete g.handle, oe._removeData(e, "events"))
|
|
}
|
|
},
|
|
"trigger": function (t, n, r, o) {
|
|
var i, a, s, c, u, l, p, f = [r || he], d = te.call(t, "type") ? t.type : t, h = te.call(t, "namespace") ? t.namespace.split(".") : [];
|
|
if (s = l = r = r || he, 3 !== r.nodeType && 8 !== r.nodeType && !Le.test(d + oe.event.triggered) && (d.indexOf(".") >= 0 && (h = d.split("."), d = h.shift(), h.sort()), a = d.indexOf(":") < 0 && "on" + d, t = t[oe.expando] ? t : new oe.Event(d, "object" == typeof t && t), t.isTrigger = o ? 2 : 3, t.namespace = h.join("."), t.namespace_re = t.namespace ? new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, t.result = void 0, t.target || (t.target = r), n = null == n ? [t] : oe.makeArray(n, [t]), u = oe.event.special[d] || {}, o || !u.trigger || u.trigger.apply(r, n) !== !1)) {
|
|
if (!o && !u.noBubble && !oe.isWindow(r)) {
|
|
for (c = u.delegateType || d, Le.test(c + d) || (s = s.parentNode); s; s = s.parentNode)f.push(s), l = s;
|
|
l === (r.ownerDocument || he) && f.push(l.defaultView || l.parentWindow || e)
|
|
}
|
|
for (p = 0; (s = f[p++]) && !t.isPropagationStopped();)t.type = p > 1 ? c : u.bindType || d, i = (oe._data(s, "events") || {})[t.type] && oe._data(s, "handle"), i && i.apply(s, n), i = a && s[a], i && i.apply && oe.acceptData(s) && (t.result = i.apply(s, n), t.result === !1 && t.preventDefault());
|
|
if (t.type = d, !o && !t.isDefaultPrevented() && (!u._default || u._default.apply(f.pop(), n) === !1) && oe.acceptData(r) && a && r[d] && !oe.isWindow(r)) {
|
|
l = r[a], l && (r[a] = null), oe.event.triggered = d;
|
|
try {
|
|
r[d]()
|
|
} catch (m) {
|
|
}
|
|
oe.event.triggered = void 0, l && (r[a] = l)
|
|
}
|
|
return t.result
|
|
}
|
|
},
|
|
"dispatch": function (e) {
|
|
e = oe.event.fix(e);
|
|
var t, n, r, o, i, a = [], s = J.call(arguments), c = (oe._data(this, "events") || {})[e.type] || [], u = oe.event.special[e.type] || {};
|
|
if (s[0] = e, e.delegateTarget = this, !u.preDispatch || u.preDispatch.call(this, e) !== !1) {
|
|
for (a = oe.event.handlers.call(this, e, c), t = 0; (o = a[t++]) && !e.isPropagationStopped();)for (e.currentTarget = o.elem, i = 0; (r = o.handlers[i++]) && !e.isImmediatePropagationStopped();)(!e.namespace_re || e.namespace_re.test(r.namespace)) && (e.handleObj = r, e.data = r.data, n = ((oe.event.special[r.origType] || {}).handle || r.handler).apply(o.elem, s), void 0 !== n && (e.result = n) === !1 && (e.preventDefault(), e.stopPropagation()));
|
|
return u.postDispatch && u.postDispatch.call(this, e), e.result
|
|
}
|
|
},
|
|
"handlers": function (e, t) {
|
|
var n, r, o, i, a = [], s = t.delegateCount, c = e.target;
|
|
if (s && c.nodeType && (!e.button || "click" !== e.type))for (; c != this; c = c.parentNode || this)if (1 === c.nodeType && (c.disabled !== !0 || "click" !== e.type)) {
|
|
for (o = [], i = 0; s > i; i++)r = t[i], n = r.selector + " ", void 0 === o[n] && (o[n] = r.needsContext ? oe(n, this).index(c) >= 0 : oe.find(n, this, null, [c]).length), o[n] && o.push(r);
|
|
o.length && a.push({"elem": c, "handlers": o})
|
|
}
|
|
return s < t.length && a.push({"elem": this, "handlers": t.slice(s)}), a
|
|
},
|
|
"fix": function (e) {
|
|
if (e[oe.expando])return e;
|
|
var t, n, r, o = e.type, i = e, a = this.fixHooks[o];
|
|
for (a || (this.fixHooks[o] = a = Pe.test(o) ? this.mouseHooks : Oe.test(o) ? this.keyHooks : {}), r = a.props ? this.props.concat(a.props) : this.props, e = new oe.Event(i), t = r.length; t--;)n = r[t], e[n] = i[n];
|
|
return e.target || (e.target = i.srcElement || he), 3 === e.target.nodeType && (e.target = e.target.parentNode), e.metaKey = !!e.metaKey, a.filter ? a.filter(e, i) : e
|
|
},
|
|
"props": "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
|
|
"fixHooks": {},
|
|
"keyHooks": {
|
|
"props": "char charCode key keyCode".split(" "), "filter": function (e, t) {
|
|
return null == e.which && (e.which = null != t.charCode ? t.charCode : t.keyCode), e
|
|
}
|
|
},
|
|
"mouseHooks": {
|
|
"props": "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
|
|
"filter": function (e, t) {
|
|
var n, r, o, i = t.button, a = t.fromElement;
|
|
return null == e.pageX && null != t.clientX && (r = e.target.ownerDocument || he, o = r.documentElement, n = r.body, e.pageX = t.clientX + (o && o.scrollLeft || n && n.scrollLeft || 0) - (o && o.clientLeft || n && n.clientLeft || 0), e.pageY = t.clientY + (o && o.scrollTop || n && n.scrollTop || 0) - (o && o.clientTop || n && n.clientTop || 0)), !e.relatedTarget && a && (e.relatedTarget = a === e.target ? t.toElement : a), e.which || void 0 === i || (e.which = 1 & i ? 1 : 2 & i ? 3 : 4 & i ? 2 : 0), e
|
|
}
|
|
},
|
|
"special": {
|
|
"load": {"noBubble": !0}, "focus": {
|
|
"trigger": function () {
|
|
if (this !== h() && this.focus)try {
|
|
return this.focus(), !1
|
|
} catch (e) {
|
|
}
|
|
}, "delegateType": "focusin"
|
|
}, "blur": {
|
|
"trigger": function () {
|
|
return this === h() && this.blur ? (this.blur(), !1) : void 0
|
|
}, "delegateType": "focusout"
|
|
}, "click": {
|
|
"trigger": function () {
|
|
return oe.nodeName(this, "input") && "checkbox" === this.type && this.click ? (this.click(), !1) : void 0
|
|
}, "_default": function (e) {
|
|
return oe.nodeName(e.target, "a")
|
|
}
|
|
}, "beforeunload": {
|
|
"postDispatch": function (e) {
|
|
void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result)
|
|
}
|
|
}
|
|
},
|
|
"simulate": function (e, t, n, r) {
|
|
var o = oe.extend(new oe.Event, n, {"type": e, "isSimulated": !0, "originalEvent": {}});
|
|
r ? oe.event.trigger(o, null, t) : oe.event.dispatch.call(t, o), o.isDefaultPrevented() && n.preventDefault()
|
|
}
|
|
}, oe.removeEvent = he.removeEventListener ? function (e, t, n) {
|
|
e.removeEventListener && e.removeEventListener(t, n, !1)
|
|
} : function (e, t, n) {
|
|
var r = "on" + t;
|
|
e.detachEvent && (typeof e[r] === ke && (e[r] = null), e.detachEvent(r, n))
|
|
}, oe.Event = function (e, t) {
|
|
return this instanceof oe.Event ? (e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && e.returnValue === !1 ? f : d) : this.type = e, t && oe.extend(this, t), this.timeStamp = e && e.timeStamp || oe.now(), void(this[oe.expando] = !0)) : new oe.Event(e, t)
|
|
}, oe.Event.prototype = {
|
|
"isDefaultPrevented": d,
|
|
"isPropagationStopped": d,
|
|
"isImmediatePropagationStopped": d,
|
|
"preventDefault": function () {
|
|
var e = this.originalEvent;
|
|
this.isDefaultPrevented = f, e && (e.preventDefault ? e.preventDefault() : e.returnValue = !1)
|
|
},
|
|
"stopPropagation": function () {
|
|
var e = this.originalEvent;
|
|
this.isPropagationStopped = f, e && (e.stopPropagation && e.stopPropagation(), e.cancelBubble = !0)
|
|
},
|
|
"stopImmediatePropagation": function () {
|
|
var e = this.originalEvent;
|
|
this.isImmediatePropagationStopped = f, e && e.stopImmediatePropagation && e.stopImmediatePropagation(), this.stopPropagation()
|
|
}
|
|
}, oe.each({
|
|
"mouseenter": "mouseover",
|
|
"mouseleave": "mouseout",
|
|
"pointerenter": "pointerover",
|
|
"pointerleave": "pointerout"
|
|
}, function (e, t) {
|
|
oe.event.special[e] = {
|
|
"delegateType": t, "bindType": t, "handle": function (e) {
|
|
var n, r = this, o = e.relatedTarget, i = e.handleObj;
|
|
return (!o || o !== r && !oe.contains(r, o)) && (e.type = i.origType, n = i.handler.apply(this, arguments), e.type = t), n
|
|
}
|
|
}
|
|
}), ne.submitBubbles || (oe.event.special.submit = {
|
|
"setup": function () {
|
|
return oe.nodeName(this, "form") ? !1 : void oe.event.add(this, "click._submit keypress._submit", function (e) {
|
|
var t = e.target, n = oe.nodeName(t, "input") || oe.nodeName(t, "button") ? t.form : void 0;
|
|
n && !oe._data(n, "submitBubbles") && (oe.event.add(n, "submit._submit", function (e) {
|
|
e._submit_bubble = !0
|
|
}), oe._data(n, "submitBubbles", !0))
|
|
})
|
|
}, "postDispatch": function (e) {
|
|
e._submit_bubble && (delete e._submit_bubble, this.parentNode && !e.isTrigger && oe.event.simulate("submit", this.parentNode, e, !0))
|
|
}, "teardown": function () {
|
|
return oe.nodeName(this, "form") ? !1 : void oe.event.remove(this, "._submit")
|
|
}
|
|
}), ne.changeBubbles || (oe.event.special.change = {
|
|
"setup": function () {
|
|
return De.test(this.nodeName) ? (("checkbox" === this.type || "radio" === this.type) && (oe.event.add(this, "propertychange._change", function (e) {
|
|
"checked" === e.originalEvent.propertyName && (this._just_changed = !0)
|
|
}), oe.event.add(this, "click._change", function (e) {
|
|
this._just_changed && !e.isTrigger && (this._just_changed = !1), oe.event.simulate("change", this, e, !0)
|
|
})), !1) : void oe.event.add(this, "beforeactivate._change", function (e) {
|
|
var t = e.target;
|
|
De.test(t.nodeName) && !oe._data(t, "changeBubbles") && (oe.event.add(t, "change._change", function (e) {
|
|
!this.parentNode || e.isSimulated || e.isTrigger || oe.event.simulate("change", this.parentNode, e, !0)
|
|
}), oe._data(t, "changeBubbles", !0))
|
|
})
|
|
}, "handle": function (e) {
|
|
var t = e.target;
|
|
return this !== t || e.isSimulated || e.isTrigger || "radio" !== t.type && "checkbox" !== t.type ? e.handleObj.handler.apply(this, arguments) : void 0
|
|
}, "teardown": function () {
|
|
return oe.event.remove(this, "._change"), !De.test(this.nodeName)
|
|
}
|
|
}), ne.focusinBubbles || oe.each({"focus": "focusin", "blur": "focusout"}, function (e, t) {
|
|
var n = function (e) {
|
|
oe.event.simulate(t, e.target, oe.event.fix(e), !0)
|
|
};
|
|
oe.event.special[t] = {
|
|
"setup": function () {
|
|
var r = this.ownerDocument || this, o = oe._data(r, t);
|
|
o || r.addEventListener(e, n, !0), oe._data(r, t, (o || 0) + 1)
|
|
}, "teardown": function () {
|
|
var r = this.ownerDocument || this, o = oe._data(r, t) - 1;
|
|
o ? oe._data(r, t, o) : (r.removeEventListener(e, n, !0), oe._removeData(r, t))
|
|
}
|
|
}
|
|
}), oe.fn.extend({
|
|
"on": function (e, t, n, r, o) {
|
|
var i, a;
|
|
if ("object" == typeof e) {
|
|
"string" != typeof t && (n = n || t, t = void 0);
|
|
for (i in e)this.on(i, t, n, e[i], o);
|
|
return this
|
|
}
|
|
if (null == n && null == r ? (r = t, n = t = void 0) : null == r && ("string" == typeof t ? (r = n, n = void 0) : (r = n, n = t, t = void 0)), r === !1)r = d; else if (!r)return this;
|
|
return 1 === o && (a = r, r = function (e) {
|
|
return oe().off(e), a.apply(this, arguments)
|
|
}, r.guid = a.guid || (a.guid = oe.guid++)), this.each(function () {
|
|
oe.event.add(this, e, r, n, t)
|
|
})
|
|
}, "one": function (e, t, n, r) {
|
|
return this.on(e, t, n, r, 1)
|
|
}, "off": function (e, t, n) {
|
|
var r, o;
|
|
if (e && e.preventDefault && e.handleObj)return r = e.handleObj, oe(e.delegateTarget).off(r.namespace ? r.origType + "." + r.namespace : r.origType, r.selector, r.handler), this;
|
|
if ("object" == typeof e) {
|
|
for (o in e)this.off(o, t, e[o]);
|
|
return this
|
|
}
|
|
return (t === !1 || "function" == typeof t) && (n = t, t = void 0), n === !1 && (n = d), this.each(function () {
|
|
oe.event.remove(this, e, n, t)
|
|
})
|
|
}, "trigger": function (e, t) {
|
|
return this.each(function () {
|
|
oe.event.trigger(e, t, this)
|
|
})
|
|
}, "triggerHandler": function (e, t) {
|
|
var n = this[0];
|
|
return n ? oe.event.trigger(e, t, n, !0) : void 0
|
|
}
|
|
});
|
|
var He = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video", Me = / jQuery\d+="(?:null|\d+)"/g, Re = new RegExp("<(?:" + He + ")[\\s/>]", "i"), qe = /^\s+/, Be = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, Fe = /<([\w:]+)/, ze = /<tbody/i, $e = /<|&#?\w+;/, Ie = /<(?:script|style|link)/i, Qe = /checked\s*(?:[^=]|=\s*.checked.)/i, Ue = /^$|\/(?:java|ecma)script/i, Ge = /^true\/(.*)/, Xe = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g, Je = {
|
|
"option": [1, "<select multiple='multiple'>", "</select>"],
|
|
"legend": [1, "<fieldset>", "</fieldset>"],
|
|
"area": [1, "<map>", "</map>"],
|
|
"param": [1, "<object>", "</object>"],
|
|
"thead": [1, "<table>", "</table>"],
|
|
"tr": [2, "<table><tbody>", "</tbody></table>"],
|
|
"col": [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
|
|
"td": [3, "<table><tbody><tr>", "</tr></tbody></table>"],
|
|
"_default": ne.htmlSerialize ? [0, "", ""] : [1, "X<div>", "</div>"]
|
|
}, Ve = m(he), Ye = Ve.appendChild(he.createElement("div"));
|
|
Je.optgroup = Je.option, Je.tbody = Je.tfoot = Je.colgroup = Je.caption = Je.thead, Je.th = Je.td, oe.extend({
|
|
"clone": function (e, t, n) {
|
|
var r, o, i, a, s, c = oe.contains(e.ownerDocument, e);
|
|
if (ne.html5Clone || oe.isXMLDoc(e) || !Re.test("<" + e.nodeName + ">") ? i = e.cloneNode(!0) : (Ye.innerHTML = e.outerHTML, Ye.removeChild(i = Ye.firstChild)), !(ne.noCloneEvent && ne.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || oe.isXMLDoc(e)))for (r = g(i), s = g(e), a = 0; null != (o = s[a]); ++a)r[a] && k(o, r[a]);
|
|
if (t)if (n)for (s = s || g(e), r = r || g(i), a = 0; null != (o = s[a]); a++)x(o, r[a]); else x(e, i);
|
|
return r = g(i, "script"), r.length > 0 && b(r, !c && g(e, "script")), r = s = o = null, i
|
|
}, "buildFragment": function (e, t, n, r) {
|
|
for (var o, i, a, s, c, u, l, p = e.length, f = m(t), d = [], h = 0; p > h; h++)if (i = e[h], i || 0 === i)if ("object" === oe.type(i))oe.merge(d, i.nodeType ? [i] : i); else if ($e.test(i)) {
|
|
for (s = s || f.appendChild(t.createElement("div")), c = (Fe.exec(i) || ["", ""])[1].toLowerCase(), l = Je[c] || Je._default, s.innerHTML = l[1] + i.replace(Be, "<$1></$2>") + l[2], o = l[0]; o--;)s = s.lastChild;
|
|
if (!ne.leadingWhitespace && qe.test(i) && d.push(t.createTextNode(qe.exec(i)[0])), !ne.tbody)for (i = "table" !== c || ze.test(i) ? "<table>" !== l[1] || ze.test(i) ? 0 : s : s.firstChild, o = i && i.childNodes.length; o--;)oe.nodeName(u = i.childNodes[o], "tbody") && !u.childNodes.length && i.removeChild(u);
|
|
for (oe.merge(d, s.childNodes), s.textContent = ""; s.firstChild;)s.removeChild(s.firstChild);
|
|
s = f.lastChild
|
|
} else d.push(t.createTextNode(i));
|
|
for (s && f.removeChild(s), ne.appendChecked || oe.grep(g(d, "input"), y), h = 0; i = d[h++];)if ((!r || -1 === oe.inArray(i, r)) && (a = oe.contains(i.ownerDocument, i), s = g(f.appendChild(i), "script"), a && b(s), n))for (o = 0; i = s[o++];)Ue.test(i.type || "") && n.push(i);
|
|
return s = null, f
|
|
}, "cleanData": function (e, t) {
|
|
for (var n, r, o, i, a = 0, s = oe.expando, c = oe.cache, u = ne.deleteExpando, l = oe.event.special; null != (n = e[a]); a++)if ((t || oe.acceptData(n)) && (o = n[s], i = o && c[o])) {
|
|
if (i.events)for (r in i.events)l[r] ? oe.event.remove(n, r) : oe.removeEvent(n, r, i.handle);
|
|
c[o] && (delete c[o], u ? delete n[s] : typeof n.removeAttribute !== ke ? n.removeAttribute(s) : n[s] = null, X.push(o))
|
|
}
|
|
}
|
|
}), oe.fn.extend({
|
|
"text": function (e) {
|
|
return Ee(this, function (e) {
|
|
return void 0 === e ? oe.text(this) : this.empty().append((this[0] && this[0].ownerDocument || he).createTextNode(e))
|
|
}, null, e, arguments.length)
|
|
}, "append": function () {
|
|
return this.domManip(arguments, function (e) {
|
|
if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
|
|
var t = v(this, e);
|
|
t.appendChild(e)
|
|
}
|
|
})
|
|
}, "prepend": function () {
|
|
return this.domManip(arguments, function (e) {
|
|
if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
|
|
var t = v(this, e);
|
|
t.insertBefore(e, t.firstChild)
|
|
}
|
|
})
|
|
}, "before": function () {
|
|
return this.domManip(arguments, function (e) {
|
|
this.parentNode && this.parentNode.insertBefore(e, this)
|
|
})
|
|
}, "after": function () {
|
|
return this.domManip(arguments, function (e) {
|
|
this.parentNode && this.parentNode.insertBefore(e, this.nextSibling)
|
|
})
|
|
}, "remove": function (e, t) {
|
|
for (var n, r = e ? oe.filter(e, this) : this, o = 0; null != (n = r[o]); o++)t || 1 !== n.nodeType || oe.cleanData(g(n)), n.parentNode && (t && oe.contains(n.ownerDocument, n) && b(g(n, "script")), n.parentNode.removeChild(n));
|
|
return this
|
|
}, "empty": function () {
|
|
for (var e, t = 0; null != (e = this[t]); t++) {
|
|
for (1 === e.nodeType && oe.cleanData(g(e, !1)); e.firstChild;)e.removeChild(e.firstChild);
|
|
e.options && oe.nodeName(e, "select") && (e.options.length = 0)
|
|
}
|
|
return this
|
|
}, "clone": function (e, t) {
|
|
return e = null == e ? !1 : e, t = null == t ? e : t, this.map(function () {
|
|
return oe.clone(this, e, t)
|
|
})
|
|
}, "html": function (e) {
|
|
return Ee(this, function (e) {
|
|
var t = this[0] || {}, n = 0, r = this.length;
|
|
if (void 0 === e)return 1 === t.nodeType ? t.innerHTML.replace(Me, "") : void 0;
|
|
if ("string" == typeof e && !Ie.test(e) && (ne.htmlSerialize || !Re.test(e)) && (ne.leadingWhitespace || !qe.test(e)) && !Je[(Fe.exec(e) || ["", ""])[1].toLowerCase()]) {
|
|
e = e.replace(Be, "<$1></$2>");
|
|
try {
|
|
for (; r > n; n++)t = this[n] || {}, 1 === t.nodeType && (oe.cleanData(g(t, !1)), t.innerHTML = e);
|
|
t = 0
|
|
} catch (o) {
|
|
}
|
|
}
|
|
t && this.empty().append(e)
|
|
}, null, e, arguments.length)
|
|
}, "replaceWith": function () {
|
|
var e = arguments[0];
|
|
return this.domManip(arguments, function (t) {
|
|
e = this.parentNode, oe.cleanData(g(this)), e && e.replaceChild(t, this)
|
|
}), e && (e.length || e.nodeType) ? this : this.remove()
|
|
}, "detach": function (e) {
|
|
return this.remove(e, !0)
|
|
}, "domManip": function (e, t) {
|
|
e = V.apply([], e);
|
|
var n, r, o, i, a, s, c = 0, u = this.length, l = this, p = u - 1, f = e[0], d = oe.isFunction(f);
|
|
if (d || u > 1 && "string" == typeof f && !ne.checkClone && Qe.test(f))return this.each(function (n) {
|
|
var r = l.eq(n);
|
|
d && (e[0] = f.call(this, n, r.html())), r.domManip(e, t)
|
|
});
|
|
if (u && (s = oe.buildFragment(e, this[0].ownerDocument, !1, this), n = s.firstChild, 1 === s.childNodes.length && (s = n), n)) {
|
|
for (i = oe.map(g(s, "script"), _), o = i.length; u > c; c++)r = s, c !== p && (r = oe.clone(r, !0, !0), o && oe.merge(i, g(r, "script"))), t.call(this[c], r, c);
|
|
if (o)for (a = i[i.length - 1].ownerDocument, oe.map(i, w), c = 0; o > c; c++)r = i[c], Ue.test(r.type || "") && !oe._data(r, "globalEval") && oe.contains(a, r) && (r.src ? oe._evalUrl && oe._evalUrl(r.src) : oe.globalEval((r.text || r.textContent || r.innerHTML || "").replace(Xe, "")));
|
|
s = n = null
|
|
}
|
|
return this
|
|
}
|
|
}), oe.each({
|
|
"appendTo": "append",
|
|
"prependTo": "prepend",
|
|
"insertBefore": "before",
|
|
"insertAfter": "after",
|
|
"replaceAll": "replaceWith"
|
|
}, function (e, t) {
|
|
oe.fn[e] = function (e) {
|
|
for (var n, r = 0, o = [], i = oe(e), a = i.length - 1; a >= r; r++)n = r === a ? this : this.clone(!0), oe(i[r])[t](n), Y.apply(o, n.get());
|
|
return this.pushStack(o)
|
|
}
|
|
});
|
|
var Ke, Ze = {};
|
|
!function () {
|
|
var e;
|
|
ne.shrinkWrapBlocks = function () {
|
|
if (null != e)return e;
|
|
e = !1;
|
|
var t, n, r;
|
|
return n = he.getElementsByTagName("body")[0], n && n.style ? (t = he.createElement("div"), r = he.createElement("div"), r.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px", n.appendChild(r).appendChild(t), typeof t.style.zoom !== ke && (t.style.cssText = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:1px;width:1px;zoom:1", t.appendChild(he.createElement("div")).style.width = "5px", e = 3 !== t.offsetWidth), n.removeChild(r), e) : void 0
|
|
}
|
|
}();
|
|
var et, tt, nt = /^margin/, rt = new RegExp("^(" + je + ")(?!px)[a-z%]+$", "i"), ot = /^(top|right|bottom|left)$/;
|
|
e.getComputedStyle ? (et = function (t) {
|
|
return t.ownerDocument.defaultView && t.ownerDocument.defaultView.opener ? t.ownerDocument.defaultView.getComputedStyle(t, null) : e.getComputedStyle(t, null)
|
|
}, tt = function (e, t, n) {
|
|
var r, o, i, a, s = e.style;
|
|
return n = n || et(e), a = n ? n.getPropertyValue(t) || n[t] : void 0, n && ("" !== a || oe.contains(e.ownerDocument, e) || (a = oe.style(e, t)), rt.test(a) && nt.test(t) && (r = s.width, o = s.minWidth, i = s.maxWidth, s.minWidth = s.maxWidth = s.width = a, a = n.width, s.width = r, s.minWidth = o, s.maxWidth = i)), void 0 === a ? a : a + ""
|
|
}) : he.documentElement.currentStyle && (et = function (e) {
|
|
return e.currentStyle
|
|
}, tt = function (e, t, n) {
|
|
var r, o, i, a, s = e.style;
|
|
return n = n || et(e), a = n ? n[t] : void 0, null == a && s && s[t] && (a = s[t]), rt.test(a) && !ot.test(t) && (r = s.left, o = e.runtimeStyle, i = o && o.left, i && (o.left = e.currentStyle.left), s.left = "fontSize" === t ? "1em" : a, a = s.pixelLeft + "px", s.left = r, i && (o.left = i)), void 0 === a ? a : a + "" || "auto"
|
|
}), function () {
|
|
function t() {
|
|
var t, n, r, o;
|
|
n = he.getElementsByTagName("body")[0], n && n.style && (t = he.createElement("div"), r = he.createElement("div"), r.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px", n.appendChild(r).appendChild(t), t.style.cssText = "-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",
|
|
i = a = !1, c = !0, e.getComputedStyle && (i = "1%" !== (e.getComputedStyle(t, null) || {}).top, a = "4px" === (e.getComputedStyle(t, null) || {"width": "4px"}).width, o = t.appendChild(he.createElement("div")), o.style.cssText = t.style.cssText = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0", o.style.marginRight = o.style.width = "0", t.style.width = "1px", c = !parseFloat((e.getComputedStyle(o, null) || {}).marginRight), t.removeChild(o)), t.innerHTML = "<table><tr><td></td><td>t</td></tr></table>", o = t.getElementsByTagName("td"), o[0].style.cssText = "margin:0;border:0;padding:0;display:none", s = 0 === o[0].offsetHeight, s && (o[0].style.display = "", o[1].style.display = "none", s = 0 === o[0].offsetHeight), n.removeChild(r))
|
|
}
|
|
|
|
var n, r, o, i, a, s, c;
|
|
n = he.createElement("div"), n.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", o = n.getElementsByTagName("a")[0], r = o && o.style, r && (r.cssText = "float:left;opacity:.5", ne.opacity = "0.5" === r.opacity, ne.cssFloat = !!r.cssFloat, n.style.backgroundClip = "content-box", n.cloneNode(!0).style.backgroundClip = "", ne.clearCloneStyle = "content-box" === n.style.backgroundClip, ne.boxSizing = "" === r.boxSizing || "" === r.MozBoxSizing || "" === r.WebkitBoxSizing, oe.extend(ne, {
|
|
"reliableHiddenOffsets": function () {
|
|
return null == s && t(), s
|
|
}, "boxSizingReliable": function () {
|
|
return null == a && t(), a
|
|
}, "pixelPosition": function () {
|
|
return null == i && t(), i
|
|
}, "reliableMarginRight": function () {
|
|
return null == c && t(), c
|
|
}
|
|
}))
|
|
}(), oe.swap = function (e, t, n, r) {
|
|
var o, i, a = {};
|
|
for (i in t)a[i] = e.style[i], e.style[i] = t[i];
|
|
o = n.apply(e, r || []);
|
|
for (i in t)e.style[i] = a[i];
|
|
return o
|
|
};
|
|
var it = /alpha\([^)]*\)/i, at = /opacity\s*=\s*([^)]*)/, st = /^(none|table(?!-c[ea]).+)/, ct = new RegExp("^(" + je + ")(.*)$", "i"), ut = new RegExp("^([+-])=(" + je + ")", "i"), lt = {
|
|
"position": "absolute",
|
|
"visibility": "hidden",
|
|
"display": "block"
|
|
}, pt = {"letterSpacing": "0", "fontWeight": "400"}, ft = ["Webkit", "O", "Moz", "ms"];
|
|
oe.extend({
|
|
"cssHooks": {
|
|
"opacity": {
|
|
"get": function (e, t) {
|
|
if (t) {
|
|
var n = tt(e, "opacity");
|
|
return "" === n ? "1" : n
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"cssNumber": {
|
|
"columnCount": !0,
|
|
"fillOpacity": !0,
|
|
"flexGrow": !0,
|
|
"flexShrink": !0,
|
|
"fontWeight": !0,
|
|
"lineHeight": !0,
|
|
"opacity": !0,
|
|
"order": !0,
|
|
"orphans": !0,
|
|
"widows": !0,
|
|
"zIndex": !0,
|
|
"zoom": !0
|
|
},
|
|
"cssProps": {"float": ne.cssFloat ? "cssFloat" : "styleFloat"},
|
|
"style": function (e, t, n, r) {
|
|
if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) {
|
|
var o, i, a, s = oe.camelCase(t), c = e.style;
|
|
if (t = oe.cssProps[s] || (oe.cssProps[s] = N(c, s)), a = oe.cssHooks[t] || oe.cssHooks[s], void 0 === n)return a && "get"in a && void 0 !== (o = a.get(e, !1, r)) ? o : c[t];
|
|
if (i = typeof n, "string" === i && (o = ut.exec(n)) && (n = (o[1] + 1) * o[2] + parseFloat(oe.css(e, t)), i = "number"), null != n && n === n && ("number" !== i || oe.cssNumber[s] || (n += "px"), ne.clearCloneStyle || "" !== n || 0 !== t.indexOf("background") || (c[t] = "inherit"), !(a && "set"in a && void 0 === (n = a.set(e, n, r)))))try {
|
|
c[t] = n
|
|
} catch (u) {
|
|
}
|
|
}
|
|
},
|
|
"css": function (e, t, n, r) {
|
|
var o, i, a, s = oe.camelCase(t);
|
|
return t = oe.cssProps[s] || (oe.cssProps[s] = N(e.style, s)), a = oe.cssHooks[t] || oe.cssHooks[s], a && "get"in a && (i = a.get(e, !0, n)), void 0 === i && (i = tt(e, t, r)), "normal" === i && t in pt && (i = pt[t]), "" === n || n ? (o = parseFloat(i), n === !0 || oe.isNumeric(o) ? o || 0 : i) : i
|
|
}
|
|
}), oe.each(["height", "width"], function (e, t) {
|
|
oe.cssHooks[t] = {
|
|
"get": function (e, n, r) {
|
|
return n ? st.test(oe.css(e, "display")) && 0 === e.offsetWidth ? oe.swap(e, lt, function () {
|
|
return D(e, t, r)
|
|
}) : D(e, t, r) : void 0
|
|
}, "set": function (e, n, r) {
|
|
var o = r && et(e);
|
|
return E(e, n, r ? A(e, t, r, ne.boxSizing && "border-box" === oe.css(e, "boxSizing", !1, o), o) : 0)
|
|
}
|
|
}
|
|
}), ne.opacity || (oe.cssHooks.opacity = {
|
|
"get": function (e, t) {
|
|
return at.test((t && e.currentStyle ? e.currentStyle.filter : e.style.filter) || "") ? .01 * parseFloat(RegExp.$1) + "" : t ? "1" : ""
|
|
}, "set": function (e, t) {
|
|
var n = e.style, r = e.currentStyle, o = oe.isNumeric(t) ? "alpha(opacity=" + 100 * t + ")" : "", i = r && r.filter || n.filter || "";
|
|
n.zoom = 1, (t >= 1 || "" === t) && "" === oe.trim(i.replace(it, "")) && n.removeAttribute && (n.removeAttribute("filter"), "" === t || r && !r.filter) || (n.filter = it.test(i) ? i.replace(it, o) : i + " " + o)
|
|
}
|
|
}), oe.cssHooks.marginRight = j(ne.reliableMarginRight, function (e, t) {
|
|
return t ? oe.swap(e, {"display": "inline-block"}, tt, [e, "marginRight"]) : void 0
|
|
}), oe.each({"margin": "", "padding": "", "border": "Width"}, function (e, t) {
|
|
oe.cssHooks[e + t] = {
|
|
"expand": function (n) {
|
|
for (var r = 0, o = {}, i = "string" == typeof n ? n.split(" ") : [n]; 4 > r; r++)o[e + Ne[r] + t] = i[r] || i[r - 2] || i[0];
|
|
return o
|
|
}
|
|
}, nt.test(e) || (oe.cssHooks[e + t].set = E)
|
|
}), oe.fn.extend({
|
|
"css": function (e, t) {
|
|
return Ee(this, function (e, t, n) {
|
|
var r, o, i = {}, a = 0;
|
|
if (oe.isArray(t)) {
|
|
for (r = et(e), o = t.length; o > a; a++)i[t[a]] = oe.css(e, t[a], !1, r);
|
|
return i
|
|
}
|
|
return void 0 !== n ? oe.style(e, t, n) : oe.css(e, t)
|
|
}, e, t, arguments.length > 1)
|
|
}, "show": function () {
|
|
return S(this, !0)
|
|
}, "hide": function () {
|
|
return S(this)
|
|
}, "toggle": function (e) {
|
|
return "boolean" == typeof e ? e ? this.show() : this.hide() : this.each(function () {
|
|
Se(this) ? oe(this).show() : oe(this).hide()
|
|
})
|
|
}
|
|
}), oe.Tween = O, O.prototype = {
|
|
"constructor": O, "init": function (e, t, n, r, o, i) {
|
|
this.elem = e, this.prop = n, this.easing = o || "swing", this.options = t, this.start = this.now = this.cur(), this.end = r, this.unit = i || (oe.cssNumber[n] ? "" : "px")
|
|
}, "cur": function () {
|
|
var e = O.propHooks[this.prop];
|
|
return e && e.get ? e.get(this) : O.propHooks._default.get(this)
|
|
}, "run": function (e) {
|
|
var t, n = O.propHooks[this.prop];
|
|
return this.options.duration ? this.pos = t = oe.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration) : this.pos = t = e, this.now = (this.end - this.start) * t + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), n && n.set ? n.set(this) : O.propHooks._default.set(this), this
|
|
}
|
|
}, O.prototype.init.prototype = O.prototype, O.propHooks = {
|
|
"_default": {
|
|
"get": function (e) {
|
|
var t;
|
|
return null == e.elem[e.prop] || e.elem.style && null != e.elem.style[e.prop] ? (t = oe.css(e.elem, e.prop, ""), t && "auto" !== t ? t : 0) : e.elem[e.prop]
|
|
}, "set": function (e) {
|
|
oe.fx.step[e.prop] ? oe.fx.step[e.prop](e) : e.elem.style && (null != e.elem.style[oe.cssProps[e.prop]] || oe.cssHooks[e.prop]) ? oe.style(e.elem, e.prop, e.now + e.unit) : e.elem[e.prop] = e.now
|
|
}
|
|
}
|
|
}, O.propHooks.scrollTop = O.propHooks.scrollLeft = {
|
|
"set": function (e) {
|
|
e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now)
|
|
}
|
|
}, oe.easing = {
|
|
"linear": function (e) {
|
|
return e
|
|
}, "swing": function (e) {
|
|
return .5 - Math.cos(e * Math.PI) / 2
|
|
}
|
|
}, oe.fx = O.prototype.init, oe.fx.step = {};
|
|
var dt, ht, mt = /^(?:toggle|show|hide)$/, gt = new RegExp("^(?:([+-])=|)(" + je + ")([a-z%]*)$", "i"), yt = /queueHooks$/, vt = [H], _t = {
|
|
"*": [function (e, t) {
|
|
var n = this.createTween(e, t), r = n.cur(), o = gt.exec(t), i = o && o[3] || (oe.cssNumber[e] ? "" : "px"), a = (oe.cssNumber[e] || "px" !== i && +r) && gt.exec(oe.css(n.elem, e)), s = 1, c = 20;
|
|
if (a && a[3] !== i) {
|
|
i = i || a[3], o = o || [], a = +r || 1;
|
|
do s = s || ".5", a /= s, oe.style(n.elem, e, a + i); while (s !== (s = n.cur() / r) && 1 !== s && --c)
|
|
}
|
|
return o && (a = n.start = +a || +r || 0, n.unit = i, n.end = o[1] ? a + (o[1] + 1) * o[2] : +o[2]), n
|
|
}]
|
|
};
|
|
oe.Animation = oe.extend(R, {
|
|
"tweener": function (e, t) {
|
|
oe.isFunction(e) ? (t = e, e = ["*"]) : e = e.split(" ");
|
|
for (var n, r = 0, o = e.length; o > r; r++)n = e[r], _t[n] = _t[n] || [], _t[n].unshift(t)
|
|
}, "prefilter": function (e, t) {
|
|
t ? vt.unshift(e) : vt.push(e)
|
|
}
|
|
}), oe.speed = function (e, t, n) {
|
|
var r = e && "object" == typeof e ? oe.extend({}, e) : {
|
|
"complete": n || !n && t || oe.isFunction(e) && e,
|
|
"duration": e,
|
|
"easing": n && t || t && !oe.isFunction(t) && t
|
|
};
|
|
return r.duration = oe.fx.off ? 0 : "number" == typeof r.duration ? r.duration : r.duration in oe.fx.speeds ? oe.fx.speeds[r.duration] : oe.fx.speeds._default, (null == r.queue || r.queue === !0) && (r.queue = "fx"), r.old = r.complete, r.complete = function () {
|
|
oe.isFunction(r.old) && r.old.call(this), r.queue && oe.dequeue(this, r.queue)
|
|
}, r
|
|
}, oe.fn.extend({
|
|
"fadeTo": function (e, t, n, r) {
|
|
return this.filter(Se).css("opacity", 0).show().end().animate({"opacity": t}, e, n, r)
|
|
}, "animate": function (e, t, n, r) {
|
|
var o = oe.isEmptyObject(e), i = oe.speed(t, n, r), a = function () {
|
|
var t = R(this, oe.extend({}, e), i);
|
|
(o || oe._data(this, "finish")) && t.stop(!0)
|
|
};
|
|
return a.finish = a, o || i.queue === !1 ? this.each(a) : this.queue(i.queue, a)
|
|
}, "stop": function (e, t, n) {
|
|
var r = function (e) {
|
|
var t = e.stop;
|
|
delete e.stop, t(n)
|
|
};
|
|
return "string" != typeof e && (n = t, t = e, e = void 0), t && e !== !1 && this.queue(e || "fx", []), this.each(function () {
|
|
var t = !0, o = null != e && e + "queueHooks", i = oe.timers, a = oe._data(this);
|
|
if (o)a[o] && a[o].stop && r(a[o]); else for (o in a)a[o] && a[o].stop && yt.test(o) && r(a[o]);
|
|
for (o = i.length; o--;)i[o].elem !== this || null != e && i[o].queue !== e || (i[o].anim.stop(n), t = !1, i.splice(o, 1));
|
|
(t || !n) && oe.dequeue(this, e)
|
|
})
|
|
}, "finish": function (e) {
|
|
return e !== !1 && (e = e || "fx"), this.each(function () {
|
|
var t, n = oe._data(this), r = n[e + "queue"], o = n[e + "queueHooks"], i = oe.timers, a = r ? r.length : 0;
|
|
for (n.finish = !0, oe.queue(this, e, []), o && o.stop && o.stop.call(this, !0), t = i.length; t--;)i[t].elem === this && i[t].queue === e && (i[t].anim.stop(!0), i.splice(t, 1));
|
|
for (t = 0; a > t; t++)r[t] && r[t].finish && r[t].finish.call(this);
|
|
delete n.finish
|
|
})
|
|
}
|
|
}), oe.each(["toggle", "show", "hide"], function (e, t) {
|
|
var n = oe.fn[t];
|
|
oe.fn[t] = function (e, r, o) {
|
|
return null == e || "boolean" == typeof e ? n.apply(this, arguments) : this.animate(L(t, !0), e, r, o)
|
|
}
|
|
}), oe.each({
|
|
"slideDown": L("show"),
|
|
"slideUp": L("hide"),
|
|
"slideToggle": L("toggle"),
|
|
"fadeIn": {"opacity": "show"},
|
|
"fadeOut": {"opacity": "hide"},
|
|
"fadeToggle": {"opacity": "toggle"}
|
|
}, function (e, t) {
|
|
oe.fn[e] = function (e, n, r) {
|
|
return this.animate(t, e, n, r)
|
|
}
|
|
}), oe.timers = [], oe.fx.tick = function () {
|
|
var e, t = oe.timers, n = 0;
|
|
for (dt = oe.now(); n < t.length; n++)e = t[n], e() || t[n] !== e || t.splice(n--, 1);
|
|
t.length || oe.fx.stop(), dt = void 0
|
|
}, oe.fx.timer = function (e) {
|
|
oe.timers.push(e), e() ? oe.fx.start() : oe.timers.pop()
|
|
}, oe.fx.interval = 13, oe.fx.start = function () {
|
|
ht || (ht = setInterval(oe.fx.tick, oe.fx.interval))
|
|
}, oe.fx.stop = function () {
|
|
clearInterval(ht), ht = null
|
|
}, oe.fx.speeds = {"slow": 600, "fast": 200, "_default": 400}, oe.fn.delay = function (e, t) {
|
|
return e = oe.fx ? oe.fx.speeds[e] || e : e, t = t || "fx", this.queue(t, function (t, n) {
|
|
var r = setTimeout(t, e);
|
|
n.stop = function () {
|
|
clearTimeout(r)
|
|
}
|
|
})
|
|
}, function () {
|
|
var e, t, n, r, o;
|
|
t = he.createElement("div"), t.setAttribute("className", "t"), t.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", r = t.getElementsByTagName("a")[0], n = he.createElement("select"), o = n.appendChild(he.createElement("option")), e = t.getElementsByTagName("input")[0], r.style.cssText = "top:1px", ne.getSetAttribute = "t" !== t.className, ne.style = /top/.test(r.getAttribute("style")), ne.hrefNormalized = "/a" === r.getAttribute("href"), ne.checkOn = !!e.value, ne.optSelected = o.selected, ne.enctype = !!he.createElement("form").enctype, n.disabled = !0, ne.optDisabled = !o.disabled, e = he.createElement("input"), e.setAttribute("value", ""), ne.input = "" === e.getAttribute("value"), e.value = "t", e.setAttribute("type", "radio"), ne.radioValue = "t" === e.value
|
|
}();
|
|
var wt = /\r/g;
|
|
oe.fn.extend({
|
|
"val": function (e) {
|
|
var t, n, r, o = this[0];
|
|
{
|
|
if (arguments.length)return r = oe.isFunction(e), this.each(function (n) {
|
|
var o;
|
|
1 === this.nodeType && (o = r ? e.call(this, n, oe(this).val()) : e, null == o ? o = "" : "number" == typeof o ? o += "" : oe.isArray(o) && (o = oe.map(o, function (e) {
|
|
return null == e ? "" : e + ""
|
|
})), t = oe.valHooks[this.type] || oe.valHooks[this.nodeName.toLowerCase()], t && "set"in t && void 0 !== t.set(this, o, "value") || (this.value = o))
|
|
});
|
|
if (o)return t = oe.valHooks[o.type] || oe.valHooks[o.nodeName.toLowerCase()], t && "get"in t && void 0 !== (n = t.get(o, "value")) ? n : (n = o.value, "string" == typeof n ? n.replace(wt, "") : null == n ? "" : n)
|
|
}
|
|
}
|
|
}), oe.extend({
|
|
"valHooks": {
|
|
"option": {
|
|
"get": function (e) {
|
|
var t = oe.find.attr(e, "value");
|
|
return null != t ? t : oe.trim(oe.text(e))
|
|
}
|
|
}, "select": {
|
|
"get": function (e) {
|
|
for (var t, n, r = e.options, o = e.selectedIndex, i = "select-one" === e.type || 0 > o, a = i ? null : [], s = i ? o + 1 : r.length, c = 0 > o ? s : i ? o : 0; s > c; c++)if (n = r[c], (n.selected || c === o) && (ne.optDisabled ? !n.disabled : null === n.getAttribute("disabled")) && (!n.parentNode.disabled || !oe.nodeName(n.parentNode, "optgroup"))) {
|
|
if (t = oe(n).val(), i)return t;
|
|
a.push(t)
|
|
}
|
|
return a
|
|
}, "set": function (e, t) {
|
|
for (var n, r, o = e.options, i = oe.makeArray(t), a = o.length; a--;)if (r = o[a], oe.inArray(oe.valHooks.option.get(r), i) >= 0)try {
|
|
r.selected = n = !0
|
|
} catch (s) {
|
|
r.scrollHeight
|
|
} else r.selected = !1;
|
|
return n || (e.selectedIndex = -1), o
|
|
}
|
|
}
|
|
}
|
|
}), oe.each(["radio", "checkbox"], function () {
|
|
oe.valHooks[this] = {
|
|
"set": function (e, t) {
|
|
return oe.isArray(t) ? e.checked = oe.inArray(oe(e).val(), t) >= 0 : void 0
|
|
}
|
|
}, ne.checkOn || (oe.valHooks[this].get = function (e) {
|
|
return null === e.getAttribute("value") ? "on" : e.value
|
|
})
|
|
});
|
|
var bt, xt, kt = oe.expr.attrHandle, Ct = /^(?:checked|selected)$/i, Tt = ne.getSetAttribute, jt = ne.input;
|
|
oe.fn.extend({
|
|
"attr": function (e, t) {
|
|
return Ee(this, oe.attr, e, t, arguments.length > 1)
|
|
}, "removeAttr": function (e) {
|
|
return this.each(function () {
|
|
oe.removeAttr(this, e)
|
|
})
|
|
}
|
|
}), oe.extend({
|
|
"attr": function (e, t, n) {
|
|
var r, o, i = e.nodeType;
|
|
if (e && 3 !== i && 8 !== i && 2 !== i)return typeof e.getAttribute === ke ? oe.prop(e, t, n) : (1 === i && oe.isXMLDoc(e) || (t = t.toLowerCase(), r = oe.attrHooks[t] || (oe.expr.match.bool.test(t) ? xt : bt)), void 0 === n ? r && "get"in r && null !== (o = r.get(e, t)) ? o : (o = oe.find.attr(e, t), null == o ? void 0 : o) : null !== n ? r && "set"in r && void 0 !== (o = r.set(e, n, t)) ? o : (e.setAttribute(t, n + ""), n) : void oe.removeAttr(e, t))
|
|
}, "removeAttr": function (e, t) {
|
|
var n, r, o = 0, i = t && t.match(_e);
|
|
if (i && 1 === e.nodeType)for (; n = i[o++];)r = oe.propFix[n] || n, oe.expr.match.bool.test(n) ? jt && Tt || !Ct.test(n) ? e[r] = !1 : e[oe.camelCase("default-" + n)] = e[r] = !1 : oe.attr(e, n, ""), e.removeAttribute(Tt ? n : r)
|
|
}, "attrHooks": {
|
|
"type": {
|
|
"set": function (e, t) {
|
|
if (!ne.radioValue && "radio" === t && oe.nodeName(e, "input")) {
|
|
var n = e.value;
|
|
return e.setAttribute("type", t), n && (e.value = n), t
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}), xt = {
|
|
"set": function (e, t, n) {
|
|
return t === !1 ? oe.removeAttr(e, n) : jt && Tt || !Ct.test(n) ? e.setAttribute(!Tt && oe.propFix[n] || n, n) : e[oe.camelCase("default-" + n)] = e[n] = !0, n
|
|
}
|
|
}, oe.each(oe.expr.match.bool.source.match(/\w+/g), function (e, t) {
|
|
var n = kt[t] || oe.find.attr;
|
|
kt[t] = jt && Tt || !Ct.test(t) ? function (e, t, r) {
|
|
var o, i;
|
|
return r || (i = kt[t], kt[t] = o, o = null != n(e, t, r) ? t.toLowerCase() : null, kt[t] = i), o
|
|
} : function (e, t, n) {
|
|
return n ? void 0 : e[oe.camelCase("default-" + t)] ? t.toLowerCase() : null
|
|
}
|
|
}), jt && Tt || (oe.attrHooks.value = {
|
|
"set": function (e, t, n) {
|
|
return oe.nodeName(e, "input") ? void(e.defaultValue = t) : bt && bt.set(e, t, n)
|
|
}
|
|
}), Tt || (bt = {
|
|
"set": function (e, t, n) {
|
|
var r = e.getAttributeNode(n);
|
|
return r || e.setAttributeNode(r = e.ownerDocument.createAttribute(n)), r.value = t += "", "value" === n || t === e.getAttribute(n) ? t : void 0
|
|
}
|
|
}, kt.id = kt.name = kt.coords = function (e, t, n) {
|
|
var r;
|
|
return n ? void 0 : (r = e.getAttributeNode(t)) && "" !== r.value ? r.value : null
|
|
}, oe.valHooks.button = {
|
|
"get": function (e, t) {
|
|
var n = e.getAttributeNode(t);
|
|
return n && n.specified ? n.value : void 0
|
|
}, "set": bt.set
|
|
}, oe.attrHooks.contenteditable = {
|
|
"set": function (e, t, n) {
|
|
bt.set(e, "" === t ? !1 : t, n)
|
|
}
|
|
}, oe.each(["width", "height"], function (e, t) {
|
|
oe.attrHooks[t] = {
|
|
"set": function (e, n) {
|
|
return "" === n ? (e.setAttribute(t, "auto"), n) : void 0
|
|
}
|
|
}
|
|
})), ne.style || (oe.attrHooks.style = {
|
|
"get": function (e) {
|
|
return e.style.cssText || void 0
|
|
}, "set": function (e, t) {
|
|
return e.style.cssText = t + ""
|
|
}
|
|
});
|
|
var Nt = /^(?:input|select|textarea|button|object)$/i, St = /^(?:a|area)$/i;
|
|
oe.fn.extend({
|
|
"prop": function (e, t) {
|
|
return Ee(this, oe.prop, e, t, arguments.length > 1)
|
|
}, "removeProp": function (e) {
|
|
return e = oe.propFix[e] || e, this.each(function () {
|
|
try {
|
|
this[e] = void 0, delete this[e]
|
|
} catch (t) {
|
|
}
|
|
})
|
|
}
|
|
}), oe.extend({
|
|
"propFix": {"for": "htmlFor", "class": "className"}, "prop": function (e, t, n) {
|
|
var r, o, i, a = e.nodeType;
|
|
if (e && 3 !== a && 8 !== a && 2 !== a)return i = 1 !== a || !oe.isXMLDoc(e), i && (t = oe.propFix[t] || t, o = oe.propHooks[t]), void 0 !== n ? o && "set"in o && void 0 !== (r = o.set(e, n, t)) ? r : e[t] = n : o && "get"in o && null !== (r = o.get(e, t)) ? r : e[t]
|
|
}, "propHooks": {
|
|
"tabIndex": {
|
|
"get": function (e) {
|
|
var t = oe.find.attr(e, "tabindex");
|
|
return t ? parseInt(t, 10) : Nt.test(e.nodeName) || St.test(e.nodeName) && e.href ? 0 : -1
|
|
}
|
|
}
|
|
}
|
|
}), ne.hrefNormalized || oe.each(["href", "src"], function (e, t) {
|
|
oe.propHooks[t] = {
|
|
"get": function (e) {
|
|
return e.getAttribute(t, 4)
|
|
}
|
|
}
|
|
}), ne.optSelected || (oe.propHooks.selected = {
|
|
"get": function (e) {
|
|
var t = e.parentNode;
|
|
return t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex), null
|
|
}
|
|
}), oe.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function () {
|
|
oe.propFix[this.toLowerCase()] = this
|
|
}), ne.enctype || (oe.propFix.enctype = "encoding");
|
|
var Et = /[\t\r\n\f]/g;
|
|
oe.fn.extend({
|
|
"addClass": function (e) {
|
|
var t, n, r, o, i, a, s = 0, c = this.length, u = "string" == typeof e && e;
|
|
if (oe.isFunction(e))return this.each(function (t) {
|
|
oe(this).addClass(e.call(this, t, this.className))
|
|
});
|
|
if (u)for (t = (e || "").match(_e) || []; c > s; s++)if (n = this[s], r = 1 === n.nodeType && (n.className ? (" " + n.className + " ").replace(Et, " ") : " ")) {
|
|
for (i = 0; o = t[i++];)r.indexOf(" " + o + " ") < 0 && (r += o + " ");
|
|
a = oe.trim(r), n.className !== a && (n.className = a)
|
|
}
|
|
return this
|
|
}, "removeClass": function (e) {
|
|
var t, n, r, o, i, a, s = 0, c = this.length, u = 0 === arguments.length || "string" == typeof e && e;
|
|
if (oe.isFunction(e))return this.each(function (t) {
|
|
oe(this).removeClass(e.call(this, t, this.className))
|
|
});
|
|
if (u)for (t = (e || "").match(_e) || []; c > s; s++)if (n = this[s], r = 1 === n.nodeType && (n.className ? (" " + n.className + " ").replace(Et, " ") : "")) {
|
|
for (i = 0; o = t[i++];)for (; r.indexOf(" " + o + " ") >= 0;)r = r.replace(" " + o + " ", " ");
|
|
a = e ? oe.trim(r) : "", n.className !== a && (n.className = a)
|
|
}
|
|
return this
|
|
}, "toggleClass": function (e, t) {
|
|
var n = typeof e;
|
|
return "boolean" == typeof t && "string" === n ? t ? this.addClass(e) : this.removeClass(e) : oe.isFunction(e) ? this.each(function (n) {
|
|
oe(this).toggleClass(e.call(this, n, this.className, t), t)
|
|
}) : this.each(function () {
|
|
if ("string" === n)for (var t, r = 0, o = oe(this), i = e.match(_e) || []; t = i[r++];)o.hasClass(t) ? o.removeClass(t) : o.addClass(t); else(n === ke || "boolean" === n) && (this.className && oe._data(this, "__className__", this.className), this.className = this.className || e === !1 ? "" : oe._data(this, "__className__") || "")
|
|
})
|
|
}, "hasClass": function (e) {
|
|
for (var t = " " + e + " ", n = 0, r = this.length; r > n; n++)if (1 === this[n].nodeType && (" " + this[n].className + " ").replace(Et, " ").indexOf(t) >= 0)return !0;
|
|
return !1
|
|
}
|
|
}), oe.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function (e, t) {
|
|
oe.fn[t] = function (e, n) {
|
|
return arguments.length > 0 ? this.on(t, null, e, n) : this.trigger(t)
|
|
}
|
|
}), oe.fn.extend({
|
|
"hover": function (e, t) {
|
|
return this.mouseenter(e).mouseleave(t || e)
|
|
}, "bind": function (e, t, n) {
|
|
return this.on(e, null, t, n)
|
|
}, "unbind": function (e, t) {
|
|
return this.off(e, null, t)
|
|
}, "delegate": function (e, t, n, r) {
|
|
return this.on(t, e, n, r)
|
|
}, "undelegate": function (e, t, n) {
|
|
return 1 === arguments.length ? this.off(e, "**") : this.off(t, e || "**", n)
|
|
}
|
|
});
|
|
var At = oe.now(), Dt = /\?/, Ot = /(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;
|
|
oe.parseJSON = function (t) {
|
|
if (e.JSON && e.JSON.parse)return e.JSON.parse(t + "");
|
|
var n, r = null, o = oe.trim(t + "");
|
|
return o && !oe.trim(o.replace(Ot, function (e, t, o, i) {
|
|
return n && t && (r = 0), 0 === r ? e : (n = o || t, r += !i - !o, "")
|
|
})) ? Function("return " + o)() : oe.error("Invalid JSON: " + t)
|
|
}, oe.parseXML = function (t) {
|
|
var n, r;
|
|
if (!t || "string" != typeof t)return null;
|
|
try {
|
|
e.DOMParser ? (r = new DOMParser, n = r.parseFromString(t, "text/xml")) : (n = new ActiveXObject("Microsoft.XMLDOM"), n.async = "false", n.loadXML(t))
|
|
} catch (o) {
|
|
n = void 0
|
|
}
|
|
return n && n.documentElement && !n.getElementsByTagName("parsererror").length || oe.error("Invalid XML: " + t), n
|
|
};
|
|
var Pt, Lt, Wt = /#.*$/, Ht = /([?&])_=[^&]*/, Mt = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm, Rt = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, qt = /^(?:GET|HEAD)$/, Bt = /^\/\//, Ft = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/, zt = {}, $t = {}, It = "*/".concat("*");
|
|
try {
|
|
Lt = location.href
|
|
} catch (Qt) {
|
|
Lt = he.createElement("a"), Lt.href = "", Lt = Lt.href
|
|
}
|
|
Pt = Ft.exec(Lt.toLowerCase()) || [], oe.extend({
|
|
"active": 0,
|
|
"lastModified": {},
|
|
"etag": {},
|
|
"ajaxSettings": {
|
|
"url": Lt,
|
|
"type": "GET",
|
|
"isLocal": Rt.test(Pt[1]),
|
|
"global": !0,
|
|
"processData": !0,
|
|
"async": !0,
|
|
"contentType": "application/x-www-form-urlencoded; charset=UTF-8",
|
|
"accepts": {
|
|
"*": It,
|
|
"text": "text/plain",
|
|
"html": "text/html",
|
|
"xml": "application/xml, text/xml",
|
|
"json": "application/json, text/javascript"
|
|
},
|
|
"contents": {"xml": /xml/, "html": /html/, "json": /json/},
|
|
"responseFields": {"xml": "responseXML", "text": "responseText", "json": "responseJSON"},
|
|
"converters": {"* text": String, "text html": !0, "text json": oe.parseJSON, "text xml": oe.parseXML},
|
|
"flatOptions": {"url": !0, "context": !0}
|
|
},
|
|
"ajaxSetup": function (e, t) {
|
|
return t ? F(F(e, oe.ajaxSettings), t) : F(oe.ajaxSettings, e)
|
|
},
|
|
"ajaxPrefilter": q(zt),
|
|
"ajaxTransport": q($t),
|
|
"ajax": function (e, t) {
|
|
function n(e, t, n, r) {
|
|
var o, l, y, v, w, x = t;
|
|
2 !== _ && (_ = 2, s && clearTimeout(s), u = void 0, a = r || "", b.readyState = e > 0 ? 4 : 0, o = e >= 200 && 300 > e || 304 === e, n && (v = z(p, b, n)), v = $(p, v, b, o), o ? (p.ifModified && (w = b.getResponseHeader("Last-Modified"), w && (oe.lastModified[i] = w), w = b.getResponseHeader("etag"), w && (oe.etag[i] = w)), 204 === e || "HEAD" === p.type ? x = "nocontent" : 304 === e ? x = "notmodified" : (x = v.state, l = v.data, y = v.error, o = !y)) : (y = x, (e || !x) && (x = "error", 0 > e && (e = 0))), b.status = e, b.statusText = (t || x) + "", o ? h.resolveWith(f, [l, x, b]) : h.rejectWith(f, [b, x, y]), b.statusCode(g), g = void 0, c && d.trigger(o ? "ajaxSuccess" : "ajaxError", [b, p, o ? l : y]), m.fireWith(f, [b, x]), c && (d.trigger("ajaxComplete", [b, p]), --oe.active || oe.event.trigger("ajaxStop")))
|
|
}
|
|
|
|
"object" == typeof e && (t = e, e = void 0), t = t || {};
|
|
var r, o, i, a, s, c, u, l, p = oe.ajaxSetup({}, t), f = p.context || p, d = p.context && (f.nodeType || f.jquery) ? oe(f) : oe.event, h = oe.Deferred(), m = oe.Callbacks("once memory"), g = p.statusCode || {}, y = {}, v = {}, _ = 0, w = "canceled", b = {
|
|
"readyState": 0,
|
|
"getResponseHeader": function (e) {
|
|
var t;
|
|
if (2 === _) {
|
|
if (!l)for (l = {}; t = Mt.exec(a);)l[t[1].toLowerCase()] = t[2];
|
|
t = l[e.toLowerCase()]
|
|
}
|
|
return null == t ? null : t
|
|
},
|
|
"getAllResponseHeaders": function () {
|
|
return 2 === _ ? a : null
|
|
},
|
|
"setRequestHeader": function (e, t) {
|
|
var n = e.toLowerCase();
|
|
return _ || (e = v[n] = v[n] || e, y[e] = t), this
|
|
},
|
|
"overrideMimeType": function (e) {
|
|
return _ || (p.mimeType = e), this
|
|
},
|
|
"statusCode": function (e) {
|
|
var t;
|
|
if (e)if (2 > _)for (t in e)g[t] = [g[t], e[t]]; else b.always(e[b.status]);
|
|
return this
|
|
},
|
|
"abort": function (e) {
|
|
var t = e || w;
|
|
return u && u.abort(t), n(0, t), this
|
|
}
|
|
};
|
|
if (h.promise(b).complete = m.add, b.success = b.done, b.error = b.fail, p.url = ((e || p.url || Lt) + "").replace(Wt, "").replace(Bt, Pt[1] + "//"), p.type = t.method || t.type || p.method || p.type, p.dataTypes = oe.trim(p.dataType || "*").toLowerCase().match(_e) || [""], null == p.crossDomain && (r = Ft.exec(p.url.toLowerCase()), p.crossDomain = !(!r || r[1] === Pt[1] && r[2] === Pt[2] && (r[3] || ("http:" === r[1] ? "80" : "443")) === (Pt[3] || ("http:" === Pt[1] ? "80" : "443")))), p.data && p.processData && "string" != typeof p.data && (p.data = oe.param(p.data, p.traditional)), B(zt, p, t, b), 2 === _)return b;
|
|
c = oe.event && p.global, c && 0 === oe.active++ && oe.event.trigger("ajaxStart"), p.type = p.type.toUpperCase(), p.hasContent = !qt.test(p.type), i = p.url, p.hasContent || (p.data && (i = p.url += (Dt.test(i) ? "&" : "?") + p.data, delete p.data), p.cache === !1 && (p.url = Ht.test(i) ? i.replace(Ht, "$1_=" + At++) : i + (Dt.test(i) ? "&" : "?") + "_=" + At++)), p.ifModified && (oe.lastModified[i] && b.setRequestHeader("If-Modified-Since", oe.lastModified[i]), oe.etag[i] && b.setRequestHeader("If-None-Match", oe.etag[i])), (p.data && p.hasContent && p.contentType !== !1 || t.contentType) && b.setRequestHeader("Content-Type", p.contentType), b.setRequestHeader("Accept", p.dataTypes[0] && p.accepts[p.dataTypes[0]] ? p.accepts[p.dataTypes[0]] + ("*" !== p.dataTypes[0] ? ", " + It + "; q=0.01" : "") : p.accepts["*"]);
|
|
for (o in p.headers)b.setRequestHeader(o, p.headers[o]);
|
|
if (p.beforeSend && (p.beforeSend.call(f, b, p) === !1 || 2 === _))return b.abort();
|
|
w = "abort";
|
|
for (o in{"success": 1, "error": 1, "complete": 1})b[o](p[o]);
|
|
if (u = B($t, p, t, b)) {
|
|
b.readyState = 1, c && d.trigger("ajaxSend", [b, p]), p.async && p.timeout > 0 && (s = setTimeout(function () {
|
|
b.abort("timeout")
|
|
}, p.timeout));
|
|
try {
|
|
_ = 1, u.send(y, n)
|
|
} catch (x) {
|
|
if (!(2 > _))throw x;
|
|
n(-1, x)
|
|
}
|
|
} else n(-1, "No Transport");
|
|
return b
|
|
},
|
|
"getJSON": function (e, t, n) {
|
|
return oe.get(e, t, n, "json")
|
|
},
|
|
"getScript": function (e, t) {
|
|
return oe.get(e, void 0, t, "script")
|
|
}
|
|
}), oe.each(["get", "post"], function (e, t) {
|
|
oe[t] = function (e, n, r, o) {
|
|
return oe.isFunction(n) && (o = o || r, r = n, n = void 0), oe.ajax({
|
|
"url": e,
|
|
"type": t,
|
|
"dataType": o,
|
|
"data": n,
|
|
"success": r
|
|
})
|
|
}
|
|
}), oe._evalUrl = function (e) {
|
|
return oe.ajax({"url": e, "type": "GET", "dataType": "script", "async": !1, "global": !1, "throws": !0})
|
|
}, oe.fn.extend({
|
|
"wrapAll": function (e) {
|
|
if (oe.isFunction(e))return this.each(function (t) {
|
|
oe(this).wrapAll(e.call(this, t))
|
|
});
|
|
if (this[0]) {
|
|
var t = oe(e, this[0].ownerDocument).eq(0).clone(!0);
|
|
this[0].parentNode && t.insertBefore(this[0]), t.map(function () {
|
|
for (var e = this; e.firstChild && 1 === e.firstChild.nodeType;)e = e.firstChild;
|
|
return e
|
|
}).append(this)
|
|
}
|
|
return this
|
|
}, "wrapInner": function (e) {
|
|
return oe.isFunction(e) ? this.each(function (t) {
|
|
oe(this).wrapInner(e.call(this, t))
|
|
}) : this.each(function () {
|
|
var t = oe(this), n = t.contents();
|
|
n.length ? n.wrapAll(e) : t.append(e)
|
|
})
|
|
}, "wrap": function (e) {
|
|
var t = oe.isFunction(e);
|
|
return this.each(function (n) {
|
|
oe(this).wrapAll(t ? e.call(this, n) : e)
|
|
})
|
|
}, "unwrap": function () {
|
|
return this.parent().each(function () {
|
|
oe.nodeName(this, "body") || oe(this).replaceWith(this.childNodes)
|
|
}).end()
|
|
}
|
|
}), oe.expr.filters.hidden = function (e) {
|
|
return e.offsetWidth <= 0 && e.offsetHeight <= 0 || !ne.reliableHiddenOffsets() && "none" === (e.style && e.style.display || oe.css(e, "display"))
|
|
}, oe.expr.filters.visible = function (e) {
|
|
return !oe.expr.filters.hidden(e)
|
|
};
|
|
var Ut = /%20/g, Gt = /\[\]$/, Xt = /\r?\n/g, Jt = /^(?:submit|button|image|reset|file)$/i, Vt = /^(?:input|select|textarea|keygen)/i;
|
|
oe.param = function (e, t) {
|
|
var n, r = [], o = function (e, t) {
|
|
t = oe.isFunction(t) ? t() : null == t ? "" : t, r[r.length] = encodeURIComponent(e) + "=" + encodeURIComponent(t)
|
|
};
|
|
if (void 0 === t && (t = oe.ajaxSettings && oe.ajaxSettings.traditional), oe.isArray(e) || e.jquery && !oe.isPlainObject(e))oe.each(e, function () {
|
|
o(this.name, this.value)
|
|
}); else for (n in e)I(n, e[n], t, o);
|
|
return r.join("&").replace(Ut, "+")
|
|
}, oe.fn.extend({
|
|
"serialize": function () {
|
|
return oe.param(this.serializeArray())
|
|
}, "serializeArray": function () {
|
|
return this.map(function () {
|
|
var e = oe.prop(this, "elements");
|
|
return e ? oe.makeArray(e) : this
|
|
}).filter(function () {
|
|
var e = this.type;
|
|
return this.name && !oe(this).is(":disabled") && Vt.test(this.nodeName) && !Jt.test(e) && (this.checked || !Ae.test(e))
|
|
}).map(function (e, t) {
|
|
var n = oe(this).val();
|
|
return null == n ? null : oe.isArray(n) ? oe.map(n, function (e) {
|
|
return {"name": t.name, "value": e.replace(Xt, "\r\n")}
|
|
}) : {"name": t.name, "value": n.replace(Xt, "\r\n")}
|
|
}).get()
|
|
}
|
|
}), oe.ajaxSettings.xhr = void 0 !== e.ActiveXObject ? function () {
|
|
return !this.isLocal && /^(get|post|head|put|delete|options)$/i.test(this.type) && Q() || U()
|
|
} : Q;
|
|
var Yt = 0, Kt = {}, Zt = oe.ajaxSettings.xhr();
|
|
e.attachEvent && e.attachEvent("onunload", function () {
|
|
for (var e in Kt)Kt[e](void 0, !0)
|
|
}), ne.cors = !!Zt && "withCredentials"in Zt, Zt = ne.ajax = !!Zt, Zt && oe.ajaxTransport(function (e) {
|
|
if (!e.crossDomain || ne.cors) {
|
|
var t;
|
|
return {
|
|
"send": function (n, r) {
|
|
var o, i = e.xhr(), a = ++Yt;
|
|
if (i.open(e.type, e.url, e.async, e.username, e.password), e.xhrFields)for (o in e.xhrFields)i[o] = e.xhrFields[o];
|
|
e.mimeType && i.overrideMimeType && i.overrideMimeType(e.mimeType), e.crossDomain || n["X-Requested-With"] || (n["X-Requested-With"] = "XMLHttpRequest");
|
|
for (o in n)void 0 !== n[o] && i.setRequestHeader(o, n[o] + "");
|
|
i.send(e.hasContent && e.data || null), t = function (n, o) {
|
|
var s, c, u;
|
|
if (t && (o || 4 === i.readyState))if (delete Kt[a], t = void 0, i.onreadystatechange = oe.noop, o)4 !== i.readyState && i.abort(); else {
|
|
u = {}, s = i.status, "string" == typeof i.responseText && (u.text = i.responseText);
|
|
try {
|
|
c = i.statusText
|
|
} catch (l) {
|
|
c = ""
|
|
}
|
|
s || !e.isLocal || e.crossDomain ? 1223 === s && (s = 204) : s = u.text ? 200 : 404
|
|
}
|
|
u && r(s, c, u, i.getAllResponseHeaders())
|
|
}, e.async ? 4 === i.readyState ? setTimeout(t) : i.onreadystatechange = Kt[a] = t : t()
|
|
}, "abort": function () {
|
|
t && t(void 0, !0)
|
|
}
|
|
}
|
|
}
|
|
}), oe.ajaxSetup({
|
|
"accepts": {"script": "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},
|
|
"contents": {"script": /(?:java|ecma)script/},
|
|
"converters": {
|
|
"text script": function (e) {
|
|
return oe.globalEval(e), e
|
|
}
|
|
}
|
|
}), oe.ajaxPrefilter("script", function (e) {
|
|
void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = "GET", e.global = !1)
|
|
}), oe.ajaxTransport("script", function (e) {
|
|
if (e.crossDomain) {
|
|
var t, n = he.head || oe("head")[0] || he.documentElement;
|
|
return {
|
|
"send": function (r, o) {
|
|
t = he.createElement("script"), t.async = !0, e.scriptCharset && (t.charset = e.scriptCharset), t.src = e.url, t.onload = t.onreadystatechange = function (e, n) {
|
|
(n || !t.readyState || /loaded|complete/.test(t.readyState)) && (t.onload = t.onreadystatechange = null, t.parentNode && t.parentNode.removeChild(t), t = null, n || o(200, "success"))
|
|
}, n.insertBefore(t, n.firstChild)
|
|
}, "abort": function () {
|
|
t && t.onload(void 0, !0)
|
|
}
|
|
}
|
|
}
|
|
});
|
|
var en = [], tn = /(=)\?(?=&|$)|\?\?/;
|
|
oe.ajaxSetup({
|
|
"jsonp": "callback", "jsonpCallback": function () {
|
|
var e = en.pop() || oe.expando + "_" + At++;
|
|
return this[e] = !0, e
|
|
}
|
|
}), oe.ajaxPrefilter("json jsonp", function (t, n, r) {
|
|
var o, i, a, s = t.jsonp !== !1 && (tn.test(t.url) ? "url" : "string" == typeof t.data && !(t.contentType || "").indexOf("application/x-www-form-urlencoded") && tn.test(t.data) && "data");
|
|
return s || "jsonp" === t.dataTypes[0] ? (o = t.jsonpCallback = oe.isFunction(t.jsonpCallback) ? t.jsonpCallback() : t.jsonpCallback, s ? t[s] = t[s].replace(tn, "$1" + o) : t.jsonp !== !1 && (t.url += (Dt.test(t.url) ? "&" : "?") + t.jsonp + "=" + o), t.converters["script json"] = function () {
|
|
return a || oe.error(o + " was not called"), a[0]
|
|
}, t.dataTypes[0] = "json", i = e[o], e[o] = function () {
|
|
a = arguments
|
|
}, r.always(function () {
|
|
e[o] = i, t[o] && (t.jsonpCallback = n.jsonpCallback, en.push(o)), a && oe.isFunction(i) && i(a[0]), a = i = void 0
|
|
}), "script") : void 0
|
|
}), oe.parseHTML = function (e, t, n) {
|
|
if (!e || "string" != typeof e)return null;
|
|
"boolean" == typeof t && (n = t, t = !1), t = t || he;
|
|
var r = pe.exec(e), o = !n && [];
|
|
return r ? [t.createElement(r[1])] : (r = oe.buildFragment([e], t, o), o && o.length && oe(o).remove(), oe.merge([], r.childNodes))
|
|
};
|
|
var nn = oe.fn.load;
|
|
oe.fn.load = function (e, t, n) {
|
|
if ("string" != typeof e && nn)return nn.apply(this, arguments);
|
|
var r, o, i, a = this, s = e.indexOf(" ");
|
|
return s >= 0 && (r = oe.trim(e.slice(s, e.length)), e = e.slice(0, s)), oe.isFunction(t) ? (n = t, t = void 0) : t && "object" == typeof t && (i = "POST"), a.length > 0 && oe.ajax({
|
|
"url": e,
|
|
"type": i,
|
|
"dataType": "html",
|
|
"data": t
|
|
}).done(function (e) {
|
|
o = arguments, a.html(r ? oe("<div>").append(oe.parseHTML(e)).find(r) : e)
|
|
}).complete(n && function (e, t) {
|
|
a.each(n, o || [e.responseText, t, e])
|
|
}), this
|
|
}, oe.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function (e, t) {
|
|
oe.fn[t] = function (e) {
|
|
return this.on(t, e)
|
|
}
|
|
}), oe.expr.filters.animated = function (e) {
|
|
return oe.grep(oe.timers, function (t) {
|
|
return e === t.elem
|
|
}).length
|
|
};
|
|
var rn = e.document.documentElement;
|
|
oe.offset = {
|
|
"setOffset": function (e, t, n) {
|
|
var r, o, i, a, s, c, u, l = oe.css(e, "position"), p = oe(e), f = {};
|
|
"static" === l && (e.style.position = "relative"), s = p.offset(), i = oe.css(e, "top"), c = oe.css(e, "left"), u = ("absolute" === l || "fixed" === l) && oe.inArray("auto", [i, c]) > -1, u ? (r = p.position(), a = r.top, o = r.left) : (a = parseFloat(i) || 0, o = parseFloat(c) || 0), oe.isFunction(t) && (t = t.call(e, n, s)), null != t.top && (f.top = t.top - s.top + a), null != t.left && (f.left = t.left - s.left + o), "using"in t ? t.using.call(e, f) : p.css(f)
|
|
}
|
|
}, oe.fn.extend({
|
|
"offset": function (e) {
|
|
if (arguments.length)return void 0 === e ? this : this.each(function (t) {
|
|
oe.offset.setOffset(this, e, t)
|
|
});
|
|
var t, n, r = {"top": 0, "left": 0}, o = this[0], i = o && o.ownerDocument;
|
|
if (i)return t = i.documentElement, oe.contains(t, o) ? (typeof o.getBoundingClientRect !== ke && (r = o.getBoundingClientRect()), n = G(i), {
|
|
"top": r.top + (n.pageYOffset || t.scrollTop) - (t.clientTop || 0),
|
|
"left": r.left + (n.pageXOffset || t.scrollLeft) - (t.clientLeft || 0)
|
|
}) : r
|
|
}, "position": function () {
|
|
if (this[0]) {
|
|
var e, t, n = {"top": 0, "left": 0}, r = this[0];
|
|
return "fixed" === oe.css(r, "position") ? t = r.getBoundingClientRect() : (e = this.offsetParent(), t = this.offset(), oe.nodeName(e[0], "html") || (n = e.offset()), n.top += oe.css(e[0], "borderTopWidth", !0), n.left += oe.css(e[0], "borderLeftWidth", !0)), {
|
|
"top": t.top - n.top - oe.css(r, "marginTop", !0),
|
|
"left": t.left - n.left - oe.css(r, "marginLeft", !0)
|
|
}
|
|
}
|
|
}, "offsetParent": function () {
|
|
return this.map(function () {
|
|
for (var e = this.offsetParent || rn; e && !oe.nodeName(e, "html") && "static" === oe.css(e, "position");)e = e.offsetParent;
|
|
return e || rn
|
|
})
|
|
}
|
|
}), oe.each({"scrollLeft": "pageXOffset", "scrollTop": "pageYOffset"}, function (e, t) {
|
|
var n = /Y/.test(t);
|
|
oe.fn[e] = function (r) {
|
|
return Ee(this, function (e, r, o) {
|
|
var i = G(e);
|
|
return void 0 === o ? i ? t in i ? i[t] : i.document.documentElement[r] : e[r] : void(i ? i.scrollTo(n ? oe(i).scrollLeft() : o, n ? o : oe(i).scrollTop()) : e[r] = o)
|
|
}, e, r, arguments.length, null)
|
|
}
|
|
}), oe.each(["top", "left"], function (e, t) {
|
|
oe.cssHooks[t] = j(ne.pixelPosition, function (e, n) {
|
|
return n ? (n = tt(e, t), rt.test(n) ? oe(e).position()[t] + "px" : n) : void 0
|
|
})
|
|
}), oe.each({"Height": "height", "Width": "width"}, function (e, t) {
|
|
oe.each({"padding": "inner" + e, "content": t, "": "outer" + e}, function (n, r) {
|
|
oe.fn[r] = function (r, o) {
|
|
var i = arguments.length && (n || "boolean" != typeof r), a = n || (r === !0 || o === !0 ? "margin" : "border");
|
|
return Ee(this, function (t, n, r) {
|
|
var o;
|
|
return oe.isWindow(t) ? t.document.documentElement["client" + e] : 9 === t.nodeType ? (o = t.documentElement, Math.max(t.body["scroll" + e], o["scroll" + e], t.body["offset" + e], o["offset" + e], o["client" + e])) : void 0 === r ? oe.css(t, n, a) : oe.style(t, n, r, a)
|
|
}, t, i ? r : void 0, i, null)
|
|
}
|
|
})
|
|
}), oe.fn.size = function () {
|
|
return this.length
|
|
}, oe.fn.andSelf = oe.fn.addBack, "function" == typeof define && define.amd && define("jquery", [], function () {
|
|
return oe
|
|
});
|
|
var on = e.jQuery, an = e.$;
|
|
return oe.noConflict = function (t) {
|
|
return e.$ === oe && (e.$ = an), t && e.jQuery === oe && (e.jQuery = on), oe
|
|
}, typeof t === ke && (e.jQuery = e.$ = oe), oe
|
|
}), function (e) {
|
|
"$:nomunge";
|
|
var t, n, r, o, i = 1, a = this, s = !1, c = "postMessage", u = "addEventListener", l = a[c];
|
|
e[c] = function (t, n, r) {
|
|
n && (t = "string" == typeof t ? t : e.param(t), l ? (r = r || parent, r[c](t, n.replace(/([^:]+:\/\/[^\/]+).*/, "$1"))) : r ? r.location = n.replace(/#.*$/, "") + "#" + +new Date + i++ + "&" + t : top.location = n.replace(/#.*$/, "") + "#" + +new Date + i++ + "&" + t)
|
|
}, e.receiveMessage = o = function (i, c, p) {
|
|
if (l)i && (r && o(), r = function (t) {
|
|
return "string" == typeof c && t.origin !== c || e.isFunction(c) && c(t.origin) === s ? s : void i(t)
|
|
}), a[u] ? a[i ? u : "removeEventListener"]("message", r, s) : a[i ? "attachEvent" : "detachEvent"]("onmessage", r); else if (t && clearInterval(t), t = null, i) {
|
|
p = "number" == typeof c ? c : "number" == typeof p ? p : 100;
|
|
try {
|
|
n = top.location.hash
|
|
} catch (f) {
|
|
n = document.location.hash
|
|
}
|
|
t = setInterval(function () {
|
|
var e, t = /^#?\d+&/;
|
|
try {
|
|
e = top.location.hash
|
|
} catch (r) {
|
|
e = document.location.hash
|
|
}
|
|
e !== n && t.test(e) && (n = e, i({"data": e.replace(t, "")}))
|
|
}, p)
|
|
}
|
|
}
|
|
}(jQuery), function (e) {
|
|
function t(e, t) {
|
|
for (var n = e, r = g[t ? "strict" : "loose"].exec(n), o = {
|
|
"attr": {},
|
|
"param": {},
|
|
"seg": {}
|
|
}, i = 14; i--;)o.attr[h[i]] = r[i] || "";
|
|
return o.param.query = a(o.attr.query), o.param.fragment = a(o.attr.fragment), o.seg.path = o.attr.path.replace(/^\/+|\/+$/g, "").split("/"), o.seg.fragment = o.attr.fragment.replace(/^\/+|\/+$/g, "").split("/"), o.attr.base = o.attr.host ? (o.attr.protocol ? o.attr.protocol + "://" + o.attr.host : o.attr.host) + (o.attr.port ? ":" + o.attr.port : "") : "", o
|
|
}
|
|
|
|
function n(e) {
|
|
var t = e.tagName;
|
|
return "undefined" != typeof t ? d[t.toLowerCase()] : t
|
|
}
|
|
|
|
function r(e, t) {
|
|
if (0 === e[t].length)return e[t] = {};
|
|
var n = {};
|
|
for (var r in e[t])n[r] = e[t][r];
|
|
return e[t] = n, n
|
|
}
|
|
|
|
function o(e, t, n, i) {
|
|
var a = e.shift();
|
|
if (a) {
|
|
var s = t[n] = t[n] || [];
|
|
"]" == a ? l(s) ? "" !== i && s.push(i) : "object" == typeof s ? s[p(s).length] = i : s = t[n] = [t[n], i] : ~a.indexOf("]") ? (a = a.substr(0, a.length - 1), !y.test(a) && l(s) && (s = r(t, n)), o(e, s, a, i)) : (!y.test(a) && l(s) && (s = r(t, n)), o(e, s, a, i))
|
|
} else l(t[n]) ? t[n].push(i) : "object" == typeof t[n] ? t[n] = i : "undefined" == typeof t[n] ? t[n] = i : t[n] = [t[n], i]
|
|
}
|
|
|
|
function i(e, t, n) {
|
|
if (~t.indexOf("]")) {
|
|
var r = t.split("[");
|
|
o(r, e, "base", n)
|
|
} else {
|
|
if (!y.test(t) && l(e.base)) {
|
|
var i = {};
|
|
for (var a in e.base)i[a] = e.base[a];
|
|
e.base = i
|
|
}
|
|
"" !== t && s(e.base, t, n)
|
|
}
|
|
return e
|
|
}
|
|
|
|
function a(e) {
|
|
return u(String(e).split(/&|;/), function (e, t) {
|
|
try {
|
|
t = decodeURIComponent(t.replace(/\+/g, " "))
|
|
} catch (n) {
|
|
}
|
|
var r = t.indexOf("="), o = c(t), a = t.substr(0, o || r), s = t.substr(o || r, t.length);
|
|
return s = s.substr(s.indexOf("=") + 1, s.length), "" === a && (a = t, s = ""), i(e, a, s)
|
|
}, {"base": {}}).base
|
|
}
|
|
|
|
function s(e, t, n) {
|
|
var r = e[t];
|
|
"undefined" == typeof r ? e[t] = n : l(r) ? r.push(n) : e[t] = [r, n]
|
|
}
|
|
|
|
function c(e) {
|
|
for (var t, n, r = e.length, o = 0; r > o; ++o)if (n = e[o], "]" == n && (t = !1), "[" == n && (t = !0), "=" == n && !t)return o
|
|
}
|
|
|
|
function u(e, t) {
|
|
for (var n = 0, r = e.length >> 0, o = arguments[2]; r > n;)n in e && (o = t.call(void 0, o, e[n], n, e)), ++n;
|
|
return o
|
|
}
|
|
|
|
function l(e) {
|
|
return "[object Array]" === Object.prototype.toString.call(e)
|
|
}
|
|
|
|
function p(e) {
|
|
var t = [];
|
|
for (var n in e)e.hasOwnProperty(n) && t.push(n);
|
|
return t
|
|
}
|
|
|
|
function f(e, n) {
|
|
return 1 === arguments.length && e === !0 && (n = !0, e = void 0), n = n || !1, e = e || window.location.toString(), {
|
|
"data": t(e, n),
|
|
"attr": function (e) {
|
|
return e = m[e] || e, "undefined" != typeof e ? this.data.attr[e] : this.data.attr
|
|
},
|
|
"param": function (e) {
|
|
return "undefined" != typeof e ? this.data.param.query[e] : this.data.param.query
|
|
},
|
|
"fparam": function (e) {
|
|
return "undefined" != typeof e ? this.data.param.fragment[e] : this.data.param.fragment
|
|
},
|
|
"segment": function (e) {
|
|
return "undefined" == typeof e ? this.data.seg.path : (e = 0 > e ? this.data.seg.path.length + e : e - 1, this.data.seg.path[e])
|
|
},
|
|
"fsegment": function (e) {
|
|
return "undefined" == typeof e ? this.data.seg.fragment : (e = 0 > e ? this.data.seg.fragment.length + e : e - 1, this.data.seg.fragment[e])
|
|
}
|
|
}
|
|
}
|
|
|
|
var d = {
|
|
"a": "href",
|
|
"img": "src",
|
|
"form": "action",
|
|
"base": "href",
|
|
"script": "src",
|
|
"iframe": "src",
|
|
"link": "href"
|
|
}, h = ["source", "protocol", "authority", "userInfo", "user", "password", "host", "port", "relative", "path", "directory", "file", "query", "fragment"], m = {"anchor": "fragment"}, g = {
|
|
"strict": /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
|
|
"loose": /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
|
|
}, y = /^[0-9]+$/;
|
|
return f.jQuery = function (e) {
|
|
null != e && (e.fn.url = function (t) {
|
|
var r = "";
|
|
return this.length && (r = e(this).attr(n(this[0])) || ""), f(r, t)
|
|
}, e.url = f)
|
|
}, f.jQuery(window.jQuery), f
|
|
}(jQuery), Array.prototype.indexOf || (Array.prototype.indexOf = function (e, t) {
|
|
for (var n = t || 0, r = this.length; r > n; n++)if (this[n] === e)return n;
|
|
return -1
|
|
}), function (e) {
|
|
e.extend({
|
|
"bez": function (t) {
|
|
var n = "bez_" + e.makeArray(arguments).join("_").replace(/\./g, "p");
|
|
if ("function" != typeof e.easing[n]) {
|
|
var r = function (e, t) {
|
|
var n = [null, null], r = [null, null], o = [null, null], i = function (i, a) {
|
|
return o[a] = 3 * e[a], r[a] = 3 * (t[a] - e[a]) - o[a], n[a] = 1 - o[a] - r[a], i * (o[a] + i * (r[a] + i * n[a]))
|
|
}, a = function (e) {
|
|
return o[0] + e * (2 * r[0] + 3 * n[0] * e)
|
|
}, s = function (e) {
|
|
for (var t, n = e, r = 0; ++r < 14 && (t = i(n, 0) - e, !(Math.abs(t) < .001));)n -= t / a(n);
|
|
return n
|
|
};
|
|
return function (e) {
|
|
return i(s(e), 1)
|
|
}
|
|
};
|
|
e.easing[n] = function (e, n, o, i, a) {
|
|
return i * r([t[0], t[1]], [t[2], t[3]])(n / a) + o
|
|
}
|
|
}
|
|
return n
|
|
}
|
|
})
|
|
}(jQuery), function (e) {
|
|
e.deparam = function (t, n) {
|
|
var r = {}, o = {"true": !0, "false": !1, "null": null};
|
|
return e.each(t.replace(/\+/g, " ").split("&"), function (t, i) {
|
|
var a, s = i.split("="), c = decodeURIComponent(s[0]), u = r, l = 0, p = c.split("]["), f = p.length - 1;
|
|
if (/\[/.test(p[0]) && /\]$/.test(p[f]) ? (p[f] = p[f].replace(/\]$/, ""), p = p.shift().split("[").concat(p), f = p.length - 1) : f = 0, 2 === s.length)if (a = decodeURIComponent(s[1]), n && (a = a && !isNaN(a) ? +a : "undefined" === a ? void 0 : void 0 !== o[a] ? o[a] : a), f)for (; f >= l; l++)c = "" === p[l] ? u.length : p[l], u = u[c] = f > l ? u[c] || (p[l + 1] && isNaN(p[l + 1]) ? {} : []) : a; else e.isArray(r[c]) ? r[c].push(a) : void 0 !== r[c] ? r[c] = [r[c], a] : r[c] = a; else c && (r[c] = n ? void 0 : "")
|
|
}), r
|
|
}
|
|
}(jQuery), function (e) {
|
|
function t(e) {
|
|
return e
|
|
}
|
|
|
|
function n(e) {
|
|
try {
|
|
return decodeURIComponent(e.replace(o, " "))
|
|
} catch (t) {
|
|
}
|
|
}
|
|
|
|
function r(e) {
|
|
0 === e.indexOf('"') && (e = e.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, "\\"));
|
|
try {
|
|
return i.json ? JSON.parse(e) : e
|
|
} catch (t) {
|
|
}
|
|
}
|
|
|
|
var o = /\+/g, i = e.cookie = function (o, a, s) {
|
|
if (void 0 !== a) {
|
|
if (s = e.extend({}, i.defaults, s), "number" == typeof s.expires) {
|
|
var c = s.expires, u = s.expires = new Date;
|
|
u.setDate(u.getDate() + c)
|
|
}
|
|
return a = i.json ? JSON.stringify(a) : String(a), document.cookie = [i.raw ? o : encodeURIComponent(o), "=", i.raw ? a : encodeURIComponent(a), s.expires ? "; expires=" + s.expires.toUTCString() : "", s.path ? "; path=" + s.path : "", s.domain ? "; domain=" + s.domain : "", s.secure ? "; secure" : ""].join("")
|
|
}
|
|
for (var l = i.raw ? t : n, p = document.cookie.split("; "), f = o ? void 0 : {}, d = 0, h = p.length; h > d; d++) {
|
|
var m = p[d].split("="), g = l(m.shift()), y = l(m.join("="));
|
|
if (o && o === g) {
|
|
f = r(y);
|
|
break
|
|
}
|
|
o || (f[g] = r(y))
|
|
}
|
|
return f
|
|
};
|
|
i.defaults = {}, e.removeCookie = function (t, n) {
|
|
return void 0 !== e.cookie(t) ? (e.cookie(t, "", e.extend({}, n, {"expires": -1})), !0) : !1
|
|
}
|
|
}(jQuery), function (e) {
|
|
var t = function () {
|
|
return !1 === e.support.boxModel && e.support.objectAll && e.support.leadingWhitespace
|
|
}();
|
|
e.jGrowl = function (t, n) {
|
|
0 == e("#jGrowl").size() && e('<div id="jGrowl"></div>').addClass(n && n.position ? n.position : e.jGrowl.defaults.position).appendTo("body"), e("#jGrowl").jGrowl(t, n)
|
|
}, e.fn.jGrowl = function (t, n) {
|
|
if (e.isFunction(this.each)) {
|
|
var r = arguments;
|
|
return this.each(function () {
|
|
void 0 == e(this).data("jGrowl.instance") && (e(this).data("jGrowl.instance", e.extend(new e.fn.jGrowl, {
|
|
"notifications": [],
|
|
"element": null,
|
|
"interval": null
|
|
})), e(this).data("jGrowl.instance").startup(this)), e.isFunction(e(this).data("jGrowl.instance")[t]) ? e(this).data("jGrowl.instance")[t].apply(e(this).data("jGrowl.instance"), e.makeArray(r).slice(1)) : e(this).data("jGrowl.instance").create(t, n)
|
|
})
|
|
}
|
|
}, e.extend(e.fn.jGrowl.prototype, {
|
|
"defaults": {
|
|
"pool": 0,
|
|
"header": "",
|
|
"group": "",
|
|
"sticky": !1,
|
|
"position": "top-right",
|
|
"glue": "after",
|
|
"theme": "default",
|
|
"themeState": "highlight",
|
|
"corners": "10px",
|
|
"check": 250,
|
|
"life": 3e3,
|
|
"closeDuration": "normal",
|
|
"openDuration": "normal",
|
|
"easing": "swing",
|
|
"closer": !0,
|
|
"closeTemplate": "×",
|
|
"closerTemplate": "<div>[ close all ]</div>",
|
|
"log": function () {
|
|
},
|
|
"beforeOpen": function () {
|
|
},
|
|
"afterOpen": function () {
|
|
},
|
|
"open": function () {
|
|
},
|
|
"beforeClose": function () {
|
|
},
|
|
"close": function () {
|
|
},
|
|
"animateOpen": {"opacity": "show"},
|
|
"animateClose": {"opacity": "hide"}
|
|
}, "notifications": [], "element": null, "interval": null, "create": function (t, n) {
|
|
var n = e.extend({}, this.defaults, n);
|
|
"undefined" != typeof n.speed && (n.openDuration = n.speed, n.closeDuration = n.speed), this.notifications.push({
|
|
"message": t,
|
|
"options": n
|
|
}), n.log.apply(this.element, [this.element, t, n])
|
|
}, "render": function (t) {
|
|
var n = this, r = t.message, o = t.options;
|
|
o.themeState = "" == o.themeState ? "" : "ui-state-" + o.themeState;
|
|
var t = e("<div/>").addClass("jGrowl-notification " + o.themeState + " ui-corner-all" + (void 0 != o.group && "" != o.group ? " " + o.group : "")).append(e("<div/>").addClass("jGrowl-close").html(o.closeTemplate)).append(e("<div/>").addClass("jGrowl-header").html(o.header)).append(e("<div/>").addClass("jGrowl-message").html(r)).data("jGrowl", o).addClass(o.theme).children("div.jGrowl-close").bind("click.jGrowl", function () {
|
|
e(this).parent().trigger("jGrowl.beforeClose")
|
|
}).parent();
|
|
e(t).bind("mouseover.jGrowl", function () {
|
|
e("div.jGrowl-notification", n.element).data("jGrowl.pause", !0)
|
|
}).bind("mouseout.jGrowl", function () {
|
|
e("div.jGrowl-notification", n.element).data("jGrowl.pause", !1)
|
|
}).bind("jGrowl.beforeOpen", function () {
|
|
o.beforeOpen.apply(t, [t, r, o, n.element]) !== !1 && e(this).trigger("jGrowl.open")
|
|
}).bind("jGrowl.open", function () {
|
|
o.open.apply(t, [t, r, o, n.element]) !== !1 && ("after" == o.glue ? e("div.jGrowl-notification:last", n.element).after(t) : e("div.jGrowl-notification:first", n.element).before(t), e(this).animate(o.animateOpen, o.openDuration, o.easing, function () {
|
|
e.support.opacity === !1 && this.style.removeAttribute("filter"), null !== e(this).data("jGrowl") && (e(this).data("jGrowl").created = new Date), e(this).trigger("jGrowl.afterOpen")
|
|
}))
|
|
}).bind("jGrowl.afterOpen", function () {
|
|
o.afterOpen.apply(t, [t, r, o, n.element])
|
|
}).bind("jGrowl.beforeClose", function () {
|
|
o.beforeClose.apply(t, [t, r, o, n.element]) !== !1 && e(this).trigger("jGrowl.close")
|
|
}).bind("jGrowl.close", function () {
|
|
e(this).data("jGrowl.pause", !0), e(this).animate(o.animateClose, o.closeDuration, o.easing, function () {
|
|
e.isFunction(o.close) ? o.close.apply(t, [t, r, o, n.element]) !== !1 && e(this).remove() : e(this).remove()
|
|
})
|
|
}).trigger("jGrowl.beforeOpen"), "" != o.corners && void 0 != e.fn.corner && e(t).corner(o.corners), e("div.jGrowl-notification:parent", n.element).size() > 1 && 0 == e("div.jGrowl-closer", n.element).size() && this.defaults.closer !== !1 && e(this.defaults.closerTemplate).addClass("jGrowl-closer " + this.defaults.themeState + " ui-corner-all").addClass(this.defaults.theme).appendTo(n.element).animate(this.defaults.animateOpen, this.defaults.speed, this.defaults.easing).bind("click.jGrowl", function () {
|
|
e(this).siblings().trigger("jGrowl.beforeClose"), e.isFunction(n.defaults.closer) && n.defaults.closer.apply(e(this).parent()[0], [e(this).parent()[0]])
|
|
})
|
|
}, "update": function () {
|
|
e(this.element).find("div.jGrowl-notification:parent").each(function () {
|
|
void 0 != e(this).data("jGrowl") && void 0 !== e(this).data("jGrowl").created && e(this).data("jGrowl").created.getTime() + parseInt(e(this).data("jGrowl").life) < (new Date).getTime() && e(this).data("jGrowl").sticky !== !0 && (void 0 == e(this).data("jGrowl.pause") || e(this).data("jGrowl.pause") !== !0) && e(this).trigger("jGrowl.beforeClose")
|
|
}), this.notifications.length > 0 && (0 == this.defaults.pool || e(this.element).find("div.jGrowl-notification:parent").size() < this.defaults.pool) && this.render(this.notifications.shift()), e(this.element).find("div.jGrowl-notification:parent").size() < 2 && e(this.element).find("div.jGrowl-closer").animate(this.defaults.animateClose, this.defaults.speed, this.defaults.easing, function () {
|
|
e(this).remove()
|
|
})
|
|
}, "startup": function (n) {
|
|
this.element = e(n).addClass("jGrowl").append('<div class="jGrowl-notification"></div>'), this.interval = setInterval(function () {
|
|
e(n).data("jGrowl.instance").update()
|
|
}, parseInt(this.defaults.check)), t && e(this.element).addClass("ie6")
|
|
}, "shutdown": function () {
|
|
e(this.element).removeClass("jGrowl").find("div.jGrowl-notification").trigger("jGrowl.close").parent().empty(), clearInterval(this.interval)
|
|
}, "close": function () {
|
|
e(this.element).find("div.jGrowl-notification").each(function () {
|
|
e(this).trigger("jGrowl.beforeClose")
|
|
})
|
|
}
|
|
}), e.jGrowl.defaults = e.fn.jGrowl.prototype.defaults
|
|
}(jQuery), function () {
|
|
function e(t, r) {
|
|
function i(e) {
|
|
if (i[e] !== g)return i[e];
|
|
var t;
|
|
if ("bug-string-char-index" == e)t = "a" != "a"[0]; else if ("json" == e)t = i("json-stringify") && i("json-parse"); else {
|
|
var n, o = '{"a":[1,true,false,null,"\\u0000\\b\\n\\f\\r\\t"]}';
|
|
if ("json-stringify" == e) {
|
|
var c = r.stringify, l = "function" == typeof c && _;
|
|
if (l) {
|
|
(n = function () {
|
|
return 1
|
|
}).toJSON = n;
|
|
try {
|
|
l = "0" === c(0) && "0" === c(new a) && '""' == c(new s) && c(v) === g && c(g) === g && c() === g && "1" === c(n) && "[1]" == c([n]) && "[null]" == c([g]) && "null" == c(null) && "[null,null,null]" == c([g, v, null]) && c({"a": [n, !0, !1, null, "\x00\b\n\f\r "]}) == o && "1" === c(null, n) && "[\n 1,\n 2\n]" == c([1, 2], null, 1) && '"-271821-04-20T00:00:00.000Z"' == c(new u(-864e13)) && '"+275760-09-13T00:00:00.000Z"' == c(new u(864e13)) && '"-000001-01-01T00:00:00.000Z"' == c(new u(-621987552e5)) && '"1969-12-31T23:59:59.999Z"' == c(new u(-1))
|
|
} catch (p) {
|
|
l = !1
|
|
}
|
|
}
|
|
t = l
|
|
}
|
|
if ("json-parse" == e) {
|
|
var f = r.parse;
|
|
if ("function" == typeof f)try {
|
|
if (0 === f("0") && !f(!1)) {
|
|
n = f(o);
|
|
var d = 5 == n.a.length && 1 === n.a[0];
|
|
if (d) {
|
|
try {
|
|
d = !f('" "')
|
|
} catch (p) {
|
|
}
|
|
if (d)try {
|
|
d = 1 !== f("01")
|
|
} catch (p) {
|
|
}
|
|
if (d)try {
|
|
d = 1 !== f("1.")
|
|
} catch (p) {
|
|
}
|
|
}
|
|
}
|
|
} catch (p) {
|
|
d = !1
|
|
}
|
|
t = d
|
|
}
|
|
}
|
|
return i[e] = !!t
|
|
}
|
|
|
|
t || (t = o.Object()), r || (r = o.Object());
|
|
var a = t.Number || o.Number, s = t.String || o.String, c = t.Object || o.Object, u = t.Date || o.Date, l = t.SyntaxError || o.SyntaxError, p = t.TypeError || o.TypeError, f = t.Math || o.Math, d = t.JSON || o.JSON;
|
|
"object" == typeof d && d && (r.stringify = d.stringify, r.parse = d.parse);
|
|
var h, m, g, y = c.prototype, v = y.toString, _ = new u(-0xc782b5b800cec);
|
|
try {
|
|
_ = -109252 == _.getUTCFullYear() && 0 === _.getUTCMonth() && 1 === _.getUTCDate() && 10 == _.getUTCHours() && 37 == _.getUTCMinutes() && 6 == _.getUTCSeconds() && 708 == _.getUTCMilliseconds()
|
|
} catch (w) {
|
|
}
|
|
if (!i("json")) {
|
|
var b = "[object Function]", x = "[object Date]", k = "[object Number]", C = "[object String]", T = "[object Array]", j = "[object Boolean]", N = i("bug-string-char-index");
|
|
if (!_)var S = f.floor, E = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334], A = function (e, t) {
|
|
return E[t] + 365 * (e - 1970) + S((e - 1969 + (t = +(t > 1))) / 4) - S((e - 1901 + t) / 100) + S((e - 1601 + t) / 400)
|
|
};
|
|
if ((h = y.hasOwnProperty) || (h = function (e) {
|
|
var t, n = {};
|
|
return (n.__proto__ = null, n.__proto__ = {"toString": 1}, n).toString != v ? h = function (e) {
|
|
var t = this.__proto__, n = e in(this.__proto__ = null, this);
|
|
return this.__proto__ = t, n
|
|
} : (t = n.constructor, h = function (e) {
|
|
var n = (this.constructor || t).prototype;
|
|
return e in this && !(e in n && this[e] === n[e])
|
|
}), n = null, h.call(this, e)
|
|
}), m = function (e, t) {
|
|
var r, o, i, a = 0;
|
|
(r = function () {
|
|
this.valueOf = 0
|
|
}).prototype.valueOf = 0, o = new r;
|
|
for (i in o)h.call(o, i) && a++;
|
|
return r = o = null, a ? m = 2 == a ? function (e, t) {
|
|
var n, r = {}, o = v.call(e) == b;
|
|
for (n in e)o && "prototype" == n || h.call(r, n) || !(r[n] = 1) || !h.call(e, n) || t(n)
|
|
} : function (e, t) {
|
|
var n, r, o = v.call(e) == b;
|
|
for (n in e)o && "prototype" == n || !h.call(e, n) || (r = "constructor" === n) || t(n);
|
|
(r || h.call(e, n = "constructor")) && t(n)
|
|
} : (o = ["valueOf", "toString", "toLocaleString", "propertyIsEnumerable", "isPrototypeOf", "hasOwnProperty", "constructor"], m = function (e, t) {
|
|
var r, i, a = v.call(e) == b, s = !a && "function" != typeof e.constructor && n[typeof e.hasOwnProperty] && e.hasOwnProperty || h;
|
|
for (r in e)a && "prototype" == r || !s.call(e, r) || t(r);
|
|
for (i = o.length; r = o[--i]; s.call(e, r) && t(r));
|
|
}), m(e, t)
|
|
}, !i("json-stringify")) {
|
|
var D = {
|
|
"92": "\\\\",
|
|
"34": '\\"',
|
|
"8": "\\b",
|
|
"12": "\\f",
|
|
"10": "\\n",
|
|
"13": "\\r",
|
|
"9": "\\t"
|
|
}, O = "000000", P = function (e, t) {
|
|
return (O + (t || 0)).slice(-e)
|
|
}, L = "\\u00", W = function (e) {
|
|
for (var t = '"', n = 0, r = e.length, o = !N || r > 10, i = o && (N ? e.split("") : e); r > n; n++) {
|
|
var a = e.charCodeAt(n);
|
|
switch (a) {
|
|
case 8:
|
|
case 9:
|
|
case 10:
|
|
case 12:
|
|
case 13:
|
|
case 34:
|
|
case 92:
|
|
t += D[a];
|
|
break;
|
|
default:
|
|
if (32 > a) {
|
|
t += L + P(2, a.toString(16));
|
|
break
|
|
}
|
|
t += o ? i[n] : e.charAt(n)
|
|
}
|
|
}
|
|
return t + '"'
|
|
}, H = function (e, t, n, r, o, i, a) {
|
|
var s, c, u, l, f, d, y, _, w, b, N, E, D, O, L, M;
|
|
try {
|
|
s = t[e]
|
|
} catch (R) {
|
|
}
|
|
if ("object" == typeof s && s)if (c = v.call(s), c != x || h.call(s, "toJSON"))"function" == typeof s.toJSON && (c != k && c != C && c != T || h.call(s, "toJSON")) && (s = s.toJSON(e)); else if (s > -1 / 0 && 1 / 0 > s) {
|
|
if (A) {
|
|
for (f = S(s / 864e5), u = S(f / 365.2425) + 1970 - 1; A(u + 1, 0) <= f; u++);
|
|
for (l = S((f - A(u, 0)) / 30.42); A(u, l + 1) <= f; l++);
|
|
f = 1 + f - A(u, l), d = (s % 864e5 + 864e5) % 864e5, y = S(d / 36e5) % 24, _ = S(d / 6e4) % 60, w = S(d / 1e3) % 60, b = d % 1e3
|
|
} else u = s.getUTCFullYear(), l = s.getUTCMonth(), f = s.getUTCDate(), y = s.getUTCHours(), _ = s.getUTCMinutes(), w = s.getUTCSeconds(), b = s.getUTCMilliseconds();
|
|
s = (0 >= u || u >= 1e4 ? (0 > u ? "-" : "+") + P(6, 0 > u ? -u : u) : P(4, u)) + "-" + P(2, l + 1) + "-" + P(2, f) + "T" + P(2, y) + ":" + P(2, _) + ":" + P(2, w) + "." + P(3, b) + "Z"
|
|
} else s = null;
|
|
if (n && (s = n.call(t, e, s)), null === s)return "null";
|
|
if (c = v.call(s), c == j)return "" + s;
|
|
if (c == k)return s > -1 / 0 && 1 / 0 > s ? "" + s : "null";
|
|
if (c == C)return W("" + s);
|
|
if ("object" == typeof s) {
|
|
for (O = a.length; O--;)if (a[O] === s)throw p();
|
|
if (a.push(s), N = [], L = i, i += o, c == T) {
|
|
for (D = 0, O = s.length; O > D; D++)E = H(D, s, n, r, o, i, a), N.push(E === g ? "null" : E);
|
|
M = N.length ? o ? "[\n" + i + N.join(",\n" + i) + "\n" + L + "]" : "[" + N.join(",") + "]" : "[]"
|
|
} else m(r || s, function (e) {
|
|
var t = H(e, s, n, r, o, i, a);
|
|
t !== g && N.push(W(e) + ":" + (o ? " " : "") + t)
|
|
}), M = N.length ? o ? "{\n" + i + N.join(",\n" + i) + "\n" + L + "}" : "{" + N.join(",") + "}" : "{}";
|
|
return a.pop(), M
|
|
}
|
|
};
|
|
r.stringify = function (e, t, r) {
|
|
var o, i, a, s;
|
|
if (n[typeof t] && t)if ((s = v.call(t)) == b)i = t; else if (s == T) {
|
|
a = {};
|
|
for (var c, u = 0, l = t.length; l > u; c = t[u++], s = v.call(c), (s == C || s == k) && (a[c] = 1));
|
|
}
|
|
if (r)if ((s = v.call(r)) == k) {
|
|
if ((r -= r % 1) > 0)for (o = "", r > 10 && (r = 10); o.length < r; o += " ");
|
|
} else s == C && (o = r.length <= 10 ? r : r.slice(0, 10));
|
|
return H("", (c = {}, c[""] = e, c), i, a, o, "", [])
|
|
}
|
|
}
|
|
if (!i("json-parse")) {
|
|
var M, R, q = s.fromCharCode, B = {
|
|
"92": "\\",
|
|
"34": '"',
|
|
"47": "/",
|
|
"98": "\b",
|
|
"116": " ",
|
|
"110": "\n",
|
|
"102": "\f",
|
|
"114": "\r"
|
|
}, F = function () {
|
|
throw M = R = null, l()
|
|
}, z = function () {
|
|
for (var e, t, n, r, o, i = R, a = i.length; a > M;)switch (o = i.charCodeAt(M)) {
|
|
case 9:
|
|
case 10:
|
|
case 13:
|
|
case 32:
|
|
M++;
|
|
break;
|
|
case 123:
|
|
case 125:
|
|
case 91:
|
|
case 93:
|
|
case 58:
|
|
case 44:
|
|
return e = N ? i.charAt(M) : i[M], M++, e;
|
|
case 34:
|
|
for (e = "@", M++; a > M;)if (o = i.charCodeAt(M), 32 > o)F(); else if (92 == o)switch (o = i.charCodeAt(++M)) {
|
|
case 92:
|
|
case 34:
|
|
case 47:
|
|
case 98:
|
|
case 116:
|
|
case 110:
|
|
case 102:
|
|
case 114:
|
|
e += B[o], M++;
|
|
break;
|
|
case 117:
|
|
for (t = ++M, n = M + 4; n > M; M++)o = i.charCodeAt(M), o >= 48 && 57 >= o || o >= 97 && 102 >= o || o >= 65 && 70 >= o || F();
|
|
e += q("0x" + i.slice(t, M));
|
|
break;
|
|
default:
|
|
F()
|
|
} else {
|
|
if (34 == o)break;
|
|
for (o = i.charCodeAt(M), t = M; o >= 32 && 92 != o && 34 != o;)o = i.charCodeAt(++M);
|
|
e += i.slice(t, M)
|
|
}
|
|
if (34 == i.charCodeAt(M))return M++, e;
|
|
F();
|
|
default:
|
|
if (t = M, 45 == o && (r = !0, o = i.charCodeAt(++M)), o >= 48 && 57 >= o) {
|
|
for (48 == o && (o = i.charCodeAt(M + 1), o >= 48 && 57 >= o) && F(), r = !1; a > M && (o = i.charCodeAt(M), o >= 48 && 57 >= o); M++);
|
|
if (46 == i.charCodeAt(M)) {
|
|
for (n = ++M; a > n && (o = i.charCodeAt(n), o >= 48 && 57 >= o); n++);
|
|
n == M && F(), M = n
|
|
}
|
|
if (o = i.charCodeAt(M), 101 == o || 69 == o) {
|
|
for (o = i.charCodeAt(++M), (43 == o || 45 == o) && M++, n = M; a > n && (o = i.charCodeAt(n), o >= 48 && 57 >= o); n++);
|
|
n == M && F(), M = n
|
|
}
|
|
return +i.slice(t, M)
|
|
}
|
|
if (r && F(), "true" == i.slice(M, M + 4))return M += 4, !0;
|
|
if ("false" == i.slice(M, M + 5))return M += 5, !1;
|
|
if ("null" == i.slice(M, M + 4))return M += 4, null;
|
|
F()
|
|
}
|
|
return "$"
|
|
}, $ = function (e) {
|
|
var t, n;
|
|
if ("$" == e && F(), "string" == typeof e) {
|
|
if ("@" == (N ? e.charAt(0) : e[0]))return e.slice(1);
|
|
if ("[" == e) {
|
|
for (t = []; e = z(), "]" != e; n || (n = !0))n && ("," == e ? (e = z(), "]" == e && F()) : F()), "," == e && F(), t.push($(e));
|
|
return t
|
|
}
|
|
if ("{" == e) {
|
|
for (t = {}; e = z(), "}" != e; n || (n = !0))n && ("," == e ? (e = z(), "}" == e && F()) : F()), ("," == e || "string" != typeof e || "@" != (N ? e.charAt(0) : e[0]) || ":" != z()) && F(), t[e.slice(1)] = $(z());
|
|
return t
|
|
}
|
|
F()
|
|
}
|
|
return e
|
|
}, I = function (e, t, n) {
|
|
var r = Q(e, t, n);
|
|
r === g ? delete e[t] : e[t] = r
|
|
}, Q = function (e, t, n) {
|
|
var r, o = e[t];
|
|
if ("object" == typeof o && o)if (v.call(o) == T)for (r = o.length; r--;)I(o, r, n); else m(o, function (e) {
|
|
I(o, e, n)
|
|
});
|
|
return n.call(e, t, o)
|
|
};
|
|
r.parse = function (e, t) {
|
|
var n, r;
|
|
return M = 0, R = "" + e, n = $(z()), "$" != z() && F(), M = R = null, t && v.call(t) == b ? Q((r = {}, r[""] = n, r), "", t) : n
|
|
}
|
|
}
|
|
}
|
|
return r.runInContext = e, r
|
|
}
|
|
|
|
var t = "function" == typeof define && define.amd, n = {
|
|
"function": !0,
|
|
"object": !0
|
|
}, r = n[typeof exports] && exports && !exports.nodeType && exports, o = n[typeof window] && window || this, i = r && n[typeof module] && module && !module.nodeType && "object" == typeof global && global;
|
|
if (!i || i.global !== i && i.window !== i && i.self !== i || (o = i), r && !t)e(o, r); else {
|
|
var a = o.JSON, s = o.JSON3, c = !1, u = e(o, o.JSON3 = {
|
|
"noConflict": function () {
|
|
return c || (c = !0, o.JSON = a, o.JSON3 = s, a = s = null), u
|
|
}
|
|
});
|
|
o.JSON = {"parse": u.parse, "stringify": u.stringify}
|
|
}
|
|
t && define(function () {
|
|
return u
|
|
})
|
|
}.call(this), window.crema = window.crema || {}, window.crema.Base64 = {
|
|
"_keyStr": "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
|
|
"encode": function (e) {
|
|
var t, n, r, o, i, a, s, c = "", u = 0;
|
|
for (e = crema.Base64._utf8_encode(e); u < e.length;)t = e.charCodeAt(u++), n = e.charCodeAt(u++), r = e.charCodeAt(u++), o = t >> 2, i = (3 & t) << 4 | n >> 4, a = (15 & n) << 2 | r >> 6, s = 63 & r, isNaN(n) ? a = s = 64 : isNaN(r) && (s = 64), c = c + this._keyStr.charAt(o) + this._keyStr.charAt(i) + this._keyStr.charAt(a) + this._keyStr.charAt(s);
|
|
return c
|
|
},
|
|
"decode": function (e) {
|
|
var t, n, r, o, i, a, s, c = "", u = 0;
|
|
for (e = e.replace(/[^A-Za-z0-9\+\/\=]/g, ""); u < e.length;)o = this._keyStr.indexOf(e.charAt(u++)), i = this._keyStr.indexOf(e.charAt(u++)), a = this._keyStr.indexOf(e.charAt(u++)), s = this._keyStr.indexOf(e.charAt(u++)), t = o << 2 | i >> 4, n = (15 & i) << 4 | a >> 2, r = (3 & a) << 6 | s, c += String.fromCharCode(t), 64 != a && (c += String.fromCharCode(n)), 64 != s && (c += String.fromCharCode(r));
|
|
return c = crema.Base64._utf8_decode(c)
|
|
},
|
|
"_utf8_encode": function (e) {
|
|
e = e.replace(/\r\n/g, "\n");
|
|
for (var t = "", n = 0; n < e.length; n++) {
|
|
var r = e.charCodeAt(n);
|
|
128 > r ? t += String.fromCharCode(r) : r > 127 && 2048 > r ? (t += String.fromCharCode(r >> 6 | 192), t += String.fromCharCode(63 & r | 128)) : (t += String.fromCharCode(r >> 12 | 224), t += String.fromCharCode(r >> 6 & 63 | 128), t += String.fromCharCode(63 & r | 128))
|
|
}
|
|
return t
|
|
},
|
|
"_utf8_decode": function (e) {
|
|
for (var t = "", n = 0, r = c1 = c2 = 0; n < e.length;)r = e.charCodeAt(n), 128 > r ? (t += String.fromCharCode(r), n++) : r > 191 && 224 > r ? (c2 = e.charCodeAt(n + 1), t += String.fromCharCode((31 & r) << 6 | 63 & c2), n += 2) : (c2 = e.charCodeAt(n + 1), c3 = e.charCodeAt(n + 2), t += String.fromCharCode((15 & r) << 12 | (63 & c2) << 6 | 63 & c3), n += 3);
|
|
return t
|
|
}
|
|
}, function () {
|
|
(function (e) {
|
|
return this.WrittenSource = {
|
|
"unknown": 0,
|
|
"brand_mobile": 10,
|
|
"brand_mobile_popup": 11,
|
|
"brand_mobile_product_detail": 12,
|
|
"brand_mobile_product_reviews": 13,
|
|
"brand_mobile_reviews": 14,
|
|
"brand_mobile_my_orders": 15,
|
|
"brand_mobile_pending_review": 16,
|
|
"brand_mobile_review_detail": 17,
|
|
"brand_pc": 20,
|
|
"brand_pc_popup": 22,
|
|
"brand_pc_product": 24,
|
|
"brand_pc_my_orders": 26,
|
|
"sms": 30,
|
|
"imported": 40,
|
|
"manager": 50
|
|
}
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.AdTracker = function () {
|
|
function e() {
|
|
}
|
|
|
|
return e.prototype.confirm = function () {
|
|
var e, t;
|
|
return (e = crema.url.get_crema_param("ad_click_id")) ? (t = new crema.UrlBuilder(crema.info.ad_base_url + "/ad_clicks/" + e + "/confirm"), t.add_param("username", crema.info.username), t.add_param("device_token", crema.device.get_token()), crema.util.jsonp(t.build(), {"absolute_url": !0})) : void 0
|
|
}, e
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.BrandCrypt = function () {
|
|
function e() {
|
|
}
|
|
|
|
return e.prototype.encrypt = function (e) {
|
|
return this.hex_encode(crema.info.mid + "/" + e)
|
|
}, e.prototype.hex_encode = function (e) {
|
|
var t, n, r, o, i;
|
|
for (i = "", n = r = 0, o = e.length; o > r; n = r += 1)t = e.charCodeAt(n).toString(16), i += ("000" + t).slice(-4);
|
|
return i
|
|
}, e
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.BrowserBase = function () {
|
|
function e() {
|
|
var e;
|
|
e = navigator.userAgent, this.is_iphone = /iPhone/i.test(e), this.is_ipad = /iPad/i.test(e), this.is_ios = this.is_iphone || this.is_ipad
|
|
}
|
|
|
|
return e.prototype.offset_top = function (e) {
|
|
return e.offset().top
|
|
}, e
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.Cookie = function () {
|
|
function t() {
|
|
this.nonmember_token_key = "crema_nonmember_token", this.popup_block_key = "crema_review_popup_close_today", this.popup_count_key = "crema_review_popup_count_v2", this.device_token_key = "crema_device_token"
|
|
}
|
|
|
|
return t.prototype.set_cookie = function (t, n, r) {
|
|
return e.cookie(t, n, {"expires": r, "path": "/", "domain": document.domain})
|
|
}, t.prototype.get_cookie = function (t) {
|
|
return e.cookie(t)
|
|
}, t.prototype.get_nonmember_token = function () {
|
|
return this.get_cookie(this.nonmember_token_key)
|
|
}, t.prototype.set_nonmember_token = function (e) {
|
|
return this.set_cookie(this.nonmember_token_key, e, 365)
|
|
}, t.prototype.get_popup_block = function () {
|
|
return this.get_cookie(this.popup_block_key)
|
|
}, t.prototype.set_popup_block = function (e) {
|
|
return this.set_cookie(this.popup_block_key, "1", e)
|
|
}, t.prototype.get_popup_count = function () {
|
|
return this.get_cookie(this.popup_count_key)
|
|
}, t.prototype.set_popup_count = function (e) {
|
|
return this.set_cookie(this.popup_count_key, e, new Date((new Date).getTime() + 216e5))
|
|
}, t.prototype.get_device_token = function () {
|
|
return this.get_cookie(this.device_token_key)
|
|
}, t.prototype.set_device_token = function (e) {
|
|
return this.set_cookie(this.device_token_key, e, 365)
|
|
}, t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.Device = function () {
|
|
function e() {
|
|
this.token = crema.cookie.get_device_token(), this.token || (this.token = crema.util.generate_random_string(16), crema.cookie.set_device_token(this.token))
|
|
}
|
|
|
|
return e.prototype.get_token = function () {
|
|
return this.token
|
|
}, e
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.Event = function () {
|
|
function e() {
|
|
this.url = crema.info.base_url + "/events"
|
|
}
|
|
|
|
return e.prototype.create = function (e, t, n) {
|
|
var r, o, i;
|
|
o = new crema.UrlBuilder(this.url), o.add_param("type", e), o.add_param("event", t), o.add_param("brand_code", crema.info.mid);
|
|
for (r in n)i = n[r], o.add_param(r, i);
|
|
return crema.util.jsonp(o.build(), {"absolute_url": !0})
|
|
}, e
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.FullscreenPopup = function () {
|
|
function t() {
|
|
}
|
|
|
|
return t.prototype.open = function (t, n) {
|
|
var r, o, i, a, s, c, u, l;
|
|
return this.close(), o = e("html"), o.data("crema-org-style", o.attr("style")).css({"overflow": "hidden"}), r = e("body"), a = r.height(), l = e(window).innerHeight(), i = {"height": "auto"}, (0 === l || a > l) && (i.overflow = "hidden"), r.data("crema-org-style", r.css("style")).css(i), this.popup = crema.iframe_manager.create(r, {"id": t}), c = {
|
|
"width": "100%",
|
|
"height": "100%",
|
|
"zIndex": 9999
|
|
}, crema.browser.is_ie && (c.visibility = "hidden", u = new crema.UrlBuilder(n), u.add_param("iframe_id", t), n = u.build(), 7 === crema.browser.ie_version || 8 === crema.browser.ie_version && crema.browser.is_quirks_mode ? (e(window).width() > 0 && (c.width = e(window).width()), e(window).height() > 0 && (c.height = e(window).height())) : (s = this.get_margin_right(r.css("marginRight")), r.css({"marginRight": s + 16}), this.fixed_elements = e("div").filter(function () {
|
|
return "fixed" === e(this).css("position") && !e(this).attr("style")
|
|
}), this.fixed_elements.each(function (t) {
|
|
return function (n, r) {
|
|
var o;
|
|
return o = e(r), s = t.get_margin_right(o.css("marginRight")), o.css({"marginRight": s + 16})
|
|
}
|
|
}(this)))), crema.browser.supports_fixed_position() ? (c.position = "fixed", c.top = 0, c.left = 0) : (c.position = "absolute", c.top = document.documentElement.scrollTop || document.body.scrollTop, c.left = document.documentElement.scrollLeft || document.body.scrollLeft), this.popup.css(c), crema.browser.is_ie && crema.browser.ie_document_mode < 7 && (this.fix_scroll = function () {
|
|
return document.documentElement.scrollTop = document.body.scrollTop = c.top
|
|
}, e(window).bind("scroll", this.fix_scroll)), this.popup.attr("src", n), this.popup
|
|
}, t.prototype.close = function () {
|
|
var t, n, r;
|
|
return this.fix_scroll && (e(window).unbind("scroll", this.fix_scroll), this.fix_scroll = null), this.popup ? (crema.iframe_manager.destroy(this.popup.attr("id")), n = e("html"), r = n.data("crema-org-style"), r ? n.attr("style", r) : n.removeAttr("style", r), n.removeData("crema-org-style"), t = e("body"), r = t.data("crema-org-style"), r ? t.attr("style", r) : t.removeAttr("style", r), t.removeData("crema-org-style"), this.fixed_elements && (this.fixed_elements.removeAttr("style"), this.fixed_elements = null), this.popup = null) : void 0
|
|
}, t.prototype.get_margin_right = function (e) {
|
|
return e && "px" === e.slice(-2) ? parseInt(e) : 0
|
|
}, t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.IframeManager = function () {
|
|
function t() {
|
|
this.iframes = {}, e(window).on("crema:params_changed", function (e) {
|
|
return function () {
|
|
return e.crema_params_changed()
|
|
}
|
|
}(this))
|
|
}
|
|
|
|
return t.prototype.create = function (t, n, r) {
|
|
var o, i;
|
|
return null == n && (n = {}), null == r && (r = {}), i = n.id, n.width || (n.width = "100%"), n.scrolling || (n.scrolling = "no"), n.allowTransparency || (n.allowTransparency = "true"), n.frameborder || (n.frameborder = "0"), n.name || (n.name = i + "-" + (new Date).getTime()), o = e("<iframe></iframe>"), o.attr(n), "100%" === n.width && crema.browser.is_ios && o.attr("style", "width: 1px !important; min-width: 100% !important;"), t.append(o), this.iframes[i] = o, o.load(function () {
|
|
var t;
|
|
return t = function () {
|
|
return crema.message_handler.post("set_window_height", {"window_height": e(window).height()}, i)
|
|
}, e(window).resize(t), t()
|
|
}), null != r.bind_scroll && this.bind_scroll(o), o
|
|
}, t.prototype.destroy = function (e) {
|
|
return this.iframes[e].remove(), delete this.iframes[e]
|
|
}, t.prototype.bind_scroll = function (t) {
|
|
return e(window).scroll(function () {
|
|
return crema.message_handler.post("scroll", {"scrollTop": e(window).scrollTop() - t.offset().top}, t.attr("id"))
|
|
})
|
|
}, t.prototype.crema_params_changed = function () {
|
|
var e, t, n, r, o, i, a, s, c;
|
|
i = this.iframes;
|
|
for (t in i) {
|
|
e = i[t], o = e.attr("src"), s = new crema.UrlBuilder(o), a = crema.url.get_crema_params();
|
|
for (n in a)c = a[n], null != c && s.add_param(n, c);
|
|
r = s.build(), crema.message_handler.post("popstate", {"url": r}, t)
|
|
}
|
|
return null
|
|
}, t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
var t, n;
|
|
return t = function () {
|
|
function e() {
|
|
}
|
|
|
|
return e.prototype.log = function (e) {
|
|
return console.log(e)
|
|
}, e.prototype.error = function (e) {
|
|
return console.error(e)
|
|
}, e
|
|
}(), n = function () {
|
|
function e() {
|
|
}
|
|
|
|
return e.prototype.log = function (e) {
|
|
}, e.prototype.error = function (e) {
|
|
}, e
|
|
}(), this.Logger = function () {
|
|
function e() {
|
|
"undefined" != typeof console && null !== console && console.log && "function" == typeof console.log ? this.logger = new t : this.logger = new n
|
|
}
|
|
|
|
return e.prototype.log = function (e) {
|
|
return this.logger.log(e)
|
|
}, e.prototype.error = function (e) {
|
|
return this.logger.error(e)
|
|
}, e
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.MainBase = function () {
|
|
function t() {
|
|
crema.logger = new crema.Logger, crema.cookie = new crema.Cookie, crema.util = new crema.Util, crema.url = new crema.Url, crema.device = new crema.Device, crema.browser = new crema.Browser, crema.popup = new crema.Popup, crema.event = new crema.Event, crema.brand_crypt = new crema.BrandCrypt, crema.message_handler = new crema.MessageHandler, crema.iframe_manager = new crema.IframeManager, crema.review_sns_popup = new crema.ReviewSnsPopup, crema.fullscreen_popup = new crema.FullscreenPopup
|
|
}
|
|
|
|
return t.prototype.initialize = function () {
|
|
switch (crema.info.user_name || (crema.info.user_name = e("#crema-login-name").text()), crema.page_analyzer = crema.PageAnalyzer.create(), (new crema.PageLogger).log(), (new crema.AdTracker).confirm(), crema.info.solution) {
|
|
case"makeshop":
|
|
return new crema.MakeshopShopBuilder;
|
|
case"cafe24":
|
|
return new crema.Cafe24ShopBuilder
|
|
}
|
|
}, t.prototype.widget_types = function () {
|
|
return []
|
|
}, t.prototype.widgets = function () {
|
|
var e, t, n, r, o;
|
|
if (r = [], crema.info.show_review_widget)for (n = this.widget_types(), e = 0, t = n.length; t > e; e++)o = n[e], r.push(new o);
|
|
return r
|
|
}, t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.MessageHandlerBase = function () {
|
|
function t() {
|
|
e.receiveMessage(function (t) {
|
|
return function (n) {
|
|
var r;
|
|
if (t.check_origin(n.origin))return r = e.deparam(n.data), t.handle_message(r)
|
|
}
|
|
}(this), this.patch_url_remove_mall_widget_subdomain_for_staging(crema.info.base_url))
|
|
}
|
|
|
|
return t.prototype.handle_message = function (e) {
|
|
var t, n, r, o;
|
|
switch (r = !1, e.act) {
|
|
case"set_nonmember_token":
|
|
crema.cookie.set_nonmember_token(e.nonmember_token), r = !0;
|
|
break;
|
|
case"scroll_to":
|
|
this.scroll_to(e);
|
|
break;
|
|
case"paginate":
|
|
n = {};
|
|
for (t in e)o = e[t], "iframe_id" !== t && "act" !== t && "offset" !== t && "push_state" !== t && (n[t] = o);
|
|
crema.url.reset_crema_params(n, {"push_state": e.push_state}), this.scroll_to(e);
|
|
break;
|
|
case"photo_review_popup":
|
|
crema.review_sns_popup.show_with_url(e.url);
|
|
break;
|
|
case"close_fullscreen_popup":
|
|
crema.fullscreen_popup.close()
|
|
}
|
|
return r
|
|
}, t.prototype.post = function (t, n, r) {
|
|
var o, i;
|
|
return o = e("#" + r), o.length ? (i = o.attr("src"), i = this.patch_url_remove_mall_widget_subdomain_for_staging(i), e.postMessage(e.extend({"act": t}, n), i, o.get(0).contentWindow)) : void 0
|
|
}, t.prototype.scroll_to = function (t) {
|
|
var n, r, o;
|
|
if (null != t.offset)return n = e("#" + (t.target_id || t.iframe_id)), o = Number(t.offset), r = crema.browser.offset_top(n) + o, crema.window_loaded ? e("body, html").animate({"scrollTop": r}, "fast", e.bez([.455, .03, .515, .955]), function () {
|
|
return r = crema.browser.offset_top(n) + o, Math.abs(document.body.scrollTop - r) > 50 ? e("body, html").scrollTop(r) : void 0
|
|
}) : e("body, html").scrollTop(r)
|
|
}, t.prototype.redirect_to = function (e) {
|
|
var t, n;
|
|
return e.scroll_top && this.store_scroll_top(e.scroll_top), e.close_url ? (n = new crema.UrlBuilder(e.url), n.add_param("close_url", window.location.href), t = n.build()) : t = e.url, window.location.href = t
|
|
}, t.prototype.store_scroll_top = function (e) {
|
|
return crema.url.set_crema_param("scroll_top", e)
|
|
}, t.prototype.patch_url_remove_mall_widget_subdomain_for_staging = function (e) {
|
|
var t;
|
|
return t = e.match(/^(https?:\/\/)crema-(twidgets\d?)\..+/), null !== t && (e = t[1] + t[2] + ".cre.ma"), e
|
|
}, t.prototype.check_origin = function (e) {
|
|
return null == e || e === crema.info.base_url || e === this.patch_url_remove_mall_widget_subdomain_for_staging(crema.info.base_url)
|
|
}, t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function (e, t) {
|
|
var n = {};
|
|
t(n), e.Mustache = n
|
|
}(crema, function (e) {
|
|
function t(e, t) {
|
|
return _.call(e, t)
|
|
}
|
|
|
|
function n(e) {
|
|
return !t(m, e)
|
|
}
|
|
|
|
function r(e) {
|
|
return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$&")
|
|
}
|
|
|
|
function o(e) {
|
|
return String(e).replace(/[&<>"'\/]/g, function (e) {
|
|
return x[e]
|
|
})
|
|
}
|
|
|
|
function i(e) {
|
|
this.string = e, this.tail = e, this.pos = 0
|
|
}
|
|
|
|
function a(e, t) {
|
|
this.view = e || {}, this.parent = t, this._cache = {}
|
|
}
|
|
|
|
function s() {
|
|
this.clearCache()
|
|
}
|
|
|
|
function c(t, n, r, o) {
|
|
for (var i, a, s, u = "", l = 0, p = t.length; p > l; ++l)switch (i = t[l], a = i[1], i[0]) {
|
|
case"#":
|
|
if (s = r.lookup(a), "object" == typeof s)if (b(s))for (var f = 0, d = s.length; d > f; ++f)u += c(i[4], n, r.push(s[f]), o); else s && (u += c(i[4], n, r.push(s), o)); else if ("function" == typeof s) {
|
|
var h = null == o ? null : o.slice(i[3], i[5]);
|
|
s = s.call(r.view, h, function (e) {
|
|
return n.render(e, r)
|
|
}), null != s && (u += s)
|
|
} else s && (u += c(i[4], n, r, o));
|
|
break;
|
|
case"^":
|
|
s = r.lookup(a), (!s || b(s) && 0 === s.length) && (u += c(i[4], n, r, o));
|
|
break;
|
|
case">":
|
|
s = n.getPartial(a), "function" == typeof s && (u += s(r));
|
|
break;
|
|
case"&":
|
|
s = r.lookup(a), null != s && (u += s);
|
|
break;
|
|
case"name":
|
|
s = r.lookup(a), null != s && (u += e.escape(s));
|
|
break;
|
|
case"text":
|
|
u += a
|
|
}
|
|
return u
|
|
}
|
|
|
|
function u(e) {
|
|
for (var t, n = [], r = n, o = [], i = 0, a = e.length; a > i; ++i)switch (t = e[i], t[0]) {
|
|
case"#":
|
|
case"^":
|
|
o.push(t), r.push(t), r = t[4] = [];
|
|
break;
|
|
case"/":
|
|
var s = o.pop();
|
|
s[5] = t[2], r = o.length > 0 ? o[o.length - 1][4] : n;
|
|
break;
|
|
default:
|
|
r.push(t)
|
|
}
|
|
return n
|
|
}
|
|
|
|
function l(e) {
|
|
for (var t, n, r = [], o = 0, i = e.length; i > o; ++o)t = e[o], t && ("text" === t[0] && n && "text" === n[0] ? (n[1] += t[1], n[3] = t[3]) : (n = t, r.push(t)));
|
|
return r
|
|
}
|
|
|
|
function p(e) {
|
|
return [new RegExp(r(e[0]) + "\\s*"), new RegExp("\\s*" + r(e[1]))]
|
|
}
|
|
|
|
function f(t, o) {
|
|
function a() {
|
|
if (T && !j)for (; C.length;)delete k[C.pop()]; else C = [];
|
|
T = !1, j = !1
|
|
}
|
|
|
|
if (t = t || "", o = o || e.tags, "string" == typeof o && (o = o.split(h)), 2 !== o.length)throw new Error("Invalid tags: " + o.join(", "));
|
|
for (var s, c, f, m, _, w = p(o), b = new i(t), x = [], k = [], C = [], T = !1, j = !1; !b.eos();) {
|
|
if (s = b.pos, f = b.scanUntil(w[0]))for (var N = 0, S = f.length; S > N; ++N)m = f.charAt(N), n(m) ? C.push(k.length) : j = !0, k.push(["text", m, s, s + 1]), s += 1, "\n" == m && a();
|
|
if (!b.scan(w[0]))break;
|
|
if (T = !0, c = b.scan(v) || "name", b.scan(d), "=" === c ? (f = b.scanUntil(g), b.scan(g), b.scanUntil(w[1])) : "{" === c ? (f = b.scanUntil(new RegExp("\\s*" + r("}" + o[1]))), b.scan(y), b.scanUntil(w[1]), c = "&") : f = b.scanUntil(w[1]), !b.scan(w[1]))throw new Error("Unclosed tag at " + b.pos);
|
|
if (_ = [c, f, s, b.pos], k.push(_), "#" === c || "^" === c)x.push(_); else if ("/" === c) {
|
|
if (0 === x.length)throw new Error('Unopened section "' + f + '" at ' + s);
|
|
var E = x.pop();
|
|
if (E[1] !== f)throw new Error('Unclosed section "' + E[1] + '" at ' + s)
|
|
} else if ("name" === c || "{" === c || "&" === c)j = !0; else if ("=" === c) {
|
|
if (o = f.split(h), 2 !== o.length)throw new Error("Invalid tags at " + s + ": " + o.join(", "));
|
|
w = p(o)
|
|
}
|
|
}
|
|
var E = x.pop();
|
|
if (E)throw new Error('Unclosed section "' + E[1] + '" at ' + b.pos);
|
|
return k = l(k), u(k)
|
|
}
|
|
|
|
var d = /\s*/, h = /\s+/, m = /\S/, g = /\s*=/, y = /\s*\}/, v = /#|\^|\/|>|\{|&|=|!/, _ = RegExp.prototype.test, w = Object.prototype.toString, b = Array.isArray || function (e) {
|
|
return "[object Array]" === w.call(e)
|
|
}, x = {"&": "&", "<": "<", ">": ">", '"': """, "'": "'", "/": "/"};
|
|
i.prototype.eos = function () {
|
|
return "" === this.tail
|
|
}, i.prototype.scan = function (e) {
|
|
var t = this.tail.match(e);
|
|
return t && 0 === t.index ? (this.tail = this.tail.substring(t[0].length), this.pos += t[0].length, t[0]) : ""
|
|
}, i.prototype.scanUntil = function (e) {
|
|
var t, n = this.tail.search(e);
|
|
switch (n) {
|
|
case-1:
|
|
t = this.tail, this.pos += this.tail.length, this.tail = "";
|
|
break;
|
|
case 0:
|
|
t = "";
|
|
break;
|
|
default:
|
|
t = this.tail.substring(0, n), this.tail = this.tail.substring(n), this.pos += n
|
|
}
|
|
return t
|
|
}, a.make = function (e) {
|
|
return e instanceof a ? e : new a(e)
|
|
}, a.prototype.push = function (e) {
|
|
return new a(e, this)
|
|
}, a.prototype.lookup = function (e) {
|
|
var t = this._cache[e];
|
|
if (!t) {
|
|
if ("." == e)t = this.view; else for (var n = this; n;) {
|
|
if (e.indexOf(".") > 0) {
|
|
t = n.view;
|
|
for (var r = e.split("."), o = 0; t && o < r.length;)t = t[r[o++]]
|
|
} else t = n.view[e];
|
|
if (null != t)break;
|
|
n = n.parent
|
|
}
|
|
this._cache[e] = t
|
|
}
|
|
return "function" == typeof t && (t = t.call(this.view)), t
|
|
}, s.prototype.clearCache = function () {
|
|
this._cache = {}, this._partialCache = {}
|
|
}, s.prototype.compile = function (t, n) {
|
|
var r = this._cache[t];
|
|
if (!r) {
|
|
var o = e.parse(t, n);
|
|
r = this._cache[t] = this.compileTokens(o, t)
|
|
}
|
|
return r
|
|
}, s.prototype.compilePartial = function (e, t, n) {
|
|
var r = this.compile(t, n);
|
|
return this._partialCache[e] = r, r
|
|
}, s.prototype.getPartial = function (e) {
|
|
return e in this._partialCache || !this._loadPartial || this.compilePartial(e, this._loadPartial(e)), this._partialCache[e]
|
|
}, s.prototype.compileTokens = function (e, t) {
|
|
var n = this;
|
|
return function (r, o) {
|
|
if (o)if ("function" == typeof o)n._loadPartial = o; else for (var i in o)n.compilePartial(i, o[i]);
|
|
return c(e, n, a.make(r), t)
|
|
}
|
|
}, s.prototype.render = function (e, t, n) {
|
|
return this.compile(e)(t, n)
|
|
}, e.name = "mustache.js", e.version = "0.7.2", e.tags = ["{{", "}}"], e.Scanner = i, e.Context = a, e.Writer = s, e.parse = f, e.escape = o;
|
|
var k = new s;
|
|
e.clearCache = function () {
|
|
return k.clearCache()
|
|
}, e.compile = function (e, t) {
|
|
return k.compile(e, t)
|
|
}, e.compilePartial = function (e, t, n) {
|
|
return k.compilePartial(e, t, n)
|
|
}, e.compileTokens = function (e, t) {
|
|
return k.compileTokens(e, t)
|
|
}, e.render = function (e, t, n) {
|
|
return k.render(e, t, n)
|
|
}, e.to_html = function (t, n, r, o) {
|
|
var i = e.render(t, n, r);
|
|
return "function" != typeof o ? i : void o(i)
|
|
}
|
|
}), function () {
|
|
(function (e) {
|
|
return this.PageLogger = function () {
|
|
function e() {
|
|
this.page_analyzer = crema.page_analyzer
|
|
}
|
|
|
|
return e.prototype.log = function () {
|
|
var e, t;
|
|
if (t = this.page_analyzer.get_page_type()) {
|
|
switch (e = {}, t) {
|
|
case"products#show":
|
|
e.product_code = this.page_analyzer.get_product_code();
|
|
break;
|
|
case"orders#complete":
|
|
e.order_code = this.page_analyzer.get_order_code();
|
|
break;
|
|
default:
|
|
return
|
|
}
|
|
return crema.util.add_username(e), e.device_type = crema.info.mobile ? "mobile" : "pc", e.device_token = crema.device.get_token(), crema.event.create("page", t, e)
|
|
}
|
|
}, e
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.PopupBase = function () {
|
|
function t() {
|
|
this.iframe_id = "crema-review-popup"
|
|
}
|
|
|
|
return t.prototype.check = function (e) {
|
|
var t, n;
|
|
if (crema.info.username && !crema.cookie.get_popup_block())return n = crema.cookie.get_popup_count(), t = n ? parseInt(n, 10) : 0, "tester" === crema.info.user_type || "manager" === crema.info.user_type ? e() : t < crema.info.review_max_popup_count_per_day ? (e(), crema.cookie.set_popup_count(t + 1)) : void 0
|
|
}, t.prototype.hide = function (t) {
|
|
var n;
|
|
return n = e("#" + this.iframe_id), crema.browser.is_ie ? (n.hide(), n.attr("id", null)) : n.remove(), t && crema.cookie.set_popup_block(t), window.cremaOnEvent ? window.cremaOnEvent("popup:hidden") : void 0
|
|
}, t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.ReviewSnsPopup = function () {
|
|
function e() {
|
|
}
|
|
|
|
return e.prototype.show = function (e, t) {
|
|
return this.show_impl(crema.util.url("reviews/" + e + "/photo_review_popup", {
|
|
"photo_index": t,
|
|
"iframe_id": this.iframe_id
|
|
}, {"parent_url": !0}))
|
|
}, e.prototype.show_with_url = function (e) {
|
|
return this.show_impl(crema.util.url(crema.info.base_url + e, {"iframe_id": this.iframe_id}, {
|
|
"parent_url": !0,
|
|
"absolute_url": !0
|
|
}))
|
|
}, e.prototype.show_impl = function (e) {
|
|
return crema.fullscreen_popup.open("crema-photo-review-popup", e)
|
|
}, e.prototype.close = function () {
|
|
return crema.fullscreen_popup.close()
|
|
}, e
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.Url = function () {
|
|
function t() {
|
|
this.refresh(), e(window).on("popstate", function (e) {
|
|
return function (t) {
|
|
return e.on_popstate(t.originalEvent)
|
|
}
|
|
}(this))
|
|
}
|
|
|
|
return t.prototype.get_crema_params = function () {
|
|
return this.crema_params
|
|
}, t.prototype.get_crema_param = function (e) {
|
|
return this.crema_params[e]
|
|
}, t.prototype.get_param = function (e) {
|
|
return this.params[e]
|
|
}, t.prototype.get_path = function () {
|
|
return this.url_builder.get_path()
|
|
}, t.prototype.reset_crema_params = function (e, t) {
|
|
var n, r;
|
|
null == t && (t = {}), this.crema_params = {};
|
|
for (n in e)r = e[n], this.crema_params[n] = this.strip_value(r);
|
|
return this.push(t)
|
|
}, t.prototype.set_crema_param = function (e, t) {
|
|
return this.crema_params[e] = this.strip_value(t), this.push()
|
|
}, t.prototype.push = function (t) {
|
|
var n, r, o, i, a, s;
|
|
if (null == t && (t = {}), o = t.push_state || !1, this.supports_history()) {
|
|
this.url_builder.clear_params(), i = this.params;
|
|
for (n in i)s = i[n], this.url_builder.add_param(n, s);
|
|
a = this.crema_params;
|
|
for (n in a)s = a[n], this.url_builder.add_param("crema-" + n, s);
|
|
return r = this.url_builder.build(), o ? window.history.pushState(null, null, r) : window.history.replaceState(null, null, r)
|
|
}
|
|
return e("#crema-params").val(e.param(this.crema_params))
|
|
}, t.prototype.supports_history = function () {
|
|
return "smartapp" === crema.cookie.get_cookie("SMA_in_app") && crema.info.disable_replace_state_in_mobile_app ? !1 : window.history && window.history.replaceState
|
|
}, t.prototype.strip_value = function (t) {
|
|
return e.isArray(t) ? t[t.length - 1] : t
|
|
}, t.prototype.on_popstate = function (t) {
|
|
return this.old_crema_params = this.crema_params, this.refresh(), this.old_crema_params !== this.crema_params ? e(window).trigger("crema:params_changed") : void 0
|
|
}, t.prototype.refresh = function () {
|
|
var t, n, r, o, i, a, s;
|
|
this.crema_params = {}, this.params = {}, this.url_builder = new crema.UrlBuilder(window.location.href), r = this.url_builder.get_params();
|
|
for (n in r)s = r[n], "crema-" === n.substring(0, 6) ? this.crema_params[n.substring(6)] = this.strip_value(s) : this.params[n] = s;
|
|
if (t = e("#crema-params").val()) {
|
|
a = new crema.UrlBuilder("?" + t), o = a.get_params(), i = [];
|
|
for (n in o)s = o[n], i.push(this.crema_params[n] = this.strip_value(s));
|
|
return i
|
|
}
|
|
}, t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.UrlBuilder = function () {
|
|
function t(t) {
|
|
var n;
|
|
n = e.url(t), this.url_base = n.attr("base"), this.url_path = n.attr("path"), this.url_params = n.param()
|
|
}
|
|
|
|
return t.prototype.add_param = function (e, t) {
|
|
return this.url_params[e] = t
|
|
}, t.prototype.get_params = function () {
|
|
return this.url_params
|
|
}, t.prototype.set_params = function (e) {
|
|
return this.url_params = e
|
|
}, t.prototype.clear_params = function () {
|
|
return this.url_params = {}
|
|
}, t.prototype.get_path = function () {
|
|
return this.url_path
|
|
}, t.prototype.build = function () {
|
|
return this.url_base + this.url_path + "?" + e.param(this.url_params)
|
|
}, t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.Util = function () {
|
|
function t() {
|
|
}
|
|
|
|
return t.prototype.add_username = function (e) {
|
|
var t;
|
|
return t = crema.info.username, t ? crema.info.secure_privacy ? e.secure_username = crema.brand_crypt.encrypt(t) : e.username = t : e.nonmember_token = crema.cookie.get_nonmember_token()
|
|
}, t.prototype.url = function (e, t, n) {
|
|
var r, o, i, a, s;
|
|
if (null == n && (n = {}), i = n.absolute_url ? new crema.UrlBuilder(e) : new crema.UrlBuilder(crema.info.base_url + "/" + crema.info.mid + "/" + e), t || (t = {}), t.app || (t.app = "0"), n.parent_url)if ("string" == typeof n.parent_url)t.parent_url = n.parent_url; else if (window.postMessage)t.parent_url = document.location.href; else try {
|
|
t.parent_url = top.location.href
|
|
} catch (c) {
|
|
t.parent_url = document.location.href
|
|
}
|
|
this.add_username(t), a = crema.info.user_name, a && (crema.info.secure_privacy ? t.secure_user_name = crema.brand_crypt.encrypt(a) : t.user_name = a), o = crema.url.get_crema_params();
|
|
for (r in o)s = o[r], t[r] = s;
|
|
for (r in t)s = t[r], null != s && i.add_param(r, s);
|
|
return i.build()
|
|
}, t.prototype.jsonp = function (t, n, r) {
|
|
var o, i;
|
|
return i = n.absolute_url ? t : this.url(t, n), o = {
|
|
"url": i,
|
|
"type": "GET",
|
|
"async": !1,
|
|
"contentType": "application/json",
|
|
"dataType": "jsonp",
|
|
"crossDomain": !0
|
|
}, r ? o.success = r : o.jsonp = !1, e.ajax(o).done(function (e) {
|
|
var t, n;
|
|
return crema.browser.is_ie && crema.browser.ie_version < 8 ? (n = JSON.stringify(e), t = JSON3.parse(n)) : void 0
|
|
})
|
|
}, t.prototype.get_product_code = function (e) {
|
|
var t, n;
|
|
return (t = e.data("product-code") || e.data("product-id")) ? "number" == typeof t ? t : t.replace(/^\s+|\s+$/g, "").replace(/[^A-Za-z0-9\s_-]/g, "") : (n = e.data("product-code-param") || e.data("product-id-param"), n ? crema.url.get_param(n) : null)
|
|
}, t.prototype.generate_random_string = function (e) {
|
|
var t, n, r, o, i;
|
|
for (i = "", t = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz", r = n = 1, o = e; o >= n; r = n += 1)i += t[Math.floor(Math.random() * t.length)];
|
|
return i
|
|
}, t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.Widget = function () {
|
|
function t() {
|
|
this.widget_id = 0, this.openmarket_built_in_without_js = 200
|
|
}
|
|
|
|
return t.prototype.attach = function () {
|
|
var t;
|
|
return t = !1, e(this.widget_selector).each(function (n) {
|
|
return function (r, o) {
|
|
var i;
|
|
return i = e(o), i.hasClass("crema-applied") || (i.addClass("crema-applied"), t = n.perform(i)), !0
|
|
}
|
|
}(this)), t
|
|
}, t.prototype.attach_one = function () {
|
|
var t;
|
|
return t = !1, e(this.widget_selector).each(function (n) {
|
|
return function (r, o) {
|
|
var i;
|
|
return i = e(o), !i.hasClass("crema-applied") && (i.addClass("crema-applied"), n.perform && (t = n.perform(i))) ? !1 : !0
|
|
}
|
|
}(this)), t
|
|
}, t.prototype.generate_id = function () {
|
|
return this.widget_id += 1
|
|
}, t.prototype.get_product_code = function (e) {
|
|
var t;
|
|
return t = crema.util.get_product_code(e), t || crema.logger.error("You must set data-product-code!"), t
|
|
}, t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.AbstractPageAnalyzer = function () {
|
|
function t() {
|
|
this.page_type = null, this.product_code = null, this.analyze()
|
|
}
|
|
|
|
return t.prototype.analyze = function () {
|
|
var t, n, r;
|
|
switch (crema.url.get_path()) {
|
|
case"/":
|
|
return this.page_type = "home#index";
|
|
default:
|
|
if (n = e(".crema-product-reviews"), n.length)return this.page_type = "products#show", void(this.product_code = crema.util.get_product_code(n));
|
|
if (r = e(".crema-product-reviews-link"), r.length)return this.page_type = "products#show", void(this.product_code = crema.util.get_product_code(r));
|
|
t = e(".crema-order-code"), t.length && (this.page_type = "orders#complete", this.order_code = t.data("order-code"))
|
|
}
|
|
}, t.prototype.get_page_type = function () {
|
|
return this.page_type
|
|
}, t.prototype.get_product_code = function () {
|
|
return this.product_code
|
|
}, t.prototype.get_order_code = function () {
|
|
return this.order_code
|
|
}, t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.Cafe24PageAnalyzer = function (t) {
|
|
function n() {
|
|
return n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.analyze = function () {
|
|
return this.analyze_cafe24_v3(), this.page_type ? void 0 : n.__super__.analyze.apply(this, arguments)
|
|
}, n.prototype.analyze_cafe24_v3 = function () {
|
|
var e, t;
|
|
if (t = crema.url.get_path(), /\/main.html/.test(t))return this.page_type = "home#index";
|
|
if (/\/product\/(^detail.html$)?/.test(t)) {
|
|
if (this.page_type = "products#show", this.product_code = crema.url.get_param("product_no"), !this.product_code && (e = new RegExp("product/.*/([0-9]*)/category").exec(t)))return this.product_code = e[1]
|
|
} else if (/\/order\/(^order_result.html$)?/.test(t))return this.page_type = "orders#complete", this.order_code = crema.url.get_param("order_id")
|
|
}, n
|
|
}(this.AbstractPageAnalyzer)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.PageAnalyzer = function (t) {
|
|
function n() {
|
|
return n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.create = function () {
|
|
if (crema.info.mobile)switch (crema.info.solution) {
|
|
case"makeshop":
|
|
return new crema.MobileMakeshopPageAnalyzer;
|
|
case"cafe24":
|
|
return new crema.Cafe24PageAnalyzer;
|
|
default:
|
|
return new crema.PageAnalyzer
|
|
} else switch (crema.info.solution) {
|
|
case"makeshop":
|
|
return new crema.PcMakeshopPageAnalyzer;
|
|
case"cafe24":
|
|
return new crema.Cafe24PageAnalyzer;
|
|
default:
|
|
return new crema.PageAnalyzer
|
|
}
|
|
}, n
|
|
}(this.AbstractPageAnalyzer)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.Cafe24ShopBuilder = function () {
|
|
function t() {
|
|
e("[data-cafe24-product-link]").each(function () {
|
|
var t, n;
|
|
return t = e(this), n = t.data("cafe24-product-link").match(/product_no=(\d+)/), 2 === n.length ? t.data("product-code", n[1]) : void 0
|
|
}), e(".crema-cafe24-product-item").each(function () {
|
|
var t, n, r, o, i;
|
|
return t = e(this), i = e(this).data("product-code"), o = e(this).data("format"), r = t.find(".title:contains('" + e(this).data("title") + "')"), 1 === r.length && (n = r.parent().find("span").last(), n.addClass("crema-product-reviews-count").attr("data-product-code", i), o) ? n.attr("data-format", o) : void 0
|
|
})
|
|
}
|
|
|
|
return t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.MakeshopShopBuilder = function () {
|
|
function t() {
|
|
e("[data-makeshop-product-link]").each(function () {
|
|
var t, n, r, o;
|
|
return t = e(this), r = t.data("makeshop-product-link"), n = r.match(/javascript:go_brand\('(\d+)'\)/), n && 2 === n.length ? t.data("product-subcode", n[1]) : (o = e.url(t.data("makeshop-product-link")), t.data("product-code", o.param("branduid")), t.data("product-subcode", o.param("brandcode")))
|
|
}), e(".crema-makeshop-product-link").each(function () {
|
|
var t, n, r, o;
|
|
return t = e(this).find(".brstar"), n = e(this).data("format") || "({{count}})", 0 === t.length && (t = e("<span class='brstar'></span>"), e(this).append(t)), o = e(this).attr("href") || e(this).data("product-url"), r = o.match(/branduid=(\d+)/), r && 2 === r.length ? t.addClass("crema-product-reviews-count").attr("data-product-code", r[1]).attr("data-format", n) : void 0
|
|
}), e(".crema-makeshop-recommendation").each(function () {
|
|
var t, n;
|
|
return t = e(this), n = t.data("format") || "({{count}})", t.find("a font.brandbrandname, a font.mainbrandname, a font.mainaddbrandname, a font.mainspbrandname, table.Search_prodt font.brandbrandname").each(function () {
|
|
var t, r, o, i;
|
|
return o = e(this), t = o.find(".brstar"), 0 === t.length && (t = o.find(".braddname")), 0 === t.length && (t = e("<span class='brstar'></span>"), o.after(t)), r = o.find("a").attr("href"), r || (r = o.closest("a").attr("href")), i = r.match(/branduid=(\d+)/), i && 2 === i.length ? t.addClass("crema-product-reviews-count").attr("data-product-code", i[1]).attr("data-format", n) : void 0
|
|
})
|
|
})
|
|
}
|
|
|
|
return t
|
|
}()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.HideWidget = function (t) {
|
|
function n() {
|
|
this.widget_selector = ".crema-hide", n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.perform = function (e) {
|
|
return e.hide(), !1
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.LinkWidget = function (t) {
|
|
function n() {
|
|
return n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.perform = function (e) {
|
|
var t;
|
|
return e.removeAttr("onclick"), e.is("a") ? e.attr("href", this.url) : (t = this.url, e.click(function () {
|
|
return window.location.href = t, !1
|
|
})), !1
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.MyReviewsCountWidget = function (n) {
|
|
function r() {
|
|
this.widget_selector = ".crema-my-reviews-count", r.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(r, n), r.prototype.attach = function () {
|
|
var e;
|
|
return e = t(this.widget_selector), e.length > 0 && crema.util.jsonp("my/reviews_count", {}, function (n) {
|
|
return e.each(function () {
|
|
var e, r, o;
|
|
return e = t(this), r = "pending" === e.data("type") ? n.pending_reviews_count : n.reviews_count, o = e.data("format"), o ? e.html(crema.Mustache.render(o, {"count": r})) : e.html(r)
|
|
})
|
|
}), !1
|
|
}, r.prototype.attach_one = function () {
|
|
return this.attach()
|
|
}, r
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.ProductReviewsCountWidget = function (n) {
|
|
function r() {
|
|
this.widget_selector = ".crema-product-reviews-count", r.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(r, n), r.prototype.attach = function () {
|
|
var e, n, r, o, i, a;
|
|
if (a = {}, o = [], t(this.widget_selector).each(function (e) {
|
|
return function (n, r) {
|
|
var i, s;
|
|
return i = t(r), s = e.get_product_code(i), o.push(s), a[s] ? a[s].push(i) : a[s] = [i]
|
|
}
|
|
}(this)), o.length > 0)for (e = 100, n = r = 0, i = o.length / e; i > r; n = r += 1)crema.util.jsonp("api/v1/products/reviews_count", {
|
|
"product_codes": o.slice(n * e, n * e + e).join("|"),
|
|
"mobile": crema.info.mobile ? 1 : 0
|
|
}, function (e) {
|
|
var t, n, r, o, i, s, c;
|
|
for (s in e)if (c = e[s], n = a[s])for (o = 0, i = n.length; i > o; o++)t = n[o], r = t.data("format"), 0 === c ? t.data("hide-if-zero") && t.hide() : r ? t.html(crema.Mustache.render(r, {"count": c})) : t.html(c)
|
|
});
|
|
return !1
|
|
}, r.prototype.attach_one = function () {
|
|
return this.attach()
|
|
}, r
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.RedirectWidget = function (t) {
|
|
function n() {
|
|
return n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.attach = function () {
|
|
var e, t;
|
|
return e = crema.url.get_crema_param("redirect"), e || (t = crema.url.get_crema_param("redirect-base64"), t && (e = crema.Base64.decode(t))), e && (e = crema.util.url(e, {}, {"absolute_url": !0}), location.href = e), !1
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.ShowWidget = function (t) {
|
|
function n() {
|
|
this.widget_selector = ".crema-show", n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.perform = function (e) {
|
|
return e.show(), !1
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
(function (e) {
|
|
return this.NineWayDirection = {
|
|
"top_left": 11,
|
|
"top_center": 12,
|
|
"top_right": 13,
|
|
"middle_left": 21,
|
|
"middle_center": 22,
|
|
"middle_right": 23,
|
|
"bottom_left": 31,
|
|
"bottom_center": 32,
|
|
"bottom_right": 33
|
|
}
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.Browser = function (t) {
|
|
function n() {
|
|
n.__super__.constructor.apply(this, arguments), this.is_ie = /msie/i.test(navigator.userAgent) || /Trident/i.test(navigator.userAgent), this.is_quirks_mode = 5 === document.documentMode, this.is_ie && (/MSIE (\d+\.\d+);/.test(navigator.userAgent) ? this.ie_version = parseInt(RegExp.$1) : -1 !== navigator.userAgent.indexOf("Trident/7.0") ? this.ie_version = 11 : this.ie_version = 0), this.ie_document_mode = document.documentMode
|
|
}
|
|
|
|
return e(n, t), n.prototype.supports_fixed_position = function () {
|
|
return !this.is_ie || !this.is_quirks_mode && this.ie_version >= 7 && "undefined" != typeof document.documentMode
|
|
}, n.prototype.supports_opacity = function () {
|
|
return !this.is_ie || document.documentMode >= 9
|
|
}, n.prototype.width = function () {
|
|
return "innerWidth"in window ? window.innerWidth : document.documentElement.offsetWidth
|
|
}, n.prototype.height = function () {
|
|
return "innerHeight"in window ? window.innerHeight : document.documentElement.offsetHeight
|
|
}, n.prototype.offset_top = function (e) {
|
|
return this.is_ie && (7 === this.ie_version || (8 === this.ie_version || 9 === this.ie_version) && this.is_quirks_mode) ? document.body.scrollTop + e.offset().top : n.__super__.offset_top.apply(this, arguments)
|
|
}, n
|
|
}(this.BrowserBase)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.MessageHandler = function (n) {
|
|
function r() {
|
|
return r.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(r, n), r.prototype.handle_message = function (e) {
|
|
var n, o, i, a, s;
|
|
if (!r.__super__.handle_message.call(this, e))switch (e.act) {
|
|
case"redirect_to":
|
|
return crema.fullscreen_popup.close(), this.redirect_to(e);
|
|
case"growl":
|
|
return t.jGrowl(e.message, {"position": "bottom-right"});
|
|
case"onload":
|
|
if (o = {"visibility": "visible"}, e.height && (o.height = Number(e.height)), t("#" + e.iframe_id).css(o), window.cremaWidgetLoaded)return window.cremaWidgetLoaded(e.iframe_id);
|
|
break;
|
|
case"set_height":
|
|
if (t("#" + e.iframe_id).css({"height": Number(e.height)}), window.cremaOnResize)return window.cremaOnResize();
|
|
break;
|
|
case"keydown":
|
|
a = crema.iframe_manager.iframes, s = [];
|
|
for (i in a)n = a[i], s.push(this.post("keydown", {"keyCode": e.keyCode}, i));
|
|
return s;
|
|
default:
|
|
return t("#" + e.iframe_id).trigger("crema:receive_message", e)
|
|
}
|
|
}, r
|
|
}(this.MessageHandlerBase)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.Popup = function (n) {
|
|
function r() {
|
|
return r.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(r, n), r.prototype.show = function (e, t) {
|
|
var n, r, o;
|
|
return e ? (t || (t = {"auto": 1}), t.iframe_id = this.iframe_id, t.ref_page_type = crema.page_analyzer.get_page_type(), n = !1, "orders#complete" === t.ref_page_type && this.resize_window() && (n = !0), n || (o = crema.browser.height(), 720 > o && (t.popup_height = o, crema.browser.is_ie && (t.popup_height = o - 20))), r = crema.util.url("reviews/new", t, {"parent_url": !0}), crema.info.fullscreen_popup ? this._open_full_screen_popup(r) : this._open_popup(r)) : this.check(function (e) {
|
|
return function () {
|
|
return e.show(!0, t)
|
|
}
|
|
}(this))
|
|
}, r.prototype._open_full_screen_popup = function (e) {
|
|
var t;
|
|
return t = crema.fullscreen_popup.open(this.iframe_id, e), t.on("crema:receive_message", function (e) {
|
|
return function (t, n) {
|
|
switch (n.act) {
|
|
case"set_close":
|
|
return e.close_fullscreen_popup();
|
|
case"set_close_today":
|
|
return e.close_fullscreen_popup(1);
|
|
case"block_popup":
|
|
return e.close_fullscreen_popup(1e3)
|
|
}
|
|
}
|
|
}(this))
|
|
}, r.prototype._open_popup = function (e) {
|
|
var n;
|
|
return n = crema.iframe_manager.create(t("body"), {
|
|
"id": this.iframe_id,
|
|
"src": e,
|
|
"width": "0",
|
|
"height": "0"
|
|
}), crema.browser.is_ie && n.css({"visibility": "hidden"}), n.on("crema:receive_message", function (e) {
|
|
return function (r, o) {
|
|
var i, a, s, c, u;
|
|
switch (o.act) {
|
|
case"set_close":
|
|
return e.hide();
|
|
case"set_close_today":
|
|
return e.hide(1);
|
|
case"block_popup":
|
|
return e.hide(1e3);
|
|
case"init_popup":
|
|
if (a = parseInt(o.direction), s = parseInt(o.offset_x), c = parseInt(o.offset_y), i = {}, i.width = Number(o.width), i.height = Number(o.height), i["z-index"] = 999999, crema.browser.supports_fixed_position()) {
|
|
switch (i.position = "fixed", a) {
|
|
case crema.NineWayDirection.top_left:
|
|
case crema.NineWayDirection.top_center:
|
|
case crema.NineWayDirection.top_right:
|
|
i.top = c;
|
|
break;
|
|
case crema.NineWayDirection.middle_left:
|
|
case crema.NineWayDirection.middle_center:
|
|
case crema.NineWayDirection.middle_right:
|
|
i.top = "50%", i["margin-top"] = i.height * -.5 + c;
|
|
break;
|
|
case crema.NineWayDirection.bottom_left:
|
|
case crema.NineWayDirection.bottom_center:
|
|
case crema.NineWayDirection.bottom_right:
|
|
i.bottom = -c
|
|
}
|
|
switch (a) {
|
|
case crema.NineWayDirection.top_left:
|
|
case crema.NineWayDirection.middle_left:
|
|
case crema.NineWayDirection.bottom_left:
|
|
i.left = s;
|
|
break;
|
|
case crema.NineWayDirection.top_center:
|
|
case crema.NineWayDirection.middle_center:
|
|
case crema.NineWayDirection.bottom_center:
|
|
i.left = "50%", i["margin-left"] = i.width * -.5 + s;
|
|
break;
|
|
case crema.NineWayDirection.top_right:
|
|
case crema.NineWayDirection.middle_right:
|
|
case crema.NineWayDirection.bottom_right:
|
|
i.right = -s
|
|
}
|
|
n.css(i)
|
|
} else {
|
|
switch (i.position = "absolute", a) {
|
|
case crema.NineWayDirection.top_left:
|
|
case crema.NineWayDirection.middle_left:
|
|
case crema.NineWayDirection.bottom_left:
|
|
i.left = s;
|
|
break;
|
|
case crema.NineWayDirection.top_center:
|
|
case crema.NineWayDirection.middle_center:
|
|
case crema.NineWayDirection.bottom_center:
|
|
i.left = "50%", i["margin-left"] = i.width * -.5 + s;
|
|
break;
|
|
case crema.NineWayDirection.top_right:
|
|
case crema.NineWayDirection.middle_right:
|
|
case crema.NineWayDirection.bottom_right:
|
|
i.right = -s
|
|
}
|
|
n.css(i), u = function () {
|
|
var e, t, r, o, s;
|
|
if (s = document.body.scrollTop || (document.documentElement ? document.documentElement.scrollTop : null), null != s) {
|
|
switch (t = crema.browser.width(), e = crema.browser.height(), o = n.width(), r = n.height(), i = {}, a) {
|
|
case crema.NineWayDirection.top_left:
|
|
case crema.NineWayDirection.top_center:
|
|
case crema.NineWayDirection.top_right:
|
|
i.top = s;
|
|
break;
|
|
case crema.NineWayDirection.middle_left:
|
|
case crema.NineWayDirection.middle_center:
|
|
case crema.NineWayDirection.middle_right:
|
|
i.top = s + .5 * e - .5 * r;
|
|
break;
|
|
case crema.NineWayDirection.bottom_left:
|
|
case crema.NineWayDirection.bottom_center:
|
|
case crema.NineWayDirection.bottom_right:
|
|
i.top = s + e - r
|
|
}
|
|
return i.top += c, n.css(i)
|
|
}
|
|
}, u(), t(window).scroll(function () {
|
|
return u()
|
|
}), t(window).resize(function () {
|
|
return u()
|
|
})
|
|
}
|
|
return n.css({"visibility": "visible"}), crema.browser.supports_opacity() ? n.fadeIn() : n.show()
|
|
}
|
|
}
|
|
}(this))
|
|
}, r.prototype.close_fullscreen_popup = function (e) {
|
|
return crema.fullscreen_popup.close(), this.hide(e)
|
|
}, r.prototype.resize_window = function () {
|
|
var e, n, r;
|
|
return r = t(document).width(), e = t(document).height(), n = !1, 576 > r && (r = 720, n = !0), 621 > e && (e = 720, n = !0), n && screen.height < 720 ? (window.resizeTo(r, e), !0) : !1
|
|
}, r
|
|
}(this.PopupBase)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.PcMakeshopPageAnalyzer = function (t) {
|
|
function n() {
|
|
return n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.analyze = function () {
|
|
switch (crema.url.get_path()) {
|
|
case"/shop/shopdetail.html":
|
|
this.page_type = "products#show", this.product_code = crema.url.get_param("branduid");
|
|
break;
|
|
case"/shop/orderend.html":
|
|
case"/shop/board_reviewpop.html":
|
|
this.page_type = "orders#complete", this.order_code = crema.url.get_param("ordernum")
|
|
}
|
|
return this.page_type ? void 0 : n.__super__.analyze.apply(this, arguments)
|
|
}, n
|
|
}(this.PageAnalyzer)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.Cafe24ShopBuilder = function (n) {
|
|
function r() {
|
|
r.__super__.constructor.apply(this, arguments), t("table.tbl_product").each(function () {
|
|
return t(this).find("span.b_use_count").replaceWith('<span class="crema-product-reviews-count" data-product-code=' + (t(this).data("product-code") || t(this).data("product-id")) + ">0</span>\uac1c")
|
|
})
|
|
}
|
|
|
|
return e(r, n), r
|
|
}(this.Cafe24ShopBuilder)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.MakeshopShopBuilder = function (n) {
|
|
function r() {
|
|
r.__super__.constructor.apply(this, arguments), t(".crema-new-review-link[data-product-subcode=''], .crema-new-review-link[data-makeshop-brandcode='']").each(function () {
|
|
var e, n;
|
|
return n = t(this), e = n.closest("tr").find("a[href^='javascript:go_brand']"), e.length > 0 ? n.data("product-subcode", e.attr("href").split("'")[1]) : void 0
|
|
})
|
|
}
|
|
|
|
return e(r, n), r
|
|
}(this.MakeshopShopBuilder)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.LatestReviewsWidget = function (t) {
|
|
function n() {
|
|
this.widget_selector = ".crema-latest-reviews", n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.perform = function (e) {
|
|
var t;
|
|
return t = crema.browser.is_ie && crema.browser.ie_version < 8, crema.util.jsonp("api/v1/reviews", {
|
|
"limit": e.data("count") || 3,
|
|
"date_format": e.data("date-format"),
|
|
"sort": e.data("sort"),
|
|
"encode_uri": t ? 1 : 0
|
|
}, function (n) {
|
|
var r, o, i, a, s, c, u;
|
|
for (e.empty(), s = n.reviews, c = [], o = 0, i = s.length; i > o; o++)u = s[o], t ? (a = decodeURIComponent(u.message), r = decodeURIComponent(u.author)) : (a = u.message, r = u.author), c.push(e.append(crema.Mustache.render(e.data("format"), {
|
|
"product_url": u.url,
|
|
"product_image_url": u.image,
|
|
"message": a,
|
|
"author": r,
|
|
"created_at": u.created_at
|
|
})));
|
|
return c
|
|
}), !1
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.NewReviewLinkWidget = function (t) {
|
|
function n() {
|
|
this.widget_selector = ".crema-new-review-link", n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.perform = function (e) {
|
|
return e.removeAttr("onclick").click(function () {
|
|
return crema.popup.show(!0, {
|
|
"product_subcode": e.data("product-subcode") || e.data("makeshop-brandcode"),
|
|
"product_code": e.data("product-code") || e.data("product-id"),
|
|
"sub_brand_code": e.data("sub-brand-code")
|
|
}), !1
|
|
}), e.is("a") && e.attr("href", "#"), !1
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.PopupWidget = function (t) {
|
|
function n() {
|
|
this.widget_selector = ".crema-popup", n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.perform = function (e) {
|
|
return crema.browser.is_ie && crema.browser.ie_version <= 7 ? crema.window_loaded ? this.show_popup() : setTimeout(function (e) {
|
|
return function () {
|
|
return e.show_popup()
|
|
}
|
|
}(this), 1500) : this.show_popup(), !0
|
|
}, n.prototype.show_popup = function () {
|
|
return crema.popup.show()
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.ProductReviewsWidget = function (t) {
|
|
function n() {
|
|
this.widget_selector = ".crema-product-reviews", n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.perform = function (e) {
|
|
var t, n, r, o, i, a, s;
|
|
return n = "crema-product-reviews-" + this.generate_id(), o = {
|
|
"product_code": this.get_product_code(e),
|
|
"iframe_id": n
|
|
}, r = e.data("order"), r && (o.order = r), s = e.data("widget-id"), null != s && (o.widget_id = s), i = e.data("sub-brand-code"), null != i && (o.sub_brand_code = i), t = e.data("external-widget"),
|
|
a = e.data("widget_env"), a ? o.widget_env = a : t && (o.widget_env = this.openmarket_built_in_without_js), crema.iframe_manager.create(e, {
|
|
"id": n,
|
|
"src": crema.util.url("products/reviews", o, {"parent_url": !0})
|
|
}), !0
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.ProductScoreWidget = function (t) {
|
|
function n() {
|
|
this.widget_selector = ".crema-product-score", n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.perform = function (e) {
|
|
var t, n, r, o, i;
|
|
return n = "crema-product-score-" + this.generate_id(), r = {
|
|
"product_code": e.data("product-code") || e.data("product-id"),
|
|
"iframe_id": n,
|
|
"target_id": e.data("target-id")
|
|
}, i = e.data("widget-id"), null != i && (r.widget_id = i), t = e.data("external-widget"), o = e.data("widget_env"), o ? r.widget_env = o : t && (r.widget_env = this.openmarket_built_in_without_js), crema.iframe_manager.create(e, {
|
|
"id": n,
|
|
"height": "124",
|
|
"src": crema.util.url("products/score", r, {"parent_url": !0})
|
|
}), !0
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.ProductsWidget = function (t) {
|
|
function n() {
|
|
this.widget_selector = ".crema-products", n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.perform = function (e) {
|
|
var t, n, r, o;
|
|
return t = "crema-products-" + this.generate_id(), n = {"iframe_id": t}, o = e.data("widget-id") || e.data("board-id"), null != o && (n.widget_id = o), r = e.data("sub-brand-code"), null != r && (n.sub_brand_code = r), crema.iframe_manager.create(e, {
|
|
"id": t,
|
|
"height": "100%",
|
|
"src": crema.util.url("products", n, {"parent_url": !0})
|
|
}, {"bind_scroll": !0}), !0
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.ReviewSnsPopupWidget = function (t) {
|
|
function n() {
|
|
this.widget_selector = ".crema-review-sns-popup", n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.perform = function (e) {
|
|
return e.removeAttr("onclick").click(function () {
|
|
return crema.review_sns_popup.show(e.data("review-id"), e.data("photo-index") || 1), !1
|
|
}), e.is("a") && e.attr("href", "#"), !1
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
return this.ReviewsWidget = function (t) {
|
|
function n() {
|
|
this.widget_selector = ".crema-reviews", n.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(n, t), n.prototype.perform = function (e) {
|
|
var t, n, r, o, i;
|
|
switch (t = "crema-reviews-" + this.generate_id(), n = {"iframe_id": t}, e.data("type")) {
|
|
case"my-reviews":
|
|
r = "my/reviews";
|
|
break;
|
|
case"user-reviews":
|
|
r = "users/reviews", n.user_code = e.data("user-code");
|
|
break;
|
|
default:
|
|
r = "reviews"
|
|
}
|
|
return i = e.data("widget-id") || e.data("board-id"), null != i && (n.widget_id = i), o = e.data("sub-brand-code"), null != o && (n.sub_brand_code = o), crema.iframe_manager.create(e, {
|
|
"id": t,
|
|
"height": "100%",
|
|
"src": crema.util.url(r, n, {"parent_url": !0})
|
|
}), !0
|
|
}, n
|
|
}(this.Widget)
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e = function (e, n) {
|
|
function r() {
|
|
this.constructor = e
|
|
}
|
|
|
|
for (var o in n)t.call(n, o) && (e[o] = n[o]);
|
|
return r.prototype = n.prototype, e.prototype = new r, e.__super__ = n.prototype, e
|
|
}, t = {}.hasOwnProperty;
|
|
(function (t) {
|
|
var n, r;
|
|
return n = function (n) {
|
|
function r() {
|
|
crema.info.mobile = !1, r.__super__.constructor.apply(this, arguments)
|
|
}
|
|
|
|
return e(r, n), r.prototype.initialize = function () {
|
|
var e;
|
|
return r.__super__.initialize.apply(this, arguments), e = this.widgets(), crema.run = function (t) {
|
|
return function () {
|
|
var t, n, r, o, i;
|
|
if (crema.running)setTimeout(crema.run, 1e3); else if (crema.running = !0, window.postMessage) {
|
|
for (n = 0, r = e.length; r > n; n++)i = e[n], i.attach();
|
|
crema.running = !1
|
|
} else o = e.slice(0), (t = function () {
|
|
for (var e; o.length > 0;) {
|
|
if (e = o[0].attach_one()) {
|
|
o.length > 0 && setTimeout(t, 1e3);
|
|
break
|
|
}
|
|
o.shift()
|
|
}
|
|
return 0 === o.length ? crema.running = !1 : void 0
|
|
})();
|
|
return window.cremaOnLoad && !window.cremaOnLoad.hasRun ? (window.cremaOnLoad.hasRun = !0, window.cremaOnLoad()) : void 0
|
|
}
|
|
}(this), !crema.browser.is_ie || crema.browser.ie_version > 8 ? crema.run() : setTimeout(function (e) {
|
|
return function () {
|
|
return crema.run()
|
|
}
|
|
}(this), 1e3), t(document).ready(function (e) {
|
|
return function () {
|
|
return crema.run()
|
|
}
|
|
}(this)), crema.window_loaded = !1, t(window).load(function (e) {
|
|
return function () {
|
|
return crema.window_loaded = !0
|
|
}
|
|
}(this))
|
|
}, r.prototype.widget_types = function () {
|
|
return [crema.ShowWidget, crema.HideWidget, crema.NewReviewLinkWidget, crema.LatestReviewsWidget, crema.ProductReviewsCountWidget, crema.MyReviewsCountWidget, crema.ReviewSnsPopupWidget, crema.ReviewsWidget, crema.ProductsWidget, crema.ProductScoreWidget, crema.ProductReviewsWidget, crema.PopupWidget]
|
|
}, r
|
|
}(this.MainBase), r = new n, r.initialize()
|
|
}).call(crema, jQuery)
|
|
}.call(this), function () {
|
|
var e;
|
|
e = "1.4.4.1"
|
|
}.call(this), $.noConflict(!0); |