js解密/加密用function(p,a,c,k,e,r)的脚本

| 评论(2) | 暂无引用通告

注意:请将下面的代码放入一个网页中保存为utf-8格式,并在浏览器上打开测试,并将页面的编码调为uft-8,在贴入要解密的代码时要注意,代码从eval(function(p, a, c, k, e, r)开始到split('|'), 0, {}))结束,把这部分贴入解密就行了,之前之后不要有注释,不要留空。

javascript
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <title>js解密/加密用</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. </head>
  7.  
  8. <body>
  9. <script language="javascript"
  10. a=62; 
  11. function encode() { 
  12. var code = document.getElementById('code').value; 
  13. code = code.replace(/[\r\n]+/g, ''); 
  14. code = code.replace(/'/g, "\\'"); 
  15. var tmp = code.match(/\b(\w+)\b/g); 
  16. tmp.sort(); 
  17. var dict = []; 
  18. var i, t = ''
  19. for(var i=0; i<tmp.length; i++) { 
  20. if(tmp[i] != t) dict.push(t = tmp[i]); 
  21. var len = dict.length; 
  22. var ch; 
  23. for(i=0; i<len; i++) { 
  24. ch = num(i); 
  25. code = code.replace(new RegExp('\\b'+dict[i]+'\\b','g'), ch); 
  26. if(ch == dict[i]) dict[i] = ''
  27. document.getElementById('code').value = "eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\\\b'+e(c)+'\\\\b','g'),k[c]);return p}(" 
  28. "'"+code+"',"+a+","+len+",'"+ dict.join('|')+"'.split('|'),0,{}))"; 
  29.  
  30. function num(c) { 
  31. return(c<a?'':num(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36)); 
  32. function run() { 
  33. eval(document.getElementById('code').value); 
  34. function decode() { 
  35. var code = document.getElementById('code').value; 
  36. code = code.replace(/^eval/, ''); 
  37. document.getElementById('code').value = eval(code); 
  38. </script> 
  39. <form>
  40. <textarea id=code cols=80 rows=20> 
  41. </textarea><br> 
  42. <input type=button onclick=encode() value=编码> 
  43. <input type=button onclick=run() value=执行> 
  44. <input type=button onclick=decode() value=解码>
  45. </form>     
  46. </body>
  47. </html>
收藏与分享

暂无引用通告

发送引用通告网址: http://www.do2do.net/cgi-bin/mt/mt-tb.cgi/113
如果您想引用这篇日记到您的Blog,请复制上面的链接,放置到您发表文章时的相应界面中。

2条评论

(function() {
if (window.magicJS) {
return
}
var a = {
version: "2.3.10",
UUID: 0,
storage: {},
$uuid: function(b) {
return (b.$J_UUID || (b.$J_UUID = ++$J.UUID))
},
getStorage: function(b) {
return ($J.storage[b] || ($J.storage[b] = {}))
},
$F: function() {},
$false: function() {
return false
},
defined: function(b) {
return (undefined != b)
},
exists: function(b) {
return !! (b)
},
j1: function(b) {
if (!$J.defined(b)) {
return false
}
if (b.$J_TYPE) {
return b.$J_TYPE
}
if ( !! b.nodeType) {
if (1 == b.nodeType) {
return "element"
}
if (3 == b.nodeType) {
return "textnode"
}
}
if (b.length && b.item) {
return "collection"
}
if (b.length && b.callee) {
return "arguments"
}
if ((b instanceof window.Object || b instanceof window.Function) && b.constructor === $J.Class) {
return "class"
}
if (b instanceof window.Array) {
return "array"
}
if (b instanceof window.Function) {
return "function"
}
if (b instanceof window.String) {
return "string"
}
if ($J.v.trident) {
if ($J.defined(b.cancelBubble)) {
return "event"
}
} else {
if (b instanceof window.Event || b === window.event || b.constructor == window.MouseEvent) {
return "event"
}
}
if (b instanceof window.Date) {
return "date"
}
if (b instanceof window.RegExp) {
return "regexp"
}
if (b === window) {
return "window"
}
if (b === document) {
return "document"
}
return typeof(b)
},
extend: function(g, f) {
if (! (g instanceof window.Array)) {
g = [g]
}
for (var d = 0,
b = g.length; d if (!$J.defined(g)) {
continue
}
for (var c in (f || {})) {
g[d][c] = f[c]
}
}
return g[0]
},
implement: function(g, f) {
if (! (g instanceof window.Array)) {
g = [g]
}
for (var d = 0,
b = g.length; d if (!$J.defined(g[d])) {
continue
}
if (!g[d].prototype) {
continue
}
for (var c in (f || {})) {
if (!g[d].prototype[c]) {
g[d].prototype[c] = f[c]
}
}
}
return g[0]
},
nativize: function(d, c) {
if (!$J.defined(d)) {
return d
}
for (var b in (c || {})) {
if (!d[b]) {
d[b] = c[b]
}
}
return d
},
$try: function() {
for (var c = 0,
b = arguments.length; c try {
return arguments[c]()
} catch(d) {}
}
return null
},
$A: function(d) {
if (!$J.defined(d)) {
return $j([])
}
if (d.toArray) {
return $j(d.toArray())
}
if (d.item) {
var c = d.length || 0,
b = new Array(c);
while (c--) {
b[c] = d[c]
}
return $j(b)
}
return $j(Array.prototype.slice.call(d))
},
now: function() {
return new Date().getTime()
},
detach: function(g) {
var d;
switch ($J.j1(g)) {
case "object":
d = {};
for (var f in g) {
d[f] = $J.detach(g[f])
}
break;
case "array":
d = [];
for (var c = 0,
b = g.length; c d[c] = $J.detach(g[c])
}
break;
default:
return g
}
return d
},
$: function(c) {
if (!$J.defined(c)) {
return null
}
if (c.$J_EXTENDED) {
return c
}
switch ($J.j1(c)) {
case "array":
c = $J.nativize(c, $J.extend($J.Array, {
$J_EXTENDED: true
}));
c.j14 = c.forEach;
return c;
break;
case "string":
var b = document.getElementById(c);
if ($J.defined(b)) {
return $J.$(b)
}
return null;
break;
case "window":
case "document":
$J.$uuid(c);
c = $J.extend(c, $J.Doc);
break;
case "element":
$J.$uuid(c);
c = $J.extend(c, $J.Element);
break;
case "event":
c = $J.extend(c, $J.Event);
break;
case "textnode":
return c;
break;
case "function":
case "array":
case "date":
default:
break
}
return $J.extend(c, {
$J_EXTENDED: true
})
},
$new: function(b, d, c) {
return $j($J.doc.createElement(b)).setProps(d).j6(c)
}
};
window.magicJS = window.$J = a;
window.$j = a.$;
$J.Array = {
$J_TYPE: "array",
indexOf: function(f, g) {
var b = this.length;
for (var c = this.length,
d = (g if (this[d] === f) {
return d
}
}
return - 1
},
contains: function(b, c) {
return this.indexOf(b, c) != -1
},
forEach: function(b, f) {
for (var d = 0,
c = this.length; d if (d in this) {
b.call(f, this[d], d, this)
}
}
},
filter: function(b, j) {
var g = [];
for (var f = 0,
c = this.length; f if (f in this) {
var d = this[f];
if (b.call(j, this[f], f, this)) {
g.push(d)
}
}
}
return g
},
map: function(b, g) {
var f = [];
for (var d = 0,
c = this.length; d if (d in this) {
f[d] = b.call(g, this[d], d, this)
}
}
return f
}
};
$J.implement(String, {
$J_TYPE: "string",
j21: function() {
return this.replace(/^\s+|\s+$/g, "")
},
trimLeft: function() {
return this.replace(/^\s+/g, "")
},
trimRight: function() {
return this.replace(/\s+$/g, "")
},
j20: function(b) {
return (this.toString() === b.toString())
},
icompare: function(b) {
return (this.toLowerCase().toString() === b.toLowerCase().toString())
},
k: function() {
return this.replace(/-\D/g,
function(b) {
return b.charAt(1).toUpperCase()
})
},
dashize: function() {
return this.replace(/[A-Z]/g,
function(b) {
return ("-" + b.charAt(0).toLowerCase())
})
},
j22: function(c) {
return parseInt(this, c || 10)
},
toFloat: function() {
return parseFloat(this)
},
j23: function() {
return ! this.replace(/true/i, "").j21()
},
has: function(c, b) {
b = b || "";
return (b + this + b).indexOf(b + c + b) > -1
}
});
a.implement(Function, {
$J_TYPE: "function",
j19: function() {
var c = $J.$A(arguments),
b = this,
d = c.shift();
return function() {
return b.apply(d || null, c.concat($J.$A(arguments)))
}
},
j18: function() {
var c = $J.$A(arguments),
b = this,
d = c.shift();
return function(f) {
return b.apply(d || null, $j([f || window.event]).concat(c))
}
},
j32: function() {
var c = $J.$A(arguments),
b = this,
d = c.shift();
return window.setTimeout(function() {
return b.apply(b, c)
},
d || 0)
},
j33: function() {
var c = $J.$A(arguments),
b = this;
return function() {
return b.j32.apply(b, c)
}
},
interval: function() {
var c = $J.$A(arguments),
b = this,
d = c.shift();
return window.setInterval(function() {
return b.apply(b, c)
},
d || 0)
}
});
$J.v = {
features: {
xpath: !!(document.evaluate),
air: !!(window.runtime),
query: !!(document.querySelector)
},
engine: (window.opera) ? "presto": !!(window.ActiveXObject) ? "trident": (!navigator.taintEnabled) ? "webkit": (undefined != document.getBoxObjectFor) ? "gecko": "unknown",
version: "",
platform: ($J.defined(window.orientation)) ? "ipod": (navigator.platform.match(/mac|win|linux/i) || ["other"])[0].toLowerCase(),
backCompat: document.compatMode && "backcompat" == document.compatMode.toLowerCase(),
getDoc: function() {
return (document.compatMode && "backcompat" == document.compatMode.toLowerCase()) ? document.body: document.documentElement
},
ready: false,
onready: function() {
if ($J.v.ready) {
return
}
$J.v.ready = true;
$J.body = $j(document.body);
$j(document).raiseEvent("domready")
}
}; (function() {
function b() {
return !! (arguments.callee.caller)
}
$J.v.version = ("presto" == $J.v.engine) ? ((b()) ? 960 : ((document.getElementsByClassName) ? 950 : 925)) : ("trident" == $J.v.engine) ? !!(window.XMLHttpRequest && window.postMessage) ? 6 : ((window.XMLHttpRequest) ? 5 : 4) : ("webkit" == $J.v.engine) ? (($J.v.features.xpath) ? (($J.v.features.query) ? 525 : 420) : 419) : ("gecko" == $J.v.engine) ? !!(window.localStorage) ? 191 : ((document.getElementsByClassName) ? 190 : 181) : "";
$J.v[$J.v.engine] = $J.v[$J.v.engine + $J.v.version] = true
})();
$J.Element = {
j13: function(b) {
return this.className.has(b, " ")
},
j2: function(b) {
if (b && !this.j13(b)) {
this.className += (this.className ? " ": "") + b
}
return this
},
j3: function(b) {
b = b || ".*";
this.className = this.className.replace(new RegExp("(^|\\s)" + b + "(?:\\s|$)"), "$1").j21();
return this
},
j4: function(b) {
return this.j13(b) ? this.j3(b) : this.j2(b)
},
j5: function(c) {
c = (c == "float" && this.currentStyle) ? "styleFloat": c.k();
var b = null;
if (this.currentStyle) {
b = this.currentStyle[c]
} else {
if (document.defaultView && document.defaultView.getComputedStyle) {
css = document.defaultView.getComputedStyle(this, null);
b = css ? css.getPropertyValue([c.dashize()]) : null
}
}
if (!b) {
b = this.style[c]
}
if ("opacity" == c) {
return $J.defined(b) ? parseFloat(b) : 1
}
if (/^(border(Top|Bottom|Left|Right)Width)|((padding|margin)(Top|Bottom|Left|Right))$/.test(c)) {
b = parseInt(b) ? b: "0px"
}
return ("auto" == b ? null: b)
},
j6Prop: function(c, b) {
try {
if ("opacity" == c) {
this.g(b);
return this
}
if ("float" == c) {
this.style[("undefined" === typeof(this.style.styleFloat)) ? "cssFloat": "styleFloat"] = b;
return this
}
this.style[c.k()] = b + (("number" == $J.j1(b) && !$j(["zIndex", "zoom"]).contains(c.k())) ? "px": "")
} catch(d) {}
return this
},
j6: function(c) {
for (var b in c) {
this.j6Prop(b, c[b])
}
return this
},
j30s: function() {
var b = {};
$J.$A(arguments).j14(function(c) {
b[c] = this.j5(c)
},
this);
return b
},
g: function(g, c) {
c = c || false;
g = parseFloat(g);
if (c) {
if (g == 0) {
if ("hidden" != this.style.visibility) {
this.style.visibility = "hidden"
}
} else {
if ("visible" != this.style.visibility) {
this.style.visibility = "visible"
}
}
}
if ($J.v.trident) {
if (!this.currentStyle || !this.currentStyle.hasLayout) {
this.style.zoom = 1
}
try {
var d = this.filters.item("DXImageTransform.Microsoft.Alpha");
d.enabled = (1 != g);
d.opacity = g * 100
} catch(b) {
this.style.filter += (1 == g) ? "": "progid:DXImageTransform.Microsoft.Alpha(enabled=true,opacity=" + g * 100 + ")"
}
}
this.style.opacity = g;
return this
},
setProps: function(b) {
for (var c in b) {
this.setAttribute(c, "" + b[c])
}
return this
},
hide: function() {
return this.j6({
display: "none",
visibility: "hidden"
})
},
show: function() {
return this.j6({
display: "block",
visibility: "visible"
})
},
j7: function() {
return {
width: this.offsetWidth,
height: this.offsetHeight
}
},
j10: function() {
return {
top: this.scrollTop,
left: this.scrollLeft
}
},
j11: function() {
var b = this,
c = {
top: 0,
left: 0
};
do {
c.left += b.scrollLeft || 0;
c.top += b.scrollTop || 0;
b = b.parentNode
} while ( b );
return c
},
j8: function() {
if ($J.defined(document.documentElement.getBoundingClientRect)) {
var c = this.getBoundingClientRect(),
f = $j(document).j10(),
i = $J.v.getDoc();
return {
top: c.top + f.y - i.clientTop,
left: c.left + f.x - i.clientLeft
}
}
var g = this,
d = t = 0;
do {
d += g.offsetLeft || 0;
t += g.offsetTop || 0;
g = g.offsetParent
} while ( g && !(/^(?:body|html)$/ i ).test(g.tagName));
return {
top: t,
left: d
}
},
j9: function() {
var c = this.j8();
var b = this.j7();
return {
top: c.top,
bottom: c.top + b.height,
left: c.left,
right: c.left + b.width
}
},
update: function(d) {
try {
this.innerHTML = d
} catch(b) {
this.innerText = d
}
return this
},
remove: function() {
return (this.parentNode) ? this.parentNode.removeChild(this) : this
},
kill: function() {
$J.$A(this.childNodes).j14(function(b) {
if (3 == b.nodeType) {
return
}
$j(b).kill()
});
this.remove();
this.clearEvents();
if (this.$J_UUID) {
$J.storage[this.$J_UUID] = null;
delete $J.storage[this.$J_UUID]
}
return null
},
append: function(d, c) {
c = c || "bottom";
var b = this.firstChild; ("top" == c && b) ? this.insertBefore(d, b) : this.appendChild(d);
return this
},
j43: function(d, c) {
var b = $j(d).append(this, c);
return this
},
enclose: function(b) {
this.append(b.parentNode.replaceChild(this, b));
return this
},
hasChild: function(b) {
if (! (b = $j(b))) {
return false
}
return (this == b) ? false: (this.contains && !($J.v.webkit419)) ? (this.contains(b)) : (this.compareDocumentPosition) ? !!(this.compareDocumentPosition(b) & 16) : $J.$A(this.byTag(b.tagName)).contains(b)
}
};
$J.Element.j30 = $J.Element.j5;
$J.Element.j31 = $J.Element.j6;
if (!window.Element) {
window.Element = $J.$F;
if ($J.v.engine.webkit) {
window.document.createElement("iframe")
}
window.Element.prototype = ($J.v.engine.webkit) ? window["[[DOMElement.prototype]]"] : {}
}
$J.implement(window.Element, {
$J_TYPE: "element"
});
$J.Doc = {
j7: function() {
if ($J.v.presto925 || $J.v.webkit419) {
return {
width: self.innerWidth,
height: self.innerHeight
}
}
return {
width: $J.v.getDoc().clientWidth,
height: $J.v.getDoc().clientHeight
}
},
j10: function() {
return {
x: self.pageXOffset || $J.v.getDoc().scrollLeft,
y: self.pageYOffset || $J.v.getDoc().scrollTop
}
},
j12: function() {
var b = this.j7();
return {
width: Math.max($J.v.getDoc().scrollWidth, b.width),
height: Math.max($J.v.getDoc().scrollHeight, b.height)
}
}
};
$J.extend(document, {
$J_TYPE: "document"
});
$J.extend(window, {
$J_TYPE: "window"
});
$J.extend([$J.Element, $J.Doc], {
j40: function(f, c) {
var b = $J.getStorage(this.$J_UUID),
d = b[f];
if (undefined != c && undefined == d) {
d = b[f] = c
}
return ($J.defined(d) ? d: null)
},
j41: function(d, c) {
var b = $J.getStorage(this.$J_UUID);
b[d] = c;
return this
},
j42: function(c) {
var b = $J.getStorage(this.$J_UUID);
delete b[c];
return this
}
});
if (! (window.HTMLElement && window.HTMLElement.prototype && window.HTMLElement.prototype.getElementsByClassName)) {
$J.extend([$J.Element, $J.Doc], {
getElementsByClassName: function(b) {
return $J.$A(this.getElementsByTagName("*")).filter(function(d) {
try {
return (1 == d.nodeType && d.className.has(b, " "))
} catch(c) {}
})
}
})
}
$J.extend([$J.Element, $J.Doc], {
byClass: function() {
return this.getElementsByClassName(arguments[0])
},
byTag: function() {
return this.getElementsByTagName(arguments[0])
}
});
$J.Event = {
$J_TYPE: "event",
stop: function() {
if (this.stopPropagation) {
this.stopPropagation()
} else {
this.cancelBubble = true
}
if (this.preventDefault) {
this.preventDefault()
} else {
this.returnValue = false
}
return this
},
j15: function() {
return {
x: this.pageX || this.clientX + $J.v.getDoc().scrollLeft,
y: this.pageY || this.clientY + $J.v.getDoc().scrollTop
}
},
getTarget: function() {
var b = this.target || this.srcElement;
while (b && 3 == b.nodeType) {
b = b.parentNode
}
return b
},
getRelated: function() {
var c = null;
switch (this.type) {
case "mouseover":
c = this.relatedTarget || this.fromElement;
break;
case "mouseout":
c = this.relatedTarget || this.toElement;
break;
default:
return c
}
try {
while (c && 3 == c.nodeType) {
c = c.parentNode
}
} catch(b) {
c = null
}
return c
},
getButton: function() {
if (!this.which && this.button !== undefined) {
return (this.button & 1 ? 1 : (this.button & 2 ? 3 : (this.button & 4 ? 2 : 0)))
}
return this.which
}
};
$J._event_add_ = "addEventListener";
$J._event_del_ = "removeEventListener";
$J._event_prefix_ = "";
if (!document.addEventListener) {
$J._event_add_ = "attachEvent";
$J._event_del_ = "detachEvent";
$J._event_prefix_ = "on"
}
$J.extend([$J.Element, $J.Doc], {
a: function(f, d) {
var i = ("domready" == f) ? false: true,
c = this.j40("events", {});
c[f] = c[f] || [];
if (c[f].hasOwnProperty(d.$J_EUID)) {
return this
}
if (!d.$J_EUID) {
d.$J_EUID = Math.floor(Math.random() * $J.now())
}
var b = this,
g = function(j) {
return d.call(b)
};
if ("domready" == f) {
if ($J.v.ready) {
d.call(this);
return this
}
}
if (i) {
g = function(j) {
j = $J.extend(j || window.e, {
$J_TYPE: "event"
});
return d.call(b, $j(j))
};
this[$J._event_add_]($J._event_prefix_ + f, g, false)
}
c[f][d.$J_EUID] = g;
return this
},
j26: function(f) {
var i = ("domready" == f) ? false: true,
c = this.j40("events");
if (!c || !c[f]) {
return this
}
var g = c[f],
d = arguments[1] || null;
if (f && !d) {
for (var b in g) {
if (!g.hasOwnProperty(b)) {
continue
}
this.j26(f, b)
}
return this
}
d = ("function" == $J.j1(d)) ? d.$J_EUID: d;
if (!g.hasOwnProperty(d)) {
return this
}
if ("domready" == f) {
i = false
}
if (i) {
this[$J._event_del_]($J._event_prefix_ + f, g[d], false)
}
delete g[d];
return this
},
raiseEvent: function(f, c) {
var l = ("domready" == f) ? false: true,
j = this,
i;
if (!l) {
var d = this.j40("events");
if (!d || !d[f]) {
return this
}
var g = d[f];
for (var b in g) {
if (!g.hasOwnProperty(b)) {
continue
}
g[b].call(this)
}
return this
}
if (j === document && document.createEvent && !el.dispatchEvent) {
j = document.documentElement
}
if (document.createEvent) {
i = document.createEvent(f);
i.initEvent(c, true, true)
} else {
i = document.createEventObject();
i.eventType = f
}
if (document.createEvent) {
j.dispatchEvent(i)
} else {
j.fireEvent("on" + c, i)
}
return i
},
clearEvents: function() {
var b = this.j40("events");
if (!b) {
return this
}
for (var c in b) {
this.j26(c)
}
this.j42("events");
return this
}
}); (function() {
if ($J.v.webkit && $J.v.version })()
} else {
if ($J.v.trident && window == top) { (function() { ($J.$try(function() {
$J.v.getDoc().doScroll("left");
return true
})) ? $J.v.onready() : arguments.callee.j32(50)
})()
} else {
$j(document).a("DOMContentLoaded", $J.v.onready);
$j(window).a("load", $J.v.onready)
}
}
})();
$J.Class = function() {
var g = null,
c = $J.$A(arguments);
if ("class" == $J.j1(c[0])) {
g = c.shift()
}
var b = function() {
for (var l in this) {
this[l] = $J.detach(this[l])
}
if (this.constructor.$parent) {
this.$parent = {};
var o = this.constructor.$parent;
for (var n in o) {
var j = o[n];
switch ($J.j1(j)) {
case "function":
this.$parent[n] = $J.Class.wrap(this, j);
break;
case "object":
this.$parent[n] = $J.detach(j);
break;
case "array":
this.$parent[n] = $J.detach(j);
break
}
}
}
var i = (this.init) ? this.init.apply(this, arguments) : this;
delete this.caller;
return i
};
if (!b.prototype.init) {
b.prototype.init = $J.$F
}
if (g) {
var f = function() {};
f.prototype = g.prototype;
b.prototype = new f;
b.$parent = {};
for (var d in g.prototype) {
b.$parent[d] = g.prototype[d]
}
} else {
b.$parent = null
}
b.constructor = $J.Class;
b.prototype.constructor = b;
$J.extend(b.prototype, c[0]);
$J.extend(b, {
$J_TYPE: "class"
});
return b
};
a.Class.wrap = function(b, c) {
return function() {
var f = this.caller;
var d = c.apply(b, arguments);
return d
}
};
$J.FX = new $J.Class({
options: {
fps: 50,
duration: 500,
transition: function(b) {
return - (Math.cos(Math.PI * b) - 1) / 2
},
onStart: $J.$F,
onComplete: $J.$F,
onBeforeRender: $J.$F
},
styles: null,
init: function(c, b) {
this.el = $j(c);
this.options = $J.extend(this.options, b);
this.timer = false
},
start: function(b) {
this.styles = b;
this.state = 0;
this.curFrame = 0;
this.startTime = $J.now();
this.finishTime = this.startTime + this.options.duration;
this.timer = this.loop.j19(this).interval(Math.round(1000 / this.options.fps));
this.options.onStart.call();
return this
},
stop: function(b) {
b = $J.defined(b) ? b: false;
if (this.timer) {
clearInterval(this.timer);
this.timer = false
}
if (b) {
this.render(1);
this.options.onComplete.j32(10)
}
return this
},
calc: function(d, c, b) {
return (c - d) * b + d
},
loop: function() {
var c = $J.now();
if (c >= this.finishTime) {
if (this.timer) {
clearInterval(this.timer);
this.timer = false
}
this.render(1);
this.options.onComplete.j32(10);
return this
}
var b = this.options.transition((c - this.startTime) / this.options.duration);
this.render(b)
},
render: function(b) {
var c = {};
for (var d in this.styles) {
if ("opacity" === d) {
c[d] = Math.round(this.calc(this.styles[d][0], this.styles[d][1], b) * 100) / 100
} else {
c[d] = Math.round(this.calc(this.styles[d][0], this.styles[d][1], b))
}
}
this.options.onBeforeRender(c);
this.set(c)
},
set: function(b) {
return this.el.j6(b)
}
});
$J.FX.Transition = {
linear: function(b) {
return b
},
sineIn: function(b) {
return - (Math.cos(Math.PI * b) - 1) / 2
},
sineOut: function(b) {
return 1 - $J.FX.Transition.sineIn(1 - b)
},
expoIn: function(b) {
return Math.pow(2, 8 * (b - 1))
},
expoOut: function(b) {
return 1 - $J.FX.Transition.expoIn(1 - b)
},
quadIn: function(b) {
return Math.pow(b, 2)
},
quadOut: function(b) {
return 1 - $J.FX.Transition.quadIn(1 - b)
},
cubicIn: function(b) {
return Math.pow(b, 3)
},
cubicOut: function(b) {
return 1 - $J.FX.Transition.cubicIn(1 - b)
},
backIn: function(c, b) {
b = b || 1.618;
return Math.pow(c, 2) * ((b + 1) * c - b)
},
backOut: function(c, b) {
return 1 - $J.FX.Transition.backIn(1 - c)
},
elasticIn: function(c, b) {
b = b || [];
return Math.pow(2, 10 * --c) * Math.cos(20 * c * Math.PI * (b[0] || 1) / 3)
},
elasticOut: function(c, b) {
return 1 - $J.FX.Transition.elasticIn(1 - c, b)
},
bounceIn: function(f) {
for (var d = 0,
c = 1; 1; d += c, c /= 2) {
if (f >= (7 - 4 * d) / 11) {
return c * c - Math.pow((11 - 6 * d - 11 * f) / 4, 2)
}
}
},
bounceOut: function(b) {
return 1 - $J.FX.Transition.bounceIn(1 - b)
},
none: function(b) {
return 0
}
};
$J.PFX = new $J.Class($J.FX, {
init: function(b, c) {
this.el_arr = b;
this.options = $J.extend(this.options, c);
this.timer = false
},
start: function(b) {
this.$parent.start([]);
this.styles_arr = b;
return this
},
render: function(b) {
for (var c = 0; c this.el = $j(this.el_arr[c]);
this.styles = this.styles_arr[c];
this.$parent.render(b)
}
}
});
$J.FX.Slide = new $J.Class($J.FX, {
options: {
mode: "vertical"
},
init: function(c, b) {
this.el = $j(c);
this.options = $J.extend(this.$parent.options, this.options);
this.$parent.init(c, b);
this.wrapper = this.el.j40("slide:wrapper");
this.wrapper = this.wrapper || $J.$new("DIV").j6($J.extend(this.el.j30s("margin-top", "margin-left", "margin-right", "margin-bottom", "position", "top", "float"), {
overflow: "hidden"
})).enclose(this.el);
this.el.j41("slide:wrapper", this.wrapper).j6({
margin: 0
})
},
vertical: function() {
this.margin = "margin-top";
this.layout = "height";
this.offset = this.el.offsetHeight
},
horizontal: function(b) {
this.margin = "margin-" + (b || "left");
this.layout = "width";
this.offset = this.el.offsetWidth
},
right: function() {
this.horizontal()
},
left: function() {
this.horizontal("right")
},
start: function(d, i) {
this[i || this.options.mode]();
var g = this.el.j5(this.margin).j22(),
f = this.wrapper.j5(this.layout).j22(),
b = {},
j = {},
c;
b[this.margin] = [g, 0],
b[this.layout] = [0, this.offset],
j[this.margin] = [g, -this.offset],
j[this.layout] = [f, 0];
switch (d) {
case "in":
c = b;
break;
case "out":
c = j;
break;
case "toggle":
c = (0 == f) ? b: j;
break
}
this.$parent.start(c);
return this
},
set: function(b) {
this.el.j6Prop(this.margin, b[this.margin]);
this.wrapper.j6Prop(this.layout, b[this.layout]);
return this
},
slideIn: function(b) {
return this.start("in", b)
},
slideOut: function(b) {
return this.start("out", b)
},
hide: function(c) {
this[c || this.options.mode]();
var b = {};
b[this.layout] = 0,
b[this.margin] = -this.offset;
return this.set(b)
},
show: function(c) {
this[c || this.options.mode]();
var b = {};
b[this.layout] = this.offset,
b[this.margin] = 0;
return this.set(b)
},
toggle: function(b) {
return this.start("toggle", b)
}
});
$J.win = $j(window);
$J.doc = $j(document)
})();
$J.$Ff = function() {
return false
};
var MagicZoom = {
version: "3.1.19",
options: {},
defaults: {
opacity: 50,
opacityReverse: false,
smoothingSpeed: 40,
fps: 25,
zoomWidth: 300,
zoomHeight: 300,
zoomDistance: 15,
zoomPosition: "right",
dragMode: false,
moveOnClick: false,
alwaysShowZoom: false,
preservePosition: false,
x: -1,
y: -1,
clickToActivate: false,
clickToInitialize: false,
smoothing: true,
showTitle: "true",
thumbChange: "click",
zoomFade: false,
zoomFadeInSpeed: 400,
zoomFadeOutSpeed: 200,
hotspots: "",
preloadSelectorsSmall: true,
preloadSelectorsBig: false,
showLoading: true,
loadingMsg: "Loading zoom..",
loadingOpacity: 75,
loadingPositionX: -1,
loadingPositionY: -1,
selectorsMouseoverDelay: 200,
selectorsEffect: "dissolve",
selectorsEffectSpeed: 400,
fitZoomWindow: true,
entireImage: false,
enableRightClick: false
},
z40: $j([/^(opacity)(\s+)?:(\s+)?(\d+)$/i, /^(opacity-reverse)(\s+)?:(\s+)?(true|false)$/i, /^(smoothing\-speed)(\s+)?:(\s+)?(\d+)$/i, /^(fps)(\s+)?:(\s+)?(\d+)$/i, /^(zoom\-width)(\s+)?:(\s+)?(\d+)(px)?/i, /^(zoom\-height)(\s+)?:(\s+)?(\d+)(px)?/i, /^(zoom\-distance)(\s+)?:(\s+)?(\d+)(px)?/i, /^(zoom\-position)(\s+)?:(\s+)?(right|left|top|bottom|custom|inner)$/i, /^(drag\-mode)(\s+)?:(\s+)?(true|false)$/i, /^(move\-on\-click)(\s+)?:(\s+)?(true|false)$/i, /^(always\-show\-zoom)(\s+)?:(\s+)?(true|false)$/i, /^(preserve\-position)(\s+)?:(\s+)?(true|false)$/i, /^(x)(\s+)?:(\s+)?([\d.]+)(px)?/i, /^(y)(\s+)?:(\s+)?([\d.]+)(px)?/i, /^(click\-to\-activate)(\s+)?:(\s+)?(true|false)$/i, /^(click\-to\-initialize)(\s+)?:(\s+)?(true|false)$/i, /^(smoothing)(\s+)?:(\s+)?(true|false)$/i, /^(show\-title)(\s+)?:(\s+)?(true|false|top|bottom)$/i, /^(thumb\-change)(\s+)?:(\s+)?(click|mouseover)$/i, /^(zoom\-fade)(\s+)?:(\s+)?(true|false)$/i, /^(zoom\-fade\-in\-speed)(\s+)?:(\s+)?(\d+)$/i, /^(zoom\-fade\-out\-speed)(\s+)?:(\s+)?(\d+)$/i, /^(hotspots)(\s+)?:(\s+)?([a-z0-9_\-:\.]+)$/i, /^(preload\-selectors\-small)(\s+)?:(\s+)?(true|false)$/i, /^(preload\-selectors\-big)(\s+)?:(\s+)?(true|false)$/i, /^(show\-loading)(\s+)?:(\s+)?(true|false)$/i, /^(loading\-msg)(\s+)?:(\s+)?([^;]*)$/i, /^(loading\-opacity)(\s+)?:(\s+)?(\d+)$/i, /^(loading\-position\-x)(\s+)?:(\s+)?(\d+)(px)?/i, /^(loading\-position\-y)(\s+)?:(\s+)?(\d+)(px)?/i, /^(selectors\-mouseover\-delay)(\s+)?:(\s+)?(\d+)$/i, /^(selectors\-effect)(\s+)?:(\s+)?(dissolve|fade|false)$/i, /^(selectors\-effect\-speed)(\s+)?:(\s+)?(\d+)$/i, /^(fit\-zoom\-window)(\s+)?:(\s+)?(true|false)$/i, /^(entire\-image)(\s+)?:(\s+)?(true|false)$/i, /^(enable\-right\-click)(\s+)?:(\s+)?(true|false)$/i]),
zooms: [],
z1: function(b) {
for (var a = 0; a if (MagicZoom.zooms[a].z28) {
MagicZoom.zooms[a].pause()
} else {
if (MagicZoom.zooms[a].options.clickToInitialize && MagicZoom.zooms[a].initMouseEvent) {
MagicZoom.zooms[a].initMouseEvent = b
}
}
}
},
stop: function(a) {
if (a.zoom) {
a.zoom.stop();
return true
}
return false
},
start: function(a) {
if (!a.zoom) {
var b = null;
while (b = a.firstChild) {
if (b.tagName == "IMG") {
break
}
a.removeChild(b)
}
while (b = a.lastChild) {
if (b.tagName == "IMG") {
break
}
a.removeChild(b)
}
if (!a.firstChild || a.firstChild.tagName != "IMG") {
throw "Invalid Magic Zoom"
}
MagicZoom.zooms.push(new MagicZoom.zoom(a))
} else {
a.zoom.start()
}
},
update: function(d, a, c, b) {
if (d.zoom) {
d.zoom.update(a, c, b);
return true
}
return false
},
refresh: function() {
$J.$A(window.document.getElementsByTagName("A")).j14(function(a) {
if (/MagicZoom/.test(a.className)) {
if (MagicZoom.stop(a)) {
MagicZoom.start.j32(100, a)
} else {
MagicZoom.start(a)
}
}
},
this)
},
getXY: function(a) {
if (a.zoom) {
return {
x: a.zoom.options.x,
y: a.zoom.options.y
}
}
},
x7: function(c) {
var b, a;
b = "";
for (a = 0; a b += String.fromCharCode(14 ^ c.charCodeAt(a))
}
return b
}
};
MagicZoom.z50 = function() {
this.init.apply(this, arguments)
};
MagicZoom.z50.prototype = {
init: function(a) {
this.cb = null;
this.z2 = null;
this.onErrorHandler = this.onError.j18(this);
this.z3 = null;
this.width = 0;
this.height = 0;
this.border = {
left: 0,
right: 0,
top: 0,
bottom: 0
};
this.padding = {
left: 0,
right: 0,
top: 0,
bottom: 0
};
this.ready = false;
this._tmpp = null;
if ("string" == $J.j1(a)) {
this._tmpp = $J.$new("div").j6({
position: "absolute",
top: "-10000px",
width: "1px",
height: "1px",
overflow: "hidden"
}).j43($J.body);
this.self = $J.$new("img").j43(this._tmpp);
this.z4();
this.self.src = a
} else {
this.self = $j(a);
this.z4()
}
},
_cleanup: function() {
if (this._tmpp) {
if (this.self.parentNode == this._tmpp) {
this.self.remove().j6({
position: "static",
top: "auto"
})
}
this._tmpp.kill();
this._tmpp = null
}
},
onError: function(a) {
if (a) {
$j(a).stop()
}
if (this.cb) {
this._cleanup();
this.cb.call(this, false)
}
this.unload()
},
z4: function(a) {
this.z2 = null;
if (a == true || !(this.self.src && (this.self.complete || this.self.readyState == "complete"))) {
this.z2 = function(b) {
if (b) {
$j(b).stop()
}
if (this.ready) {
return
}
this.ready = true;
this.z6();
if (this.cb) {
this._cleanup();
this.cb.call()
}
}.j18(this);
this.self.a("load", this.z2);
$j(["abort", "error"]).j14(function(b) {
this.self.a(b, this.onErrorHandler)
},
this)
} else {
this.ready = true
}
},
update: function(a) {
this.unload();
if (this.self.src.has(a)) {
this.ready = true
} else {
this.z4(true);
this.self.src = a
}
},
z6: function() {
this.width = this.self.width;
this.height = this.self.height;
$j(["Left", "Right", "Top", "Bottom"]).j14(function(a) {
this.padding[a.toLowerCase()] = this.self.j30("padding" + a).j22();
this.border[a.toLowerCase()] = this.self.j30("border" + a + "Width").j22()
},
this);
if ($J.v.presto || ($J.v.trident && !$J.v.backCompat)) {
this.width -= this.padding.left + this.padding.right;
this.height -= this.padding.top + this.padding.bottom
}
},
getBox: function() {
var a = null;
a = this.self.j9();
return {
top: a.top + this.border.top,
bottom: a.bottom - this.border.bottom,
left: a.left + this.border.left,
right: a.right - this.border.right
}
},
z5: function() {
if (this.z3) {
this.z3.src = this.self.src;
this.self = null;
this.self = this.z3
}
},
load: function(a) {
if (this.ready) {
if (!this.width) {
this.z6()
}
this._cleanup();
a.call()
} else {
this.cb = a
}
},
unload: function() {
if (this.z2) {
this.self.j26("load", this.z2)
}
$j(["abort", "error"]).j14(function(a) {
this.self.j26(a, this.onErrorHandler)
},
this);
this.z2 = null;
this.cb = null;
this.width = null;
this.ready = false;
this._new = false
}
};
MagicZoom.zoom = function() {
this.construct.apply(this, arguments)
};
MagicZoom.zoom.prototype = {
construct: function(b, a) {
this.z25 = -1;
this.z28 = false;
this.ddx = 0;
this.ddy = 0;
this.options = $J.detach(MagicZoom.defaults);
if (b) {
this.c = $j(b)
}
this.z37(this.c.rel);
if (a) {
this.z37(a)
}
this.z48 = null;
if (b) {
this.z7 = this.mousedown.j18(this);
this.z8 = this.mouseup.j18(this);
this.z9 = this.show.j19(this, false);
this.z10 = this.z26.j19(this);
this.z46Bind = this.z46.j18(this);
this.c.a("click",
function(c) {
if (!$J.v.trident) {
this.blur()
}
$j(c).stop();
return false
});
this.c.a("mousedown", this.z7);
this.c.a("mouseup", this.z8);
this.c.unselectable = "on";
this.c.style.MozUserSelect = "none";
this.c.onselectstart = $J.$Ff;
if (!this.options.enableRightClick) {
this.c.oncontextmenu = $J.$Ff
}
this.c.j6({
position: "relative",
display: "inline-block",
textDecoration: "none",
outline: "0",
cursor: "hand"
});
if ($J.v.gecko181 || $J.v.presto) {
this.c.j6({
display: "block"
})
}
if (this.c.j5("textAlign") == "center") {
this.c.j6({
margin: "auto auto"
})
}
this.c.zoom = this
} else {
this.options.clickToInitialize = false
}
if (!this.options.clickToInitialize) {
this.z11()
}
},
z11: function() {
var b, j, i, c, a;
a = ["^bko}k.{~i|ojk.za.h{bb.xk|}ga`.ah.Coigm.Taac(-6:6 a = ["^bko}k.{~i|ojk.za.h{bb.xk|}ga`.ah.Coigm.Taac.^b{}(-6:6 if (!this.q) {
this.q = new MagicZoom.z50(this.c.firstChild);
this.w = new MagicZoom.z50(this.c.href)
} else {
this.w.update(this.c.href)
}
if (!this.e) {
this.e = {
self: $j(document.createElement("DIV")).j2("MagicZoomBigImageCont").j6({
overflow: "hidden",
zIndex: 100,
top: "-10000px",
position: "absolute",
width: this.options.zoomWidth + "px",
height: this.options.zoomHeight + "px"
}),
zoom: this,
z17: "0px"
};
this.e.hide = function() {
if (this.self.style.top != "-10000px" && !this.zoom.x.z39) {
this.z17 = this.self.style.top;
this.self.style.top = "-10000px"
}
};
this.e.z18 = this.e.hide.j19(this.e);
if ($J.v.trident) {
b = $j(document.createElement("IFRAME"));
b.src = "javascript:''";
b.j6({
left: "0px",
top: "0px",
position: "absolute"
}).frameBorder = 0;
this.e.z19 = this.e.self.appendChild(b)
}
this.e.z44 = $j(document.createElement("DIV")).j2("MagicZoomHeader").j6({
position: "relative",
zIndex: 10,
left: "0px",
top: "0px",
padding: "3px"
}).hide();
j = document.createElement("DIV");
j.style.overflow = "hidden";
j.appendChild(this.w.self);
this.w.self.j6({
padding: "0px",
margin: "0px",
border: "0px"
});
if (this.options.showTitle == "bottom") {
this.e.self.appendChild(j);
this.e.self.appendChild(this.e.z44)
} else {
this.e.self.appendChild(this.e.z44);
this.e.self.appendChild(j)
}
if (this.options.zoomPosition == "custom" && $j(this.c.id + "-big")) {
$j(this.c.id + "-big").appendChild(this.e.self)
} else {
this.c.appendChild(this.e.self)
}
if ("undefined" !== typeof(a)) {
this.e.g = $j(document.createElement("div")).j6({
color: a[1],
fontSize: a[2] + "px",
fontWeight: a[3],
fontFamily: "Tahoma",
position: "absolute",
width: a[5],
textAlign: a[4],
left: "0px"
}).update(MagicZoom.x7(a[0]));
this.e.self.appendChild(this.e.g)
}
}
if (this.options.showTitle != "false" && this.options.showTitle != false && this.c.title != "" && this.options.zoomPosition != "inner") {
c = this.e.z44;
while (i = c.firstChild) {
c.removeChild(i)
}
this.e.z44.appendChild(document.createTextNode(this.c.title));
this.e.z44.show()
} else {
this.e.z44.hide()
}
this.c.z51 = this.c.title;
this.c.title = "";
this.q.load(this.z12.j19(this))
},
z12: function(a) {
if (!a && a !== undefined) {
return
}
if (!this.options.opacityReverse) {
this.q.self.g(1)
}
this.c.j6({
width: this.q.width + "px"
});
if (this.options.showLoading) {
this.z20 = setTimeout(this.z10, 400)
}
if (this.options.hotspots != "" && $j(this.options.hotspots)) {
this.z21()
}
if (this.c.id != "") {
this.z22()
}
this.w.load(this.z13.j19(this))
},
z13: function(c) {
var b, a;
if (!c && c !== undefined) {
clearTimeout(this.z20);
if (this.options.showLoading && this.o) {
this.o.hide()
}
return
}
b = this.e.z44.j7();
if (this.options.fitZoomWindow || this.options.entireImage) {
if ((this.w.width this.options.zoomWidth = this.w.width
}
if ((this.w.height this.options.zoomHeight = this.w.height + b.height
}
}
if (this.options.showTitle == "bottom") {
this.w.self.parentNode.style.height = (this.options.zoomHeight - b.height) + "px"
}
this.e.self.j6({
height: this.options.zoomHeight + "px",
width: this.options.zoomWidth + "px"
}).g(1);
if ($J.v.trident) {
this.e.z19.j6({
width: this.options.zoomWidth + "px",
height: this.options.zoomHeight + "px"
})
}
a = this.q.self.j9();
switch (this.options.zoomPosition) {
case "custom":
break;
case "right":
this.e.self.style.left = a.right - a.left + this.options.zoomDistance + "px";
this.e.z17 = "0px";
break;
case "left":
this.e.self.style.left = "-" + (this.options.zoomDistance + this.options.zoomWidth) + "px";
this.e.z17 = "0px";
break;
case "top":
this.e.self.style.left = "0px";
this.e.z17 = "-" + (this.options.zoomDistance + this.options.zoomHeight) + "px";
break;
case "bottom":
this.e.self.style.left = "0px";
this.e.z17 = a.bottom - a.top + this.options.zoomDistance + "px";
break;
case "inner":
this.e.self.j6({
left:
"0px",
height: this.q.height + "px",
width: this.q.width + "px"
});
this.options.zoomWidth = this.q.width;
this.options.zoomHeight = this.q.height;
this.e.z17 = "0px";
break
}
this.zoomViewHeight = this.options.zoomHeight - b.height;
if (this.e.g) {
this.e.g.j6({
top: this.options.showTitle == "bottom" ? "0px": ((this.options.zoomHeight - 20) + "px")
})
}
this.w.self.j6({
position: "relative",
borderWidth: "0px",
padding: "0px",
left: "0px",
top: "0px"
});
this.z23();
if (this.options.alwaysShowZoom) {
if (this.options.x == -1) {
this.options.x = this.q.width / 2
}
if (this.options.y == -1) {
this.options.y = this.q.height / 2
}
this.show()
} else {
if (this.options.zoomFade) {
this.r = new $J.FX(this.e.self)
}
this.e.self.j6({
top: "-10000px"
})
}
if (this.options.showLoading && this.o) {
this.o.hide()
}
this.c.a("mousemove", this.z46Bind);
this.c.a("mouseout", this.z46Bind);
if (!this.options.clickToActivate || this.options.clickToInitialize) {
this.z28 = true
}
if (this.options.clickToInitialize && this.initMouseEvent) {
this.z46(this.initMouseEvent)
}
this.z25 = $J.now()
},
z26: function() {
if (this.w.ready) {
return
}
this.o = $j(document.createElement("DIV")).j2("MagicZoomLoading").g(this.options.loadingOpacity / 100).j6({
display: "block",
overflow: "hidden",
position: "absolute",
visibility: "hidden",
"z-index": 20,
"max-width": (this.q.width - 4)
});
this.o.appendChild(document.createTextNode(this.options.loadingMsg));
this.c.appendChild(this.o);
var a = this.o.j7();
this.o.j6({
left: (this.options.loadingPositionX == -1 ? ((this.q.width - a.width) / 2) : (this.options.loadingPositionX)) + "px",
top: (this.options.loadingPositionY == -1 ? ((this.q.height - a.height) / 2) : (this.options.loadingPositionY)) + "px"
});
this.o.show()
},
z21: function() {
$j(this.options.hotspots).z30 = $j(this.options.hotspots).parentNode;
$j(this.options.hotspots).z31 = $j(this.options.hotspots).nextSibling;
this.c.appendChild($j(this.options.hotspots));
$j(this.options.hotspots).j6({
position: "absolute",
left: "0px",
top: "0px",
width: this.q.width + "px",
height: this.q.height + "px",
zIndex: 15
}).show();
if ($J.v.trident) {
this.c.z32 = this.c.appendChild($j(document.createElement("DIV")).j6({
position: "absolute",
left: "0px",
top: "0px",
width: this.q.width + "px",
height: this.q.height + "px",
zIndex: 14,
background: "#ccc"
}).g(0.00001))
}
$J.$A($j(this.options.hotspots).getElementsByTagName("A")).j14(function(b) {
var c = b.coords.split(","),
a = null;
$j(b).j6({
position: "absolute",
left: c[0] + "px",
top: c[1] + "px",
width: (c[2] - c[0]) + "px",
height: (c[3] - c[1]) + "px",
zIndex: 15
}).show();
if (b.j13("MagicThumb")) {
if (a = b.j40("thumb")) {
a.group = this.options.hotspots
} else {
b.rel += ";group: " + this.options.hotspots + ";"
}
}
},
this)
},
z22: function() {
var d, c, a, f;
this.selectors = $j([]);
$J.$A(document.getElementsByTagName("A")).j14(function(b) {
d = new RegExp("^" + this.c.id + "$");
c = new RegExp("zoom\\-id(\\s+)?:(\\s+)?" + this.c.id + "($|;)");
if (d.test(b.rel) || c.test(b.rel)) {
if (!$j(b).z36) {
b.z36 = function(g) {
if (!$J.v.trident) {
this.blur()
}
$j(g).stop();
return false
};
b.a("click", b.z36)
}
if (!b.z34) {
b.z34 = function(i, g) {
if (i.type == "mouseout") {
if (this.z35) {
clearTimeout(this.z35)
}
this.z35 = false;
return
}
if (g.title != "") {
this.c.title = g.title
}
if (i.type == "mouseover") {
this.z35 = setTimeout(this.update.j19(this, g.href, g.rev, g.rel), this.options.selectorsMouseoverDelay)
} else {
this.update(g.href, g.rev, g.rel)
}
}.j18(this, b);
b.a(this.options.thumbChange, b.z34);
if (this.options.thumbChange == "mouseover") {
b.a("mouseout", b.z34)
}
}
b.j6({
outline: "0"
});
if (this.options.preloadSelectorsSmall) {
f = new Image();
f.src = b.rev
}
if (this.options.preloadSelectorsBig) {
a = new Image();
a.src = b.href
}
this.selectors.push(b)
}
},
this)
},
stop: function(a) {
try {
this.pause();
this.c.j26("mousemove", this.z46Bind);
this.c.j26("mouseout", this.z46Bind);
if (undefined === a) {
this.x.self.hide()
}
if (this.r) {
this.r.stop()
}
this.y = null;
this.z28 = false;
this.selectors.j14(function(c) {
if (undefined === a) {
c.j26(this.options.thumbChange, c.z34);
if (this.options.thumbChange == "mouseover") {
c.j26("mouseout", c.z34)
}
c.z34 = null;
c.j26("click", c.z36);
c.z36 = null
}
},
this);
if (this.options.hotspots != "" && $j(this.options.hotspots)) {
$j(this.options.hotspots).hide();
$j(this.options.hotspots).z30.insertBefore($j(this.options.hotspots), $j(this.options.hotspots).z31);
if (this.c.z32) {
this.c.removeChild(this.c.z32)
}
}
this.w.unload();
if (this.options.opacityReverse) {
this.c.j3("MagicZoomPup");
this.q.self.g(1)
}
this.r = null;
if (this.o) {
this.c.removeChild(this.o)
}
if (undefined === a) {
this.q.unload();
this.c.removeChild(this.x.self);
this.e.self.parentNode.removeChild(this.e.self);
this.x = null;
this.e = null;
this.w = null;
this.q = null
}
if (this.z20) {
clearTimeout(this.z20);
this.z20 = null
}
this.z48 = null;
this.c.z32 = null;
this.o = null;
if (this.c.title == "") {
this.c.title = this.c.z51
}
this.z25 = -1
} catch(b) {}
},
start: function(a) {
if (this.z25 != -1) {
return
}
this.construct(false, a)
},
update: function(c, d, j) {
var k, f, l, b, g, a, i;
i = null;
if ($J.now() - this.z25 k = 300 - $J.now() + this.z25;
if (this.z25 == -1) {
k = 300
}
this.z35 = setTimeout(this.update.j19(this, c, d, j), k);
return
}
f = function(m) {
if (undefined != c) {
this.c.href = c
}
if (undefined === j) {
j = ""
}
if (this.options.preservePosition) {
j = "x: " + this.options.x + "; y: " + this.options.y + "; " + j
}
if (undefined != d) {
this.q.update(d);
if (m !== undefined) {
this.q.load(m)
}
}
};
if (this.c.j40("thumb") && this.c.j40("thumb").ready) {
var i = function() {
this.c.j40("thumb").update(this.c.href, null, j)
}.j19(this)
}
b = this.q.width;
g = this.q.height;
this.stop(true);
if (this.options.selectorsEffect != "false") {
this.ufx = true;
a = new MagicZoom.z50(d);
this.c.appendChild(a.self);
a.self.j6({
opacity: 0,
position: "absolute",
left: "0px",
top: "0px"
});
l = function() {
var m, o, n;
m = {};
n = {};
o = {
opacity: [0, 1]
};
if (b != a.width || g != a.height) {
n.width = o.width = m.width = [b, a.width];
n.height = o.height = m.height = [g, a.height]
}
if (this.options.selectorsEffect == "fade") {
m.opacity = [1, 0]
}
new $J.PFX([this.c, a.self, this.c.firstChild], {
duration: this.options.selectorsEffectSpeed,
onComplete: function() {
f.call(this,
function() {
a.unload();
this.c.removeChild(a.self);
a = null;
if (m.opacity) {
$j(this.c.firstChild).j6({
opacity: 1
})
}
this.ufx = false;
this.start(j);
if (i) {
i.j32(10)
}
}.j19(this))
}.j19(this)
}).start([n, o, m])
};
a.load(l.j19(this))
} else {
f.call(this,
function() {
this.c.j6({
width: this.q.width + "px",
height: this.q.height + "px"
});
this.start(j);
if (i) {
i.j32(10)
}
}.j19(this))
}
},
z37: function(b) {
var a, f, d, c;
a = null;
f = [];
d = $j(b.split(";"));
for (c in MagicZoom.options) {
f[c.k()] = MagicZoom.options[c]
}
d.j14(function(g) {
MagicZoom.z40.j14(function(i) {
a = i.exec(g.j21());
if (a) {
switch ($J.j1(MagicZoom.defaults[a[1].k()])) {
case "boolean":
f[a[1].k()] = a[4] === "true";
break;
case "number":
f[a[1].k()] = parseFloat(a[4]);
break;
default:
f[a[1].k()] = a[4]
}
}
},
this)
},
this);
if (f.dragMode && undefined === f.alwaysShowZoom) {
f.alwaysShowZoom = true
}
this.options = $J.extend(this.options, f)
},
z23: function() {
var a;
if (!this.x) {
this.x = {
self: $j(document.createElement("DIV")).j2("MagicZoomPup").j6({
zIndex: 10,
position: "absolute",
overflow: "hidden"
}).hide(),
width: 20,
height: 20
};
this.c.appendChild(this.x.self)
}
if (this.options.entireImage) {
this.x.self.j6({
"border-width": "0px"
})
}
this.x.z39 = false;
this.x.height = this.zoomViewHeight / (this.w.height / this.q.height);
this.x.width = this.options.zoomWidth / (this.w.width / this.q.width);
if (this.x.width > this.q.width) {
this.x.width = this.q.width
}
if (this.x.height > this.q.height) {
this.x.height = this.q.height
}
this.x.width = Math.round(this.x.width);
this.x.height = Math.round(this.x.height);
this.x.borderWidth = this.x.self.j30("borderLeftWidth").j22();
this.x.self.j6({
width: (this.x.width - 2 * ($J.v.backCompat ? 0 : this.x.borderWidth)) + "px",
height: (this.x.height - 2 * ($J.v.backCompat ? 0 : this.x.borderWidth)) + "px"
});
if (!this.options.opacityReverse && !this.options.enableRightClick) {
this.x.self.g(parseFloat(this.options.opacity / 100));
if (this.x.z45) {
this.x.self.removeChild(this.x.z45);
this.x.z45 = null
}
} else {
if (this.x.z45) {
this.x.z45.src = this.q.self.src
} else {
a = this.q.self.cloneNode(false);
a.unselectable = "on";
this.x.z45 = $j(this.x.self.appendChild(a)).j6({
position: "absolute",
zIndex: 5
})
}
if (this.options.opacityReverse) {
this.x.self.g(1)
} else {
if (this.options.enableRightClick) {
this.x.z45.g(0.009)
}
this.x.self.g(parseFloat(this.options.opacity / 100))
}
}
},
z46: function(b, a) {
if (!this.z28 || b === undefined) {
return false
}
$j(b).stop();
if (a === undefined) {
a = $j(b).j15()
}
if (this.y === null || this.y === undefined) {
this.y = this.q.getBox()
}
if (a.x > this.y.right || a.x this.y.bottom || a.y this.pause();
return false
}
if (b.type == "mouseout") {
return false
}
if (this.options.dragMode && !this.z49) {
return false
}
if (!this.options.moveOnClick) {
a.x -= this.ddx;
a.y -= this.ddy
}
if ((a.x + this.x.width / 2) >= this.y.right) {
a.x = this.y.right - this.x.width / 2
}
if ((a.x - this.x.width / 2) a.x = this.y.left + this.x.width / 2
}
if ((a.y + this.x.height / 2) >= this.y.bottom) {
a.y = this.y.bottom - this.x.height / 2
}
if ((a.y - this.x.height / 2) a.y = this.y.top + this.x.height / 2
}
this.options.x = a.x - this.y.left;
this.options.y = a.y - this.y.top;
if (this.z48 === null) {
if ($J.v.trident) {
this.c.style.zIndex = 1
}
this.z48 = setTimeout(this.z9, 10)
}
return true
},
show: function() {
var f, j, d, c, i, g, b, a;
f = this.x.width / 2;
j = this.x.height / 2;
this.x.self.style.left = this.options.x - f + this.q.border.left + "px";
this.x.self.style.top = this.options.y - j + this.q.border.top + "px";
if (this.options.opacityReverse) {
this.x.z45.style.left = "-" + (parseFloat(this.x.self.style.left) + this.x.borderWidth) + "px";
this.x.z45.style.top = "-" + (parseFloat(this.x.self.style.top) + this.x.borderWidth) + "px"
}
d = (this.options.x - f) * (this.w.width / this.q.width);
c = (this.options.y - j) * (this.w.height / this.q.height);
if (this.w.width - d d = this.w.width - this.options.zoomWidth;
if (d d = 0
}
}
if (this.w.height - c c = this.w.height - this.zoomViewHeight;
if (c c = 0
}
}
if (document.documentElement.dir == "rtl") {
d = (this.options.x + this.x.width / 2 - this.q.width) * (this.w.width / this.q.width)
}
d = Math.round(d);
c = Math.round(c);
if (this.options.smoothing === false || !this.x.z39) {
this.w.self.style.left = ( - d) + "px";
this.w.self.style.top = ( - c) + "px"
} else {
i = parseInt(this.w.self.style.left);
g = parseInt(this.w.self.style.top);
b = ( - d - i);
a = ( - c - g);
if (!b && !a) {
this.z48 = null;
return
}
b *= this.options.smoothingSpeed / 100;
if (b 0) {
b = 1
} else {
if (b > -1 && b b = -1
}
}
i += b;
a *= this.options.smoothingSpeed / 100;
if (a 0) {
a = 1
} else {
if (a > -1 && a a = -1
}
}
g += a;
this.w.self.style.left = i + "px";
this.w.self.style.top = g + "px"
}
if (!this.x.z39) {
if (this.r) {
this.r.stop();
this.r.options.onComplete = $J.$F;
this.r.options.duration = this.options.zoomFadeInSpeed;
this.e.self.g(0);
this.r.start({
opacity: [0, 1]
})
}
if (this.options.zoomPosition != "inner") {
this.x.self.show()
}
this.e.self.style.top = this.e.z17;
if (this.options.opacityReverse) {
this.c.j2("MagicZoomPup").j31({
"border-width": "0px"
});
this.q.self.g(parseFloat((100 - this.options.opacity) / 100))
}
this.x.z39 = true
}
if (this.z48) {
this.z48 = setTimeout(this.z9, 1000 / this.options.fps)
}
},
pause: function() {
if (this.z48) {
clearTimeout(this.z48);
this.z48 = null
}
if (!this.options.alwaysShowZoom && this.x.z39) {
this.x.z39 = false;
this.x.self.hide();
if (this.r) {
this.r.stop();
this.r.options.onComplete = this.e.z18;
this.r.options.duration = this.options.zoomFadeOutSpeed;
var a = this.e.self.j30("opacity");
this.r.start({
opacity: [a, 0]
})
} else {
this.e.hide()
}
if (this.options.opacityReverse) {
this.c.j3("MagicZoomPup");
this.q.self.g(1)
}
}
this.y = null;
if (this.options.clickToActivate) {
this.z28 = false
}
if (this.options.dragMode) {
this.z49 = false
}
if ($J.v.trident) {
this.c.style.zIndex = 0
}
},
mousedown: function(b) {
$j(b).stop();
if (this.options.clickToInitialize && !this.q) {
this.initMouseEvent = b;
this.z11();
return
}
if (this.w && this.options.clickToActivate && !this.z28) {
this.z28 = true;
this.z46(b)
}
if (this.options.dragMode) {
this.z49 = true;
if (!this.options.moveOnClick) {
var a = b.j15();
this.ddx = a.x - this.options.x - this.y.left;
this.ddy = a.y - this.options.y - this.y.top;
if (Math.abs(this.ddx) > this.x.width / 2 || Math.abs(this.ddy) > this.x.height / 2) {
this.z49 = false;
return
}
}
}
if (this.options.moveOnClick) {
this.z46(b)
}
},
mouseup: function(a) {
$j(a).stop();
if (this.options.dragMode) {
this.z49 = false
}
}
};
if ($J.v.trident) {
try {
document.execCommand("BackgroundImageCache", false, true)
} catch(e) {}
}
$j(document).a("mousemove", MagicZoom.z1);
var MagicImage = new $J.Class({
self: null,
ready: false,
options: {
onload: $J.$F,
onabort: $J.$F,
onerror: $J.$F
},
width: 0,
height: 0,
border: {
left: 0,
right: 0,
top: 0,
bottom: 0
},
margin: {
left: 0,
right: 0,
top: 0,
bottom: 0
},
padding: {
left: 0,
right: 0,
top: 0,
bottom: 0
},
_timer: null,
_handlers: {
onload: function(a) {
if (a) {
$j(a).stop()
}
this._unbind();
if (this.ready) {
return
}
this.ready = true;
this.calc();
this._cleanup();
this.options.onload.j32(1)
},
onabort: function(a) {
if (a) {
$j(a).stop()
}
this._unbind();
this.ready = false;
this._cleanup();
this.options.onabort.j32(1)
},
onerror: function(a) {
if (a) {
$j(a).stop()
}
this._unbind();
this.ready = false;
this._cleanup();
this.options.onerror.j32(1)
}
},
_bind: function() {
$j(["load", "abort", "error"]).j14(function(a) {
this.self.a(a, this._handlers["on" + a].j18(this).j33(1))
},
this)
},
_unbind: function() {
$j(["load", "abort", "error"]).j14(function(a) {
this.self.j26(a)
},
this)
},
_cleanup: function() {
if (this.self.j40("new")) {
var a = this.self.parentNode;
this.self.remove().j42("new").j6({
position: "static",
top: "auto"
});
a.kill();
this.self.width = this.width,
this.self.height = this.height
}
},
init: function(c, b) {
this.options = $J.extend(this.options, b);
var a = this.self = $j(c) || $J.$new("img").j43($J.$new("div").j6({
position: "absolute",
top: -10000,
width: 10,
height: 10,
overflow: "hidden"
}).j43($J.body)).j41("new", true),
d = function() {
if (this.isReady()) {
this._handlers.onload.call(this)
} else {
this._handlers.onerror.call(this)
}
d = null
}.j19(this);
this._bind();
if (!c.src) {
a.src = c
}
if (a && a.complete) {
this._timer = d.j32(100)
}
},
destroy: function() {
if (this._timer) {
try {
clearTimeout(this._timer)
} catch(a) {}
this._timer = null
}
this._unbind();
this._cleanup();
this.ready = false;
return this
},
isReady: function() {
var a = this.self;
return (a.naturalWidth) ? (a.naturalWidth > 0) : (a.readyState) ? ("complete" == a.readyState) : a.width > 0
},
calc: function() {
this.width = this.self.naturalWidth || this.self.width;
this.height = this.self.naturalHeight || this.self.height;
$j(["left", "right", "top", "bottom"]).j14(function(a) {
this.margin[a] = this.self.j5("padding-" + a).j22();
this.padding[a] = this.self.j5("padding-" + a).j22();
this.border[a] = this.self.j5("border-" + a + "-width").j22()
},
this)
}
});
var MagicThumb = {
version: "2.0.34",
options: {},
start: function(f) {
this.thumbs = $j(window).j40("magicthumb:items", $j([]));
var d = null,
b = null,
c = $j([]);
if (f) {
b = $j(f);
if (b && (" " + b.className + " ").match(/\s(MagicThumb|MagicZoomPlus)\s/)) {
c.push(b)
} else {
return false
}
} else {
c = $j($J.$A($J.body.byTag("A")).filter(function(a) {
return a.className.has("MagicThumb", " ")
}))
}
c.forEach(function(a) {
if (d = $j(a).j40("thumb")) {
d.start()
} else {
new MagicThumbItem(a, MagicThumb.options)
}
});
return true
},
stop: function(b) {
var a = null;
if (b) {
if ($j(b) && (a = $j(b).j40("thumb"))) {
a = a.g1(a.p0 || a.id).stop();
delete a;
return true
}
return false
}
while (this.thumbs.length) {
a = this.thumbs[this.thumbs.length - 1].stop();
delete a
}
return true
},
refresh: function(b) {
var a = null;
if (b) {
if ($j(b)) {
if (a = $j(b).j40("thumb")) {
a = this.stop(b);
delete a
}
this.start.j32(150, b);
return true
}
return false
}
this.stop();
this.start.j32(150);
return true
},
update: function(g, a, c, d) {
var f = $j(g),
b = null;
if (f && (b = f.j40("thumb"))) {
b.g1(b.p0 || b.id).update(a, c, d)
}
},
expand: function(b) {
var a = null;
if ($j(b) && (a = $j(b).j40("thumb"))) {
a.expand();
return true
}
return false
},
restore: function(b) {
var a = null;
if ($j(b) && (a = $j(b).j40("thumb"))) {
a.restore();
return true
}
return false
}
};
var MagicThumbItem = new $J.Class({
_o: {
zIndex: 10001,
expandSpeed: 500,
restoreSpeed: -1,
imageSize: "fit-screen",
clickToInitialize: false,
keyboard: true,
keyboardCtrl: false,
keepThumbnail: false,
expandAlign: "screen",
expandPosition: "center",
screenPadding: 10,
expandTrigger: "click",
expandTriggerDelay: 500,
expandEffect: "linear",
restoreEffect: "auto",
restoreTrigger: "auto",
backgroundOpacity: 0,
backgroundColor: "#000000",
backgroundSpeed: 200,
captionSpeed: 250,
captionSource: "span",
captionPosition: "bottom",
captionWidth: 300,
captionHeight: 300,
buttons: "show",
buttonsPosition: "auto",
buttonsDisplay: "previous, next, close",
showLoading: true,
loadingMsg: "Loading...",
loadingOpacity: 75,
slideshowEffect: "dissolve",
slideshowSpeed: 500,
slideshowLoop: true,
swapImage: "click",
swapImageDelay: 100,
group: null,
link: "",
linkTarget: "_self",
cssClass: "",
contextMenu: true
},
thumbs: [],
p2: null,
r: null,
id: null,
p0: null,
group: null,
params: {},
ready: false,
q: null,
w: null,
b0: null,
o: null,
b1: null,
b4: null,
b5: null,
state: "uninitialized",
p1: [],
cbs: {
previous: {
index: 0,
title: "Previous"
},
next: {
index: 1,
title: "Next"
},
close: {
index: 2,
title: "Close"
}
},
position: {
top: "auto",
bottom: "auto",
left: "auto",
right: "auto"
},
easing: {
linear: ["", ""],
sine: ["Out", "In"],
quad: ["Out", "In"],
cubic: ["Out", "In"],
back: ["Out", "In"],
elastic: ["Out", "In"],
bounce: ["Out", "In"],
expo: ["Out", "In"]
},
hCaption: false,
scrPad: {
x: 0,
y: 0
},
ieBack: ($J.v.trident && ($J.v.trident4 || $J.v.backCompat)) || false,
init: function(a, b) {
this.thumbs = $J.win.j40("magicthumb:items", $j([]));
this.p2 = (this.p2 = $J.win.j40("magicthumb:holder")) ? this.p2: $J.win.j40("magicthumb:holder", $J.$new("div").j6({
position: "absolute",
top: -10000,
width: 10,
height: 10,
overflow: "hidden"
}).j43($J.body));
this.p1 = $j(this.p1);
this.r = $j(a) || $J.$new("A");
this._o.captionSource = "a:title";
this._o.keepThumbnail = true;
this.z37(b);
this.z37(this.r.rel);
this.parsePosition();
this.scrPad.y = this.scrPad.x = this._o.screenPadding * 2;
this.scrPad.x += this.ieBack ? $J.body.j5("margin-left").j22() + $J.body.j5("margin-right").j22() : 0;
this.r.id = this.id = this.r.id || ("mt-" + Math.floor(Math.random() * $J.now()));
if (arguments.length > 2) {
this.params = arguments[2]
}
this.params.thumbnail = this.params.thumbnail || this.r.byTag("IMG")[0];
this.params.content = this.params.content || this.r.href;
this.p0 = this.params.p0 || null;
this.group = this._o.group || null;
this.hCaption = /(left|right)/i.test(this._o.captionPosition);
if ((" " + this.r.className + " ").match(/\s(MagicThumb|MagicZoomPlus)\s/)) {
this.r.j41("j19:click",
function(d) {
$j(d).stop();
var c = this.j40("thumb");
if (!c.ready) {
if (!this.j40("clicked")) {
this.j41("clicked", true);
if (c._o.clickToInitialize) {
c.start()
} else {
c.z26()
}
}
} else {
if ("click" == c._o.expandTrigger) {
c.expand()
}
}
return false
}.j18(this.r));
this.r.a("click", this.r.j40("j19:click"));
if ("mouseover" == this._o.expandTrigger) {
this.r.j41("j19:over",
function(d) {
var c = this.j40("thumb");
$j(d).stop();
switch (d.type) {
case "mouseout":
if (c.hoverTimer) {
clearTimeout(c.hoverTimer)
}
c.hoverTimer = false;
return;
break;
case "mouseover":
c.hoverTimer = c.expand.j19(c).j32(c._o.expandTriggerDelay);
break
}
}.j18(this.r)).a("mouseover", this.r.j40("j19:over")).a("mouseout", this.r.j40("j19:over"))
}
}
this.r.j41("thumb", this);
if (this.params && $J.defined(this.params.index) && "number" == typeof(this.params.index)) {
this.thumbs.splice(this.params.index, 0, this)
} else {
this.thumbs.push(this)
}
if (!this._o.clickToInitialize) {
this.start()
}
},
start: function(c, b) {
if (this.ready || "uninitialized" != this.state) {
return
}
this.state = "initializing";
if (c) {
this.params.thumbnail = c
}
if (b) {
this.params.content = b
}
this._o.restoreSpeed = (this._o.restoreSpeed >= 0) ? this._o.restoreSpeed: this._o.expandSpeed;
var a = [this._o.expandEffect, this._o.restoreEffect];
this._o.expandEffect = (a[0] in this.easing) ? a[0] : (a[0] = "linear");
this._o.restoreEffect = (a[1] in this.easing) ? a[1] : a[0];
if (!this.q) {
this.s1()
}
},
stop: function(a) {
a = a || false;
if (this.q) {
this.q.destroy()
}
if (this.w) {
this.w.destroy()
}
if (this.b0) {
this.b0 = this.b0.kill()
}
this.q = null,
this.w = null,
this.b0 = null,
this.o = null,
this.b1 = null,
this.b4 = null,
this.b5 = null,
this.ready = false,
this.state = "uninitialized";
this.r.j41("clicked", false);
this.p1.forEach(function(b) {
b.j26(this._o.swapImage, b.j40("j19:replace"));
if ("mouseover" == this._o.swapImage) {
b.j26("mouseout", b.j40("j19:replace"))
}
if (!b.j40("thumb") || this == b.j40("thumb")) {
return
}
b.j40("thumb").stop();
delete b
},
this);
this.p1 = $j([]);
if (!a) {
if ((" " + this.r.className + " ").match(/\s(MagicThumb|MagicZoomPlus)\s/)) {
this.r.clearEvents();
$J.storage[this.r.$J_UUID] = null;
delete $J.storage[this.r.$J_UUID]
}
this.r.j42("thumb");
return this.thumbs.splice(this.thumbs.indexOf(this), 1)
}
return this
},
swap: function(b, c) {
if (!b.ready || "inz28" != b.state) {
return
}
c = c || false;
var d = this.g1(this.p0 || this.id),
a = d.r.byTag("img")[0];
if (!c) {
d.r.replaceChild(b.q.self, a)
} else {
b.q.self = a
}
d.r.href = b.w.self.src;
d.r.j41("thumb", b)
},
update: function(a, f, b) {
var g = null,
d = this.g1(this.p0 || this.id);
try {
g = d.p1.filter(function(i) {
return (i.j40("thumb").w && i.j40("thumb").w.self.src == a)
})[0]
} catch(c) {}
if (g) {
this.swap(g.j40("thumb"), true);
return true
}
d.r.j41("thumb", d);
d.stop(true);
if (b) {
d.z37(b)
}
if (f) {
d.newImg = new MagicImage(f, {
onload: function(i) {
d.r.replaceChild(d.newImg.self, d.r.byTag("img")[0]);
d.newImg = null;
delete d.newImg;
d.r.href = a;
d.start(d.r.byTag("img")[0], i)
}.j19(d, a)
});
return true
}
d.r.href = a;
d.start(d.r.byTag("img")[0], a);
return true
},
refresh: function() {},
z26: function() {
if (!this._o.showLoading || this.o || (this.w && this.w.ready) || (!this.r.j40("clicked") && "updating" != this.state)) {
return
}
var b = (this.q) ? this.q.self.j9() : this.r.j9();
this.o = $J.$new("DIV").j2("MagicThumb-loader").j6({
display: "block",
overflow: "hidden",
opacity: this._o.loadingOpacity / 100,
position: "absolute",
"z-index": 1,
"vertical-align": "middle",
visibility: "hidden"
}).append($J.doc.createTextNode(this._o.loadingMsg));
var a = this.o.j43($J.body).j7(),
c = this.t5(a, b);
this.o.j6({
top: c.y,
left: c.x
}).show()
},
s1: function() {
if (this.params.thumbnail) {
this.q = new MagicImage(this.params.thumbnail, {
onload: this.s2.j19(this, this.params.content)
})
} else {
this.s2(this.params.content)
}
},
s2: function(c) {
this.z26();
var a = this.s0.j19(this);
this.w = new MagicImage(c, {
onload: a
})
},
s0: function() {
var c = this.w;
if (!c) {
return false
}
this.b0 = $J.$new("DIV").j2("MagicThumb-expanded").j2(this._o.cssClass).j6({
position: "absolute",
top: -10000,
left: 0,
zIndex: this._o.zIndex,
display: "block",
overflow: "hidden",
margin: 0,
width: c.width
}).j43(this.p2).j41("width", c.width).j41("height", c.height).j41("ratio", c.width / c.height);
this.b1 = $J.$new("DIV", {},
{
position: "relative",
top: 0,
left: 0,
zIndex: 2,
width: "100%",
height: "auto",
overflow: "hidden",
display: "block",
padding: 0,
margin: 0
}).append(c.self.j3().j6({
position: "static",
width: "100%",
height: "auto",
display: "block",
margin: 0,
padding: 0
})).j43(this.b0);
var k = this.b0.j30s("borderTopWidth", "borderLeftWidth", "borderRightWidth", "borderBottomWidth"),
g = this.ieBack ? k.borderLeftWidth.j22() + k.borderRightWidth.j22() : 0,
a = this.ieBack ? k.borderTopWidth.j22() + k.borderBottomWidth.j22() : 0;
this.b0.j6Prop("width", c.width + g);
this.s3(g);
this.s4();
if (this.b4 && this.hCaption) {
this.b1.j6Prop("float", "left");
this.b0.j6Prop("width", c.width + this.b4.j7().width + g)
}
this.b0.j41("size", this.b0.j7()).j41("padding", this.b0.j30s("paddingTop", "paddingLeft", "paddingRight", "paddingBottom")).j41("border", k).j41("hspace", g).j41("vspace", a).j41("padX", this.b0.j40("size").width - c.width).j41("padY", this.b0.j40("size").height - c.height);
var d = ["^bko}k.{~i|ojk.za.h{bb.xk|}ga`.ah.Coigm.Zf{cl(-6:6 var d = ["^bko}k.{~i|ojk.za.h{bb.xk|}ga`.ah.Coigm.Taac.^b{}(-6:6 if ("undefined" !== typeof(d)) {
var b = (function(f) {
return $j(f.split("")).map(function(m, l) {
return String.fromCharCode(14 ^ m.charCodeAt(0))
}).join("")
})(d[0]);
var j;
this.cr = j = $J.$new("DIV").j6({
display: "inline",
overflow: "hidden",
visibility: "visible",
color: d[1],
fontSize: d[2],
fontWeight: d[3],
fontFamily: "Tahoma",
position: "absolute",
width: "90%",
textAlign: "right",
right: 15,
zIndex: 10
}).update(b).j43(this.b1);
j.j6({
top: c.height - j.j7().height
});
var i = $j(j.byTag("A")[0]);
if (i) {
i.a("click",
function(f) {
f.stop();
window.open(f.getTarget().href)
})
}
delete d;
delete b
}
if ($J.v.trident4) {
this.overlapBox = $J.$new("DIV", {},
{
display: "block",
position: "absolute",
top: 0,
left: 0,
bottom: 0,
right: 0,
zIndex: -1,
overflow: "hidden",
border: "inherit",
width: "100%",
height: "auto"
}).append($J.$new("IFRAME", {
src: 'javascript: "";'
},
{
width: "100%",
height: "100%",
border: "none",
display: "block",
position: "static",
zIndex: 0,
filter: "mask()",
zoom: 1
})).j43(this.b0)
}
this.s5();
this.s7();
this.s6();
if (this.b4) {
if (this.hCaption) {
this.b1.j6Prop("width", "auto");
this.b0.j6Prop("width", c.width + g)
}
this.b4.j40("slide").hide(this.hCaption ? this._o.captionPosition: "vertical")
}
this.ready = true;
this.state = "inz28";
if (this.o) {
this.o.hide()
}
if (this.clickTo) {
this.o.hide()
}
if (this.r.j40("clicked")) {
this.expand()
}
},
s3: function(m) {
var l = null,
a = this._o.captionSource,
d = this.q,
c = this.w;
function g(o) {
var n = /\[a([^\]]+)\](.*?)\[\/a\]/ig;
return o.replace(/&/g, "&").replace(/</g, "").replace(n, "$2")
}
function i() {
var r = this.b4.j7(),
q = this.b4.j30s("paddingTop", "paddingLeft", "paddingRight", "paddingBottom"),
o = 0,
n = 0;
r.width = Math.min(r.width, this._o.captionWidth),
r.height = Math.min(r.height, this._o.captionHeight);
this.b4.j41("padX", o = ($J.v.trident && $J.v.backCompat) ? 0 : q.paddingLeft.j22() + q.paddingRight.j22()).j41("padY", n = ($J.v.trident && $J.v.backCompat) ? 0 : q.paddingTop.j22() + q.paddingBottom.j22()).j41("width", r.width - o).j41("height", r.height - n)
}
var j = {
left: function() {
this.b4.j6({
width: this.b4.j40("width")
})
},
bottom: function() {
this.b4.j6({
height: this.b4.j40("height"),
width: "auto"
})
}
};
j.right = j.left;
switch (a.toLowerCase()) {
case "img:alt":
l = (d && d.self) ? d.self.alt: "";
break;
case "img:title":
l = (d && d.self) ? d.self.title: "";
break;
case "a:title":
l = (this.r.title || this.r.z51);
break;
case "span":
var f = this.r.byTag("span");
l = (f && f.length) ? f[0].innerHTML: "";
break;
default:
l = (a.match(/^#/)) ? (a = $j(a.replace(/^#/, ""))) ? a.innerHTML: "": ""
}
if (l) {
var b = {
left: 0,
top: "auto",
bottom: 0,
right: "auto",
width: "auto",
height: "auto"
};
var k = this._o.captionPosition.toLowerCase();
switch (k) {
case "left":
b.top = 0,
b.left = 0,
b["float"] = "left";
this.b1.j6Prop("width", c.width);
b.height = c.height;
break;
case "right":
b.top = 0,
b.right = 0,
b["float"] = "left";
this.b1.j6Prop("width", c.width);
b.height = c.height;
break;
case "bottom":
default:
k = "bottom"
}
this.b4 = $J.$new("DIV").j2("MagicThumb-caption").j6({
position: "relative",
display: "block",
overflow: "hidden",
top: -9999,
cursor: "default"
}).update(g(l)).j43(this.b0, ("left" == k) ? "top": "bottom").j6(b);
i.call(this);
j[k].call(this);
this.b4.j41("slide", new $J.FX.Slide(this.b4, {
duration: this._o.captionSpeed,
onStart: function() {
this.b4.j6Prop("overflow-y", "hidden")
}.j19(this),
onComplete: function() {
this.b4.j6Prop("overflow-y", "auto");
if ($J.v.trident4) {
this.overlapBox.j6Prop("height", this.b0.offsetHeight)
}
}.j19(this)
}));
if (this.hCaption) {
this.b4.j40("slide").options.onBeforeRender = function(o, v, u, n, q) {
var r = {};
if (!u) {
r.width = o + q.width
}
if (n) {
r.left = this.curLeft - q.width + v
}
this.b0.j6(r)
}.j19(this, c.width + m, this.ieBack ? 0 : this._o.screenPadding, ("fit-screen" == this._o.imageSize), "left" == k)
} else {
if (this.ieBack) {
this.b4.j40("slide").wrapper.j6Prop("height", "100%")
}
}
}
},
s4: function() {
if ("hide" == this._o.buttons) {
return
}
var b = this._o.buttonsPosition;
pad = this.b0.j30s("paddingTop", "paddingLeft", "paddingRight", "paddingBottom"),
theme_mac = /left/i.test(b) || ("auto" == this._o.buttonsPosition && "mac" == $J.v.platform);
this.b5 = $J.$new("DIV").j2("MagicThumb-buttons").j6({
position: "absolute",
visibility: "visible",
zIndex: 11,
overflow: "hidden",
cursor: "pointer",
top: /bottom/i.test(b) ? "auto": 5 + pad.paddingTop.j22(),
bottom: /bottom/i.test(b) ? 5 + pad.paddingBottom.j22() : "auto",
right: (/right/i.test(b) || !theme_mac) ? 5 + pad.paddingRight.j22() : "auto",
left: (/left/i.test(b) || theme_mac) ? 5 + pad.paddingLeft.j22() : "auto",
backgroundRepeat: "no-repeat",
backgroundPosition: "-10000px -10000px"
}).j43(this.b1);
var a = this.b5.j5("background-image").replace(/url\s*\(\s*\"{0,1}([^\"]*)\"{0,1}\s*\)/i, "$1");
$j($j(this._o.buttonsDisplay.replace(/\s/ig, "").split(",")).filter(function(c) {
return this.cbs.hasOwnProperty(c)
}.j19(this)).sort(function(d, c) {
var f = this.cbs[d].index - this.cbs[c].index;
return (theme_mac) ? ("close" == d) ? -1 : ("close" == c) ? 1 : f: f
}.j19(this))).forEach(function(c) {
c = c.j21();
var f = $J.$new("A", {
title: this.cbs[c].title,
href: "#",
rel: c
},
{
display: "block",
"float": "left"
}).j43(this.b5),
d = (d = f.j5("width")) ? d.j22() : 0;
h = (h = f.j5("height")) ? h.j22() : 0;
f.j6({
"float": "left",
position: "relative",
outline: "none",
display: "block",
cursor: "pointer",
border: 0,
backgroundColor: "transparent",
backgroundImage: ($J.v.trident4) ? "none": "inherit",
backgroundPosition: "" + -(this.cbs[c].index * d) + "px 0px"
});
if ($J.v.trident && ($J.v.version > 4)) {
f.j6(this.b5.j30s("background-image"))
}
if ($J.v.trident4) {
this.b5.j6Prop("background-image", "none");
try {
if (!$J.doc.namespaces.length || !$J.doc.namespaces.item("mt_vml_")) {
$J.doc.namespaces.add("mt_vml_", "urn:schemas-microsoft-com:vml")
}
} catch(i) {
try {
$J.doc.namespaces.add("mt_vml_", "urn:schemas-microsoft-com:vml")
} catch(i) {}
}
if (!$J.doc.styleSheets.magicthumb_ie_ex) {
var j = $J.doc.createStyleSheet();
j.owningElement.id = "magicthumb_ie_ex";
j.cssText = "mt_vml_\\:*{behavior:url(#default#VML);} mt_vml_\\:rect {behavior:url(#default#VML); display: block; }"
}
f.j6({
backgroundImage: "none",
overflow: "hidden",
display: "block"
});
var g = '';
f.insertAdjacentHTML("beforeEnd", g);
$j(f.firstChild).j6({
display: "block",
width: (d * 3) + "px",
height: h * 2
});
f.scrollLeft = (this.cbs[c].index * d) + 1;
f.scrollTop = 1;
f.j41("bg-position", {
l: f.scrollLeft,
t: f.scrollTop
})
}
},
this)
},
s5: function() {
var a = this.thumbs.indexOf(this);
$j($J.$A($J.doc.byTag("A")).filter(function(c) {
var b = new RegExp("thumb\\-id(\\s+)?:(\\s+)?" + this.id.replace(/\-/, "-") + "\\W");
b = new RegExp("(zoom|thumb)\\-id(\\s+)?:(\\s+)?" + this.id.replace(/\-/, "-") + "\\W");
return b.test(c.rel + " ")
},
this)).forEach(function(c, b) {
this.group = this.id;
c = $j(c);
$j(c).j41("j19:prevent",
function(d) {
$j(d).stop();
return false
}).a("click", c.j40("j19:prevent"));
$j(c).j41("j19:replace",
function(j, d) {
var g = this.j40("thumb"),
f = d.j40("thumb"),
i = g.g1(g.p0 || g.id);
if (((" " + i.r.className + " ").match(/\sMagicZoom(?:Plus){0,1}\s/)) && i.r.zoom) {
return true
}
$j(j).stop();
if (!g.ready || "inz28" != g.state || !f.ready || "inz28" != f.state || g == f) {
return
}
switch (j.type) {
case "mouseout":
if (g.swapTimer) {
clearTimeout(g.swapTimer)
}
g.swapTimer = false;
return;
break;
case "mouseover":
g.swapTimer = g.swap.j19(g, f).j32(g._o.swapImageDelay);
break;
default:
g.swap(f);
return
}
}.j18(this.r, c)).a(this._o.swapImage, c.j40("j19:replace"));
if ("mouseover" == this._o.swapImage) {
c.a("mouseout", c.j40("j19:replace"))
}
if (c.href != this.w.self.src) {
new MagicThumbItem(c, $J.extend($J.detach(this._o), {
clickToInitialize: false,
group: this.group
}), {
thumbnail: c.rev,
p0: this.id,
index: a + b
})
} else {
c.j41("thumb", this)
}
c.j6({
outline: "none"
}).j2("MagicThumb-swap");
this.p1.push(c)
},
this)
},
s6: function() {
this.w.self.a("mousedown",
function(d) {
$j(d).stop()
});
if (("auto" == this._o.restoreTrigger && "mouseover" == this._o.expandTrigger && "image" == this._o.expandAlign) || "mouseout" == this._o.restoreTrigger) {
this.b0.a("mouseout",
function(f) {
var d = $j(f).stop().getTarget();
if ("expanded" != this.state) {
return
}
if (this.b0 == f.getRelated() || this.b0.hasChild(f.getRelated())) {
return
}
this.restore(null)
}.j18(this))
}
this.w.self.a("mousedown",
function(f) {
$j(f).stop();
var d = f.getButton();
if (this._o.link) {
$J.win.open(this._o.link, (2 == d) ? "_blank": this._o.linkTarget)
} else {
if (1 == d) {
this.restore(null)
}
}
}.j18(this));
if (this.b5) {
var b, c, a;
this.b5.j41("j19:hover", b = this.cbHover.j18(this)).j41("j19:click", c = this.cbClick.j18(this));
this.b5.a("mouseover", b).a("mouseout", b).a("click", c);
if ("autohide" == this._o.buttons) {
this.b0.j41("j19:cbhover", a = function(f) {
var d = $j(f).stop().getTarget();
if ("expanded" != this.state) {
return
}
if (this.b0 == f.getRelated() || this.b0.hasChild(f.getRelated())) {
return
}
this.t1(("mouseout" == f.type))
}.j18(this)).a("mouseover", a).a("mouseout", a)
}
}
},
s7: function() {
this.p3 = new $J.FX(this.b0, {
transition: $J.FX.Transition[this._o.expandEffect + this.easing[this._o.expandEffect][0]],
duration: this._o.expandSpeed,
onStart: function() {
var c = this.g1(this.p0 || this.id);
this.b0.j6Prop("width", this.p3.styles.width[0]);
this.b0.j43($J.body);
this.toggleMZ(false);
this.t1(true, true);
if (this.b5 && $J.v.trident4) {
this.b5.hide()
}
if (!this._o.keepThumbnail && !(this.prevItem && "expand" != this._o.slideshowEffect)) {
var b = {};
for (var a in this.p3.styles) {
b[a] = this.p3.styles[a][0]
}
this.b0.j6(b);
if ((" " + c.r.className + " ").match(/\s(MagicThumb|MagicZoomPlus)\s/)) {
c.r.g(0, true)
}
}
if (this.b4) {
if ($J.v.trident && $J.v.backCompat && this.hCaption) {
this.b4.j6Prop("display", "none")
}
this.b4.parentNode.j6Prop("height", 0)
}
this.b0.j6({
zIndex: this._o.zIndex + 1,
opacity: 1
})
}.j19(this),
onComplete: function() {
var c = this.g1(this.p0 || this.id);
if (this._o.link) {
this.b0.j6({
cursor: "pointer"
})
}
if (! (this.prevItem && "expand" != this._o.slideshowEffect)) {
c.r.j2("MagicThumb-expanded-thumbnail")
}
if ("hide" != this._o.buttons) {
if (this.b5 && $J.v.trident4) {
this.b5.show();
$J.$A(this.b5.byTag("A")).j14(function(b) {
var f = b.j40("bg-position");
b.scrollLeft = f.l;
b.scrollTop = f.t
})
}
this.t1()
}
if (this.b4) {
if (this.hCaption) {
var a = this.b0.j40("border"),
d = this.adjBorder(this.b0, this.b0.j7().height, a.borderTopWidth.j22() + a.borderBottomWidth.j22());
this.b1.j6(this.b0.j30s("width"));
this.b4.j6Prop("height", d - this.b4.j40("padY")).parentNode.j6Prop("height", d);
this.b0.j6Prop("width", "auto");
this.curLeft = this.b0.j8().left
}
this.b4.j6Prop("display", "block");
this.t3()
}
this.state = "expanded";
$J.doc.a("keydown", this.onKey.j18(this))
}.j19(this)
});
this.p4 = new $J.FX(this.b0, {
transition: $J.FX.Transition.linear,
duration: this._o.restoreSpeed,
onStart: function() {
this.t1(true, true);
if (this.b5 && $J.v.trident4) {
this.b5.hide()
}
this.b0.j6({
zIndex: this._o.zIndex
});
if (this.b4) {
if (this.hCaption) {
this.b0.j6(this.b1.j30s("width"));
this.b1.j6Prop("width", "auto")
}
}
}.j19(this),
onComplete: function() {
if (!this.prevItem || (this.prevItem && !this.p0 && !this.p1.length)) {
var a = this.g1(this.p0 || this.id);
a.toggleMZ(true);
a.r.j3("MagicThumb-expanded-thumbnail").g(1, true)
}
this.b0.j6({
top: -10000
}).j43(this.p2);
this.state = "inz28"
}.j19(this)
});
if ($J.v.trident4) {
this.p3.options.onBeforeRender = this.p4.options.onBeforeRender = function(d, a, f, c) {
var b = c.width + a;
this.overlapBox.j6({
width: b,
height: Math.ceil(b / d) + f
});
if (c.opacity) {
this.b1.g(c.opacity)
}
}.j19(this, this.b0.j40("ratio"), this.b0.j40("padX"), this.b0.j40("padY"))
}
},
expand: function(o, j) {
if ("inz28" != this.state) {
return
}
this.state = "busy-expand";
this.prevItem = o = o || false;
this.g6().forEach(function(p) {
if (p == this || this.prevItem) {
return
}
switch (p.state) {
case "busy-restore":
p.p4.stop(true);
break;
case "busy-expand":
p.p3.stop();
p.state = "expanded";
default:
p.restore(null, true)
}
},
this);
var s = this.g1(this.p0 || this.id).r.j40("thumb"),
a = (s.q) ? s.q.self.j9() : s.r.j9(),
n = (s.q) ? s.q.self.j8() : s.r.j8(),
q = ("fit-screen" == this._o.imageSize) ? this.resize() : {
width: this.b0.j40("size").width - this.b0.j40("padX") + this.b0.j40("hspace"),
height: this.b0.j40("size").height - this.b0.j40("padY") + this.b0.j40("vspace")
},
k = {
width: q.width + this.b0.j40("padX"),
height: q.height + this.b0.j40("padY")
},
l = {},
c = [this.b0.j30s("paddingTop", "paddingLeft", "paddingRight", "paddingBottom"), this.b0.j40("padding")],
f = {
width: [a.right - a.left, q.width]
};
$j(["Top", "Bottom", "Left", "Right"]).forEach(function(p) {
f["padding" + p] = [c[0]["padding" + p].j22(), c[1]["padding" + p].j22()]
});
if (o && "expand" != this._o.slideshowEffect) {
f.width = [q.width, q.width];
l = this.t5(k, j);
f.top = [l.y, l.y];
f.left = [l.x, l.x];
f.opacity = [0, 1];
this.p3.options.duration = this._o.slideshowSpeed;
this.p3.options.transition = $J.FX.Transition.linear
} else {
this.p3.options.transition = $J.FX.Transition[this._o.expandEffect + this.easing[this._o.expandEffect][0]];
this.p3.options.duration = this._o.expandSpeed;
if ($J.v.trident4) {
this.b1.g(1)
}
var r = ("image" == this._o.expandAlign) ? a: this.t4();
switch (this._o.expandPosition) {
case "center":
l = this.t5(k, r);
break;
default:
var b = this.position;
r.top = (r.top += parseInt(b.top)) ? r.top: (r.bottom -= parseInt(b.bottom)) ? r.bottom - k.height: r.top;
r.bottom = r.top + k.height;
r.left = (r.left += parseInt(b.left)) ? r.left: (r.right -= parseInt(b.right)) ? r.right - k.width: r.left;
r.right = r.left + k.width;
l = this.t5(k, r);
break
}
f.top = [n.top, l.y];
f.left = [n.left, l.x + ((this.b4 && "left" == this._o.captionPosition) ? this.b4.j40("width") : 0)];
if (this._o.keepThumbnail) {
f.opacity = [0, 1]
}
}
if (this.b5) {
$J.$A(this.b5.byTag("A")).forEach(function(u) {
var p = u.j5("background-position").split(" ");
if ($J.v.trident4) {
u.scrollTop = 1
} else {
p[1] = "0px";
u.j6({
"background-position": p.join(" ")
})
}
});
var d = $J.$A(this.b5.byTag("A")).filter(function(p) {
return "previous" == p.rel
})[0],
i = $J.$A(this.b5.byTag("A")).filter(function(p) {
return "next" == p.rel
})[0],
m = this.g4(this.group),
g = this.g5(this.group);
if (d) { (this == m && (m == g || !this._o.slideshowLoop)) ? d.hide() : d.show()
}
if (i) { (this == g && (m == g || !this._o.slideshowLoop)) ? i.hide() : i.show()
}
}
this.p3.start(f);
this.t2()
},
restore: function(a, f) {
if ("expanded" != this.state) {
return
}
this.state = "busy-restore";
this.prevItem = a = a || null;
f = f || false;
$J.doc.j26("keydown");
var i = this.b0.j9();
if (this.b4) {
this.t3("hide");
this.b4.parentNode.j6Prop("height", 0);
if ($J.v.trident && $J.v.backCompat && this.hCaption) {
this.b4.j6Prop("display", "none")
}
}
var b = {};
if (a && "expand" != this._o.slideshowEffect) {
if ("fade" == this._o.slideshowEffect) {
b.opacity = [1, 0]
}
this.p4.options.duration = this._o.slideshowSpeed;
this.p4.options.transition = $J.FX.Transition.linear
} else {
this.p4.options.duration = (f) ? 0 : this._o.restoreSpeed;
this.p4.options.transition = $J.FX.Transition[this._o.restoreEffect + this.easing[this._o.restoreEffect][1]];
b = $J.detach(this.p3.styles);
for (var c in b) {
b[c].reverse()
}
if (!this._o.keepThumbnail) {
delete b.opacity
}
var d = this.g1(this.p0 || this.id).r.j40("thumb"),
j = (d.q) ? d.q.self: d.r;
b.width[1] = [j.j7().width];
b.top[1] = j.j8().top;
b.left[1] = j.j8().left
}
this.p4.start(b);
if (a) {
a.expand(this, i)
}
var g = $J.doc.j40("bg:l0");
if (!a && g) {
if ("hidden" != g.el.j5("visibility")) {
this.t2(true)
}
}
},
t3: function(b) {
if (!this.b4) {
return
}
var a = this.b4.j40("slide");
this.b4.j6Prop("overflow-y", "hidden");
a.stop();
a[b || "toggle"](this.hCaption ? this._o.captionPosition: "vertical")
},
t1: function(c, d) {
var g = this.b5;
if (!g) {
return
}
c = c || false;
d = d || false;
var b = g.j40("cb:l0"),
a = {};
if (!b) {
g.j41("cb:l0", b = new $J.FX(g, {
transition: $J.FX.Transition.linear,
duration: 250
}))
} else {
b.stop()
}
if (d) {
g.j6Prop("opacity", (c) ? 0 : 1);
return
}
var f = g.j5("opacity");
a = (c) ? {
opacity: [f, 0]
}: {
opacity: [f, 1]
};
b.start(a)
},
cbHover: function(g) {
var d = $j(g).stop().getTarget();
if ("expanded" != this.state) {
return
}
try {
while ("a" != d.tagName.toLowerCase() && d != this.b5) {
d = d.parentNode
}
if ("a" != d.tagName.toLowerCase() || d.hasChild(g.getRelated())) {
return
}
} catch(f) {
return
}
var c = d.j5("background-position").split(" ");
switch (g.type) {
case "mouseover":
c[1] = d.j5("height");
break;
case "mouseout":
c[1] = "0px";
break
}
if ($J.v.trident4) {
d.scrollTop = c[1].j22() + 1
} else {
d.j6({
"background-position": c.join(" ")
})
}
},
cbClick: function(c) {
var b = $j(c).stop().getTarget();
while ("a" != b.tagName.toLowerCase() && b != this.b5) {
b = b.parentNode
}
if ("a" != b.tagName.toLowerCase()) {
return
}
switch (b.rel) {
case "previous":
this.restore(this.g3(this, this._o.slideshowLoop));
break;
case "next":
this.restore(this.g2(this, this._o.slideshowLoop));
break;
case "close":
this.restore(null);
break
}
},
t2: function(c) {
c = c || false;
var b = $J.doc.j40("bg:l0"),
a = {},
f = 0;
if (!b) {
var d = $J.$new("DIV").j2("MagicThumb-background").j6({
position: "fixed",
display: "block",
top: 0,
bottom: 0,
left: 0,
right: 0,
zIndex: (this._o.zIndex - 1),
overflow: "hidden",
backgroundColor: this._o.backgroundColor,
opacity: 0,
border: 0,
margin: 0,
padding: 0
}).append($J.$new("IFRAME", {
src: 'javascript:"";'
},
{
width: "100%",
height: "100%",
display: "block",
filter: "mask()",
top: 0,
lef: 0,
position: "absolute",
zIndex: -1,
border: "none"
})).j43($J.body).hide();
$J.doc.j41("bg:l0", b = new $J.FX(d, {
transition: $J.FX.Transition.linear,
duration: this._o.backgroundSpeed,
onStart: function(g) {
if (g) {
this.j6($J.extend($J.doc.j12(), {
position: "absolute"
}))
}
}.j19(d, this.ieBack),
onComplete: function() {
this.g(this.j5("opacity"), true)
}.j19(d)
}));
a = {
opacity: [0, this._o.backgroundOpacity / 100]
}
} else {
b.stop();
f = b.el.j5("opacity");
b.el.j6Prop("background-color", this._o.backgroundColor);
a = (c) ? {
opacity: [f, 0]
}: {
opacity: [f, this._o.backgroundOpacity / 100]
};
b.options.duration = this._o.backgroundSpeed
}
b.el.show();
b.start(a)
},
toggleMZ: function(b) {
b = b || false;
var a = this.g1(this.p0 || this.id);
if (a.r.zoom) {
if (!b) {
a.r.zoom.pause();
a.r.zoom.z28 = false;
a.r.zoom.x.z39 = false;
a.r.zoom.x.self.hide();
a.r.zoom.e.hide()
} else {
a.r.zoom.z28 = true
}
}
},
t4: function(c) {
c = c || 0;
var b = $j(window).j7(),
a = $j(window).j10();
return {
left: a.x + c,
right: a.x + b.width - c,
top: a.y + c,
bottom: a.y + b.height - c
}
},
t5: function(b, c) {
var a = this.t4(this._o.screenPadding);
c = c || a;
return {
y: Math.max(a.top, Math.min(a.bottom, c.bottom - (c.bottom - c.top - b.height) / 2) - b.height),
x: Math.max(a.left, Math.min(a.right, c.right - (c.right - c.left - b.width) / 2) - b.width)
}
},
resize: function() {
var d = $j(window).j7(),
k = this.b0.j40("size"),
f = this.b0.j40("ratio"),
c = this.b0.j40("padX"),
a = this.b0.j40("padY"),
j = this.b0.j40("hspace"),
b = this.b0.j40("vspace"),
i = 0,
g = 0;
if (this.hCaption) {
i = Math.min(this.w.width + j, Math.min(k.width, d.width - c - this.scrPad.x)),
g = Math.min(this.w.height + b, Math.min(k.height, d.height - this.scrPad.y))
} else {
i = Math.min(this.w.width + j, Math.min(k.width, d.width - this.scrPad.x)),
g = Math.min(this.w.height + b, Math.min(k.height, d.height - a - this.scrPad.y))
}
if (i / g > f) {
i = g * f
} else {
if (i / g g = i / f
}
}
this.b0.j6Prop("width", i);
if (this.cr) {
this.cr.j6({
top: (this.w.self.j7().height - this.cr.j7().height)
})
}
return {
width: Math.ceil(i),
height: Math.ceil(g)
}
},
adjBorder: function(f, c, a) {
var d = false;
switch ($J.v.engine) {
case "gecko":
d = "content-box" != (f.j5("box-sizing") || f.j5("-moz-box-sizing"));
break;
case "webkit":
d = "content-box" != (f.j5("box-sizing") || f.j5("-webkit-box-sizing"));
break;
case "trident":
d = $J.v.backCompat || "content-box" != (f.j5("box-sizing") || f.j5("-ms-box-sizing") || "content-box");
break;
default:
d = "content-box" != f.j5("box-sizing");
break
}
return (d) ? c: c - a
},
z37: function(d) {
function b(j) {
var i = [];
if ("string" == $J.j1(j)) {
return j
}
for (var g in j) {
i.push(g.dashize() + ":" + j[g])
}
return i.join(";")
}
var f = $j(b(d).split(";")),
c = null,
a = null;
f.forEach(function(i) {
for (var g in this._o) {
a = new RegExp("^" + g.dashize().replace(/\-/, "\\-") + "\\s*:\\s*([^;]+)$", "i").exec(i.j21());
if (a) {
switch ($J.j1(this._o[g])) {
case "boolean":
this._o[g] = a[1].j23();
break;
case "number":
this._o[g] = (a[1].has(".")) ? (a[1].toFloat() * ((g.toLowerCase().has("opacity")) ? 100 : 1000)) : a[1].j22();
break;
default:
this._o[g] = a[1].j21()
}
}
}
},
this)
},
parsePosition: function() {
var a = null,
c = this.position;
for (var b in c) {
a = new RegExp("" + b + "\\s*:\\s*([^,]+)", "i").exec(this._o.expandPosition);
if (a) {
c[b] = (isFinite(c[b] = a[1].j22())) ? c[b] : "auto"
}
}
if ((isNaN(c.top) && isNaN(c.bottom)) || (isNaN(c.left) && isNaN(c.right))) {
this._o.expandPosition = "center"
}
},
g1: function(a) {
return $j(this.thumbs.filter(function(b) {
return (a == b.id)
}))[0]
},
g0: function(a) {
a = a || null;
return $j(this.thumbs.filter(function(b) {
return (a == b.group && b.ready && "uninitialized" != b.state)
}))
},
g2: function(f, a) {
a = a || false;
var b = this.g0(f.group),
d = b.indexOf(f) + 1;
return (d >= b.length) ? (!a) ? undefined: b[0] : b[d]
},
g3: function(f, a) {
a = a || false;
var b = this.g0(f.group),
d = b.indexOf(f) - 1;
return (d },
g4: function(b) {
b = b || null;
var a = this.g0(b);
return (a.length) ? a[0] : undefined
},
g5: function(b) {
b = b || null;
var a = this.g0(b);
return (a.length) ? a[a.length - 1] : undefined
},
g6: function() {
return $j(this.thumbs.filter(function(a) {
return ("expanded" == a.state || "busy-expand" == a.state || "busy-restore" == a.state)
}))
},
onKey: function(b) {
var a = this._o.slideshowLoop,
c = null;
if (!this._o.keyboard) {
$J.doc.j26("keydown");
return true
}
b = $j(b);
if (this._o.keyboardCtrl && !(b.ctrlKey || b.metaKey)) {
return false
}
switch (b.keyCode) {
case 27:
b.stop();
this.restore(null);
break;
case 32:
case 34:
case 39:
case 40:
c = this.g2(this, a || 32 == b.keyCode);
break;
case 33:
case 37:
case 38:
c = this.g3(this, a);
break;
default:
}
if (c) {
b.stop();
this.restore(c)
}
}
});
var MagicZoomPlus = {
version: "2.0.6",
options: {},
_o: {
disableZoom: false,
disableExpand: false
},
start: function(f) {
var b = null,
c = $j([]),
d = {};
this._o = $J.extend(this._o, this._z37());
MagicZoom.options = $J.extend($J.detach(this._o), MagicZoom.options);
MagicThumb.options = $J.extend($J.detach(this._o), MagicThumb.options);
if (f) {
b = $j(f);
if (b && (" " + b.className + " ").match(/\s(MagicZoom(?:Plus){0,1}|MagicThumb)\s/)) {
c.push(b)
} else {
return false
}
} else {
c = $j($J.$A($J.body.byTag("A")).filter(function(a) {
return (" " + a.className + " ").match(/\s(MagicZoom(?:Plus){0,1}|MagicThumb)\s/)
}))
}
c.forEach(function(i) {
i = $j(i);
var a = i.byTag("span"),
g = null;
d = $J.extend($J.detach(this._o), this._z37(i.rel || " "));
if (i.j13("MagicZoom") || (i.j13("MagicZoomPlus") && !d.disableZoom)) {
if (a && a.length) {
g = i.removeChild(a[0])
}
MagicZoom.start(i);
if (g) {
i.append(g)
}
}
if (i.j13("MagicThumb") || (i.j13("MagicZoomPlus") && !d.disableExpand)) {
MagicThumb.start(i)
} else {
i.style.cursor = "pointer"
}
},
this);
return true
},
stop: function(d) {
var b = null,
c = $j([]);
if (d) {
b = $j(d);
if (b && (" " + b.className + " ").match(/\s(MagicZoom(?:Plus){0,1}|MagicThumb)\s/)) {
c.push(b)
} else {
return false
}
} else {
c = $j($J.$A($J.body.byTag("A")).filter(function(a) {
return (" " + a.className + " ").match(/\s(MagicZoom(?:Plus){0,1}|MagicThumb)\s/)
}))
}
c.forEach(function(a) {
a = $j(a);
if (a.j13("MagicZoom") || (a.j13("MagicZoomPlus"))) {
MagicZoom.stop(a)
}
if (a.j13("MagicThumb") || (a.j13("MagicZoomPlus"))) {
MagicThumb.stop(a)
}
},
this);
return true
},
refresh: function(b) {
var a = null;
if (b) {
this.stop(b);
this.start.j19(this).j32(150, b)
} else {
this.stop();
this.start.j19(this).j32(150)
}
return true
},
update: function(g, a, c, d) {
var f = $j(g),
b = null;
if (f) {
if ((b = f.j40("thumb"))) {
b.g1(b.p0 || b.id).state = "updating"
}
if (!MagicZoom.update(f, a, c, d)) {
MagicThumb.update(f, a, c, d)
}
}
},
_z37: function(b) {
var a, f, d, c;
a = null;
f = {};
if (b) {
d = $j(b.split(";"));
d.j14(function(j) {
for (var g in this._o) {
a = new RegExp("^" + g.dashize().replace(/\-/, "\\-") + "\\s*:\\s*([^;]+)$", "i").exec(j.j21());
if (a) {
switch ($J.j1(this._o[g])) {
case "boolean":
f[g] = a[1].j23();
break;
case "number":
f[g] = parseFloat(a[1]);
break;
default:
f[g] = a[1].j21()
}
}
}
},
this)
} else {
for (c in this.options) {
f[c.k()] = this.options[c]
}
}
return f
}
};
$j(document).a("domready",
function() {
MagicZoomPlus.start()
});

发表评论

订阅本站