﻿/**
* hoverIntent r5 // 2007.03.27 // jQuery 1.1.2
* <http://cherne.net/brian/resources/jquery.hoverIntent.html>
* 
* @param  f  onMouseOver function || An object with configuration options
* @param  g  onMouseOut function  || Nothing (use configuration options object)
* @return    The object (aka "this") that called hoverIntent, and the event object
* @author    Brian Cherne <brian@cherne.net>
*/
(function($) { $.fn.hoverIntent = function(f, g) { var cfg = { sensitivity: 7, interval: 100, timeout: 0 }; cfg = $.extend(cfg, g ? { over: f, out: g} : f); var cX, cY, pX, pY; var track = function(ev) { cX = ev.pageX; cY = ev.pageY; }; var compare = function(ev, ob) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); if ((Math.abs(pX - cX) + Math.abs(pY - cY)) < cfg.sensitivity) { $(ob).unbind("mousemove", track); ob.hoverIntent_s = 1; return cfg.over.apply(ob, [ev]); } else { pX = cX; pY = cY; ob.hoverIntent_t = setTimeout(function() { compare(ev, ob); }, cfg.interval); } }; var delay = function(ev, ob) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); ob.hoverIntent_s = 0; return cfg.out.apply(ob, [ev]); }; var handleHover = function(e) { var p = (e.type == "mouseover" ? e.fromElement : e.toElement) || e.relatedTarget; while (p && p != this) { try { p = p.parentNode; } catch (e) { p = this; } } if (p == this) { return false; } var ev = jQuery.extend({}, e); var ob = this; if (ob.hoverIntent_t) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); } if (e.type == "mouseover") { pX = ev.pageX; pY = ev.pageY; $(ob).bind("mousemove", track); if (ob.hoverIntent_s != 1) { ob.hoverIntent_t = setTimeout(function() { compare(ev, ob); }, cfg.interval); } } else { $(ob).unbind("mousemove", track); if (ob.hoverIntent_s == 1) { ob.hoverIntent_t = setTimeout(function() { delay(ev, ob); }, cfg.timeout); } } }; return this.mouseover(handleHover).mouseout(handleHover); }; })(jQuery);

