META-INF.resources.scripts.yahoo-dom-event.js Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of base Show documentation
Show all versions of base Show documentation
GiavaCMS Content Management System: Base Subsystem
The newest version!
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.1
*/
if (typeof YAHOO == "undefined") {
var YAHOO = {};
}
YAHOO.namespace = function() {
var A = arguments, E = null, C, B, D;
for (C = 0; C < A.length; C = C + 1) {
D = A[C].split(".");
E = YAHOO;
for (B = (D[0] == "YAHOO") ? 1 : 0; B < D.length; B = B + 1) {
E[D[B]] = E[D[B]] || {};
E = E[D[B]];
}
}
return E;
};
YAHOO.log = function(D, A, C) {
var B = YAHOO.widget.Logger;
if (B && B.log) {
return B.log(D, A, C);
} else {
return false;
}
};
YAHOO.register = function(A, E, D) {
var I = YAHOO.env.modules;
if (!I[A]) {
I[A] = {
versions : [],
builds : []
};
}
var B = I[A], H = D.version, G = D.build, F = YAHOO.env.listeners;
B.name = A;
B.version = H;
B.build = G;
B.versions.push(H);
B.builds.push(G);
B.mainClass = E;
for ( var C = 0; C < F.length; C = C + 1) {
F[C](B);
}
if (E) {
E.VERSION = H;
E.BUILD = G;
} else {
YAHOO.log("mainClass is undefined for module " + A, "warn");
}
};
YAHOO.env = YAHOO.env || {
modules : [],
listeners : []
};
YAHOO.env.getVersion = function(A) {
return YAHOO.env.modules[A] || null;
};
YAHOO.env.ua = function() {
var C = {
ie : 0,
opera : 0,
gecko : 0,
webkit : 0
};
var B = navigator.userAgent, A;
if ((/KHTML/).test(B)) {
C.webkit = 1;
}
A = B.match(/AppleWebKit\/([^\s]*)/);
if (A && A[1]) {
C.webkit = parseFloat(A[1]);
}
if (!C.webkit) {
A = B.match(/Opera[\s\/]([^\s]*)/);
if (A && A[1]) {
C.opera = parseFloat(A[1]);
} else {
A = B.match(/MSIE\s([^;]*)/);
if (A && A[1]) {
C.ie = parseFloat(A[1]);
} else {
A = B.match(/Gecko\/([^\s]*)/);
if (A) {
C.gecko = 1;
A = B.match(/rv:([^\s\)]*)/);
if (A && A[1]) {
C.gecko = parseFloat(A[1]);
}
}
}
}
}
return C;
}();
(function() {
YAHOO.namespace("util", "widget", "example");
if ("undefined" !== typeof YAHOO_config) {
var B = YAHOO_config.listener, A = YAHOO.env.listeners, D = true, C;
if (B) {
for (C = 0; C < A.length; C = C + 1) {
if (A[C] == B) {
D = false;
break;
}
}
if (D) {
A.push(B);
}
}
}
})();
YAHOO.lang = {
isArray : function(B) {
if (B) {
var A = YAHOO.lang;
return A.isNumber(B.length) && A.isFunction(B.splice)
&& !A.hasOwnProperty(B.length);
}
return false;
},
isBoolean : function(A) {
return typeof A === "boolean";
},
isFunction : function(A) {
return typeof A === "function";
},
isNull : function(A) {
return A === null;
},
isNumber : function(A) {
return typeof A === "number" && isFinite(A);
},
isObject : function(A) {
return (A && (typeof A === "object" || YAHOO.lang.isFunction(A))) || false;
},
isString : function(A) {
return typeof A === "string";
},
isUndefined : function(A) {
return typeof A === "undefined";
},
hasOwnProperty : function(A, B) {
if (Object.prototype.hasOwnProperty) {
return A.hasOwnProperty(B);
}
return !YAHOO.lang.isUndefined(A[B])
&& A.constructor.prototype[B] !== A[B];
},
_IEEnumFix : function(C, B) {
if (YAHOO.env.ua.ie) {
var E = [ "toString", "valueOf" ], A;
for (A = 0; A < E.length; A = A + 1) {
var F = E[A], D = B[F];
if (YAHOO.lang.isFunction(D) && D != Object.prototype[F]) {
C[F] = D;
}
}
}
},
extend : function(D, E, C) {
if (!E || !D) {
throw new Error(
"YAHOO.lang.extend failed, please check that all dependencies are included.");
}
var B = function() {
};
B.prototype = E.prototype;
D.prototype = new B();
D.prototype.constructor = D;
D.superclass = E.prototype;
if (E.prototype.constructor == Object.prototype.constructor) {
E.prototype.constructor = E;
}
if (C) {
for ( var A in C) {
D.prototype[A] = C[A];
}
YAHOO.lang._IEEnumFix(D.prototype, C);
}
},
augmentObject : function(E, D) {
if (!D || !E) {
throw new Error("Absorb failed, verify dependencies.");
}
var A = arguments, C, F, B = A[2];
if (B && B !== true) {
for (C = 2; C < A.length; C = C + 1) {
E[A[C]] = D[A[C]];
}
} else {
for (F in D) {
if (B || !E[F]) {
E[F] = D[F];
}
}
YAHOO.lang._IEEnumFix(E, D);
}
},
augmentProto : function(D, C) {
if (!C || !D) {
throw new Error("Augment failed, verify dependencies.");
}
var A = [ D.prototype, C.prototype ];
for ( var B = 2; B < arguments.length; B = B + 1) {
A.push(arguments[B]);
}
YAHOO.lang.augmentObject.apply(this, A);
},
dump : function(A, G) {
var C = YAHOO.lang, D, F, I = [], J = "{...}", B = "f(){...}", H = ", ", E = " => ";
if (!C.isObject(A)) {
return A + "";
} else {
if (A instanceof Date || ("nodeType" in A && "tagName" in A)) {
return A;
} else {
if (C.isFunction(A)) {
return B;
}
}
}
G = (C.isNumber(G)) ? G : 3;
if (C.isArray(A)) {
I.push("[");
for (D = 0, F = A.length; D < F; D = D + 1) {
if (C.isObject(A[D])) {
I.push((G > 0) ? C.dump(A[D], G - 1) : J);
} else {
I.push(A[D]);
}
I.push(H);
}
if (I.length > 1) {
I.pop();
}
I.push("]");
} else {
I.push("{");
for (D in A) {
if (C.hasOwnProperty(A, D)) {
I.push(D + E);
if (C.isObject(A[D])) {
I.push((G > 0) ? C.dump(A[D], G - 1) : J);
} else {
I.push(A[D]);
}
I.push(H);
}
}
if (I.length > 1) {
I.pop();
}
I.push("}");
}
return I.join("");
},
substitute : function(Q, B, J) {
var G, F, E, M, N, P, D = YAHOO.lang, L = [], C, H = "dump", K = " ", A = "{", O = "}";
for (;;) {
G = Q.lastIndexOf(A);
if (G < 0) {
break;
}
F = Q.indexOf(O, G);
if (G + 1 >= F) {
break;
}
C = Q.substring(G + 1, F);
M = C;
P = null;
E = M.indexOf(K);
if (E > -1) {
P = M.substring(E + 1);
M = M.substring(0, E);
}
N = B[M];
if (J) {
N = J(M, N, P);
}
if (D.isObject(N)) {
if (D.isArray(N)) {
N = D.dump(N, parseInt(P, 10));
} else {
P = P || "";
var I = P.indexOf(H);
if (I > -1) {
P = P.substring(4);
}
if (N.toString === Object.prototype.toString || I > -1) {
N = D.dump(N, parseInt(P, 10));
} else {
N = N.toString();
}
}
} else {
if (!D.isString(N) && !D.isNumber(N)) {
N = "~-" + L.length + "-~";
L[L.length] = C;
}
}
Q = Q.substring(0, G) + N + Q.substring(F + 1);
}
for (G = L.length - 1; G >= 0; G = G - 1) {
Q = Q.replace(new RegExp("~-" + G + "-~"), "{" + L[G] + "}", "g");
}
return Q;
},
trim : function(A) {
try {
return A.replace(/^\s+|\s+$/g, "");
} catch (B) {
return A;
}
},
merge : function() {
var C = {}, A = arguments, B;
for (B = 0; B < A.length; B = B + 1) {
YAHOO.lang.augmentObject(C, A[B], true);
}
return C;
},
isValue : function(B) {
var A = YAHOO.lang;
return (A.isObject(B) || A.isString(B) || A.isNumber(B) || A
.isBoolean(B));
}
};
YAHOO.util.Lang = YAHOO.lang;
YAHOO.lang.augment = YAHOO.lang.augmentProto;
YAHOO.augment = YAHOO.lang.augmentProto;
YAHOO.extend = YAHOO.lang.extend;
YAHOO.register("yahoo", YAHOO, {
version : "2.3.1",
build : "541"
});
(function() {
var B = YAHOO.util, K, I, H = 0, J = {}, F = {};
var C = YAHOO.env.ua.opera, L = YAHOO.env.ua.webkit, A = YAHOO.env.ua.gecko, G = YAHOO.env.ua.ie;
var E = {
HYPHEN : /(-[a-z])/i,
ROOT_TAG : /^body|html$/i
};
var M = function(O) {
if (!E.HYPHEN.test(O)) {
return O;
}
if (J[O]) {
return J[O];
}
var P = O;
while (E.HYPHEN.exec(P)) {
P = P.replace(RegExp.$1, RegExp.$1.substr(1).toUpperCase());
}
J[O] = P;
return P;
};
var N = function(P) {
var O = F[P];
if (!O) {
O = new RegExp("(?:^|\\s+)" + P + "(?:\\s+|$)");
F[P] = O;
}
return O;
};
if (document.defaultView && document.defaultView.getComputedStyle) {
K = function(O, R) {
var Q = null;
if (R == "float") {
R = "cssFloat";
}
var P = document.defaultView.getComputedStyle(O, "");
if (P) {
Q = P[M(R)];
}
return O.style[R] || Q;
};
} else {
if (document.documentElement.currentStyle && G) {
K = function(O, Q) {
switch (M(Q)) {
case "opacity":
var S = 100;
try {
S = O.filters["DXImageTransform.Microsoft.Alpha"].opacity;
} catch (R) {
try {
S = O.filters("alpha").opacity;
} catch (R) {
}
}
return S / 100;
case "float":
Q = "styleFloat";
default:
var P = O.currentStyle ? O.currentStyle[Q] : null;
return (O.style[Q] || P);
}
};
} else {
K = function(O, P) {
return O.style[P];
};
}
}
if (G) {
I = function(O, P, Q) {
switch (P) {
case "opacity":
if (YAHOO.lang.isString(O.style.filter)) {
O.style.filter = "alpha(opacity=" + Q * 100 + ")";
if (!O.currentStyle || !O.currentStyle.hasLayout) {
O.style.zoom = 1;
}
}
break;
case "float":
P = "styleFloat";
default:
O.style[P] = Q;
}
};
} else {
I = function(O, P, Q) {
if (P == "float") {
P = "cssFloat";
}
O.style[P] = Q;
};
}
var D = function(O, P) {
return O && O.nodeType == 1 && (!P || P(O));
};
YAHOO.util.Dom = {
get : function(Q) {
if (Q && (Q.tagName || Q.item)) {
return Q;
}
if (YAHOO.lang.isString(Q) || !Q) {
return document.getElementById(Q);
}
if (Q.length !== undefined) {
var R = [];
for ( var P = 0, O = Q.length; P < O; ++P) {
R[R.length] = B.Dom.get(Q[P]);
}
return R;
}
return Q;
},
getStyle : function(O, Q) {
Q = M(Q);
var P = function(R) {
return K(R, Q);
};
return B.Dom.batch(O, P, B.Dom, true);
},
setStyle : function(O, Q, R) {
Q = M(Q);
var P = function(S) {
I(S, Q, R);
};
B.Dom.batch(O, P, B.Dom, true);
},
getXY : function(O) {
var P = function(R) {
if ((R.parentNode === null || R.offsetParent === null || this
.getStyle(R, "display") == "none")
&& R != document.body) {
return false;
}
var Q = null;
var V = [];
var S;
var T = R.ownerDocument;
if (R.getBoundingClientRect) {
S = R.getBoundingClientRect();
return [
S.left
+ B.Dom
.getDocumentScrollLeft(R.ownerDocument),
S.top + B.Dom.getDocumentScrollTop(R.ownerDocument) ];
} else {
V = [ R.offsetLeft, R.offsetTop ];
Q = R.offsetParent;
var U = this.getStyle(R, "position") == "absolute";
if (Q != R) {
while (Q) {
V[0] += Q.offsetLeft;
V[1] += Q.offsetTop;
if (L
&& !U
&& this.getStyle(Q, "position") == "absolute") {
U = true;
}
Q = Q.offsetParent;
}
}
if (L && U) {
V[0] -= R.ownerDocument.body.offsetLeft;
V[1] -= R.ownerDocument.body.offsetTop;
}
}
Q = R.parentNode;
while (Q.tagName && !E.ROOT_TAG.test(Q.tagName)) {
if (B.Dom.getStyle(Q, "display").search(
/^inline|table-row.*$/i)) {
V[0] -= Q.scrollLeft;
V[1] -= Q.scrollTop;
}
Q = Q.parentNode;
}
return V;
};
return B.Dom.batch(O, P, B.Dom, true);
},
getX : function(O) {
var P = function(Q) {
return B.Dom.getXY(Q)[0];
};
return B.Dom.batch(O, P, B.Dom, true);
},
getY : function(O) {
var P = function(Q) {
return B.Dom.getXY(Q)[1];
};
return B.Dom.batch(O, P, B.Dom, true);
},
setXY : function(O, R, Q) {
var P = function(U) {
var T = this.getStyle(U, "position");
if (T == "static") {
this.setStyle(U, "position", "relative");
T = "relative";
}
var W = this.getXY(U);
if (W === false) {
return false;
}
var V = [ parseInt(this.getStyle(U, "left"), 10),
parseInt(this.getStyle(U, "top"), 10) ];
if (isNaN(V[0])) {
V[0] = (T == "relative") ? 0 : U.offsetLeft;
}
if (isNaN(V[1])) {
V[1] = (T == "relative") ? 0 : U.offsetTop;
}
if (R[0] !== null) {
U.style.left = R[0] - W[0] + V[0] + "px";
}
if (R[1] !== null) {
U.style.top = R[1] - W[1] + V[1] + "px";
}
if (!Q) {
var S = this.getXY(U);
if ((R[0] !== null && S[0] != R[0])
|| (R[1] !== null && S[1] != R[1])) {
this.setXY(U, R, true);
}
}
};
B.Dom.batch(O, P, B.Dom, true);
},
setX : function(P, O) {
B.Dom.setXY(P, [ O, null ]);
},
setY : function(O, P) {
B.Dom.setXY(O, [ null, P ]);
},
getRegion : function(O) {
var P = function(Q) {
if ((Q.parentNode === null || Q.offsetParent === null || this
.getStyle(Q, "display") == "none")
&& Q != document.body) {
return false;
}
var R = B.Region.getRegion(Q);
return R;
};
return B.Dom.batch(O, P, B.Dom, true);
},
getClientWidth : function() {
return B.Dom.getViewportWidth();
},
getClientHeight : function() {
return B.Dom.getViewportHeight();
},
getElementsByClassName : function(S, W, T, U) {
W = W || "*";
T = (T) ? B.Dom.get(T) : null || document;
if (!T) {
return [];
}
var P = [], O = T.getElementsByTagName(W), V = N(S);
for ( var Q = 0, R = O.length; Q < R; ++Q) {
if (V.test(O[Q].className)) {
P[P.length] = O[Q];
if (U) {
U.call(O[Q], O[Q]);
}
}
}
return P;
},
hasClass : function(Q, P) {
var O = N(P);
var R = function(S) {
return O.test(S.className);
};
return B.Dom.batch(Q, R, B.Dom, true);
},
addClass : function(P, O) {
var Q = function(R) {
if (this.hasClass(R, O)) {
return false;
}
R.className = YAHOO.lang.trim( [ R.className, O ].join(" "));
return true;
};
return B.Dom.batch(P, Q, B.Dom, true);
},
removeClass : function(Q, P) {
var O = N(P);
var R = function(S) {
if (!this.hasClass(S, P)) {
return false;
}
var T = S.className;
S.className = T.replace(O, " ");
if (this.hasClass(S, P)) {
this.removeClass(S, P);
}
S.className = YAHOO.lang.trim(S.className);
return true;
};
return B.Dom.batch(Q, R, B.Dom, true);
},
replaceClass : function(R, P, O) {
if (!O || P === O) {
return false;
}
var Q = N(P);
var S = function(T) {
if (!this.hasClass(T, P)) {
this.addClass(T, O);
return true;
}
T.className = T.className.replace(Q, " " + O + " ");
if (this.hasClass(T, P)) {
this.replaceClass(T, P, O);
}
T.className = YAHOO.lang.trim(T.className);
return true;
};
return B.Dom.batch(R, S, B.Dom, true);
},
generateId : function(O, Q) {
Q = Q || "yui-gen";
var P = function(R) {
if (R && R.id) {
return R.id;
}
var S = Q + H++;
if (R) {
R.id = S;
}
return S;
};
return B.Dom.batch(O, P, B.Dom, true) || P.apply(B.Dom, arguments);
},
isAncestor : function(P, Q) {
P = B.Dom.get(P);
if (!P || !Q) {
return false;
}
var O = function(R) {
if (P.contains && R.nodeType && !L) {
return P.contains(R);
} else {
if (P.compareDocumentPosition && R.nodeType) {
return !!(P.compareDocumentPosition(R) & 16);
} else {
if (R.nodeType) {
return !!this.getAncestorBy(R, function(S) {
return S == P;
});
}
}
}
return false;
};
return B.Dom.batch(Q, O, B.Dom, true);
},
inDocument : function(O) {
var P = function(Q) {
if (L) {
while (Q = Q.parentNode) {
if (Q == document.documentElement) {
return true;
}
}
return false;
}
return this.isAncestor(document.documentElement, Q);
};
return B.Dom.batch(O, P, B.Dom, true);
},
getElementsBy : function(V, P, Q, S) {
P = P || "*";
Q = (Q) ? B.Dom.get(Q) : null || document;
if (!Q) {
return [];
}
var R = [], U = Q.getElementsByTagName(P);
for ( var T = 0, O = U.length; T < O; ++T) {
if (V(U[T])) {
R[R.length] = U[T];
if (S) {
S(U[T]);
}
}
}
return R;
},
batch : function(S, V, U, Q) {
S = (S && (S.tagName || S.item)) ? S : B.Dom.get(S);
if (!S || !V) {
return false;
}
var R = (Q) ? U : window;
if (S.tagName || S.length === undefined) {
return V.call(R, S, U);
}
var T = [];
for ( var P = 0, O = S.length; P < O; ++P) {
T[T.length] = V.call(R, S[P], U);
}
return T;
},
getDocumentHeight : function() {
var P = (document.compatMode != "CSS1Compat") ? document.body.scrollHeight
: document.documentElement.scrollHeight;
var O = Math.max(P, B.Dom.getViewportHeight());
return O;
},
getDocumentWidth : function() {
var P = (document.compatMode != "CSS1Compat") ? document.body.scrollWidth
: document.documentElement.scrollWidth;
var O = Math.max(P, B.Dom.getViewportWidth());
return O;
},
getViewportHeight : function() {
var O = self.innerHeight;
var P = document.compatMode;
if ((P || G) && !C) {
O = (P == "CSS1Compat") ? document.documentElement.clientHeight
: document.body.clientHeight;
}
return O;
},
getViewportWidth : function() {
var O = self.innerWidth;
var P = document.compatMode;
if (P || G) {
O = (P == "CSS1Compat") ? document.documentElement.clientWidth
: document.body.clientWidth;
}
return O;
},
getAncestorBy : function(O, P) {
while (O = O.parentNode) {
if (D(O, P)) {
return O;
}
}
return null;
},
getAncestorByClassName : function(P, O) {
P = B.Dom.get(P);
if (!P) {
return null;
}
var Q = function(R) {
return B.Dom.hasClass(R, O);
};
return B.Dom.getAncestorBy(P, Q);
},
getAncestorByTagName : function(P, O) {
P = B.Dom.get(P);
if (!P) {
return null;
}
var Q = function(R) {
return R.tagName && R.tagName.toUpperCase() == O.toUpperCase();
};
return B.Dom.getAncestorBy(P, Q);
},
getPreviousSiblingBy : function(O, P) {
while (O) {
O = O.previousSibling;
if (D(O, P)) {
return O;
}
}
return null;
},
getPreviousSibling : function(O) {
O = B.Dom.get(O);
if (!O) {
return null;
}
return B.Dom.getPreviousSiblingBy(O);
},
getNextSiblingBy : function(O, P) {
while (O) {
O = O.nextSibling;
if (D(O, P)) {
return O;
}
}
return null;
},
getNextSibling : function(O) {
O = B.Dom.get(O);
if (!O) {
return null;
}
return B.Dom.getNextSiblingBy(O);
},
getFirstChildBy : function(O, Q) {
var P = (D(O.firstChild, Q)) ? O.firstChild : null;
return P || B.Dom.getNextSiblingBy(O.firstChild, Q);
},
getFirstChild : function(O, P) {
O = B.Dom.get(O);
if (!O) {
return null;
}
return B.Dom.getFirstChildBy(O);
},
getLastChildBy : function(O, Q) {
if (!O) {
return null;
}
var P = (D(O.lastChild, Q)) ? O.lastChild : null;
return P || B.Dom.getPreviousSiblingBy(O.lastChild, Q);
},
getLastChild : function(O) {
O = B.Dom.get(O);
return B.Dom.getLastChildBy(O);
},
getChildrenBy : function(P, R) {
var Q = B.Dom.getFirstChildBy(P, R);
var O = Q ? [ Q ] : [];
B.Dom.getNextSiblingBy(Q, function(S) {
if (!R || R(S)) {
O[O.length] = S;
}
return false;
});
return O;
},
getChildren : function(O) {
O = B.Dom.get(O);
if (!O) {
}
return B.Dom.getChildrenBy(O);
},
getDocumentScrollLeft : function(O) {
O = O || document;
return Math.max(O.documentElement.scrollLeft, O.body.scrollLeft);
},
getDocumentScrollTop : function(O) {
O = O || document;
return Math.max(O.documentElement.scrollTop, O.body.scrollTop);
},
insertBefore : function(P, O) {
P = B.Dom.get(P);
O = B.Dom.get(O);
if (!P || !O || !O.parentNode) {
return null;
}
return O.parentNode.insertBefore(P, O);
},
insertAfter : function(P, O) {
P = B.Dom.get(P);
O = B.Dom.get(O);
if (!P || !O || !O.parentNode) {
return null;
}
if (O.nextSibling) {
return O.parentNode.insertBefore(P, O.nextSibling);
} else {
return O.parentNode.appendChild(P);
}
}
};
})();
YAHOO.util.Region = function(C, D, A, B) {
this.top = C;
this[1] = C;
this.right = D;
this.bottom = A;
this.left = B;
this[0] = B;
};
YAHOO.util.Region.prototype.contains = function(A) {
return (A.left >= this.left && A.right <= this.right && A.top >= this.top && A.bottom <= this.bottom);
};
YAHOO.util.Region.prototype.getArea = function() {
return ((this.bottom - this.top) * (this.right - this.left));
};
YAHOO.util.Region.prototype.intersect = function(E) {
var C = Math.max(this.top, E.top);
var D = Math.min(this.right, E.right);
var A = Math.min(this.bottom, E.bottom);
var B = Math.max(this.left, E.left);
if (A >= C && D >= B) {
return new YAHOO.util.Region(C, D, A, B);
} else {
return null;
}
};
YAHOO.util.Region.prototype.union = function(E) {
var C = Math.min(this.top, E.top);
var D = Math.max(this.right, E.right);
var A = Math.max(this.bottom, E.bottom);
var B = Math.min(this.left, E.left);
return new YAHOO.util.Region(C, D, A, B);
};
YAHOO.util.Region.prototype.toString = function() {
return ("Region {top: " + this.top + ", right: " + this.right
+ ", bottom: " + this.bottom + ", left: " + this.left + "}");
};
YAHOO.util.Region.getRegion = function(D) {
var F = YAHOO.util.Dom.getXY(D);
var C = F[1];
var E = F[0] + D.offsetWidth;
var A = F[1] + D.offsetHeight;
var B = F[0];
return new YAHOO.util.Region(C, E, A, B);
};
YAHOO.util.Point = function(A, B) {
if (YAHOO.lang.isArray(A)) {
B = A[1];
A = A[0];
}
this.x = this.right = this.left = this[0] = A;
this.y = this.top = this.bottom = this[1] = B;
};
YAHOO.util.Point.prototype = new YAHOO.util.Region();
YAHOO.register("dom", YAHOO.util.Dom, {
version : "2.3.1",
build : "541"
});
YAHOO.util.CustomEvent = function(D, B, C, A) {
this.type = D;
this.scope = B || window;
this.silent = C;
this.signature = A || YAHOO.util.CustomEvent.LIST;
this.subscribers = [];
if (!this.silent) {
}
var E = "_YUICEOnSubscribe";
if (D !== E) {
this.subscribeEvent = new YAHOO.util.CustomEvent(E, this, true);
}
this.lastError = null;
};
YAHOO.util.CustomEvent.LIST = 0;
YAHOO.util.CustomEvent.FLAT = 1;
YAHOO.util.CustomEvent.prototype = {
subscribe : function(B, C, A) {
if (!B) {
throw new Error("Invalid callback for subscriber to '" + this.type
+ "'");
}
if (this.subscribeEvent) {
this.subscribeEvent.fire(B, C, A);
}
this.subscribers.push(new YAHOO.util.Subscriber(B, C, A));
},
unsubscribe : function(D, F) {
if (!D) {
return this.unsubscribeAll();
}
var E = false;
for ( var B = 0, A = this.subscribers.length; B < A; ++B) {
var C = this.subscribers[B];
if (C && C.contains(D, F)) {
this._delete(B);
E = true;
}
}
return E;
},
fire : function() {
var E = this.subscribers.length;
if (!E && this.silent) {
return true;
}
var H = [], G = true, D, I = false;
for (D = 0; D < arguments.length; ++D) {
H.push(arguments[D]);
}
var A = H.length;
if (!this.silent) {
}
for (D = 0; D < E; ++D) {
var L = this.subscribers[D];
if (!L) {
I = true;
} else {
if (!this.silent) {
}
var K = L.getScope(this.scope);
if (this.signature == YAHOO.util.CustomEvent.FLAT) {
var B = null;
if (H.length > 0) {
B = H[0];
}
try {
G = L.fn.call(K, B, L.obj);
} catch (F) {
this.lastError = F;
}
} else {
try {
G = L.fn.call(K, this.type, H, L.obj);
} catch (F) {
this.lastError = F;
}
}
if (false === G) {
if (!this.silent) {
}
return false;
}
}
}
if (I) {
var J = [], C = this.subscribers;
for (D = 0, E = C.length; D < E; D = D + 1) {
J.push(C[D]);
}
this.subscribers = J;
}
return true;
},
unsubscribeAll : function() {
for ( var B = 0, A = this.subscribers.length; B < A; ++B) {
this._delete(A - 1 - B);
}
this.subscribers = [];
return B;
},
_delete : function(A) {
var B = this.subscribers[A];
if (B) {
delete B.fn;
delete B.obj;
}
this.subscribers[A] = null;
},
toString : function() {
return "CustomEvent: '" + this.type + "', scope: " + this.scope;
}
};
YAHOO.util.Subscriber = function(B, C, A) {
this.fn = B;
this.obj = YAHOO.lang.isUndefined(C) ? null : C;
this.override = A;
};
YAHOO.util.Subscriber.prototype.getScope = function(A) {
if (this.override) {
if (this.override === true) {
return this.obj;
} else {
return this.override;
}
}
return A;
};
YAHOO.util.Subscriber.prototype.contains = function(A, B) {
if (B) {
return (this.fn == A && this.obj == B);
} else {
return (this.fn == A);
}
};
YAHOO.util.Subscriber.prototype.toString = function() {
return "Subscriber { obj: " + this.obj + ", override: "
+ (this.override || "no") + " }";
};
if (!YAHOO.util.Event) {
YAHOO.util.Event = function() {
var H = false;
var J = false;
var I = [];
var K = [];
var G = [];
var E = [];
var C = 0;
var F = [];
var B = [];
var A = 0;
var D = {
63232 : 38,
63233 : 40,
63234 : 37,
63235 : 39
};
return {
POLL_RETRYS : 4000,
POLL_INTERVAL : 10,
EL : 0,
TYPE : 1,
FN : 2,
WFN : 3,
UNLOAD_OBJ : 3,
ADJ_SCOPE : 4,
OBJ : 5,
OVERRIDE : 6,
lastError : null,
isSafari : YAHOO.env.ua.webkit,
webkit : YAHOO.env.ua.webkit,
isIE : YAHOO.env.ua.ie,
_interval : null,
startInterval : function() {
if (!this._interval) {
var L = this;
var M = function() {
L._tryPreloadAttach();
};
this._interval = setInterval(M, this.POLL_INTERVAL);
}
},
onAvailable : function(N, L, O, M) {
F.push( {
id : N,
fn : L,
obj : O,
override : M,
checkReady : false
});
C = this.POLL_RETRYS;
this.startInterval();
},
onDOMReady : function(L, N, M) {
if (J) {
setTimeout(function() {
var O = window;
if (M) {
if (M === true) {
O = N;
} else {
O = M;
}
}
L.call(O, "DOMReady", [], N);
}, 0);
} else {
this.DOMReadyEvent.subscribe(L, N, M);
}
},
onContentReady : function(N, L, O, M) {
F.push( {
id : N,
fn : L,
obj : O,
override : M,
checkReady : true
});
C = this.POLL_RETRYS;
this.startInterval();
},
addListener : function(N, L, W, R, M) {
if (!W || !W.call) {
return false;
}
if (this._isValidCollection(N)) {
var X = true;
for ( var S = 0, U = N.length; S < U; ++S) {
X = this.on(N[S], L, W, R, M) && X;
}
return X;
} else {
if (YAHOO.lang.isString(N)) {
var Q = this.getEl(N);
if (Q) {
N = Q;
} else {
this.onAvailable(N, function() {
YAHOO.util.Event.on(N, L, W, R, M);
});
return true;
}
}
}
if (!N) {
return false;
}
if ("unload" == L && R !== this) {
K[K.length] = [ N, L, W, R, M ];
return true;
}
var Z = N;
if (M) {
if (M === true) {
Z = R;
} else {
Z = M;
}
}
var O = function(a) {
return W.call(Z, YAHOO.util.Event.getEvent(a, N), R);
};
var Y = [ N, L, W, O, Z, R, M ];
var T = I.length;
I[T] = Y;
if (this.useLegacyEvent(N, L)) {
var P = this.getLegacyIndex(N, L);
if (P == -1 || N != G[P][0]) {
P = G.length;
B[N.id + L] = P;
G[P] = [ N, L, N["on" + L] ];
E[P] = [];
N["on" + L] = function(a) {
YAHOO.util.Event.fireLegacyEvent(YAHOO.util.Event
.getEvent(a), P);
};
}
E[P].push(Y);
} else {
try {
this._simpleAdd(N, L, O, false);
} catch (V) {
this.lastError = V;
this.removeListener(N, L, W);
return false;
}
}
return true;
},
fireLegacyEvent : function(P, N) {
var R = true, L, T, S, U, Q;
T = E[N];
for ( var M = 0, O = T.length; M < O; ++M) {
S = T[M];
if (S && S[this.WFN]) {
U = S[this.ADJ_SCOPE];
Q = S[this.WFN].call(U, P);
R = (R && Q);
}
}
L = G[N];
if (L && L[2]) {
L[2](P);
}
return R;
},
getLegacyIndex : function(M, N) {
var L = this.generateId(M) + N;
if (typeof B[L] == "undefined") {
return -1;
} else {
return B[L];
}
},
useLegacyEvent : function(M, N) {
if (this.webkit && ("click" == N || "dblclick" == N)) {
var L = parseInt(this.webkit, 10);
if (!isNaN(L) && L < 418) {
return true;
}
}
return false;
},
removeListener : function(M, L, U) {
var P, S, W;
if (typeof M == "string") {
M = this.getEl(M);
} else {
if (this._isValidCollection(M)) {
var V = true;
for (P = 0, S = M.length; P < S; ++P) {
V = (this.removeListener(M[P], L, U) && V);
}
return V;
}
}
if (!U || !U.call) {
return this.purgeElement(M, false, L);
}
if ("unload" == L) {
for (P = 0, S = K.length; P < S; P++) {
W = K[P];
if (W && W[0] == M && W[1] == L && W[2] == U) {
K[P] = null;
return true;
}
}
return false;
}
var Q = null;
var R = arguments[3];
if ("undefined" === typeof R) {
R = this._getCacheIndex(M, L, U);
}
if (R >= 0) {
Q = I[R];
}
if (!M || !Q) {
return false;
}
if (this.useLegacyEvent(M, L)) {
var O = this.getLegacyIndex(M, L);
var N = E[O];
if (N) {
for (P = 0, S = N.length; P < S; ++P) {
W = N[P];
if (W && W[this.EL] == M && W[this.TYPE] == L
&& W[this.FN] == U) {
N[P] = null;
break;
}
}
}
} else {
try {
this._simpleRemove(M, L, Q[this.WFN], false);
} catch (T) {
this.lastError = T;
return false;
}
}
delete I[R][this.WFN];
delete I[R][this.FN];
I[R] = null;
return true;
},
getTarget : function(N, M) {
var L = N.target || N.srcElement;
return this.resolveTextNode(L);
},
resolveTextNode : function(L) {
if (L && 3 == L.nodeType) {
return L.parentNode;
} else {
return L;
}
},
getPageX : function(M) {
var L = M.pageX;
if (!L && 0 !== L) {
L = M.clientX || 0;
if (this.isIE) {
L += this._getScrollLeft();
}
}
return L;
},
getPageY : function(L) {
var M = L.pageY;
if (!M && 0 !== M) {
M = L.clientY || 0;
if (this.isIE) {
M += this._getScrollTop();
}
}
return M;
},
getXY : function(L) {
return [ this.getPageX(L), this.getPageY(L) ];
},
getRelatedTarget : function(M) {
var L = M.relatedTarget;
if (!L) {
if (M.type == "mouseout") {
L = M.toElement;
} else {
if (M.type == "mouseover") {
L = M.fromElement;
}
}
}
return this.resolveTextNode(L);
},
getTime : function(N) {
if (!N.time) {
var M = new Date().getTime();
try {
N.time = M;
} catch (L) {
this.lastError = L;
return M;
}
}
return N.time;
},
stopEvent : function(L) {
this.stopPropagation(L);
this.preventDefault(L);
},
stopPropagation : function(L) {
if (L.stopPropagation) {
L.stopPropagation();
} else {
L.cancelBubble = true;
}
},
preventDefault : function(L) {
if (L.preventDefault) {
L.preventDefault();
} else {
L.returnValue = false;
}
},
getEvent : function(Q, O) {
var P = Q || window.event;
if (!P) {
var R = this.getEvent.caller;
while (R) {
P = R.arguments[0];
if (P && Event == P.constructor) {
break;
}
R = R.caller;
}
}
if (P && this.isIE) {
try {
var N = P.srcElement;
if (N) {
var M = N.type;
}
} catch (L) {
P.target = O;
}
}
return P;
},
getCharCode : function(M) {
var L = M.keyCode || M.charCode || 0;
if (YAHOO.env.ua.webkit && (L in D)) {
L = D[L];
}
return L;
},
_getCacheIndex : function(P, Q, O) {
for ( var N = 0, M = I.length; N < M; ++N) {
var L = I[N];
if (L && L[this.FN] == O && L[this.EL] == P
&& L[this.TYPE] == Q) {
return N;
}
}
return -1;
},
generateId : function(L) {
var M = L.id;
if (!M) {
M = "yuievtautoid-" + A;
++A;
L.id = M;
}
return M;
},
_isValidCollection : function(M) {
try {
return (typeof M !== "string" && M.length && !M.tagName
&& !M.alert && typeof M[0] !== "undefined");
} catch (L) {
return false;
}
},
elCache : {},
getEl : function(L) {
return (typeof L === "string") ? document.getElementById(L) : L;
},
clearCache : function() {
},
DOMReadyEvent : new YAHOO.util.CustomEvent("DOMReady", this),
_load : function(M) {
if (!H) {
H = true;
var L = YAHOO.util.Event;
L._ready();
L._tryPreloadAttach();
}
},
_ready : function(M) {
if (!J) {
J = true;
var L = YAHOO.util.Event;
L.DOMReadyEvent.fire();
L._simpleRemove(document, "DOMContentLoaded", L._ready);
}
},
_tryPreloadAttach : function() {
if (this.locked) {
return false;
}
if (this.isIE) {
if (!J) {
this.startInterval();
return false;
}
}
this.locked = true;
var Q = !H;
if (!Q) {
Q = (C > 0);
}
var P = [];
var R = function(T, U) {
var S = T;
if (U.override) {
if (U.override === true) {
S = U.obj;
} else {
S = U.override;
}
}
U.fn.call(S, U.obj);
};
var M, L, O, N;
for (M = 0, L = F.length; M < L; ++M) {
O = F[M];
if (O && !O.checkReady) {
N = this.getEl(O.id);
if (N) {
R(N, O);
F[M] = null;
} else {
P.push(O);
}
}
}
for (M = 0, L = F.length; M < L; ++M) {
O = F[M];
if (O && O.checkReady) {
N = this.getEl(O.id);
if (N) {
if (H || N.nextSibling) {
R(N, O);
F[M] = null;
}
} else {
P.push(O);
}
}
}
C = (P.length === 0) ? 0 : C - 1;
if (Q) {
this.startInterval();
} else {
clearInterval(this._interval);
this._interval = null;
}
this.locked = false;
return true;
},
purgeElement : function(O, P, R) {
var Q = this.getListeners(O, R), N, L;
if (Q) {
for (N = 0, L = Q.length; N < L; ++N) {
var M = Q[N];
this.removeListener(O, M.type, M.fn, M.index);
}
}
if (P && O && O.childNodes) {
for (N = 0, L = O.childNodes.length; N < L; ++N) {
this.purgeElement(O.childNodes[N], P, R);
}
}
},
getListeners : function(N, L) {
var Q = [], M;
if (!L) {
M = [ I, K ];
} else {
if (L == "unload") {
M = [ K ];
} else {
M = [ I ];
}
}
for ( var P = 0; P < M.length; P = P + 1) {
var T = M[P];
if (T && T.length > 0) {
for ( var R = 0, S = T.length; R < S; ++R) {
var O = T[R];
if (O && O[this.EL] === N
&& (!L || L === O[this.TYPE])) {
Q.push( {
type : O[this.TYPE],
fn : O[this.FN],
obj : O[this.OBJ],
adjust : O[this.OVERRIDE],
scope : O[this.ADJ_SCOPE],
index : R
});
}
}
}
}
return (Q.length) ? Q : null;
},
_unload : function(S) {
var R = YAHOO.util.Event, P, O, M, L, N;
for (P = 0, L = K.length; P < L; ++P) {
M = K[P];
if (M) {
var Q = window;
if (M[R.ADJ_SCOPE]) {
if (M[R.ADJ_SCOPE] === true) {
Q = M[R.UNLOAD_OBJ];
} else {
Q = M[R.ADJ_SCOPE];
}
}
M[R.FN]
.call(Q, R.getEvent(S, M[R.EL]),
M[R.UNLOAD_OBJ]);
K[P] = null;
M = null;
Q = null;
}
}
K = null;
if (I && I.length > 0) {
O = I.length;
while (O) {
N = O - 1;
M = I[N];
if (M) {
R.removeListener(M[R.EL], M[R.TYPE], M[R.FN], N);
}
O = O - 1;
}
M = null;
R.clearCache();
}
for (P = 0, L = G.length; P < L; ++P) {
G[P][0] = null;
G[P] = null;
}
G = null;
R._simpleRemove(window, "unload", R._unload);
},
_getScrollLeft : function() {
return this._getScroll()[1];
},
_getScrollTop : function() {
return this._getScroll()[0];
},
_getScroll : function() {
var L = document.documentElement, M = document.body;
if (L && (L.scrollTop || L.scrollLeft)) {
return [ L.scrollTop, L.scrollLeft ];
} else {
if (M) {
return [ M.scrollTop, M.scrollLeft ];
} else {
return [ 0, 0 ];
}
}
},
regCE : function() {
},
_simpleAdd : function() {
if (window.addEventListener) {
return function(N, O, M, L) {
N.addEventListener(O, M, (L));
};
} else {
if (window.attachEvent) {
return function(N, O, M, L) {
N.attachEvent("on" + O, M);
};
} else {
return function() {
};
}
}
}(),
_simpleRemove : function() {
if (window.removeEventListener) {
return function(N, O, M, L) {
N.removeEventListener(O, M, (L));
};
} else {
if (window.detachEvent) {
return function(M, N, L) {
M.detachEvent("on" + N, L);
};
} else {
return function() {
};
}
}
}()
};
}();
(function() {
var D = YAHOO.util.Event;
D.on = D.addListener;
if (D.isIE) {
YAHOO.util.Event.onDOMReady(YAHOO.util.Event._tryPreloadAttach,
YAHOO.util.Event, true);
var B, E = document, A = E.body;
if (("undefined" !== typeof YAHOO_config) && YAHOO_config.injecting) {
B = document.createElement("script");
var C = E.getElementsByTagName("head")[0] || A;
C.insertBefore(B, C.firstChild);
} else {
E
.write("");
B = document.getElementById("_yui_eu_dr");
}
if (B) {
B.onreadystatechange = function() {
if ("complete" === this.readyState) {
this.parentNode.removeChild(this);
YAHOO.util.Event._ready();
}
};
} else {
}
B = null;
} else {
if (D.webkit) {
D._drwatch = setInterval(function() {
var F = document.readyState;
if ("loaded" == F || "complete" == F) {
clearInterval(D._drwatch);
D._drwatch = null;
D._ready();
}
}, D.POLL_INTERVAL);
} else {
D._simpleAdd(document, "DOMContentLoaded", D._ready);
}
}
D._simpleAdd(window, "load", D._load);
D._simpleAdd(window, "unload", D._unload);
D._tryPreloadAttach();
})();
}
YAHOO.util.EventProvider = function() {
};
YAHOO.util.EventProvider.prototype = {
__yui_events : null,
__yui_subscribers : null,
subscribe : function(A, C, F, E) {
this.__yui_events = this.__yui_events || {};
var D = this.__yui_events[A];
if (D) {
D.subscribe(C, F, E);
} else {
this.__yui_subscribers = this.__yui_subscribers || {};
var B = this.__yui_subscribers;
if (!B[A]) {
B[A] = [];
}
B[A].push( {
fn : C,
obj : F,
override : E
});
}
},
unsubscribe : function(C, E, G) {
this.__yui_events = this.__yui_events || {};
var A = this.__yui_events;
if (C) {
var F = A[C];
if (F) {
return F.unsubscribe(E, G);
}
} else {
var B = true;
for ( var D in A) {
if (YAHOO.lang.hasOwnProperty(A, D)) {
B = B && A[D].unsubscribe(E, G);
}
}
return B;
}
return false;
},
unsubscribeAll : function(A) {
return this.unsubscribe(A);
},
createEvent : function(G, D) {
this.__yui_events = this.__yui_events || {};
var A = D || {};
var I = this.__yui_events;
if (I[G]) {
} else {
var H = A.scope || this;
var E = (A.silent);
var B = new YAHOO.util.CustomEvent(G, H, E,
YAHOO.util.CustomEvent.FLAT);
I[G] = B;
if (A.onSubscribeCallback) {
B.subscribeEvent.subscribe(A.onSubscribeCallback);
}
this.__yui_subscribers = this.__yui_subscribers || {};
var F = this.__yui_subscribers[G];
if (F) {
for ( var C = 0; C < F.length; ++C) {
B.subscribe(F[C].fn, F[C].obj, F[C].override);
}
}
}
return I[G];
},
fireEvent : function(E, D, A, C) {
this.__yui_events = this.__yui_events || {};
var G = this.__yui_events[E];
if (!G) {
return null;
}
var B = [];
for ( var F = 1; F < arguments.length; ++F) {
B.push(arguments[F]);
}
return G.fire.apply(G, B);
},
hasEvent : function(A) {
if (this.__yui_events) {
if (this.__yui_events[A]) {
return true;
}
}
return false;
}
};
YAHOO.util.KeyListener = function(A, F, B, C) {
if (!A) {
} else {
if (!F) {
} else {
if (!B) {
}
}
}
if (!C) {
C = YAHOO.util.KeyListener.KEYDOWN;
}
var D = new YAHOO.util.CustomEvent("keyPressed");
this.enabledEvent = new YAHOO.util.CustomEvent("enabled");
this.disabledEvent = new YAHOO.util.CustomEvent("disabled");
if (typeof A == "string") {
A = document.getElementById(A);
}
if (typeof B == "function") {
D.subscribe(B);
} else {
D.subscribe(B.fn, B.scope, B.correctScope);
}
function E(K, J) {
if (!F.shift) {
F.shift = false;
}
if (!F.alt) {
F.alt = false;
}
if (!F.ctrl) {
F.ctrl = false;
}
if (K.shiftKey == F.shift && K.altKey == F.alt && K.ctrlKey == F.ctrl) {
var H;
var G;
if (F.keys instanceof Array) {
for ( var I = 0; I < F.keys.length; I++) {
H = F.keys[I];
if (H == K.charCode) {
D.fire(K.charCode, K);
break;
} else {
if (H == K.keyCode) {
D.fire(K.keyCode, K);
break;
}
}
}
} else {
H = F.keys;
if (H == K.charCode) {
D.fire(K.charCode, K);
} else {
if (H == K.keyCode) {
D.fire(K.keyCode, K);
}
}
}
}
}
this.enable = function() {
if (!this.enabled) {
YAHOO.util.Event.addListener(A, C, E);
this.enabledEvent.fire(F);
}
this.enabled = true;
};
this.disable = function() {
if (this.enabled) {
YAHOO.util.Event.removeListener(A, C, E);
this.disabledEvent.fire(F);
}
this.enabled = false;
};
this.toString = function() {
return "KeyListener [" + F.keys + "] " + A.tagName
+ (A.id ? "[" + A.id + "]" : "");
};
};
YAHOO.util.KeyListener.KEYDOWN = "keydown";
YAHOO.util.KeyListener.KEYUP = "keyup";
YAHOO.register("event", YAHOO.util.Event, {
version : "2.3.1",
build : "541"
});
YAHOO.register("yahoo-dom-event", YAHOO, {
version : "2.3.1",
build : "541"
});