// ColorBox v1.3.8 - a full featured, light-weight, customizable lightbox based on jQuery 1.3
(function(b, gb) { var v = "none", t = "click", N = "LoadedContent", d = false, x = "resize.", o = "y", u = "auto", f = true, M = "nofollow", q = "on", n = "x"; function e(a, c) { a = a ? ' id="' + k + a + '"' : ""; return b("<div" + a + (c ? ' style="' + c + '"' : "") + "/>") } function p(a, b) { b = b === n ? m.width() : m.height(); return typeof a === "string" ? Math.round(a.match(/%/) ? b / 100 * parseInt(a, 10) : parseInt(a, 10)) : a } function Q(c) { c = b.isFunction(c) ? c.call(h) : c; return a.photo || c.match(/\.(gif|png|jpg|jpeg|bmp)(?:\?([^#]*))?(?:#(\.*))?$/i) } function cb() { for (var c in a) if (b.isFunction(a[c]) && c.substring(0, 2) !== q) a[c] = a[c].call(h); a.rel = a.rel || h.rel || M; a.href = a.href || b(h).attr("href"); a.title = a.title || h.title } function db(d) { h = d; a = b.extend({}, b(h).data(r)); cb(); if (a.rel !== M) { i = b("." + H).filter(function() { return (b(this).data(r).rel || this.rel) === a.rel }); g = i.index(h); if (g === -1) { i = i.add(h); g = i.length - 1 } } else { i = b(h); g = 0 } if (!w) { w = F = f; R = h; try { R.blur() } catch (e) { } b.event.trigger(hb); a.onOpen && a.onOpen.call(h); y.css({ opacity: +a.opacity, cursor: a.overlayClose ? "pointer" : u }).show(); a.w = p(a.initialWidth, n); a.h = p(a.initialHeight, o); c.position(0); S && m.bind(x + O + " scroll." + O, function() { y.css({ width: m.width(), height: m.height(), top: m.scrollTop(), left: m.scrollLeft() }) }).trigger("scroll." + O) } T.add(I).add(J).add(z).add(U).hide(); V.html(a.close).show(); c.slideshow(); c.load() } var eb = { transition: "elastic", speed: 300, width: d, initialWidth: "600", innerWidth: d, maxWidth: d, height: d, initialHeight: "450", innerHeight: d, maxHeight: d, scalePhotos: f, scrolling: f, inline: d, html: d, iframe: d, photo: d, href: d, title: d, rel: d, opacity: .9, preloading: f, current: "image {current} of {total}", previous: "previous", next: "next", close: "close", open: d, loop: f, slideshow: d, slideshowAuto: f, slideshowSpeed: 2500, slideshowStart: "start slideshow", slideshowStop: "stop slideshow", onOpen: d, onLoad: d, onComplete: d, onCleanup: d, onClosed: d, overlayClose: f, escKey: f, arrowKey: f }, r = "colorbox", k = "cbox", hb = k + "_open", P = k + "_load", W = k + "_complete", X = k + "_cleanup", fb = k + "_closed", G = b.browser.msie && !b.support.opacity, S = G && b.browser.version < 7, O = k + "_IE6", y, j, E, s, Y, Z, ab, bb, i, m, l, K, L, U, T, z, J, I, V, C, D, A, B, h, R, g, a, w, F, c, H = k + "Element"; c = b.fn[r] = b[r] = function(c, d) { var a = this; if (!a[0] && a.selector) return a; c = c || {}; if (d) c.onComplete = d; if (!a[0] || a.selector === undefined) { a = b("<a/>"); c.open = f } a.each(function() { b(this).data(r, b.extend({}, b(this).data(r) || eb, c)).addClass(H) }); c.open && db(a[0]); return a }; c.init = function() { var h = "hover"; m = b(gb); j = e().attr({ id: r, "class": G ? k + "IE" : "" }); y = e("Overlay", S ? "position:absolute" : "").hide(); E = e("Wrapper"); s = e("Content").append(l = e(N, "width:0; height:0"), L = e("LoadingOverlay").add(e("LoadingGraphic")), U = e("Title"), T = e("Current"), J = e("Next"), I = e("Previous"), z = e("Slideshow"), V = e("Close")); E.append(e().append(e("TopLeft"), Y = e("TopCenter"), e("TopRight")), e().append(Z = e("MiddleLeft"), s, ab = e("MiddleRight")), e().append(e("BottomLeft"), bb = e("BottomCenter"), e("BottomRight"))).children().children().css({ "float": "left" }); K = e(d, "position:absolute; width:9999px; visibility:hidden; display:none"); b("body").prepend(y, j.append(E, K)); s.children().hover(function() { b(this).addClass(h) }, function() { b(this).removeClass(h) }).addClass(h); C = Y.height() + bb.height() + s.outerHeight(f) - s.height(); D = Z.width() + ab.width() + s.outerWidth(f) - s.width(); A = l.outerHeight(f); B = l.outerWidth(f); j.css({ "padding-bottom": C, "padding-right": D }).hide(); J.click(c.next); I.click(c.prev); V.click(c.close); s.children().removeClass(h); b("." + H).live(t, function(a) { if (a.button !== 0 && typeof a.button !== "undefined" || a.ctrlKey || a.shiftKey || a.altKey) return f; else { db(this); return d } }); y.click(function() { a.overlayClose && c.close() }); b(document).bind("keydown", function(b) { if (w && a.escKey && b.keyCode === 27) { b.preventDefault(); c.close() } if (w && a.arrowKey && !F && i[1]) if (b.keyCode === 37 && (g || a.loop)) { b.preventDefault(); I.click() } else if (b.keyCode === 39 && (g < i.length - 1 || a.loop)) { b.preventDefault(); J.click() } }) }; c.remove = function() { j.add(y).remove(); b("." + H).die(t).removeData(r).removeClass(H) }; c.position = function(f, b) { function c(a) { Y[0].style.width = bb[0].style.width = s[0].style.width = a.style.width; L[0].style.height = L[1].style.height = s[0].style.height = Z[0].style.height = ab[0].style.height = a.style.height } var e, h = Math.max(m.height() - a.h - A - C, 0) / 2 + m.scrollTop(), g = Math.max(m.width() - a.w - B - D, 0) / 2 + m.scrollLeft(); e = j.width() === a.w + B && j.height() === a.h + A ? 0 : f; E[0].style.width = E[0].style.height = "9999px"; j.dequeue().animate({ width: a.w + B, height: a.h + A, top: h, left: g }, { duration: e, complete: function() { c(this); F = d; E[0].style.width = a.w + B + D + "px"; E[0].style.height = a.h + A + C + "px"; b && b() }, step: function() { c(this) } }) }; c.resize = function(b) { if (w) { b = b || {}; if (b.width) a.w = p(b.width, n) - B - D; if (b.innerWidth) a.w = p(b.innerWidth, n); l.css({ width: a.w }); if (b.height) a.h = p(b.height, o) - A - C; if (b.innerHeight) a.h = p(b.innerHeight, o); if (!b.innerHeight && !b.height) { b = l.wrapInner("<div style='overflow:auto'></div>").children(); a.h = b.height(); b.replaceWith(b.children()) } l.css({ height: a.h }); c.position(a.transition === v ? 0 : a.speed) } }; c.prep = function(o) { var d = "hidden"; function n(t) { var o, q, s, n, d = i.length, e = a.loop; c.position(t, function() { function t() { G && j[0].style.removeAttribute("filter") } if (w) { G && p && l.fadeIn(100); a.iframe && b("<iframe frameborder=0" + (a.scrolling ? "" : " scrolling='no'") + (G ? " allowtransparency='true'" : "") + "/>").appendTo(l).attr({ src: a.href, name: (new Date).getTime() }); l.show(); U.show().html(a.title); if (d > 1) { T.html(a.current.replace(/\{current\}/, g + 1).replace(/\{total\}/, d)).show(); J[e || g < d - 1 ? "show" : "hide"]().html(a.next); I[e || g ? "show" : "hide"]().html(a.previous); o = g ? i[g - 1] : i[d - 1]; s = g < d - 1 ? i[g + 1] : i[0]; if (a.slideshow) { z.show(); g === d - 1 && !e && j.is("." + k + "Slideshow_on") && z.click() } if (a.preloading) { n = b(s).data(r).href || s.href; q = b(o).data(r).href || o.href; if (Q(n)) b("<img/>")[0].src = n; if (Q(q)) b("<img/>")[0].src = q } } L.hide(); a.transition === "fade" ? j.fadeTo(f, 1, function() { t() }) : t(); m.bind(x + k, function() { c.position(0) }); b.event.trigger(W); a.onComplete && a.onComplete.call(h) } }) } if (w) { var p, f = a.transition === v ? 0 : a.speed; m.unbind(x + k); l.remove(); l = e(N).html(o); l.hide().appendTo(K.show()).css({ width: function() { a.w = a.w || l.width(); a.w = a.mw && a.mw < a.w ? a.mw : a.w; return a.w } (), overflow: a.scrolling ? u : d }).css({ height: function() { a.h = a.h || l.height(); a.h = a.mh && a.mh < a.h ? a.mh : a.h; return a.h } () }).prependTo(s); K.hide(); b("#" + k + "Photo").css({ cssFloat: v }); S && b("select").not(j.find("select")).filter(function() { return this.style.visibility !== d }).css({ visibility: d }).one(X, function() { this.style.visibility = "inherit" }); a.transition === "fade" ? j.fadeTo(f, 0, function() { n(0) }) : n(f) } }; c.load = function() { var j, d, q, m = c.prep; F = f; h = i[g]; a = b.extend({}, b(h).data(r)); cb(); b.event.trigger(P); a.onLoad && a.onLoad.call(h); a.h = a.height ? p(a.height, o) - A - C : a.innerHeight && p(a.innerHeight, o); a.w = a.width ? p(a.width, n) - B - D : a.innerWidth && p(a.innerWidth, n); a.mw = a.w; a.mh = a.h; if (a.maxWidth) { a.mw = p(a.maxWidth, n) - B - D; a.mw = a.w && a.w < a.mw ? a.w : a.mw } if (a.maxHeight) { a.mh = p(a.maxHeight, o) - A - C; a.mh = a.h && a.h < a.mh ? a.h : a.mh } j = a.href; L.show(); if (a.inline) { e("InlineTemp").hide().insertBefore(b(j)[0]).bind(P + " " + X, function() { b(this).replaceWith(l.children()) }); m(b(j)) } else if (a.iframe) m(" "); else if (a.html) m(a.html); else if (Q(j)) { d = new Image; d.onload = function() { var e; d.onload = null; d.id = k + "Photo"; b(d).css({ margin: u, border: v, display: "block", cssFloat: "left" }); if (a.scalePhotos) { q = function() { d.height -= d.height * e; d.width -= d.width * e }; if (a.mw && d.width > a.mw) { e = (d.width - a.mw) / d.width; q() } if (a.mh && d.height > a.mh) { e = (d.height - a.mh) / d.height; q() } } if (a.h) d.style.marginTop = Math.max(a.h - d.height, 0) / 2 + "px"; setTimeout(function() { m(d) }, 1); i[1] && (g < i.length - 1 || a.loop) && b(d).css({ cursor: "pointer" }).click(c.next); if (G) d.style.msInterpolationMode = "bicubic" }; d.src = j } else e().appendTo(K).load(j, function(c, a, b) { m(a === "error" ? "Request unsuccessful: " + b.statusText : this) }) }; c.next = function() { if (!F) { g = g < i.length - 1 ? g + 1 : 0; c.load() } }; c.prev = function() { if (!F) { g = g ? g - 1 : i.length - 1; c.load() } }; c.slideshow = function() { function f() { z.text(a.slideshowStop).bind(W, function() { d = setTimeout(c.next, a.slideshowSpeed) }).bind(P, function() { clearTimeout(d) }).one(t, function() { e() }); j.removeClass(b + "off").addClass(b + q) } var e, d, b = k + "Slideshow_"; z.bind(fb, function() { z.unbind(); clearTimeout(d); j.removeClass(b + "off " + b + q) }); e = function() { clearTimeout(d); z.text(a.slideshowStart).unbind(W + " " + P).one(t, function() { f(); d = setTimeout(c.next, a.slideshowSpeed) }); j.removeClass(b + q).addClass(b + "off") }; if (a.slideshow && i[1]) a.slideshowAuto ? f() : e() }; c.close = function() { if (w) { w = d; b.event.trigger(X); a.onCleanup && a.onCleanup.call(h); m.unbind("." + k + " ." + O); y.fadeTo("fast", 0); j.stop().fadeTo("fast", 0, function() { j.find("iframe").attr("src", "about:blank"); l.remove(); j.add(y).css({ opacity: 1, cursor: u }).hide(); try { R.focus() } catch (c) { } setTimeout(function() { b.event.trigger(fb); a.onClosed && a.onClosed.call(h) }, 1) }) } }; c.element = function() { return b(h) }; c.settings = eb; b(c.init) })(jQuery, this);

/*
Masked Input plugin for jQuery
Copyright (c) 2007-2009 Josh Bush (digitalbush.com)
Licensed under the MIT license (http://digitalbush.com/projects/masked-input-plugin/#license) 
Version: 1.2.2 (03/09/2009 22:39:06)
*/
(function(a) { var c = (a.browser.msie ? "paste" : "input") + ".mask"; var b = (window.orientation != undefined); a.mask = { definitions: { "9": "[0-9]", a: "[A-Za-z]", "*": "[A-Za-z0-9]"} }; a.fn.extend({ caret: function(e, f) { if (this.length == 0) { return } if (typeof e == "number") { f = (typeof f == "number") ? f : e; return this.each(function() { if (this.setSelectionRange) { this.focus(); this.setSelectionRange(e, f) } else { if (this.createTextRange) { var g = this.createTextRange(); g.collapse(true); g.moveEnd("character", f); g.moveStart("character", e); g.select() } } }) } else { if (this[0].setSelectionRange) { e = this[0].selectionStart; f = this[0].selectionEnd } else { if (document.selection && document.selection.createRange) { var d = document.selection.createRange(); e = 0 - d.duplicate().moveStart("character", -100000); f = e + d.text.length } } return { begin: e, end: f} } }, unmask: function() { return this.trigger("unmask") }, mask: function(j, d) { if (!j && this.length > 0) { var f = a(this[0]); var g = f.data("tests"); return a.map(f.data("buffer"), function(l, m) { return g[m] ? l : null }).join("") } d = a.extend({ placeholder: "_", completed: null }, d); var k = a.mask.definitions; var g = []; var e = j.length; var i = null; var h = j.length; a.each(j.split(""), function(m, l) { if (l == "?") { h--; e = m } else { if (k[l]) { g.push(new RegExp(k[l])); if (i == null) { i = g.length - 1 } } else { g.push(null) } } }); return this.each(function() { var r = a(this); var m = a.map(j.split(""), function(x, y) { if (x != "?") { return k[x] ? d.placeholder : x } }); var n = false; var q = r.val(); r.data("buffer", m).data("tests", g); function v(x) { while (++x <= h && !g[x]) { } return x } function t(x) { while (!g[x] && --x >= 0) { } for (var y = x; y < h; y++) { if (g[y]) { m[y] = d.placeholder; var z = v(y); if (z < h && g[y].test(m[z])) { m[y] = m[z] } else { break } } } s(); r.caret(Math.max(i, x)) } function u(y) { for (var A = y, z = d.placeholder; A < h; A++) { if (g[A]) { var B = v(A); var x = m[A]; m[A] = z; if (B < h && g[B].test(x)) { z = x } else { break } } } } function l(y) { var x = a(this).caret(); var z = y.keyCode; n = (z < 16 || (z > 16 && z < 32) || (z > 32 && z < 41)); if ((x.begin - x.end) != 0 && (!n || z == 8 || z == 46)) { w(x.begin, x.end) } if (z == 8 || z == 46 || (b && z == 127)) { t(x.begin + (z == 46 ? 0 : -1)); return false } else { if (z == 27) { r.val(q); r.caret(0, p()); return false } } } function o(B) { if (n) { n = false; return (B.keyCode == 8) ? false : null } B = B || window.event; var C = B.charCode || B.keyCode || B.which; var z = a(this).caret(); if (B.ctrlKey || B.altKey || B.metaKey) { return true } else { if ((C >= 32 && C <= 125) || C > 186) { var x = v(z.begin - 1); if (x < h) { var A = String.fromCharCode(C); if (g[x].test(A)) { u(x); m[x] = A; s(); var y = v(x); a(this).caret(y); if (d.completed && y == h) { d.completed.call(r) } } } } } return false } function w(x, y) { for (var z = x; z < y && z < h; z++) { if (g[z]) { m[z] = d.placeholder } } } function s() { return r.val(m.join("")).val() } function p(y) { var z = r.val(); var C = -1; for (var B = 0, x = 0; B < h; B++) { if (g[B]) { m[B] = d.placeholder; while (x++ < z.length) { var A = z.charAt(x - 1); if (g[B].test(A)) { m[B] = A; C = B; break } } if (x > z.length) { break } } else { if (m[B] == z[x] && B != e) { x++; C = B } } } if (!y && C + 1 < e) { r.val(""); w(0, h) } else { if (y || C + 1 >= e) { s(); if (!y) { r.val(r.val().substring(0, C + 1)) } } } return (e ? B : i) } if (!r.attr("readonly")) { r.one("unmask", function() { r.unbind(".mask").removeData("buffer").removeData("tests") }).bind("focus.mask", function() { q = r.val(); var x = p(); s(); setTimeout(function() { if (x == j.length) { r.caret(0, x) } else { r.caret(x) } }, 0) }).bind("blur.mask", function() { p(); if (r.val() != q) { r.change() } }).bind("keydown.mask", l).bind("keypress.mask", o).bind(c, function() { setTimeout(function() { r.caret(p(true)) }, 0) }) } p() }) } }) })(jQuery);
