major rewrite of the web interface
@ -1,888 +0,0 @@
|
||||
// ColorBox v1.3.19 - jQuery lightbox plugin
|
||||
// (c) 2011 Jack Moore - jacklmoore.com
|
||||
// License: http://www.opensource.org/licenses/mit-license.php
|
||||
(function ($, document, window) {
|
||||
var
|
||||
// Default settings object.
|
||||
// See http://jacklmoore.com/colorbox for details.
|
||||
defaults = {
|
||||
transition: "elastic",
|
||||
speed: 300,
|
||||
width: false,
|
||||
initialWidth: "600",
|
||||
innerWidth: false,
|
||||
maxWidth: false,
|
||||
height: false,
|
||||
initialHeight: "450",
|
||||
innerHeight: false,
|
||||
maxHeight: false,
|
||||
scalePhotos: true,
|
||||
scrolling: true,
|
||||
inline: false,
|
||||
html: false,
|
||||
iframe: false,
|
||||
fastIframe: true,
|
||||
photo: false,
|
||||
href: false,
|
||||
title: false,
|
||||
rel: false,
|
||||
opacity: 0.9,
|
||||
preloading: true,
|
||||
current: "image {current} of {total}",
|
||||
previous: "previous",
|
||||
next: "next",
|
||||
close: "close",
|
||||
open: false,
|
||||
returnFocus: true,
|
||||
reposition: true,
|
||||
loop: true,
|
||||
slideshow: false,
|
||||
slideshowAuto: true,
|
||||
slideshowSpeed: 2500,
|
||||
slideshowStart: "start slideshow",
|
||||
slideshowStop: "stop slideshow",
|
||||
onOpen: false,
|
||||
onLoad: false,
|
||||
onComplete: false,
|
||||
onCleanup: false,
|
||||
onClosed: false,
|
||||
overlayClose: true,
|
||||
escKey: true,
|
||||
arrowKey: true,
|
||||
top: false,
|
||||
bottom: false,
|
||||
left: false,
|
||||
right: false,
|
||||
fixed: false,
|
||||
data: undefined
|
||||
},
|
||||
|
||||
// Abstracting the HTML and event identifiers for easy rebranding
|
||||
colorbox = 'colorbox',
|
||||
prefix = 'cbox',
|
||||
boxElement = prefix + 'Element',
|
||||
|
||||
// Events
|
||||
event_open = prefix + '_open',
|
||||
event_load = prefix + '_load',
|
||||
event_complete = prefix + '_complete',
|
||||
event_cleanup = prefix + '_cleanup',
|
||||
event_closed = prefix + '_closed',
|
||||
event_purge = prefix + '_purge',
|
||||
|
||||
// Special Handling for IE
|
||||
isIE = !$.support.opacity && !$.support.style, // IE7 & IE8
|
||||
isIE6 = isIE && !window.XMLHttpRequest, // IE6
|
||||
event_ie6 = prefix + '_IE6',
|
||||
|
||||
// Cached jQuery Object Variables
|
||||
$overlay,
|
||||
$box,
|
||||
$wrap,
|
||||
$content,
|
||||
$topBorder,
|
||||
$leftBorder,
|
||||
$rightBorder,
|
||||
$bottomBorder,
|
||||
$related,
|
||||
$window,
|
||||
$loaded,
|
||||
$loadingBay,
|
||||
$loadingOverlay,
|
||||
$title,
|
||||
$current,
|
||||
$slideshow,
|
||||
$next,
|
||||
$prev,
|
||||
$close,
|
||||
$groupControls,
|
||||
|
||||
// Variables for cached values or use across multiple functions
|
||||
settings,
|
||||
interfaceHeight,
|
||||
interfaceWidth,
|
||||
loadedHeight,
|
||||
loadedWidth,
|
||||
element,
|
||||
index,
|
||||
photo,
|
||||
open,
|
||||
active,
|
||||
closing,
|
||||
loadingTimer,
|
||||
publicMethod,
|
||||
div = "div",
|
||||
init;
|
||||
|
||||
// ****************
|
||||
// HELPER FUNCTIONS
|
||||
// ****************
|
||||
|
||||
// Convience function for creating new jQuery objects
|
||||
function $tag(tag, id, css) {
|
||||
var element = document.createElement(tag);
|
||||
|
||||
if (id) {
|
||||
element.id = prefix + id;
|
||||
}
|
||||
|
||||
if (css) {
|
||||
element.style.cssText = css;
|
||||
}
|
||||
|
||||
return $(element);
|
||||
}
|
||||
|
||||
// Determine the next and previous members in a group.
|
||||
function getIndex(increment) {
|
||||
var
|
||||
max = $related.length,
|
||||
newIndex = (index + increment) % max;
|
||||
|
||||
return (newIndex < 0) ? max + newIndex : newIndex;
|
||||
}
|
||||
|
||||
// Convert '%' and 'px' values to integers
|
||||
function setSize(size, dimension) {
|
||||
return Math.round((/%/.test(size) ? ((dimension === 'x' ? $window.width() : $window.height()) / 100) : 1) * parseInt(size, 10));
|
||||
}
|
||||
|
||||
// Checks an href to see if it is a photo.
|
||||
// There is a force photo option (photo: true) for hrefs that cannot be matched by this regex.
|
||||
function isImage(url) {
|
||||
return settings.photo || /\.(gif|png|jpe?g|bmp|ico)((#|\?).*)?$/i.test(url);
|
||||
}
|
||||
|
||||
// Assigns function results to their respective properties
|
||||
function makeSettings() {
|
||||
var i;
|
||||
settings = $.extend({}, $.data(element, colorbox));
|
||||
|
||||
for (i in settings) {
|
||||
if ($.isFunction(settings[i]) && i.slice(0, 2) !== 'on') { // checks to make sure the function isn't one of the callbacks, they will be handled at the appropriate time.
|
||||
settings[i] = settings[i].call(element);
|
||||
}
|
||||
}
|
||||
|
||||
settings.rel = settings.rel || element.rel || 'nofollow';
|
||||
settings.href = settings.href || $(element).attr('href');
|
||||
settings.title = settings.title || element.title;
|
||||
|
||||
if (typeof settings.href === "string") {
|
||||
settings.href = $.trim(settings.href);
|
||||
}
|
||||
}
|
||||
|
||||
function trigger(event, callback) {
|
||||
$.event.trigger(event);
|
||||
if (callback) {
|
||||
callback.call(element);
|
||||
}
|
||||
}
|
||||
|
||||
// Slideshow functionality
|
||||
function slideshow() {
|
||||
var
|
||||
timeOut,
|
||||
className = prefix + "Slideshow_",
|
||||
click = "click." + prefix,
|
||||
start,
|
||||
stop,
|
||||
clear;
|
||||
|
||||
if (settings.slideshow && $related[1]) {
|
||||
start = function () {
|
||||
$slideshow
|
||||
.text(settings.slideshowStop)
|
||||
.unbind(click)
|
||||
.bind(event_complete, function () {
|
||||
if (settings.loop || $related[index + 1]) {
|
||||
timeOut = setTimeout(publicMethod.next, settings.slideshowSpeed);
|
||||
}
|
||||
})
|
||||
.bind(event_load, function () {
|
||||
clearTimeout(timeOut);
|
||||
})
|
||||
.one(click + ' ' + event_cleanup, stop);
|
||||
$box.removeClass(className + "off").addClass(className + "on");
|
||||
timeOut = setTimeout(publicMethod.next, settings.slideshowSpeed);
|
||||
};
|
||||
|
||||
stop = function () {
|
||||
clearTimeout(timeOut);
|
||||
$slideshow
|
||||
.text(settings.slideshowStart)
|
||||
.unbind([event_complete, event_load, event_cleanup, click].join(' '))
|
||||
.one(click, function () {
|
||||
publicMethod.next();
|
||||
start();
|
||||
});
|
||||
$box.removeClass(className + "on").addClass(className + "off");
|
||||
};
|
||||
|
||||
if (settings.slideshowAuto) {
|
||||
start();
|
||||
} else {
|
||||
stop();
|
||||
}
|
||||
} else {
|
||||
$box.removeClass(className + "off " + className + "on");
|
||||
}
|
||||
}
|
||||
|
||||
function launch(target) {
|
||||
if (!closing) {
|
||||
|
||||
element = target;
|
||||
|
||||
makeSettings();
|
||||
|
||||
$related = $(element);
|
||||
|
||||
index = 0;
|
||||
|
||||
if (settings.rel !== 'nofollow') {
|
||||
$related = $('.' + boxElement).filter(function () {
|
||||
var relRelated = $.data(this, colorbox).rel || this.rel;
|
||||
return (relRelated === settings.rel);
|
||||
});
|
||||
index = $related.index(element);
|
||||
|
||||
// Check direct calls to ColorBox.
|
||||
if (index === -1) {
|
||||
$related = $related.add(element);
|
||||
index = $related.length - 1;
|
||||
}
|
||||
}
|
||||
|
||||
if (!open) {
|
||||
open = active = true; // Prevents the page-change action from queuing up if the visitor holds down the left or right keys.
|
||||
|
||||
$box.show();
|
||||
|
||||
if (settings.returnFocus) {
|
||||
$(element).blur().one(event_closed, function () {
|
||||
$(this).focus();
|
||||
});
|
||||
}
|
||||
|
||||
// +settings.opacity avoids a problem in IE when using non-zero-prefixed-string-values, like '.5'
|
||||
$overlay.css({"opacity": +settings.opacity, "cursor": settings.overlayClose ? "pointer" : "auto"}).show();
|
||||
|
||||
// Opens inital empty ColorBox prior to content being loaded.
|
||||
settings.w = setSize(settings.initialWidth, 'x');
|
||||
settings.h = setSize(settings.initialHeight, 'y');
|
||||
publicMethod.position();
|
||||
|
||||
if (isIE6) {
|
||||
$window.bind('resize.' + event_ie6 + ' scroll.' + event_ie6, function () {
|
||||
$overlay.css({width: $window.width(), height: $window.height(), top: $window.scrollTop(), left: $window.scrollLeft()});
|
||||
}).trigger('resize.' + event_ie6);
|
||||
}
|
||||
|
||||
trigger(event_open, settings.onOpen);
|
||||
|
||||
$groupControls.add($title).hide();
|
||||
|
||||
$close.html(settings.close).show();
|
||||
}
|
||||
|
||||
publicMethod.load(true);
|
||||
}
|
||||
}
|
||||
|
||||
// ColorBox's markup needs to be added to the DOM prior to being called
|
||||
// so that the browser will go ahead and load the CSS background images.
|
||||
function appendHTML() {
|
||||
if (!$box && document.body) {
|
||||
init = false;
|
||||
|
||||
$window = $(window);
|
||||
$box = $tag(div).attr({id: colorbox, 'class': isIE ? prefix + (isIE6 ? 'IE6' : 'IE') : ''}).hide();
|
||||
$overlay = $tag(div, "Overlay", isIE6 ? 'position:absolute' : '').hide();
|
||||
$wrap = $tag(div, "Wrapper");
|
||||
$content = $tag(div, "Content").append(
|
||||
$loaded = $tag(div, "LoadedContent", 'width:0; height:0; overflow:hidden'),
|
||||
$loadingOverlay = $tag(div, "LoadingOverlay").add($tag(div, "LoadingGraphic")),
|
||||
$title = $tag(div, "Title"),
|
||||
$current = $tag(div, "Current"),
|
||||
$next = $tag(div, "Next"),
|
||||
$prev = $tag(div, "Previous"),
|
||||
$slideshow = $tag(div, "Slideshow").bind(event_open, slideshow),
|
||||
$close = $tag(div, "Close")
|
||||
);
|
||||
|
||||
$wrap.append( // The 3x3 Grid that makes up ColorBox
|
||||
$tag(div).append(
|
||||
$tag(div, "TopLeft"),
|
||||
$topBorder = $tag(div, "TopCenter"),
|
||||
$tag(div, "TopRight")
|
||||
),
|
||||
$tag(div, false, 'clear:left').append(
|
||||
$leftBorder = $tag(div, "MiddleLeft"),
|
||||
$content,
|
||||
$rightBorder = $tag(div, "MiddleRight")
|
||||
),
|
||||
$tag(div, false, 'clear:left').append(
|
||||
$tag(div, "BottomLeft"),
|
||||
$bottomBorder = $tag(div, "BottomCenter"),
|
||||
$tag(div, "BottomRight")
|
||||
)
|
||||
).find('div div').css({'float': 'left'});
|
||||
|
||||
$loadingBay = $tag(div, false, 'position:absolute; width:9999px; visibility:hidden; display:none');
|
||||
|
||||
$groupControls = $next.add($prev).add($current).add($slideshow);
|
||||
|
||||
$(document.body).append($overlay, $box.append($wrap, $loadingBay));
|
||||
}
|
||||
}
|
||||
|
||||
// Add ColorBox's event bindings
|
||||
function addBindings() {
|
||||
if ($box) {
|
||||
if (!init) {
|
||||
init = true;
|
||||
|
||||
// Cache values needed for size calculations
|
||||
interfaceHeight = $topBorder.height() + $bottomBorder.height() + $content.outerHeight(true) - $content.height();//Subtraction needed for IE6
|
||||
interfaceWidth = $leftBorder.width() + $rightBorder.width() + $content.outerWidth(true) - $content.width();
|
||||
loadedHeight = $loaded.outerHeight(true);
|
||||
loadedWidth = $loaded.outerWidth(true);
|
||||
|
||||
// Setting padding to remove the need to do size conversions during the animation step.
|
||||
$box.css({"padding-bottom": interfaceHeight, "padding-right": interfaceWidth});
|
||||
|
||||
// Anonymous functions here keep the public method from being cached, thereby allowing them to be redefined on the fly.
|
||||
$next.click(function () {
|
||||
publicMethod.next();
|
||||
});
|
||||
$prev.click(function () {
|
||||
publicMethod.prev();
|
||||
});
|
||||
$close.click(function () {
|
||||
publicMethod.close();
|
||||
});
|
||||
$overlay.click(function () {
|
||||
if (settings.overlayClose) {
|
||||
publicMethod.close();
|
||||
}
|
||||
});
|
||||
|
||||
// Key Bindings
|
||||
$(document).bind('keydown.' + prefix, function (e) {
|
||||
var key = e.keyCode;
|
||||
if (open && settings.escKey && key === 27) {
|
||||
e.preventDefault();
|
||||
publicMethod.close();
|
||||
}
|
||||
if (open && settings.arrowKey && $related[1]) {
|
||||
if (key === 37) {
|
||||
e.preventDefault();
|
||||
$prev.click();
|
||||
} else if (key === 39) {
|
||||
e.preventDefault();
|
||||
$next.click();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$('.' + boxElement, document).live('click', function (e) {
|
||||
// ignore non-left-mouse-clicks and clicks modified with ctrl / command, shift, or alt.
|
||||
// See: http://jacklmoore.com/notes/click-events/
|
||||
if (!(e.which > 1 || e.shiftKey || e.altKey || e.metaKey)) {
|
||||
e.preventDefault();
|
||||
launch(this);
|
||||
}
|
||||
});
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// Don't do anything if ColorBox already exists.
|
||||
if ($.colorbox) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Append the HTML when the DOM loads
|
||||
$(appendHTML);
|
||||
|
||||
|
||||
// ****************
|
||||
// PUBLIC FUNCTIONS
|
||||
// Usage format: $.fn.colorbox.close();
|
||||
// Usage from within an iframe: parent.$.fn.colorbox.close();
|
||||
// ****************
|
||||
|
||||
publicMethod = $.fn[colorbox] = $[colorbox] = function (options, callback) {
|
||||
var $this = this;
|
||||
|
||||
options = options || {};
|
||||
|
||||
appendHTML();
|
||||
|
||||
if (addBindings()) {
|
||||
if (!$this[0]) {
|
||||
if ($this.selector) { // if a selector was given and it didn't match any elements, go ahead and exit.
|
||||
return $this;
|
||||
}
|
||||
// if no selector was given (ie. $.colorbox()), create a temporary element to work with
|
||||
$this = $('<a/>');
|
||||
options.open = true; // assume an immediate open
|
||||
}
|
||||
|
||||
if (callback) {
|
||||
options.onComplete = callback;
|
||||
}
|
||||
|
||||
$this.each(function () {
|
||||
$.data(this, colorbox, $.extend({}, $.data(this, colorbox) || defaults, options));
|
||||
}).addClass(boxElement);
|
||||
|
||||
if (($.isFunction(options.open) && options.open.call($this)) || options.open) {
|
||||
launch($this[0]);
|
||||
}
|
||||
}
|
||||
|
||||
return $this;
|
||||
};
|
||||
|
||||
publicMethod.position = function (speed, loadedCallback) {
|
||||
var
|
||||
top = 0,
|
||||
left = 0,
|
||||
offset = $box.offset(),
|
||||
scrollTop = $window.scrollTop(),
|
||||
scrollLeft = $window.scrollLeft();
|
||||
|
||||
$window.unbind('resize.' + prefix);
|
||||
|
||||
// remove the modal so that it doesn't influence the document width/height
|
||||
$box.css({top: -9e4, left: -9e4});
|
||||
|
||||
if (settings.fixed && !isIE6) {
|
||||
offset.top -= scrollTop;
|
||||
offset.left -= scrollLeft;
|
||||
$box.css({position: 'fixed'});
|
||||
} else {
|
||||
top = scrollTop;
|
||||
left = scrollLeft;
|
||||
$box.css({position: 'absolute'});
|
||||
}
|
||||
|
||||
// keeps the top and left positions within the browser's viewport.
|
||||
if (settings.right !== false) {
|
||||
left += Math.max($window.width() - settings.w - loadedWidth - interfaceWidth - setSize(settings.right, 'x'), 0);
|
||||
} else if (settings.left !== false) {
|
||||
left += setSize(settings.left, 'x');
|
||||
} else {
|
||||
left += Math.round(Math.max($window.width() - settings.w - loadedWidth - interfaceWidth, 0) / 2);
|
||||
}
|
||||
|
||||
if (settings.bottom !== false) {
|
||||
top += Math.max($window.height() - settings.h - loadedHeight - interfaceHeight - setSize(settings.bottom, 'y'), 0);
|
||||
} else if (settings.top !== false) {
|
||||
top += setSize(settings.top, 'y');
|
||||
} else {
|
||||
top += Math.round(Math.max($window.height() - settings.h - loadedHeight - interfaceHeight, 0) / 2);
|
||||
}
|
||||
|
||||
$box.css({top: offset.top, left: offset.left});
|
||||
|
||||
// setting the speed to 0 to reduce the delay between same-sized content.
|
||||
speed = ($box.width() === settings.w + loadedWidth && $box.height() === settings.h + loadedHeight) ? 0 : speed || 0;
|
||||
|
||||
// this gives the wrapper plenty of breathing room so it's floated contents can move around smoothly,
|
||||
// but it has to be shrank down around the size of div#colorbox when it's done. If not,
|
||||
// it can invoke an obscure IE bug when using iframes.
|
||||
$wrap[0].style.width = $wrap[0].style.height = "9999px";
|
||||
|
||||
function modalDimensions(that) {
|
||||
$topBorder[0].style.width = $bottomBorder[0].style.width = $content[0].style.width = that.style.width;
|
||||
$content[0].style.height = $leftBorder[0].style.height = $rightBorder[0].style.height = that.style.height;
|
||||
}
|
||||
|
||||
$box.dequeue().animate({width: settings.w + loadedWidth, height: settings.h + loadedHeight, top: top, left: left}, {
|
||||
duration: speed,
|
||||
complete: function () {
|
||||
modalDimensions(this);
|
||||
|
||||
active = false;
|
||||
|
||||
// shrink the wrapper down to exactly the size of colorbox to avoid a bug in IE's iframe implementation.
|
||||
$wrap[0].style.width = (settings.w + loadedWidth + interfaceWidth) + "px";
|
||||
$wrap[0].style.height = (settings.h + loadedHeight + interfaceHeight) + "px";
|
||||
|
||||
if (settings.reposition) {
|
||||
setTimeout(function () { // small delay before binding onresize due to an IE8 bug.
|
||||
$window.bind('resize.' + prefix, publicMethod.position);
|
||||
}, 1);
|
||||
}
|
||||
|
||||
if (loadedCallback) {
|
||||
loadedCallback();
|
||||
}
|
||||
},
|
||||
step: function () {
|
||||
modalDimensions(this);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
publicMethod.resize = function (options) {
|
||||
if (open) {
|
||||
options = options || {};
|
||||
|
||||
if (options.width) {
|
||||
settings.w = setSize(options.width, 'x') - loadedWidth - interfaceWidth;
|
||||
}
|
||||
if (options.innerWidth) {
|
||||
settings.w = setSize(options.innerWidth, 'x');
|
||||
}
|
||||
$loaded.css({width: settings.w});
|
||||
|
||||
if (options.height) {
|
||||
settings.h = setSize(options.height, 'y') - loadedHeight - interfaceHeight;
|
||||
}
|
||||
if (options.innerHeight) {
|
||||
settings.h = setSize(options.innerHeight, 'y');
|
||||
}
|
||||
if (!options.innerHeight && !options.height) {
|
||||
$loaded.css({height: "auto"});
|
||||
settings.h = $loaded.height();
|
||||
}
|
||||
$loaded.css({height: settings.h});
|
||||
|
||||
publicMethod.position(settings.transition === "none" ? 0 : settings.speed);
|
||||
}
|
||||
};
|
||||
|
||||
publicMethod.prep = function (object) {
|
||||
if (!open) {
|
||||
return;
|
||||
}
|
||||
|
||||
var callback, speed = settings.transition === "none" ? 0 : settings.speed;
|
||||
|
||||
$loaded.remove();
|
||||
$loaded = $tag(div, 'LoadedContent').append(object);
|
||||
|
||||
function getWidth() {
|
||||
settings.w = settings.w || $loaded.width();
|
||||
settings.w = settings.mw && settings.mw < settings.w ? settings.mw : settings.w;
|
||||
return settings.w;
|
||||
}
|
||||
function getHeight() {
|
||||
settings.h = settings.h || $loaded.height();
|
||||
settings.h = settings.mh && settings.mh < settings.h ? settings.mh : settings.h;
|
||||
return settings.h;
|
||||
}
|
||||
|
||||
$loaded.hide()
|
||||
.appendTo($loadingBay.show())// content has to be appended to the DOM for accurate size calculations.
|
||||
.css({width: getWidth(), overflow: settings.scrolling ? 'auto' : 'hidden'})
|
||||
.css({height: getHeight()})// sets the height independently from the width in case the new width influences the value of height.
|
||||
.prependTo($content);
|
||||
|
||||
$loadingBay.hide();
|
||||
|
||||
// floating the IMG removes the bottom line-height and fixed a problem where IE miscalculates the width of the parent element as 100% of the document width.
|
||||
//$(photo).css({'float': 'none', marginLeft: 'auto', marginRight: 'auto'});
|
||||
|
||||
$(photo).css({'float': 'none'});
|
||||
|
||||
// Hides SELECT elements in IE6 because they would otherwise sit on top of the overlay.
|
||||
if (isIE6) {
|
||||
$('select').not($box.find('select')).filter(function () {
|
||||
return this.style.visibility !== 'hidden';
|
||||
}).css({'visibility': 'hidden'}).one(event_cleanup, function () {
|
||||
this.style.visibility = 'inherit';
|
||||
});
|
||||
}
|
||||
|
||||
callback = function () {
|
||||
var preload, i, total = $related.length, iframe, frameBorder = 'frameBorder', allowTransparency = 'allowTransparency', complete, src, img;
|
||||
|
||||
if (!open) {
|
||||
return;
|
||||
}
|
||||
|
||||
function removeFilter() {
|
||||
if (isIE) {
|
||||
$box[0].style.removeAttribute('filter');
|
||||
}
|
||||
}
|
||||
|
||||
complete = function () {
|
||||
clearTimeout(loadingTimer);
|
||||
$loadingOverlay.hide();
|
||||
trigger(event_complete, settings.onComplete);
|
||||
};
|
||||
|
||||
if (isIE) {
|
||||
//This fadeIn helps the bicubic resampling to kick-in.
|
||||
if (photo) {
|
||||
$loaded.fadeIn(100);
|
||||
}
|
||||
}
|
||||
|
||||
$title.html(settings.title).add($loaded).show();
|
||||
|
||||
if (total > 1) { // handle grouping
|
||||
if (typeof settings.current === "string") {
|
||||
$current.html(settings.current.replace('{current}', index + 1).replace('{total}', total)).show();
|
||||
}
|
||||
|
||||
$next[(settings.loop || index < total - 1) ? "show" : "hide"]().html(settings.next);
|
||||
$prev[(settings.loop || index) ? "show" : "hide"]().html(settings.previous);
|
||||
|
||||
if (settings.slideshow) {
|
||||
$slideshow.show();
|
||||
}
|
||||
|
||||
// Preloads images within a rel group
|
||||
if (settings.preloading) {
|
||||
preload = [
|
||||
getIndex(-1),
|
||||
getIndex(1)
|
||||
];
|
||||
while (i = $related[preload.pop()]) {
|
||||
src = $.data(i, colorbox).href || i.href;
|
||||
if ($.isFunction(src)) {
|
||||
src = src.call(i);
|
||||
}
|
||||
if (isImage(src)) {
|
||||
img = new Image();
|
||||
img.src = src;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$groupControls.hide();
|
||||
}
|
||||
|
||||
if (settings.iframe) {
|
||||
iframe = $tag('iframe')[0];
|
||||
|
||||
if (frameBorder in iframe) {
|
||||
iframe[frameBorder] = 0;
|
||||
}
|
||||
if (allowTransparency in iframe) {
|
||||
iframe[allowTransparency] = "true";
|
||||
}
|
||||
// give the iframe a unique name to prevent caching
|
||||
iframe.name = prefix + (+new Date());
|
||||
if (settings.fastIframe) {
|
||||
complete();
|
||||
} else {
|
||||
$(iframe).one('load', complete);
|
||||
}
|
||||
iframe.src = settings.href;
|
||||
if (!settings.scrolling) {
|
||||
iframe.scrolling = "no";
|
||||
}
|
||||
$(iframe).addClass(prefix + 'Iframe').appendTo($loaded).one(event_purge, function () {
|
||||
iframe.src = "//about:blank";
|
||||
});
|
||||
} else {
|
||||
complete();
|
||||
}
|
||||
|
||||
if (settings.transition === 'fade') {
|
||||
$box.fadeTo(speed, 1, removeFilter);
|
||||
} else {
|
||||
removeFilter();
|
||||
}
|
||||
};
|
||||
|
||||
if (settings.transition === 'fade') {
|
||||
$box.fadeTo(speed, 0, function () {
|
||||
publicMethod.position(0, callback);
|
||||
});
|
||||
} else {
|
||||
publicMethod.position(speed, callback);
|
||||
}
|
||||
};
|
||||
|
||||
publicMethod.load = function (launched) {
|
||||
var href, setResize, prep = publicMethod.prep;
|
||||
|
||||
active = true;
|
||||
|
||||
photo = false;
|
||||
|
||||
element = $related[index];
|
||||
|
||||
if (!launched) {
|
||||
makeSettings();
|
||||
}
|
||||
|
||||
trigger(event_purge);
|
||||
|
||||
trigger(event_load, settings.onLoad);
|
||||
|
||||
settings.h = settings.height ?
|
||||
setSize(settings.height, 'y') - loadedHeight - interfaceHeight :
|
||||
settings.innerHeight && setSize(settings.innerHeight, 'y');
|
||||
|
||||
settings.w = settings.width ?
|
||||
setSize(settings.width, 'x') - loadedWidth - interfaceWidth :
|
||||
settings.innerWidth && setSize(settings.innerWidth, 'x');
|
||||
|
||||
// Sets the minimum dimensions for use in image scaling
|
||||
settings.mw = settings.w;
|
||||
settings.mh = settings.h;
|
||||
|
||||
// Re-evaluate the minimum width and height based on maxWidth and maxHeight values.
|
||||
// If the width or height exceed the maxWidth or maxHeight, use the maximum values instead.
|
||||
if (settings.maxWidth) {
|
||||
settings.mw = setSize(settings.maxWidth, 'x') - loadedWidth - interfaceWidth;
|
||||
settings.mw = settings.w && settings.w < settings.mw ? settings.w : settings.mw;
|
||||
}
|
||||
if (settings.maxHeight) {
|
||||
settings.mh = setSize(settings.maxHeight, 'y') - loadedHeight - interfaceHeight;
|
||||
settings.mh = settings.h && settings.h < settings.mh ? settings.h : settings.mh;
|
||||
}
|
||||
|
||||
href = settings.href;
|
||||
|
||||
loadingTimer = setTimeout(function () {
|
||||
$loadingOverlay.show();
|
||||
}, 100);
|
||||
|
||||
if (settings.inline) {
|
||||
// Inserts an empty placeholder where inline content is being pulled from.
|
||||
// An event is bound to put inline content back when ColorBox closes or loads new content.
|
||||
$tag(div).hide().insertBefore($(href)[0]).one(event_purge, function () {
|
||||
$(this).replaceWith($loaded.children());
|
||||
});
|
||||
prep($(href));
|
||||
} else if (settings.iframe) {
|
||||
// IFrame element won't be added to the DOM until it is ready to be displayed,
|
||||
// to avoid problems with DOM-ready JS that might be trying to run in that iframe.
|
||||
prep(" ");
|
||||
} else if (settings.html) {
|
||||
prep(settings.html);
|
||||
} else if (isImage(href)) {
|
||||
$(photo = new Image())
|
||||
.addClass(prefix + 'Photo')
|
||||
.error(function () {
|
||||
settings.title = false;
|
||||
prep($tag(div, 'Error').text('This image could not be loaded'));
|
||||
})
|
||||
.load(function () {
|
||||
var percent;
|
||||
photo.onload = null; //stops animated gifs from firing the onload repeatedly.
|
||||
|
||||
if (settings.scalePhotos) {
|
||||
setResize = function () {
|
||||
photo.height -= photo.height * percent;
|
||||
photo.width -= photo.width * percent;
|
||||
};
|
||||
if (settings.mw && photo.width > settings.mw) {
|
||||
percent = (photo.width - settings.mw) / photo.width;
|
||||
setResize();
|
||||
}
|
||||
if (settings.mh && photo.height > settings.mh) {
|
||||
percent = (photo.height - settings.mh) / photo.height;
|
||||
setResize();
|
||||
}
|
||||
}
|
||||
|
||||
if (settings.h) {
|
||||
photo.style.marginTop = Math.max(settings.h - photo.height, 0) / 2 + 'px';
|
||||
}
|
||||
|
||||
if ($related[1] && (settings.loop || $related[index + 1])) {
|
||||
photo.style.cursor = 'pointer';
|
||||
photo.onclick = function () {
|
||||
publicMethod.next();
|
||||
};
|
||||
}
|
||||
|
||||
if (isIE) {
|
||||
photo.style.msInterpolationMode = 'bicubic';
|
||||
}
|
||||
|
||||
setTimeout(function () { // A pause because Chrome will sometimes report a 0 by 0 size otherwise.
|
||||
prep(photo);
|
||||
}, 1);
|
||||
});
|
||||
|
||||
setTimeout(function () { // A pause because Opera 10.6+ will sometimes not run the onload function otherwise.
|
||||
photo.src = href;
|
||||
}, 1);
|
||||
} else if (href) {
|
||||
$loadingBay.load(href, settings.data, function (data, status, xhr) {
|
||||
prep(status === 'error' ? $tag(div, 'Error').text('Request unsuccessful: ' + xhr.statusText) : $(this).contents());
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
// Navigates to the next page/image in a set.
|
||||
publicMethod.next = function () {
|
||||
if (!active && $related[1] && (settings.loop || $related[index + 1])) {
|
||||
index = getIndex(1);
|
||||
publicMethod.load();
|
||||
}
|
||||
};
|
||||
|
||||
publicMethod.prev = function () {
|
||||
if (!active && $related[1] && (settings.loop || index)) {
|
||||
index = getIndex(-1);
|
||||
publicMethod.load();
|
||||
}
|
||||
};
|
||||
|
||||
// Note: to use this within an iframe use the following format: parent.$.fn.colorbox.close();
|
||||
publicMethod.close = function () {
|
||||
if (open && !closing) {
|
||||
|
||||
closing = true;
|
||||
|
||||
open = false;
|
||||
|
||||
trigger(event_cleanup, settings.onCleanup);
|
||||
|
||||
$window.unbind('.' + prefix + ' .' + event_ie6);
|
||||
|
||||
$overlay.fadeTo(200, 0);
|
||||
|
||||
$box.stop().fadeTo(300, 0, function () {
|
||||
|
||||
$box.add($overlay).css({'opacity': 1, cursor: 'auto'}).hide();
|
||||
|
||||
trigger(event_purge);
|
||||
|
||||
$loaded.remove();
|
||||
|
||||
setTimeout(function () {
|
||||
closing = false;
|
||||
trigger(event_closed, settings.onClosed);
|
||||
}, 1);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
// Removes changes ColorBox made to the document, but does not remove the plugin
|
||||
// from jQuery.
|
||||
publicMethod.remove = function () {
|
||||
$([]).add($box).add($overlay).remove();
|
||||
$box = null;
|
||||
$('.' + boxElement)
|
||||
.removeData(colorbox)
|
||||
.removeClass(boxElement)
|
||||
.die();
|
||||
};
|
||||
|
||||
// A method for fetching the current element ColorBox is referencing.
|
||||
// returns a jQuery object.
|
||||
publicMethod.element = function () {
|
||||
return $(element);
|
||||
};
|
||||
|
||||
publicMethod.settings = defaults;
|
||||
|
||||
}(jQuery, document, this));
|
154
webui/view/javascript/jquery-1.4.2.min.js
vendored
@ -1,154 +0,0 @@
|
||||
/*!
|
||||
* jQuery JavaScript Library v1.4.2
|
||||
* http://jquery.com/
|
||||
*
|
||||
* Copyright 2010, John Resig
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
* http://jquery.org/license
|
||||
*
|
||||
* Includes Sizzle.js
|
||||
* http://sizzlejs.com/
|
||||
* Copyright 2010, The Dojo Foundation
|
||||
* Released under the MIT, BSD, and GPL Licenses.
|
||||
*
|
||||
* Date: Sat Feb 13 22:33:48 2010 -0500
|
||||
*/
|
||||
(function(A,w){function ma(){if(!c.isReady){try{s.documentElement.doScroll("left")}catch(a){setTimeout(ma,1);return}c.ready()}}function Qa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function X(a,b,d,f,e,j){var i=a.length;if(typeof b==="object"){for(var o in b)X(a,o,b[o],f,e,d);return a}if(d!==w){f=!j&&f&&c.isFunction(d);for(o=0;o<i;o++)e(a[o],b,f?d.call(a[o],o,e(a[o],b)):d,j);return a}return i?
|
||||
e(a[0],b):w}function J(){return(new Date).getTime()}function Y(){return false}function Z(){return true}function na(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function oa(a){var b,d=[],f=[],e=arguments,j,i,o,k,n,r;i=c.data(this,"events");if(!(a.liveFired===this||!i||!i.live||a.button&&a.type==="click")){a.liveFired=this;var u=i.live.slice(0);for(k=0;k<u.length;k++){i=u[k];i.origType.replace(O,"")===a.type?f.push(i.selector):u.splice(k--,1)}j=c(a.target).closest(f,a.currentTarget);n=0;for(r=
|
||||
j.length;n<r;n++)for(k=0;k<u.length;k++){i=u[k];if(j[n].selector===i.selector){o=j[n].elem;f=null;if(i.preType==="mouseenter"||i.preType==="mouseleave")f=c(a.relatedTarget).closest(i.selector)[0];if(!f||f!==o)d.push({elem:o,handleObj:i})}}n=0;for(r=d.length;n<r;n++){j=d[n];a.currentTarget=j.elem;a.data=j.handleObj.data;a.handleObj=j.handleObj;if(j.handleObj.origHandler.apply(j.elem,e)===false){b=false;break}}return b}}function pa(a,b){return"live."+(a&&a!=="*"?a+".":"")+b.replace(/\./g,"`").replace(/ /g,
|
||||
"&")}function qa(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function ra(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var f=c.data(a[d++]),e=c.data(this,f);if(f=f&&f.events){delete e.handle;e.events={};for(var j in f)for(var i in f[j])c.event.add(this,j,f[j][i],f[j][i].data)}}})}function sa(a,b,d){var f,e,j;b=b&&b[0]?b[0].ownerDocument||b[0]:s;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===s&&!ta.test(a[0])&&(c.support.checkClone||!ua.test(a[0]))){e=
|
||||
true;if(j=c.fragments[a[0]])if(j!==1)f=j}if(!f){f=b.createDocumentFragment();c.clean(a,b,f,d)}if(e)c.fragments[a[0]]=j?f:1;return{fragment:f,cacheable:e}}function K(a,b){var d={};c.each(va.concat.apply([],va.slice(0,b)),function(){d[this]=a});return d}function wa(a){return"scrollTo"in a&&a.document?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var c=function(a,b){return new c.fn.init(a,b)},Ra=A.jQuery,Sa=A.$,s=A.document,T,Ta=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,Ua=/^.[^:#\[\.,]*$/,Va=/\S/,
|
||||
Wa=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,Xa=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,P=navigator.userAgent,xa=false,Q=[],L,$=Object.prototype.toString,aa=Object.prototype.hasOwnProperty,ba=Array.prototype.push,R=Array.prototype.slice,ya=Array.prototype.indexOf;c.fn=c.prototype={init:function(a,b){var d,f;if(!a)return this;if(a.nodeType){this.context=this[0]=a;this.length=1;return this}if(a==="body"&&!b){this.context=s;this[0]=s.body;this.selector="body";this.length=1;return this}if(typeof a==="string")if((d=Ta.exec(a))&&
|
||||
(d[1]||!b))if(d[1]){f=b?b.ownerDocument||b:s;if(a=Xa.exec(a))if(c.isPlainObject(b)){a=[s.createElement(a[1])];c.fn.attr.call(a,b,true)}else a=[f.createElement(a[1])];else{a=sa([d[1]],[f]);a=(a.cacheable?a.fragment.cloneNode(true):a.fragment).childNodes}return c.merge(this,a)}else{if(b=s.getElementById(d[2])){if(b.id!==d[2])return T.find(a);this.length=1;this[0]=b}this.context=s;this.selector=a;return this}else if(!b&&/^\w+$/.test(a)){this.selector=a;this.context=s;a=s.getElementsByTagName(a);return c.merge(this,
|
||||
a)}else return!b||b.jquery?(b||T).find(a):c(b).find(a);else if(c.isFunction(a))return T.ready(a);if(a.selector!==w){this.selector=a.selector;this.context=a.context}return c.makeArray(a,this)},selector:"",jquery:"1.4.2",length:0,size:function(){return this.length},toArray:function(){return R.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this.slice(a)[0]:this[a]},pushStack:function(a,b,d){var f=c();c.isArray(a)?ba.apply(f,a):c.merge(f,a);f.prevObject=this;f.context=this.context;if(b===
|
||||
"find")f.selector=this.selector+(this.selector?" ":"")+d;else if(b)f.selector=this.selector+"."+b+"("+d+")";return f},each:function(a,b){return c.each(this,a,b)},ready:function(a){c.bindReady();if(c.isReady)a.call(s,c);else Q&&Q.push(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(R.apply(this,arguments),"slice",R.call(arguments).join(","))},map:function(a){return this.pushStack(c.map(this,
|
||||
function(b,d){return a.call(b,d,b)}))},end:function(){return this.prevObject||c(null)},push:ba,sort:[].sort,splice:[].splice};c.fn.init.prototype=c.fn;c.extend=c.fn.extend=function(){var a=arguments[0]||{},b=1,d=arguments.length,f=false,e,j,i,o;if(typeof a==="boolean"){f=a;a=arguments[1]||{};b=2}if(typeof a!=="object"&&!c.isFunction(a))a={};if(d===b){a=this;--b}for(;b<d;b++)if((e=arguments[b])!=null)for(j in e){i=a[j];o=e[j];if(a!==o)if(f&&o&&(c.isPlainObject(o)||c.isArray(o))){i=i&&(c.isPlainObject(i)||
|
||||
c.isArray(i))?i:c.isArray(o)?[]:{};a[j]=c.extend(f,i,o)}else if(o!==w)a[j]=o}return a};c.extend({noConflict:function(a){A.$=Sa;if(a)A.jQuery=Ra;return c},isReady:false,ready:function(){if(!c.isReady){if(!s.body)return setTimeout(c.ready,13);c.isReady=true;if(Q){for(var a,b=0;a=Q[b++];)a.call(s,c);Q=null}c.fn.triggerHandler&&c(s).triggerHandler("ready")}},bindReady:function(){if(!xa){xa=true;if(s.readyState==="complete")return c.ready();if(s.addEventListener){s.addEventListener("DOMContentLoaded",
|
||||
L,false);A.addEventListener("load",c.ready,false)}else if(s.attachEvent){s.attachEvent("onreadystatechange",L);A.attachEvent("onload",c.ready);var a=false;try{a=A.frameElement==null}catch(b){}s.documentElement.doScroll&&a&&ma()}}},isFunction:function(a){return $.call(a)==="[object Function]"},isArray:function(a){return $.call(a)==="[object Array]"},isPlainObject:function(a){if(!a||$.call(a)!=="[object Object]"||a.nodeType||a.setInterval)return false;if(a.constructor&&!aa.call(a,"constructor")&&!aa.call(a.constructor.prototype,
|
||||
"isPrototypeOf"))return false;var b;for(b in a);return b===w||aa.call(a,b)},isEmptyObject:function(a){for(var b in a)return false;return true},error:function(a){throw a;},parseJSON:function(a){if(typeof a!=="string"||!a)return null;a=c.trim(a);if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return A.JSON&&A.JSON.parse?A.JSON.parse(a):(new Function("return "+
|
||||
a))();else c.error("Invalid JSON: "+a)},noop:function(){},globalEval:function(a){if(a&&Va.test(a)){var b=s.getElementsByTagName("head")[0]||s.documentElement,d=s.createElement("script");d.type="text/javascript";if(c.support.scriptEval)d.appendChild(s.createTextNode(a));else d.text=a;b.insertBefore(d,b.firstChild);b.removeChild(d)}},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,b,d){var f,e=0,j=a.length,i=j===w||c.isFunction(a);if(d)if(i)for(f in a){if(b.apply(a[f],
|
||||
d)===false)break}else for(;e<j;){if(b.apply(a[e++],d)===false)break}else if(i)for(f in a){if(b.call(a[f],f,a[f])===false)break}else for(d=a[0];e<j&&b.call(d,e,d)!==false;d=a[++e]);return a},trim:function(a){return(a||"").replace(Wa,"")},makeArray:function(a,b){b=b||[];if(a!=null)a.length==null||typeof a==="string"||c.isFunction(a)||typeof a!=="function"&&a.setInterval?ba.call(b,a):c.merge(b,a);return b},inArray:function(a,b){if(b.indexOf)return b.indexOf(a);for(var d=0,f=b.length;d<f;d++)if(b[d]===
|
||||
a)return d;return-1},merge:function(a,b){var d=a.length,f=0;if(typeof b.length==="number")for(var e=b.length;f<e;f++)a[d++]=b[f];else for(;b[f]!==w;)a[d++]=b[f++];a.length=d;return a},grep:function(a,b,d){for(var f=[],e=0,j=a.length;e<j;e++)!d!==!b(a[e],e)&&f.push(a[e]);return f},map:function(a,b,d){for(var f=[],e,j=0,i=a.length;j<i;j++){e=b(a[j],j,d);if(e!=null)f[f.length]=e}return f.concat.apply([],f)},guid:1,proxy:function(a,b,d){if(arguments.length===2)if(typeof b==="string"){d=a;a=d[b];b=w}else if(b&&
|
||||
!c.isFunction(b)){d=b;b=w}if(!b&&a)b=function(){return a.apply(d||this,arguments)};if(a)b.guid=a.guid=a.guid||b.guid||c.guid++;return b},uaMatch:function(a){a=a.toLowerCase();a=/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||!/compatible/.test(a)&&/(mozilla)(?:.*? rv:([\w.]+))?/.exec(a)||[];return{browser:a[1]||"",version:a[2]||"0"}},browser:{}});P=c.uaMatch(P);if(P.browser){c.browser[P.browser]=true;c.browser.version=P.version}if(c.browser.webkit)c.browser.safari=
|
||||
true;if(ya)c.inArray=function(a,b){return ya.call(b,a)};T=c(s);if(s.addEventListener)L=function(){s.removeEventListener("DOMContentLoaded",L,false);c.ready()};else if(s.attachEvent)L=function(){if(s.readyState==="complete"){s.detachEvent("onreadystatechange",L);c.ready()}};(function(){c.support={};var a=s.documentElement,b=s.createElement("script"),d=s.createElement("div"),f="script"+J();d.style.display="none";d.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
|
||||
var e=d.getElementsByTagName("*"),j=d.getElementsByTagName("a")[0];if(!(!e||!e.length||!j)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(j.getAttribute("style")),hrefNormalized:j.getAttribute("href")==="/a",opacity:/^0.55$/.test(j.style.opacity),cssFloat:!!j.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:s.createElement("select").appendChild(s.createElement("option")).selected,
|
||||
parentNode:d.removeChild(d.appendChild(s.createElement("div"))).parentNode===null,deleteExpando:true,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null};b.type="text/javascript";try{b.appendChild(s.createTextNode("window."+f+"=1;"))}catch(i){}a.insertBefore(b,a.firstChild);if(A[f]){c.support.scriptEval=true;delete A[f]}try{delete b.test}catch(o){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function k(){c.support.noCloneEvent=
|
||||
false;d.detachEvent("onclick",k)});d.cloneNode(true).fireEvent("onclick")}d=s.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=s.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var k=s.createElement("div");k.style.width=k.style.paddingLeft="1px";s.body.appendChild(k);c.boxModel=c.support.boxModel=k.offsetWidth===2;s.body.removeChild(k).style.display="none"});a=function(k){var n=
|
||||
s.createElement("div");k="on"+k;var r=k in n;if(!r){n.setAttribute(k,"return;");r=typeof n[k]==="function"}return r};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=e=j=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var G="jQuery"+J(),Ya=0,za={};c.extend({cache:{},expando:G,noData:{embed:true,object:true,
|
||||
applet:true},data:function(a,b,d){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var f=a[G],e=c.cache;if(!f&&typeof b==="string"&&d===w)return null;f||(f=++Ya);if(typeof b==="object"){a[G]=f;e[f]=c.extend(true,{},b)}else if(!e[f]){a[G]=f;e[f]={}}a=e[f];if(d!==w)a[b]=d;return typeof b==="string"?a[b]:a}},removeData:function(a,b){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var d=a[G],f=c.cache,e=f[d];if(b){if(e){delete e[b];c.isEmptyObject(e)&&c.removeData(a)}}else{if(c.support.deleteExpando)delete a[c.expando];
|
||||
else a.removeAttribute&&a.removeAttribute(c.expando);delete f[d]}}}});c.fn.extend({data:function(a,b){if(typeof a==="undefined"&&this.length)return c.data(this[0]);else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===w){var f=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(f===w&&this.length)f=c.data(this[0],a);return f===w&&d[1]?this.data(d[0]):f}else return this.trigger("setData"+d[1]+"!",[d[0],b]).each(function(){c.data(this,
|
||||
a,b)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var f=c.data(a,b);if(!d)return f||[];if(!f||c.isArray(d))f=c.data(a,b,c.makeArray(d));else f.push(d);return f}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),f=d.shift();if(f==="inprogress")f=d.shift();if(f){b==="fx"&&d.unshift("inprogress");f.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===
|
||||
w)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var Aa=/[\n\t]/g,ca=/\s+/,Za=/\r/g,$a=/href|src|style/,ab=/(button|input)/i,bb=/(button|input|object|select|textarea)/i,
|
||||
cb=/^(a|area)$/i,Ba=/radio|checkbox/;c.fn.extend({attr:function(a,b){return X(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(n){var r=c(this);r.addClass(a.call(this,n,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1)if(e.className){for(var j=" "+e.className+" ",
|
||||
i=e.className,o=0,k=b.length;o<k;o++)if(j.indexOf(" "+b[o]+" ")<0)i+=" "+b[o];e.className=c.trim(i)}else e.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(k){var n=c(this);n.removeClass(a.call(this,k,n.attr("class")))});if(a&&typeof a==="string"||a===w)for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1&&e.className)if(a){for(var j=(" "+e.className+" ").replace(Aa," "),i=0,o=b.length;i<o;i++)j=j.replace(" "+b[i]+" ",
|
||||
" ");e.className=c.trim(j)}else e.className=""}return this},toggleClass:function(a,b){var d=typeof a,f=typeof b==="boolean";if(c.isFunction(a))return this.each(function(e){var j=c(this);j.toggleClass(a.call(this,e,j.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var e,j=0,i=c(this),o=b,k=a.split(ca);e=k[j++];){o=f?o:!i.hasClass(e);i[o?"addClass":"removeClass"](e)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,"__className__",this.className);this.className=
|
||||
this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(Aa," ").indexOf(a)>-1)return true;return false},val:function(a){if(a===w){var b=this[0];if(b){if(c.nodeName(b,"option"))return(b.attributes.value||{}).specified?b.value:b.text;if(c.nodeName(b,"select")){var d=b.selectedIndex,f=[],e=b.options;b=b.type==="select-one";if(d<0)return null;var j=b?d:0;for(d=b?d+1:e.length;j<d;j++){var i=
|
||||
e[j];if(i.selected){a=c(i).val();if(b)return a;f.push(a)}}return f}if(Ba.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Za,"")}return w}var o=c.isFunction(a);return this.each(function(k){var n=c(this),r=a;if(this.nodeType===1){if(o)r=a.call(this,k,n.val());if(typeof r==="number")r+="";if(c.isArray(r)&&Ba.test(this.type))this.checked=c.inArray(n.val(),r)>=0;else if(c.nodeName(this,"select")){var u=c.makeArray(r);c("option",this).each(function(){this.selected=
|
||||
c.inArray(c(this).val(),u)>=0});if(!u.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,f){if(!a||a.nodeType===3||a.nodeType===8)return w;if(f&&b in c.attrFn)return c(a)[b](d);f=a.nodeType!==1||!c.isXMLDoc(a);var e=d!==w;b=f&&c.props[b]||b;if(a.nodeType===1){var j=$a.test(b);if(b in a&&f&&!j){if(e){b==="type"&&ab.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");
|
||||
a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:bb.test(a.nodeName)||cb.test(a.nodeName)&&a.href?0:w;return a[b]}if(!c.support.style&&f&&b==="style"){if(e)a.style.cssText=""+d;return a.style.cssText}e&&a.setAttribute(b,""+d);a=!c.support.hrefNormalized&&f&&j?a.getAttribute(b,2):a.getAttribute(b);return a===null?w:a}return c.style(a,b,d)}});var O=/\.(.*)$/,db=function(a){return a.replace(/[^\w\s\.\|`]/g,
|
||||
function(b){return"\\"+b})};c.event={add:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){if(a.setInterval&&a!==A&&!a.frameElement)a=A;var e,j;if(d.handler){e=d;d=e.handler}if(!d.guid)d.guid=c.guid++;if(j=c.data(a)){var i=j.events=j.events||{},o=j.handle;if(!o)j.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,arguments):w};o.elem=a;b=b.split(" ");for(var k,n=0,r;k=b[n++];){j=e?c.extend({},e):{handler:d,data:f};if(k.indexOf(".")>-1){r=k.split(".");
|
||||
k=r.shift();j.namespace=r.slice(0).sort().join(".")}else{r=[];j.namespace=""}j.type=k;j.guid=d.guid;var u=i[k],z=c.event.special[k]||{};if(!u){u=i[k]=[];if(!z.setup||z.setup.call(a,f,r,o)===false)if(a.addEventListener)a.addEventListener(k,o,false);else a.attachEvent&&a.attachEvent("on"+k,o)}if(z.add){z.add.call(a,j);if(!j.handler.guid)j.handler.guid=d.guid}u.push(j);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){var e,j=0,i,o,k,n,r,u,z=c.data(a),
|
||||
C=z&&z.events;if(z&&C){if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(e in C)c.event.remove(a,e+b)}else{for(b=b.split(" ");e=b[j++];){n=e;i=e.indexOf(".")<0;o=[];if(!i){o=e.split(".");e=o.shift();k=new RegExp("(^|\\.)"+c.map(o.slice(0).sort(),db).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(r=C[e])if(d){n=c.event.special[e]||{};for(B=f||0;B<r.length;B++){u=r[B];if(d.guid===u.guid){if(i||k.test(u.namespace)){f==null&&r.splice(B--,1);n.remove&&n.remove.call(a,u)}if(f!=
|
||||
null)break}}if(r.length===0||f!=null&&r.length===1){if(!n.teardown||n.teardown.call(a,o)===false)Ca(a,e,z.handle);delete C[e]}}else for(var B=0;B<r.length;B++){u=r[B];if(i||k.test(u.namespace)){c.event.remove(a,n,u.handler,B);r.splice(B--,1)}}}if(c.isEmptyObject(C)){if(b=z.handle)b.elem=null;delete z.events;delete z.handle;c.isEmptyObject(z)&&c.removeData(a)}}}}},trigger:function(a,b,d,f){var e=a.type||a;if(!f){a=typeof a==="object"?a[G]?a:c.extend(c.Event(e),a):c.Event(e);if(e.indexOf("!")>=0){a.type=
|
||||
e=e.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[e]&&c.each(c.cache,function(){this.events&&this.events[e]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return w;a.result=w;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(f=c.data(d,"handle"))&&f.apply(d,b);f=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+e]&&d["on"+e].apply(d,b)===false)a.result=false}catch(j){}if(!a.isPropagationStopped()&&
|
||||
f)c.event.trigger(a,b,f,true);else if(!a.isDefaultPrevented()){f=a.target;var i,o=c.nodeName(f,"a")&&e==="click",k=c.event.special[e]||{};if((!k._default||k._default.call(d,a)===false)&&!o&&!(f&&f.nodeName&&c.noData[f.nodeName.toLowerCase()])){try{if(f[e]){if(i=f["on"+e])f["on"+e]=null;c.event.triggered=true;f[e]()}}catch(n){}if(i)f["on"+e]=i;c.event.triggered=false}}},handle:function(a){var b,d,f,e;a=arguments[0]=c.event.fix(a||A.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;
|
||||
if(!b){d=a.type.split(".");a.type=d.shift();f=new RegExp("(^|\\.)"+d.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)")}e=c.data(this,"events");d=e[a.type];if(e&&d){d=d.slice(0);e=0;for(var j=d.length;e<j;e++){var i=d[e];if(b||f.test(i.namespace)){a.handler=i.handler;a.data=i.data;a.handleObj=i;i=i.handler.apply(this,arguments);if(i!==w){a.result=i;if(i===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
|
||||
fix:function(a){if(a[G])return a;var b=a;a=c.Event(b);for(var d=this.props.length,f;d;){f=this.props[--d];a[f]=b[f]}if(!a.target)a.target=a.srcElement||s;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=s.documentElement;d=s.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
|
||||
d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(!a.which&&(a.charCode||a.charCode===0?a.charCode:a.keyCode))a.which=a.charCode||a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==w)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,a.origType,c.extend({},a,{handler:oa}))},remove:function(a){var b=true,d=a.origType.replace(O,"");c.each(c.data(this,
|
||||
"events").live||[],function(){if(d===this.origType.replace(O,""))return b=false});b&&c.event.remove(this,a.origType,oa)}},beforeunload:{setup:function(a,b,d){if(this.setInterval)this.onbeforeunload=d;return false},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};var Ca=s.removeEventListener?function(a,b,d){a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=
|
||||
a;this.type=a.type}else this.type=a;this.timeStamp=J();this[G]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=Z;var a=this.originalEvent;if(a){a.preventDefault&&a.preventDefault();a.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=Z;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Z;this.stopPropagation()},isDefaultPrevented:Y,isPropagationStopped:Y,
|
||||
isImmediatePropagationStopped:Y};var Da=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},Ea=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?Ea:Da,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?Ea:Da)}}});if(!c.support.submitBubbles)c.event.special.submit=
|
||||
{setup:function(){if(this.nodeName.toLowerCase()!=="form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length)return na("submit",this,arguments)});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13)return na("submit",this,arguments)})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};
|
||||
if(!c.support.changeBubbles){var da=/textarea|input|select/i,ea,Fa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(f){return f.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},fa=function(a,b){var d=a.target,f,e;if(!(!da.test(d.nodeName)||d.readOnly)){f=c.data(d,"_change_data");e=Fa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",
|
||||
e);if(!(f===w||e===f))if(f!=null||e){a.type="change";return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:fa,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return fa.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return fa.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,
|
||||
"_change_data",Fa(a))}},setup:function(){if(this.type==="file")return false;for(var a in ea)c.event.add(this,a+".specialChange",ea[a]);return da.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return da.test(this.nodeName)}};ea=c.event.special.change.filters}s.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(f){f=c.event.fix(f);f.type=b;return c.event.handle.call(this,f)}c.event.special[b]={setup:function(){this.addEventListener(a,
|
||||
d,true)},teardown:function(){this.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,f,e){if(typeof d==="object"){for(var j in d)this[b](j,f,d[j],e);return this}if(c.isFunction(f)){e=f;f=w}var i=b==="one"?c.proxy(e,function(k){c(this).unbind(k,i);return e.apply(this,arguments)}):e;if(d==="unload"&&b!=="one")this.one(d,f,e);else{j=0;for(var o=this.length;j<o;j++)c.event.add(this[j],d,i,f)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&
|
||||
!a.preventDefault)for(var d in a)this.unbind(d,a[d]);else{d=0;for(var f=this.length;d<f;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,f){return this.live(b,d,f,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){a=c.Event(a);a.preventDefault();a.stopPropagation();c.event.trigger(a,b,this[0]);return a.result}},
|
||||
toggle:function(a){for(var b=arguments,d=1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(f){var e=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,e+1);f.preventDefault();return b[e].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var Ga={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,f,e,j){var i,o=0,k,n,r=j||this.selector,
|
||||
u=j?this:c(this.context);if(c.isFunction(f)){e=f;f=w}for(d=(d||"").split(" ");(i=d[o++])!=null;){j=O.exec(i);k="";if(j){k=j[0];i=i.replace(O,"")}if(i==="hover")d.push("mouseenter"+k,"mouseleave"+k);else{n=i;if(i==="focus"||i==="blur"){d.push(Ga[i]+k);i+=k}else i=(Ga[i]||i)+k;b==="live"?u.each(function(){c.event.add(this,pa(i,r),{data:f,selector:r,handler:e,origType:i,origHandler:e,preType:n})}):u.unbind(pa(i,r),e)}}return this}});c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),
|
||||
function(a,b){c.fn[b]=function(d){return d?this.bind(b,d):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});A.attachEvent&&!A.addEventListener&&A.attachEvent("onunload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});(function(){function a(g){for(var h="",l,m=0;g[m];m++){l=g[m];if(l.nodeType===3||l.nodeType===4)h+=l.nodeValue;else if(l.nodeType!==8)h+=a(l.childNodes)}return h}function b(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];
|
||||
if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1&&!p){t.sizcache=l;t.sizset=q}if(t.nodeName.toLowerCase()===h){y=t;break}t=t[g]}m[q]=y}}}function d(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1){if(!p){t.sizcache=l;t.sizset=q}if(typeof h!=="string"){if(t===h){y=true;break}}else if(k.filter(h,[t]).length>0){y=t;break}}t=t[g]}m[q]=y}}}var f=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
|
||||
e=0,j=Object.prototype.toString,i=false,o=true;[0,0].sort(function(){o=false;return 0});var k=function(g,h,l,m){l=l||[];var q=h=h||s;if(h.nodeType!==1&&h.nodeType!==9)return[];if(!g||typeof g!=="string")return l;for(var p=[],v,t,y,S,H=true,M=x(h),I=g;(f.exec(""),v=f.exec(I))!==null;){I=v[3];p.push(v[1]);if(v[2]){S=v[3];break}}if(p.length>1&&r.exec(g))if(p.length===2&&n.relative[p[0]])t=ga(p[0]+p[1],h);else for(t=n.relative[p[0]]?[h]:k(p.shift(),h);p.length;){g=p.shift();if(n.relative[g])g+=p.shift();
|
||||
t=ga(g,t)}else{if(!m&&p.length>1&&h.nodeType===9&&!M&&n.match.ID.test(p[0])&&!n.match.ID.test(p[p.length-1])){v=k.find(p.shift(),h,M);h=v.expr?k.filter(v.expr,v.set)[0]:v.set[0]}if(h){v=m?{expr:p.pop(),set:z(m)}:k.find(p.pop(),p.length===1&&(p[0]==="~"||p[0]==="+")&&h.parentNode?h.parentNode:h,M);t=v.expr?k.filter(v.expr,v.set):v.set;if(p.length>0)y=z(t);else H=false;for(;p.length;){var D=p.pop();v=D;if(n.relative[D])v=p.pop();else D="";if(v==null)v=h;n.relative[D](y,v,M)}}else y=[]}y||(y=t);y||k.error(D||
|
||||
g);if(j.call(y)==="[object Array]")if(H)if(h&&h.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&E(h,y[g])))l.push(t[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&l.push(t[g]);else l.push.apply(l,y);else z(y,l);if(S){k(S,q,l,m);k.uniqueSort(l)}return l};k.uniqueSort=function(g){if(B){i=o;g.sort(B);if(i)for(var h=1;h<g.length;h++)g[h]===g[h-1]&&g.splice(h--,1)}return g};k.matches=function(g,h){return k(g,null,null,h)};k.find=function(g,h,l){var m,q;if(!g)return[];
|
||||
for(var p=0,v=n.order.length;p<v;p++){var t=n.order[p];if(q=n.leftMatch[t].exec(g)){var y=q[1];q.splice(1,1);if(y.substr(y.length-1)!=="\\"){q[1]=(q[1]||"").replace(/\\/g,"");m=n.find[t](q,h,l);if(m!=null){g=g.replace(n.match[t],"");break}}}}m||(m=h.getElementsByTagName("*"));return{set:m,expr:g}};k.filter=function(g,h,l,m){for(var q=g,p=[],v=h,t,y,S=h&&h[0]&&x(h[0]);g&&h.length;){for(var H in n.filter)if((t=n.leftMatch[H].exec(g))!=null&&t[2]){var M=n.filter[H],I,D;D=t[1];y=false;t.splice(1,1);if(D.substr(D.length-
|
||||
1)!=="\\"){if(v===p)p=[];if(n.preFilter[H])if(t=n.preFilter[H](t,v,l,p,m,S)){if(t===true)continue}else y=I=true;if(t)for(var U=0;(D=v[U])!=null;U++)if(D){I=M(D,t,U,v);var Ha=m^!!I;if(l&&I!=null)if(Ha)y=true;else v[U]=false;else if(Ha){p.push(D);y=true}}if(I!==w){l||(v=p);g=g.replace(n.match[H],"");if(!y)return[];break}}}if(g===q)if(y==null)k.error(g);else break;q=g}return v};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var n=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,
|
||||
CLASS:/\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},
|
||||
relative:{"+":function(g,h){var l=typeof h==="string",m=l&&!/\W/.test(h);l=l&&!m;if(m)h=h.toLowerCase();m=0;for(var q=g.length,p;m<q;m++)if(p=g[m]){for(;(p=p.previousSibling)&&p.nodeType!==1;);g[m]=l||p&&p.nodeName.toLowerCase()===h?p||false:p===h}l&&k.filter(h,g,true)},">":function(g,h){var l=typeof h==="string";if(l&&!/\W/.test(h)){h=h.toLowerCase();for(var m=0,q=g.length;m<q;m++){var p=g[m];if(p){l=p.parentNode;g[m]=l.nodeName.toLowerCase()===h?l:false}}}else{m=0;for(q=g.length;m<q;m++)if(p=g[m])g[m]=
|
||||
l?p.parentNode:p.parentNode===h;l&&k.filter(h,g,true)}},"":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("parentNode",h,m,g,p,l)},"~":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("previousSibling",h,m,g,p,l)}},find:{ID:function(g,h,l){if(typeof h.getElementById!=="undefined"&&!l)return(g=h.getElementById(g[1]))?[g]:[]},NAME:function(g,h){if(typeof h.getElementsByName!=="undefined"){var l=[];
|
||||
h=h.getElementsByName(g[1]);for(var m=0,q=h.length;m<q;m++)h[m].getAttribute("name")===g[1]&&l.push(h[m]);return l.length===0?null:l}},TAG:function(g,h){return h.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,h,l,m,q,p){g=" "+g[1].replace(/\\/g,"")+" ";if(p)return g;p=0;for(var v;(v=h[p])!=null;p++)if(v)if(q^(v.className&&(" "+v.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))l||m.push(v);else if(l)h[p]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},
|
||||
CHILD:function(g){if(g[1]==="nth"){var h=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=h[1]+(h[2]||1)-0;g[3]=h[3]-0}g[0]=e++;return g},ATTR:function(g,h,l,m,q,p){h=g[1].replace(/\\/g,"");if(!p&&n.attrMap[h])g[1]=n.attrMap[h];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,h,l,m,q){if(g[1]==="not")if((f.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,h);else{g=k.filter(g[3],h,l,true^q);l||m.push.apply(m,
|
||||
g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,h,l){return!!k(l[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},
|
||||
text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},
|
||||
setFilters:{first:function(g,h){return h===0},last:function(g,h,l,m){return h===m.length-1},even:function(g,h){return h%2===0},odd:function(g,h){return h%2===1},lt:function(g,h,l){return h<l[3]-0},gt:function(g,h,l){return h>l[3]-0},nth:function(g,h,l){return l[3]-0===h},eq:function(g,h,l){return l[3]-0===h}},filter:{PSEUDO:function(g,h,l,m){var q=h[1],p=n.filters[q];if(p)return p(g,l,h,m);else if(q==="contains")return(g.textContent||g.innerText||a([g])||"").indexOf(h[3])>=0;else if(q==="not"){h=
|
||||
h[3];l=0;for(m=h.length;l<m;l++)if(h[l]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+q)},CHILD:function(g,h){var l=h[1],m=g;switch(l){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(l==="first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":l=h[2];var q=h[3];if(l===1&&q===0)return true;h=h[0];var p=g.parentNode;if(p&&(p.sizcache!==h||!g.nodeIndex)){var v=0;for(m=p.firstChild;m;m=
|
||||
m.nextSibling)if(m.nodeType===1)m.nodeIndex=++v;p.sizcache=h}g=g.nodeIndex-q;return l===0?g===0:g%l===0&&g/l>=0}},ID:function(g,h){return g.nodeType===1&&g.getAttribute("id")===h},TAG:function(g,h){return h==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===h},CLASS:function(g,h){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(h)>-1},ATTR:function(g,h){var l=h[1];g=n.attrHandle[l]?n.attrHandle[l](g):g[l]!=null?g[l]:g.getAttribute(l);l=g+"";var m=h[2];h=h[4];return g==null?m==="!=":m===
|
||||
"="?l===h:m==="*="?l.indexOf(h)>=0:m==="~="?(" "+l+" ").indexOf(h)>=0:!h?l&&g!==false:m==="!="?l!==h:m==="^="?l.indexOf(h)===0:m==="$="?l.substr(l.length-h.length)===h:m==="|="?l===h||l.substr(0,h.length+1)===h+"-":false},POS:function(g,h,l,m){var q=n.setFilters[h[2]];if(q)return q(g,l,h,m)}}},r=n.match.POS;for(var u in n.match){n.match[u]=new RegExp(n.match[u].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[u]=new RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[u].source.replace(/\\(\d+)/g,function(g,
|
||||
h){return"\\"+(h-0+1)}))}var z=function(g,h){g=Array.prototype.slice.call(g,0);if(h){h.push.apply(h,g);return h}return g};try{Array.prototype.slice.call(s.documentElement.childNodes,0)}catch(C){z=function(g,h){h=h||[];if(j.call(g)==="[object Array]")Array.prototype.push.apply(h,g);else if(typeof g.length==="number")for(var l=0,m=g.length;l<m;l++)h.push(g[l]);else for(l=0;g[l];l++)h.push(g[l]);return h}}var B;if(s.documentElement.compareDocumentPosition)B=function(g,h){if(!g.compareDocumentPosition||
|
||||
!h.compareDocumentPosition){if(g==h)i=true;return g.compareDocumentPosition?-1:1}g=g.compareDocumentPosition(h)&4?-1:g===h?0:1;if(g===0)i=true;return g};else if("sourceIndex"in s.documentElement)B=function(g,h){if(!g.sourceIndex||!h.sourceIndex){if(g==h)i=true;return g.sourceIndex?-1:1}g=g.sourceIndex-h.sourceIndex;if(g===0)i=true;return g};else if(s.createRange)B=function(g,h){if(!g.ownerDocument||!h.ownerDocument){if(g==h)i=true;return g.ownerDocument?-1:1}var l=g.ownerDocument.createRange(),m=
|
||||
h.ownerDocument.createRange();l.setStart(g,0);l.setEnd(g,0);m.setStart(h,0);m.setEnd(h,0);g=l.compareBoundaryPoints(Range.START_TO_END,m);if(g===0)i=true;return g};(function(){var g=s.createElement("div"),h="script"+(new Date).getTime();g.innerHTML="<a name='"+h+"'/>";var l=s.documentElement;l.insertBefore(g,l.firstChild);if(s.getElementById(h)){n.find.ID=function(m,q,p){if(typeof q.getElementById!=="undefined"&&!p)return(q=q.getElementById(m[1]))?q.id===m[1]||typeof q.getAttributeNode!=="undefined"&&
|
||||
q.getAttributeNode("id").nodeValue===m[1]?[q]:w:[]};n.filter.ID=function(m,q){var p=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&p&&p.nodeValue===q}}l.removeChild(g);l=g=null})();(function(){var g=s.createElement("div");g.appendChild(s.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(h,l){l=l.getElementsByTagName(h[1]);if(h[1]==="*"){h=[];for(var m=0;l[m];m++)l[m].nodeType===1&&h.push(l[m]);l=h}return l};g.innerHTML="<a href='#'></a>";
|
||||
if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(h){return h.getAttribute("href",2)};g=null})();s.querySelectorAll&&function(){var g=k,h=s.createElement("div");h.innerHTML="<p class='TEST'></p>";if(!(h.querySelectorAll&&h.querySelectorAll(".TEST").length===0)){k=function(m,q,p,v){q=q||s;if(!v&&q.nodeType===9&&!x(q))try{return z(q.querySelectorAll(m),p)}catch(t){}return g(m,q,p,v)};for(var l in g)k[l]=g[l];h=null}}();
|
||||
(function(){var g=s.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(h,l,m){if(typeof l.getElementsByClassName!=="undefined"&&!m)return l.getElementsByClassName(h[1])};g=null}}})();var E=s.compareDocumentPosition?function(g,h){return!!(g.compareDocumentPosition(h)&16)}:
|
||||
function(g,h){return g!==h&&(g.contains?g.contains(h):true)},x=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false},ga=function(g,h){var l=[],m="",q;for(h=h.nodeType?[h]:h;q=n.match.PSEUDO.exec(g);){m+=q[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;q=0;for(var p=h.length;q<p;q++)k(g,h[q],l);return k.filter(m,l)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=a;c.isXMLDoc=x;c.contains=E})();var eb=/Until$/,fb=/^(?:parents|prevUntil|prevAll)/,
|
||||
gb=/,/;R=Array.prototype.slice;var Ia=function(a,b,d){if(c.isFunction(b))return c.grep(a,function(e,j){return!!b.call(e,j,e)===d});else if(b.nodeType)return c.grep(a,function(e){return e===b===d});else if(typeof b==="string"){var f=c.grep(a,function(e){return e.nodeType===1});if(Ua.test(b))return c.filter(b,f,!d);else b=c.filter(b,f)}return c.grep(a,function(e){return c.inArray(e,b)>=0===d})};c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,f=0,e=this.length;f<e;f++){d=b.length;
|
||||
c.find(a,this[f],b);if(f>0)for(var j=d;j<b.length;j++)for(var i=0;i<d;i++)if(b[i]===b[j]){b.splice(j--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,f=b.length;d<f;d++)if(c.contains(this,b[d]))return true})},not:function(a){return this.pushStack(Ia(this,a,false),"not",a)},filter:function(a){return this.pushStack(Ia(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){if(c.isArray(a)){var d=[],f=this[0],e,j=
|
||||
{},i;if(f&&a.length){e=0;for(var o=a.length;e<o;e++){i=a[e];j[i]||(j[i]=c.expr.match.POS.test(i)?c(i,b||this.context):i)}for(;f&&f.ownerDocument&&f!==b;){for(i in j){e=j[i];if(e.jquery?e.index(f)>-1:c(f).is(e)){d.push({selector:i,elem:f});delete j[i]}}f=f.parentNode}}return d}var k=c.expr.match.POS.test(a)?c(a,b||this.context):null;return this.map(function(n,r){for(;r&&r.ownerDocument&&r!==b;){if(k?k.index(r)>-1:c(r).is(a))return r;r=r.parentNode}return null})},index:function(a){if(!a||typeof a===
|
||||
"string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){a=typeof a==="string"?c(a,b||this.context):c.makeArray(a);b=c.merge(this.get(),a);return this.pushStack(qa(a[0])||qa(b[0])?b:c.unique(b))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",
|
||||
d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?
|
||||
a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,f){var e=c.map(this,b,d);eb.test(a)||(f=d);if(f&&typeof f==="string")e=c.filter(f,e);e=this.length>1?c.unique(e):e;if((this.length>1||gb.test(f))&&fb.test(a))e=e.reverse();return this.pushStack(e,a,R.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return c.find.matches(a,b)},dir:function(a,b,d){var f=[];for(a=a[b];a&&a.nodeType!==9&&(d===w||a.nodeType!==1||!c(a).is(d));){a.nodeType===
|
||||
1&&f.push(a);a=a[b]}return f},nth:function(a,b,d){b=b||1;for(var f=0;a;a=a[d])if(a.nodeType===1&&++f===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var Ja=/ jQuery\d+="(?:\d+|null)"/g,V=/^\s+/,Ka=/(<([\w:]+)[^>]*?)\/>/g,hb=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,La=/<([\w:]+)/,ib=/<tbody/i,jb=/<|&#?\w+;/,ta=/<script|<object|<embed|<option|<style/i,ua=/checked\s*(?:[^=]|=\s*.checked.)/i,Ma=function(a,b,d){return hb.test(d)?
|
||||
a:b+"></"+d+">"},F={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};F.optgroup=F.option;F.tbody=F.tfoot=F.colgroup=F.caption=F.thead;F.th=F.td;if(!c.support.htmlSerialize)F._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
|
||||
c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==w)return this.empty().append((this[0]&&this[0].ownerDocument||s).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},
|
||||
wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},
|
||||
prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,
|
||||
this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,f;(f=this[d])!=null;d++)if(!a||c.filter(a,[f]).length){if(!b&&f.nodeType===1){c.cleanData(f.getElementsByTagName("*"));c.cleanData([f])}f.parentNode&&f.parentNode.removeChild(f)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);
|
||||
return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,f=this.ownerDocument;if(!d){d=f.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(Ja,"").replace(/=([^="'>\s]+\/)>/g,'="$1">').replace(V,"")],f)[0]}else return this.cloneNode(true)});if(a===true){ra(this,b);ra(this.find("*"),b.find("*"))}return b},html:function(a){if(a===w)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Ja,
|
||||
""):null;else if(typeof a==="string"&&!ta.test(a)&&(c.support.leadingWhitespace||!V.test(a))&&!F[(La.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Ka,Ma);try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(f){this.empty().append(a)}}else c.isFunction(a)?this.each(function(e){var j=c(this),i=j.html();j.empty().append(function(){return a.call(this,e,i)})}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&
|
||||
this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=c(this),f=d.html();d.replaceWith(a.call(this,b,f))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){function f(u){return c.nodeName(u,"table")?u.getElementsByTagName("tbody")[0]||
|
||||
u.appendChild(u.ownerDocument.createElement("tbody")):u}var e,j,i=a[0],o=[],k;if(!c.support.checkClone&&arguments.length===3&&typeof i==="string"&&ua.test(i))return this.each(function(){c(this).domManip(a,b,d,true)});if(c.isFunction(i))return this.each(function(u){var z=c(this);a[0]=i.call(this,u,b?z.html():w);z.domManip(a,b,d)});if(this[0]){e=i&&i.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:sa(a,this,o);k=e.fragment;if(j=k.childNodes.length===
|
||||
1?(k=k.firstChild):k.firstChild){b=b&&c.nodeName(j,"tr");for(var n=0,r=this.length;n<r;n++)d.call(b?f(this[n],j):this[n],n>0||e.cacheable||this.length>1?k.cloneNode(true):k)}o.length&&c.each(o,Qa)}return this}});c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var f=[];d=c(d);var e=this.length===1&&this[0].parentNode;if(e&&e.nodeType===11&&e.childNodes.length===1&&d.length===1){d[b](this[0]);
|
||||
return this}else{e=0;for(var j=d.length;e<j;e++){var i=(e>0?this.clone(true):this).get();c.fn[b].apply(c(d[e]),i);f=f.concat(i)}return this.pushStack(f,a,d.selector)}}});c.extend({clean:function(a,b,d,f){b=b||s;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||s;for(var e=[],j=0,i;(i=a[j])!=null;j++){if(typeof i==="number")i+="";if(i){if(typeof i==="string"&&!jb.test(i))i=b.createTextNode(i);else if(typeof i==="string"){i=i.replace(Ka,Ma);var o=(La.exec(i)||["",
|
||||
""])[1].toLowerCase(),k=F[o]||F._default,n=k[0],r=b.createElement("div");for(r.innerHTML=k[1]+i+k[2];n--;)r=r.lastChild;if(!c.support.tbody){n=ib.test(i);o=o==="table"&&!n?r.firstChild&&r.firstChild.childNodes:k[1]==="<table>"&&!n?r.childNodes:[];for(k=o.length-1;k>=0;--k)c.nodeName(o[k],"tbody")&&!o[k].childNodes.length&&o[k].parentNode.removeChild(o[k])}!c.support.leadingWhitespace&&V.test(i)&&r.insertBefore(b.createTextNode(V.exec(i)[0]),r.firstChild);i=r.childNodes}if(i.nodeType)e.push(i);else e=
|
||||
c.merge(e,i)}}if(d)for(j=0;e[j];j++)if(f&&c.nodeName(e[j],"script")&&(!e[j].type||e[j].type.toLowerCase()==="text/javascript"))f.push(e[j].parentNode?e[j].parentNode.removeChild(e[j]):e[j]);else{e[j].nodeType===1&&e.splice.apply(e,[j+1,0].concat(c.makeArray(e[j].getElementsByTagName("script"))));d.appendChild(e[j])}return e},cleanData:function(a){for(var b,d,f=c.cache,e=c.event.special,j=c.support.deleteExpando,i=0,o;(o=a[i])!=null;i++)if(d=o[c.expando]){b=f[d];if(b.events)for(var k in b.events)e[k]?
|
||||
c.event.remove(o,k):Ca(o,k,b.handle);if(j)delete o[c.expando];else o.removeAttribute&&o.removeAttribute(c.expando);delete f[d]}}});var kb=/z-?index|font-?weight|opacity|zoom|line-?height/i,Na=/alpha\([^)]*\)/,Oa=/opacity=([^)]*)/,ha=/float/i,ia=/-([a-z])/ig,lb=/([A-Z])/g,mb=/^-?\d+(?:px)?$/i,nb=/^-?\d/,ob={position:"absolute",visibility:"hidden",display:"block"},pb=["Left","Right"],qb=["Top","Bottom"],rb=s.defaultView&&s.defaultView.getComputedStyle,Pa=c.support.cssFloat?"cssFloat":"styleFloat",ja=
|
||||
function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){return X(this,a,b,true,function(d,f,e){if(e===w)return c.curCSS(d,f);if(typeof e==="number"&&!kb.test(f))e+="px";c.style(d,f,e)})};c.extend({style:function(a,b,d){if(!a||a.nodeType===3||a.nodeType===8)return w;if((b==="width"||b==="height")&&parseFloat(d)<0)d=w;var f=a.style||a,e=d!==w;if(!c.support.opacity&&b==="opacity"){if(e){f.zoom=1;b=parseInt(d,10)+""==="NaN"?"":"alpha(opacity="+d*100+")";a=f.filter||c.curCSS(a,"filter")||"";f.filter=
|
||||
Na.test(a)?a.replace(Na,b):b}return f.filter&&f.filter.indexOf("opacity=")>=0?parseFloat(Oa.exec(f.filter)[1])/100+"":""}if(ha.test(b))b=Pa;b=b.replace(ia,ja);if(e)f[b]=d;return f[b]},css:function(a,b,d,f){if(b==="width"||b==="height"){var e,j=b==="width"?pb:qb;function i(){e=b==="width"?a.offsetWidth:a.offsetHeight;f!=="border"&&c.each(j,function(){f||(e-=parseFloat(c.curCSS(a,"padding"+this,true))||0);if(f==="margin")e+=parseFloat(c.curCSS(a,"margin"+this,true))||0;else e-=parseFloat(c.curCSS(a,
|
||||
"border"+this+"Width",true))||0})}a.offsetWidth!==0?i():c.swap(a,ob,i);return Math.max(0,Math.round(e))}return c.curCSS(a,b,d)},curCSS:function(a,b,d){var f,e=a.style;if(!c.support.opacity&&b==="opacity"&&a.currentStyle){f=Oa.test(a.currentStyle.filter||"")?parseFloat(RegExp.$1)/100+"":"";return f===""?"1":f}if(ha.test(b))b=Pa;if(!d&&e&&e[b])f=e[b];else if(rb){if(ha.test(b))b="float";b=b.replace(lb,"-$1").toLowerCase();e=a.ownerDocument.defaultView;if(!e)return null;if(a=e.getComputedStyle(a,null))f=
|
||||
a.getPropertyValue(b);if(b==="opacity"&&f==="")f="1"}else if(a.currentStyle){d=b.replace(ia,ja);f=a.currentStyle[b]||a.currentStyle[d];if(!mb.test(f)&&nb.test(f)){b=e.left;var j=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;e.left=d==="fontSize"?"1em":f||0;f=e.pixelLeft+"px";e.left=b;a.runtimeStyle.left=j}}return f},swap:function(a,b,d){var f={};for(var e in b){f[e]=a.style[e];a.style[e]=b[e]}d.call(a);for(e in b)a.style[e]=f[e]}});if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=
|
||||
a.offsetWidth,d=a.offsetHeight,f=a.nodeName.toLowerCase()==="tr";return b===0&&d===0&&!f?true:b>0&&d>0&&!f?false:c.curCSS(a,"display")==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var sb=J(),tb=/<script(.|\s)*?\/script>/gi,ub=/select|textarea/i,vb=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,N=/=\?(&|$)/,ka=/\?/,wb=/(\?|&)_=.*?(&|$)/,xb=/^(\w+:)?\/\/([^\/?#]+)/,yb=/%20/g,zb=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!==
|
||||
"string")return zb.call(this,a);else if(!this.length)return this;var f=a.indexOf(" ");if(f>=0){var e=a.slice(f,a.length);a=a.slice(0,f)}f="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);f="POST"}var j=this;c.ajax({url:a,type:f,dataType:"html",data:b,complete:function(i,o){if(o==="success"||o==="notmodified")j.html(e?c("<div />").append(i.responseText.replace(tb,"")).find(e):i.responseText);d&&j.each(d,[i.responseText,o,i])}});return this},
|
||||
serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ub.test(this.nodeName)||vb.test(this.type))}).map(function(a,b){a=c(this).val();return a==null?null:c.isArray(a)?c.map(a,function(d){return{name:b.name,value:d}}):{name:b.name,value:a}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),
|
||||
function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:f})},getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:f})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,
|
||||
global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:A.XMLHttpRequest&&(A.location.protocol!=="file:"||!A.ActiveXObject)?function(){return new A.XMLHttpRequest}:function(){try{return new A.ActiveXObject("Microsoft.XMLHTTP")}catch(a){}},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},etag:{},ajax:function(a){function b(){e.success&&
|
||||
e.success.call(k,o,i,x);e.global&&f("ajaxSuccess",[x,e])}function d(){e.complete&&e.complete.call(k,x,i);e.global&&f("ajaxComplete",[x,e]);e.global&&!--c.active&&c.event.trigger("ajaxStop")}function f(q,p){(e.context?c(e.context):c.event).trigger(q,p)}var e=c.extend(true,{},c.ajaxSettings,a),j,i,o,k=a&&a.context||e,n=e.type.toUpperCase();if(e.data&&e.processData&&typeof e.data!=="string")e.data=c.param(e.data,e.traditional);if(e.dataType==="jsonp"){if(n==="GET")N.test(e.url)||(e.url+=(ka.test(e.url)?
|
||||
"&":"?")+(e.jsonp||"callback")+"=?");else if(!e.data||!N.test(e.data))e.data=(e.data?e.data+"&":"")+(e.jsonp||"callback")+"=?";e.dataType="json"}if(e.dataType==="json"&&(e.data&&N.test(e.data)||N.test(e.url))){j=e.jsonpCallback||"jsonp"+sb++;if(e.data)e.data=(e.data+"").replace(N,"="+j+"$1");e.url=e.url.replace(N,"="+j+"$1");e.dataType="script";A[j]=A[j]||function(q){o=q;b();d();A[j]=w;try{delete A[j]}catch(p){}z&&z.removeChild(C)}}if(e.dataType==="script"&&e.cache===null)e.cache=false;if(e.cache===
|
||||
false&&n==="GET"){var r=J(),u=e.url.replace(wb,"$1_="+r+"$2");e.url=u+(u===e.url?(ka.test(e.url)?"&":"?")+"_="+r:"")}if(e.data&&n==="GET")e.url+=(ka.test(e.url)?"&":"?")+e.data;e.global&&!c.active++&&c.event.trigger("ajaxStart");r=(r=xb.exec(e.url))&&(r[1]&&r[1]!==location.protocol||r[2]!==location.host);if(e.dataType==="script"&&n==="GET"&&r){var z=s.getElementsByTagName("head")[0]||s.documentElement,C=s.createElement("script");C.src=e.url;if(e.scriptCharset)C.charset=e.scriptCharset;if(!j){var B=
|
||||
false;C.onload=C.onreadystatechange=function(){if(!B&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){B=true;b();d();C.onload=C.onreadystatechange=null;z&&C.parentNode&&z.removeChild(C)}}}z.insertBefore(C,z.firstChild);return w}var E=false,x=e.xhr();if(x){e.username?x.open(n,e.url,e.async,e.username,e.password):x.open(n,e.url,e.async);try{if(e.data||a&&a.contentType)x.setRequestHeader("Content-Type",e.contentType);if(e.ifModified){c.lastModified[e.url]&&x.setRequestHeader("If-Modified-Since",
|
||||
c.lastModified[e.url]);c.etag[e.url]&&x.setRequestHeader("If-None-Match",c.etag[e.url])}r||x.setRequestHeader("X-Requested-With","XMLHttpRequest");x.setRequestHeader("Accept",e.dataType&&e.accepts[e.dataType]?e.accepts[e.dataType]+", */*":e.accepts._default)}catch(ga){}if(e.beforeSend&&e.beforeSend.call(k,x,e)===false){e.global&&!--c.active&&c.event.trigger("ajaxStop");x.abort();return false}e.global&&f("ajaxSend",[x,e]);var g=x.onreadystatechange=function(q){if(!x||x.readyState===0||q==="abort"){E||
|
||||
d();E=true;if(x)x.onreadystatechange=c.noop}else if(!E&&x&&(x.readyState===4||q==="timeout")){E=true;x.onreadystatechange=c.noop;i=q==="timeout"?"timeout":!c.httpSuccess(x)?"error":e.ifModified&&c.httpNotModified(x,e.url)?"notmodified":"success";var p;if(i==="success")try{o=c.httpData(x,e.dataType,e)}catch(v){i="parsererror";p=v}if(i==="success"||i==="notmodified")j||b();else c.handleError(e,x,i,p);d();q==="timeout"&&x.abort();if(e.async)x=null}};try{var h=x.abort;x.abort=function(){x&&h.call(x);
|
||||
g("abort")}}catch(l){}e.async&&e.timeout>0&&setTimeout(function(){x&&!E&&g("timeout")},e.timeout);try{x.send(n==="POST"||n==="PUT"||n==="DELETE"?e.data:null)}catch(m){c.handleError(e,x,null,m);d()}e.async||g();return x}},handleError:function(a,b,d,f){if(a.error)a.error.call(a.context||a,b,d,f);if(a.global)(a.context?c(a.context):c.event).trigger("ajaxError",[b,a,f])},active:0,httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===
|
||||
1223||a.status===0}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),f=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(f)c.etag[b]=f;return a.status===304||a.status===0},httpData:function(a,b,d){var f=a.getResponseHeader("content-type")||"",e=b==="xml"||!b&&f.indexOf("xml")>=0;a=e?a.responseXML:a.responseText;e&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b===
|
||||
"json"||!b&&f.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&f.indexOf("javascript")>=0)c.globalEval(a);return a},param:function(a,b){function d(i,o){if(c.isArray(o))c.each(o,function(k,n){b||/\[\]$/.test(i)?f(i,n):d(i+"["+(typeof n==="object"||c.isArray(n)?k:"")+"]",n)});else!b&&o!=null&&typeof o==="object"?c.each(o,function(k,n){d(i+"["+k+"]",n)}):f(i,o)}function f(i,o){o=c.isFunction(o)?o():o;e[e.length]=encodeURIComponent(i)+"="+encodeURIComponent(o)}var e=[];if(b===w)b=c.ajaxSettings.traditional;
|
||||
if(c.isArray(a)||a.jquery)c.each(a,function(){f(this.name,this.value)});else for(var j in a)d(j,a[j]);return e.join("&").replace(yb,"+")}});var la={},Ab=/toggle|show|hide/,Bb=/^([+-]=)?([\d+-.]+)(.*)$/,W,va=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b){if(a||a===0)return this.animate(K("show",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");
|
||||
this[a].style.display=d||"";if(c.css(this[a],"display")==="none"){d=this[a].nodeName;var f;if(la[d])f=la[d];else{var e=c("<"+d+" />").appendTo("body");f=e.css("display");if(f==="none")f="block";e.remove();la[d]=f}c.data(this[a],"olddisplay",f)}}a=0;for(b=this.length;a<b;a++)this[a].style.display=c.data(this[a],"olddisplay")||"";return this}},hide:function(a,b){if(a||a===0)return this.animate(K("hide",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");!d&&d!=="none"&&c.data(this[a],
|
||||
"olddisplay",c.css(this[a],"display"))}a=0;for(b=this.length;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b){var d=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||d?this.each(function(){var f=d?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(K("toggle",3),a,b);return this},fadeTo:function(a,b,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d)},
|
||||
animate:function(a,b,d,f){var e=c.speed(b,d,f);if(c.isEmptyObject(a))return this.each(e.complete);return this[e.queue===false?"each":"queue"](function(){var j=c.extend({},e),i,o=this.nodeType===1&&c(this).is(":hidden"),k=this;for(i in a){var n=i.replace(ia,ja);if(i!==n){a[n]=a[i];delete a[i];i=n}if(a[i]==="hide"&&o||a[i]==="show"&&!o)return j.complete.call(this);if((i==="height"||i==="width")&&this.style){j.display=c.css(this,"display");j.overflow=this.style.overflow}if(c.isArray(a[i])){(j.specialEasing=
|
||||
j.specialEasing||{})[i]=a[i][1];a[i]=a[i][0]}}if(j.overflow!=null)this.style.overflow="hidden";j.curAnim=c.extend({},a);c.each(a,function(r,u){var z=new c.fx(k,j,r);if(Ab.test(u))z[u==="toggle"?o?"show":"hide":u](a);else{var C=Bb.exec(u),B=z.cur(true)||0;if(C){u=parseFloat(C[2]);var E=C[3]||"px";if(E!=="px"){k.style[r]=(u||1)+E;B=(u||1)/z.cur(true)*B;k.style[r]=B+E}if(C[1])u=(C[1]==="-="?-1:1)*u+B;z.custom(B,u,E)}else z.custom(B,u,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);
|
||||
this.each(function(){for(var f=d.length-1;f>=0;f--)if(d[f].elem===this){b&&d[f](true);d.splice(f,1)}});b||this.dequeue();return this}});c.each({slideDown:K("show",1),slideUp:K("hide",1),slideToggle:K("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,f){return this.animate(b,d,f)}});c.extend({speed:function(a,b,d){var f=a&&typeof a==="object"?a:{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};f.duration=c.fx.off?0:typeof f.duration===
|
||||
"number"?f.duration:c.fx.speeds[f.duration]||c.fx.speeds._default;f.old=f.complete;f.complete=function(){f.queue!==false&&c(this).dequeue();c.isFunction(f.old)&&f.old.call(this)};return f},easing:{linear:function(a,b,d,f){return d+f*a},swing:function(a,b,d,f){return(-Math.cos(a*Math.PI)/2+0.5)*f+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||
|
||||
c.fx.step._default)(this);if((this.prop==="height"||this.prop==="width")&&this.elem.style)this.elem.style.display="block"},cur:function(a){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];return(a=parseFloat(c.css(this.elem,this.prop,a)))&&a>-10000?a:parseFloat(c.curCSS(this.elem,this.prop))||0},custom:function(a,b,d){function f(j){return e.step(j)}this.startTime=J();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;
|
||||
this.pos=this.state=0;var e=this;f.elem=this.elem;if(f()&&c.timers.push(f)&&!W)W=setInterval(c.fx.tick,13)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(a){var b=J(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=
|
||||
this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var f in this.options.curAnim)if(this.options.curAnim[f]!==true)d=false;if(d){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;a=c.data(this.elem,"olddisplay");this.elem.style.display=a?a:this.options.display;if(c.css(this.elem,"display")==="none")this.elem.style.display="block"}this.options.hide&&c(this.elem).hide();if(this.options.hide||this.options.show)for(var e in this.options.curAnim)c.style(this.elem,
|
||||
e,this.options.orig[e]);this.options.complete.call(this.elem)}return false}else{e=b-this.startTime;this.state=e/this.options.duration;a=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||a](this.state,e,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||
|
||||
c.fx.stop()},stop:function(){clearInterval(W);W=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===b.elem}).length};c.fn.offset="getBoundingClientRect"in s.documentElement?
|
||||
function(a){var b=this[0];if(a)return this.each(function(e){c.offset.setOffset(this,a,e)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);var d=b.getBoundingClientRect(),f=b.ownerDocument;b=f.body;f=f.documentElement;return{top:d.top+(self.pageYOffset||c.support.boxModel&&f.scrollTop||b.scrollTop)-(f.clientTop||b.clientTop||0),left:d.left+(self.pageXOffset||c.support.boxModel&&f.scrollLeft||b.scrollLeft)-(f.clientLeft||b.clientLeft||0)}}:function(a){var b=
|
||||
this[0];if(a)return this.each(function(r){c.offset.setOffset(this,a,r)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d=b.offsetParent,f=b,e=b.ownerDocument,j,i=e.documentElement,o=e.body;f=(e=e.defaultView)?e.getComputedStyle(b,null):b.currentStyle;for(var k=b.offsetTop,n=b.offsetLeft;(b=b.parentNode)&&b!==o&&b!==i;){if(c.offset.supportsFixedPosition&&f.position==="fixed")break;j=e?e.getComputedStyle(b,null):b.currentStyle;
|
||||
k-=b.scrollTop;n-=b.scrollLeft;if(b===d){k+=b.offsetTop;n+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(b.nodeName))){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=d;d=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&j.overflow!=="visible"){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=j}if(f.position==="relative"||f.position==="static"){k+=o.offsetTop;n+=o.offsetLeft}if(c.offset.supportsFixedPosition&&
|
||||
f.position==="fixed"){k+=Math.max(i.scrollTop,o.scrollTop);n+=Math.max(i.scrollLeft,o.scrollLeft)}return{top:k,left:n}};c.offset={initialize:function(){var a=s.body,b=s.createElement("div"),d,f,e,j=parseFloat(c.curCSS(a,"marginTop",true))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";
|
||||
a.insertBefore(b,a.firstChild);d=b.firstChild;f=d.firstChild;e=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=f.offsetTop!==5;this.doesAddBorderForTableAndCells=e.offsetTop===5;f.style.position="fixed";f.style.top="20px";this.supportsFixedPosition=f.offsetTop===20||f.offsetTop===15;f.style.position=f.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=f.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==j;a.removeChild(b);
|
||||
c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.curCSS(a,"marginTop",true))||0;d+=parseFloat(c.curCSS(a,"marginLeft",true))||0}return{top:b,left:d}},setOffset:function(a,b,d){if(/static/.test(c.curCSS(a,"position")))a.style.position="relative";var f=c(a),e=f.offset(),j=parseInt(c.curCSS(a,"top",true),10)||0,i=parseInt(c.curCSS(a,"left",true),10)||0;if(c.isFunction(b))b=b.call(a,
|
||||
d,e);d={top:b.top-e.top+j,left:b.left-e.left+i};"using"in b?b.using.call(a,d):f.css(d)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),f=/^body|html$/i.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.curCSS(a,"marginTop",true))||0;d.left-=parseFloat(c.curCSS(a,"marginLeft",true))||0;f.top+=parseFloat(c.curCSS(b[0],"borderTopWidth",true))||0;f.left+=parseFloat(c.curCSS(b[0],"borderLeftWidth",true))||0;return{top:d.top-
|
||||
f.top,left:d.left-f.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||s.body;a&&!/^body|html$/i.test(a.nodeName)&&c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(f){var e=this[0],j;if(!e)return null;if(f!==w)return this.each(function(){if(j=wa(this))j.scrollTo(!a?f:c(j).scrollLeft(),a?f:c(j).scrollTop());else this[d]=f});else return(j=wa(e))?"pageXOffset"in j?j[a?"pageYOffset":
|
||||
"pageXOffset"]:c.support.boxModel&&j.document.documentElement[d]||j.document.body[d]:e[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();c.fn["inner"+b]=function(){return this[0]?c.css(this[0],d,false,"padding"):null};c.fn["outer"+b]=function(f){return this[0]?c.css(this[0],d,false,f?"margin":"border"):null};c.fn[d]=function(f){var e=this[0];if(!e)return f==null?null:this;if(c.isFunction(f))return this.each(function(j){var i=c(this);i[d](f.call(this,j,i[d]()))});return"scrollTo"in
|
||||
e&&e.document?e.document.compatMode==="CSS1Compat"&&e.document.documentElement["client"+b]||e.document.body["client"+b]:e.nodeType===9?Math.max(e.documentElement["client"+b],e.body["scroll"+b],e.documentElement["scroll"+b],e.body["offset"+b],e.documentElement["offset"+b]):f===w?c.css(e,d):this.css(d,typeof f==="string"?f:f+"px")}});A.jQuery=A.$=c})(window);
|
@ -69,7 +69,39 @@ function load_ajax_url(url) {
|
||||
|
||||
function load_search_results(url, params, page) {
|
||||
|
||||
document.getElementById('AS').innerHTML = '<div id="resultscontainer" class="empty"><img src="/view/theme/default/images/spinner.gif" id="spinner" alt="spinner" /></div>';
|
||||
document.getElementById('messagelistcontainer').innerHTML = '<img src="/view/theme/default/images/spinner.gif" id="spinner" alt="spinner" />';
|
||||
|
||||
var http = getXMLHttp();
|
||||
|
||||
if(http == null) { alert("Error creating XMLHttpRequest"); return; }
|
||||
|
||||
http.open("POST", url, true);
|
||||
|
||||
params = params + "&page=" + page;
|
||||
|
||||
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
|
||||
http.setRequestHeader("Content-length", params.length);
|
||||
http.setRequestHeader("Connection", "close");
|
||||
|
||||
|
||||
http.onreadystatechange = function() {
|
||||
if(http.readyState == 4) {
|
||||
if(http.status == 200) {
|
||||
document.getElementById('mailcontframe').innerHTML = http.responseText;
|
||||
}
|
||||
else {
|
||||
alert("Problem retrieving XML data:" + http.statusText);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
http.send(params);
|
||||
}
|
||||
|
||||
|
||||
function load_audit_results(url, params, page) {
|
||||
|
||||
document.getElementById('AS').innerHTML = '<img src="/view/theme/default/images/spinner.gif" id="spinner" alt="spinner" />';
|
||||
|
||||
var http = getXMLHttp();
|
||||
|
||||
@ -88,9 +120,6 @@ function load_search_results(url, params, page) {
|
||||
if(http.readyState == 4) {
|
||||
if(http.status == 200) {
|
||||
document.getElementById('AS').innerHTML = http.responseText;
|
||||
|
||||
$(".messagelink").colorbox({iframe:true, width:"80%", height:"80%" });
|
||||
|
||||
}
|
||||
else {
|
||||
alert("Problem retrieving XML data:" + http.statusText);
|
||||
@ -102,7 +131,30 @@ function load_search_results(url, params, page) {
|
||||
}
|
||||
|
||||
|
||||
function send_ajax_post_request(url, params, id) {
|
||||
function load_url_with_get(url, id) {
|
||||
var http = getXMLHttp();
|
||||
|
||||
if(http == null) { alert("Error creating XMLHttpRequest"); return; }
|
||||
|
||||
http.onreadystatechange = function() {
|
||||
if(http.readyState == 4) {
|
||||
if(http.status == 200){
|
||||
document.getElementById(id).innerHTML = http.responseText;
|
||||
}
|
||||
else alert("Problem retrieving XML data:" + http.statusText);
|
||||
}
|
||||
}
|
||||
|
||||
http.open("GET", url, true);
|
||||
http.send(null);
|
||||
|
||||
document.body.style.cursor = 'default';
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
function send_ajax_post_request(url, params) {
|
||||
var http = getXMLHttp();
|
||||
|
||||
if(http == null) { alert("Error creating XMLHttpRequest"); return; }
|
||||
@ -117,7 +169,6 @@ function send_ajax_post_request(url, params, id) {
|
||||
http.onreadystatechange = function() {
|
||||
if(http.readyState == 4) {
|
||||
if(http.status == 200) {
|
||||
document.getElementById(id).innerHTML = http.responseText;
|
||||
}
|
||||
else {
|
||||
alert("Problem retrieving XML data:" + http.statusText);
|
||||
@ -135,26 +186,30 @@ function add_message_reference_to_form(s) {
|
||||
}
|
||||
|
||||
|
||||
function assemble_search_term(n) {
|
||||
function assemble_search_term(n, prefix) {
|
||||
var data = '';
|
||||
var attachment_type = '';
|
||||
var e;
|
||||
var folders = '';
|
||||
|
||||
e = document.getElementById('searchtype');
|
||||
e = document.getElementById(prefix + 'searchtype');
|
||||
if(e && e.value) { data = data + "searchtype=" + e.value; }
|
||||
|
||||
e = document.getElementById('_search');
|
||||
e = document.getElementById(prefix + '_search');
|
||||
if(e && e.value) { data = data + "&search=" + e.value; }
|
||||
|
||||
e = document.getElementById('from');
|
||||
e = document.getElementById(prefix + 'from');
|
||||
if(e && e.value) { data = data + "&from=" + e.value; }
|
||||
|
||||
e = document.getElementById('to');
|
||||
e = document.getElementById(prefix + 'to');
|
||||
if(e && e.value) { data = data + "&to=" + e.value; }
|
||||
|
||||
e = document.getElementById('subject');
|
||||
e = document.getElementById(prefix + 'subject');
|
||||
if(e && e.value) { data = data + "&subject=" + e.value; }
|
||||
|
||||
e = document.getElementById(prefix + 'body');
|
||||
if(e && e.value) { data = data + "&body=" + e.value; }
|
||||
|
||||
for(i=0; i<=n; i++) {
|
||||
var a = 'key' + i;
|
||||
var b = 'val' + i;
|
||||
@ -175,10 +230,10 @@ function assemble_search_term(n) {
|
||||
e = document.getElementById('date2');
|
||||
if(e && e.value) { data = data + "&date2=" + e.value; }
|
||||
|
||||
e = document.getElementById('direction');
|
||||
e = document.getElementById(prefix + 'direction');
|
||||
if(e && e.value) { data = data + "&direction=" + e.value; }
|
||||
|
||||
e = document.getElementById('action');
|
||||
e = document.getElementById(prefix + 'action');
|
||||
if(e && e.value) { data = data + "&action=" + e.value; }
|
||||
|
||||
for(i=0; i<attachment_types.length; i++) {
|
||||
@ -188,15 +243,39 @@ function assemble_search_term(n) {
|
||||
|
||||
if(attachment_type) { data = data + "&attachment_type=" + attachment_type.substring(1,attachment_type.length); }
|
||||
|
||||
e = document.getElementById('ref');
|
||||
e = document.getElementById(prefix + 'tag');
|
||||
if(e && e.value) { data = data + "&tag=" + e.value; }
|
||||
|
||||
e = document.getElementById(prefix + 'note');
|
||||
if(e && e.value) { data = data + "¬e=" + e.value; }
|
||||
|
||||
e = document.getElementById(prefix + 'has_attachment');
|
||||
if(e && e.checked == 1) { data = data + "&has_attachment=1"; }
|
||||
|
||||
e = document.getElementById(prefix + 'ref');
|
||||
if(e && e.value) { data = data + "&ref=" + e.value; }
|
||||
|
||||
e = document.getElementById('sort');
|
||||
e = document.getElementById(prefix + 'sort');
|
||||
if(e && e.value) { data = data + "&sort=" + e.value; }
|
||||
|
||||
e = document.getElementById('order');
|
||||
e = document.getElementById(prefix + 'order');
|
||||
if(e && e.value) { data = data + "&order=" + e.value; }
|
||||
|
||||
var a = document.getElementById('folders');
|
||||
if(a) {
|
||||
for(i=0; i<a.childNodes.length; i++) {
|
||||
b = a.childNodes[i];
|
||||
if(b.name && b.name.substring(0, 7) == 'folder_' && b.checked) {
|
||||
folders = folders + "+" + b.name.substring(7);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(folders) {
|
||||
folders = folders.substring(1);
|
||||
data = data + "&folders=" + folders;
|
||||
}
|
||||
|
||||
|
||||
//alert("data: " + data);
|
||||
|
||||
@ -235,9 +314,13 @@ function reset_simple_form() {
|
||||
a = document.getElementById('date1'); a.value = '';
|
||||
a = document.getElementById('date2'); a.value = '';
|
||||
|
||||
a = document.getElementById('from'); a.value = '';
|
||||
a = document.getElementById('to'); a.value = '';
|
||||
a = document.getElementById('subject'); a.value = '';
|
||||
a = document.getElementById('xfrom'); a.value = '';
|
||||
a = document.getElementById('xto'); a.value = '';
|
||||
a = document.getElementById('xsubject'); a.value = '';
|
||||
a = document.getElementById('xbody'); a.value = '';
|
||||
a = document.getElementById('xtag'); a.value = '';
|
||||
a = document.getElementById('xnote'); a.value = '';
|
||||
a = document.getElementById('xhas_attachment'); a.checked = 0;
|
||||
|
||||
a = document.getElementById('ref');
|
||||
if(a) { a.value = ''; }
|
||||
@ -356,13 +439,12 @@ function removeme(id) {
|
||||
|
||||
|
||||
function tag_search_results(url){
|
||||
var idlist = '';
|
||||
var idlist = assemble_idlist();
|
||||
|
||||
var tag_keys = document.getElementById('tag_keys').value;
|
||||
var tag_value = document.getElementById('tag_value').value;
|
||||
|
||||
if(tag_keys) {
|
||||
params = "idlist=" + tag_keys + "&tag=" + encodeURI(tag_value);
|
||||
if(idlist) {
|
||||
params = "idlist=" + idlist + "&tag=" + encodeURI(tag_value);
|
||||
|
||||
var http = getXMLHttp();
|
||||
|
||||
@ -420,8 +502,6 @@ function restore_selected_emails(url) {
|
||||
|
||||
if(http == null) { alert("Error creating XMLHttpRequest"); return; }
|
||||
|
||||
document.getElementById('A1').innerHTML = '<div class="restore_spinner"><img src="/view/theme/default/images/spinner.gif" id="spinner_restore" alt="spinner" /></div>';
|
||||
|
||||
http.open("POST", url, true);
|
||||
|
||||
params = "idlist=" + idlist + "&download=0";
|
||||
@ -434,7 +514,6 @@ function restore_selected_emails(url) {
|
||||
http.onreadystatechange = function() {
|
||||
if(http.readyState == 4) {
|
||||
if(http.status == 200) {
|
||||
document.getElementById('A1').innerHTML = http.responseText;
|
||||
}
|
||||
else {
|
||||
alert("Problem retrieving XML data:" + http.statusText);
|
||||
@ -526,10 +605,6 @@ $(document).ready(function() {
|
||||
$("#date1").datepicker( { dateFormat: 'yy-mm-dd' } );
|
||||
$("#date2").datepicker( { dateFormat: 'yy-mm-dd' } );
|
||||
|
||||
|
||||
$(".messagelink").colorbox({iframe:true, width:"80%", height:"80%" });
|
||||
$(".savedsearch").colorbox({iframe:true, width:"400px", height:"300px", top:"50px", left:"50%"});
|
||||
|
||||
});
|
||||
|
||||
|
||||
@ -570,6 +645,23 @@ $(document).ready(function() {
|
||||
}
|
||||
});
|
||||
|
||||
$("#s_piler_folder").autocomplete({
|
||||
source: folder_search_url,
|
||||
minLength: 2,
|
||||
select: function( event, ui ) {
|
||||
if(ui.item){
|
||||
var prefix = '\n';
|
||||
var a = document.getElementById("folder");
|
||||
|
||||
if(a && a.value == '') prefix = '';
|
||||
|
||||
$('#folder').val($('#folder').val() + prefix + ui.item.value);
|
||||
}
|
||||
|
||||
ui.item.value = '';
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
@ -585,3 +677,10 @@ function toggle_hint(id, s, focus) {
|
||||
}
|
||||
|
||||
|
||||
function show_message(id, msg, timeout){
|
||||
document.getElementById(id).innerHTML = msg;
|
||||
document.getElementById(id).style.display = '';
|
||||
setTimeout(function() { document.getElementById(id).style.display = 'none'; }, timeout*1000);
|
||||
}
|
||||
|
||||
|
||||
|
188
webui/view/javascript/rc1.js
Normal file
@ -0,0 +1,188 @@
|
||||
function roundcube_browser() {
|
||||
var a = navigator;
|
||||
this.ver = parseFloat(a.appVersion);
|
||||
this.appver = a.appVersion;
|
||||
this.agent = a.userAgent;
|
||||
this.agent_lc = a.userAgent.toLowerCase();
|
||||
this.name = a.appName;
|
||||
this.vendor = a.vendor ? a.vendor : "";
|
||||
this.vendver = a.vendorSub ? parseFloat(a.vendorSub) : 0;
|
||||
this.product = a.product ? a.product : "";
|
||||
this.platform = String(a.platform).toLowerCase();
|
||||
this.lang = a.language ? a.language.substring(0, 2) : a.browserLanguage ? a.browserLanguage.substring(0, 2) : a.systemLanguage ? a.systemLanguage.substring(0, 2) : "en";
|
||||
this.win = this.platform.indexOf("win") >= 0;
|
||||
this.mac = this.platform.indexOf("mac") >= 0;
|
||||
this.linux = this.platform.indexOf("linux") >= 0;
|
||||
this.unix = this.platform.indexOf("unix") >= 0;
|
||||
this.dom = document.getElementById ? !0 : !1;
|
||||
this.dom2 = document.addEventListener && document.removeEventListener;
|
||||
this.ie4 = (this.ie = document.all && !window.opera) && !this.dom;
|
||||
this.ie5 = this.dom && this.appver.indexOf("MSIE 5") > 0;
|
||||
this.ie8 = this.dom && this.appver.indexOf("MSIE 8") > 0;
|
||||
this.ie7 = this.dom && this.appver.indexOf("MSIE 7") > 0;
|
||||
this.ie6 = this.dom && !this.ie8 && !this.ie7 && this.appver.indexOf("MSIE 6") > 0;
|
||||
this.mz = this.dom && this.ver >= 5;
|
||||
this.ns6 = (this.ns = this.ver < 5 && this.name == "Netscape" || this.ver >= 5 && this.vendor.indexOf("Netscape") >= 0) && parseInt(this.vendver) == 6;
|
||||
this.ns7 = this.ns && parseInt(this.vendver) == 7;
|
||||
this.chrome = this.agent_lc.indexOf("chrome") > 0;
|
||||
this.safari = !this.chrome && (this.agent_lc.indexOf("safari") > 0 || this.agent_lc.indexOf("applewebkit") > 0);
|
||||
this.konq = this.agent_lc.indexOf("konqueror") > 0;
|
||||
this.iphone = this.safari && this.agent_lc.indexOf("iphone") > 0;
|
||||
this.ipad = this.safari && this.agent_lc.indexOf("ipad") > 0;
|
||||
if ((this.opera = window.opera ? !0 : !1) && window.RegExp) this.vendver = /opera(\s|\/)([0-9\.]+)/.test(this.agent_lc) ? parseFloat(RegExp.$2) : -1;
|
||||
else if (this.chrome && window.RegExp) this.vendver = /chrome\/([0-9\.]+)/.test(this.agent_lc) ? parseFloat(RegExp.$1) : 0;
|
||||
else if (!this.vendver && this.safari) this.vendver = /(safari|applewebkit)\/([0-9]+)/.test(this.agent_lc) ? parseInt(RegExp.$2) : 0;
|
||||
else if (!this.vendver && this.mz || this.agent.indexOf("Camino") > 0) this.vendver = /rv:([0-9\.]+)/.test(this.agent) ? parseFloat(RegExp.$1) : 0;
|
||||
else if (this.ie && window.RegExp) this.vendver = /msie\s+([0-9\.]+)/.test(this.agent_lc) ? parseFloat(RegExp.$1) : 0;
|
||||
else if (this.konq && window.RegExp) this.vendver = /khtml\/([0-9\.]+)/.test(this.agent_lc) ? parseFloat(RegExp.$1) : 0;
|
||||
if (this.safari && /;\s+([a-z]{2})-[a-z]{2}\)/.test(this.agent_lc)) this.lang = RegExp.$1;
|
||||
this.dhtml = this.ie4 && this.win || this.ie5 || this.ie6 || this.ns4 || this.mz;
|
||||
this.vml = this.win && this.ie && this.dom && !this.opera;
|
||||
this.pngalpha = this.mz || this.opera && this.vendver >= 6 || this.ie && this.mac && this.vendver >= 5 || this.ie && this.win && this.vendver >= 5.5 || this.safari;
|
||||
this.opacity = this.mz || this.ie && this.vendver >= 5.5 && !this.opera || this.safari && this.vendver >= 100;
|
||||
this.cookies = a.cookieEnabled;
|
||||
this.xmlhttp_test = function () {
|
||||
var a = new Function("try{var o=new ActiveXObject('Microsoft.XMLHTTP');return true;}catch(err){return false;}");
|
||||
return this.xmlhttp = window.XMLHttpRequest || window.ActiveXObject && a()
|
||||
};
|
||||
this.set_html_class = function () {
|
||||
var a = " js";
|
||||
this.ie ? (a += " ie", this.ie5 ? a += " ie5" : this.ie6 ? a += " ie6" : this.ie7 ? a += " ie7" : this.ie8 && (a += " ie8")) : this.opera ? a += " opera" : this.konq ? a += " konqueror" : this.safari && (a += " safari");
|
||||
this.chrome ? a += " chrome" : this.iphone ? a += " iphone" : this.ipad ? a += " ipad" : this.ns6 ? a += " netscape6" : this.ns7 && (a += " netscape7");
|
||||
document.documentElement && (document.documentElement.className += a)
|
||||
}
|
||||
}
|
||||
|
||||
function rcube_layer(a, b) {
|
||||
this.name = a;
|
||||
this.create = function (c) {
|
||||
var b = c.x ? c.x : 0,
|
||||
e = c.y ? c.y : 0,
|
||||
f = c.width,
|
||||
g = c.height,
|
||||
i = c.zindex,
|
||||
j = c.vis,
|
||||
c = c.parent,
|
||||
h = document.createElement("DIV");
|
||||
with(h) {
|
||||
a = this.name;
|
||||
with(style) position = "absolute", visibility = j ? j == 2 ? "inherit" : "visible" : "hidden", left = b + "px", top = e + "px", f && (width = f.toString().match(/\%$/) ? f : f + "px"), g && (height = g.toString().match(/\%$/) ? g : g + "px"), i && (zIndex = i)
|
||||
}
|
||||
c ? c.appendChild(h) : document.body.appendChild(h);
|
||||
this.elm = h
|
||||
};
|
||||
b != null ? (this.create(b), this.name = this.elm.id) : this.elm = document.getElementById(a);
|
||||
if (!this.elm) return !1;
|
||||
this.css = this.elm.style;
|
||||
this.event = this.elm;
|
||||
this.width = this.elm.offsetWidth;
|
||||
this.height = this.elm.offsetHeight;
|
||||
this.x = parseInt(this.elm.offsetLeft);
|
||||
this.y = parseInt(this.elm.offsetTop);
|
||||
this.visible = this.css.visibility == "visible" || this.css.visibility == "show" || this.css.visibility == "inherit" ? !0 : !1;
|
||||
this.move = function (a, b) {
|
||||
this.x = a;
|
||||
this.y = b;
|
||||
this.css.left = Math.round(this.x) + "px";
|
||||
this.css.top = Math.round(this.y) + "px"
|
||||
};
|
||||
this.resize = function (a, b) {
|
||||
this.css.width = a + "px";
|
||||
this.css.height = b + "px";
|
||||
this.width = a;
|
||||
this.height = b
|
||||
};
|
||||
this.show = function (a) {
|
||||
a == 1 ? (this.css.visibility = "visible", this.visible = !0) : a == 2 ? (this.css.visibility = "inherit", this.visible = !0) : (this.css.visibility = "hidden", this.visible = !1)
|
||||
};
|
||||
this.write = function (a) {
|
||||
this.elm.innerHTML = a
|
||||
}
|
||||
}
|
||||
|
||||
var rcube_event = {
|
||||
get_target: function (a) {
|
||||
return (a = a || window.event) && a.target ? a.target : a.srcElement
|
||||
},
|
||||
get_keycode: function (a) {
|
||||
return (a = a || window.event) && a.keyCode ? a.keyCode : a && a.which ? a.which : 0
|
||||
},
|
||||
get_button: function (a) {
|
||||
return (a = a || window.event) && typeof a.button != "undefined" ? a.button : a && a.which ? a.which : 0
|
||||
},
|
||||
get_modifier: function (a) {
|
||||
var b = 0,
|
||||
a = a || window.event;
|
||||
if (bw.mac && a) return b += (a.metaKey && CONTROL_KEY) + (a.shiftKey && SHIFT_KEY), b;
|
||||
if (a) return b += (a.ctrlKey && CONTROL_KEY) + (a.shiftKey && SHIFT_KEY), b
|
||||
},
|
||||
get_mouse_pos: function (a) {
|
||||
if (!a) a = window.event;
|
||||
var b = a.pageX ? a.pageX : a.clientX,
|
||||
c = a.pageY ? a.pageY : a.clientY;
|
||||
document.body && document.all && (b += document.body.scrollLeft, c += document.body.scrollTop);
|
||||
a._offset && (b += a._offset.left, c += a._offset.top);
|
||||
return {
|
||||
x: b,
|
||||
y: c
|
||||
}
|
||||
},
|
||||
add_listener: function (a) {
|
||||
if (a.object && a.method) {
|
||||
if (!a.element) a.element = document;
|
||||
if (!a.object._rc_events) a.object._rc_events = [];
|
||||
var b = a.event + "*" + a.method;
|
||||
a.object._rc_events[b] || (a.object._rc_events[b] = function (c) {
|
||||
return a.object[a.method](c)
|
||||
});
|
||||
a.element.addEventListener ? a.element.addEventListener(a.event,
|
||||
a.object._rc_events[b], !1) : a.element.attachEvent ? (a.element.detachEvent("on" + a.event, a.object._rc_events[b]), a.element.attachEvent("on" + a.event, a.object._rc_events[b])) : a.element["on" + a.event] = a.object._rc_events[b]
|
||||
}
|
||||
},
|
||||
remove_listener: function (a) {
|
||||
if (!a.element) a.element = document;
|
||||
var b = a.event + "*" + a.method;
|
||||
a.object && a.object._rc_events && a.object._rc_events[b] && (a.element.removeEventListener ? a.element.removeEventListener(a.event, a.object._rc_events[b], !1) : a.element.detachEvent ? a.element.detachEvent("on" + a.event, a.object._rc_events[b]) : a.element["on" + a.event] = null)
|
||||
},
|
||||
cancel: function (a) {
|
||||
a = a ? a : window.event;
|
||||
a.preventDefault && a.preventDefault();
|
||||
a.stopPropagation && a.stopPropagation();
|
||||
a.cancelBubble = !0;
|
||||
return a.returnValue = !1
|
||||
},
|
||||
touchevent: function (a) {
|
||||
return {
|
||||
pageX: a.pageX,
|
||||
pageY: a.pageY,
|
||||
offsetX: a.pageX - a.target.offsetLeft,
|
||||
offsetY: a.pageY - a.target.offsetTop,
|
||||
target: a.target,
|
||||
istouch: !0
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
function setCookie(a, b, c, d, e, f) {
|
||||
a = a + "=" + escape(b) + (c ? "; expires=" + c.toGMTString() : "") + (d ? "; path=" + d : "") + (e ? "; domain=" + e : "") + (f ? "; secure" : "");
|
||||
document.cookie = a
|
||||
}
|
||||
|
||||
function getCookie(a) {
|
||||
var b = document.cookie;
|
||||
a += "=";
|
||||
var c = b.indexOf("; " + a);
|
||||
if (c == -1) {
|
||||
if (c = b.indexOf(a), c != 0) return null
|
||||
} else c += 2;
|
||||
var d = document.cookie.indexOf(";", c);
|
||||
if (d == -1) d = b.length;
|
||||
return unescape(b.substring(c + a.length, d))
|
||||
}
|
||||
|
||||
|
||||
var bw = new roundcube_browser;
|
||||
|
||||
roundcube_browser.prototype.set_cookie = setCookie;
|
||||
roundcube_browser.prototype.get_cookie = getCookie;
|
||||
|
87
webui/view/javascript/rc2.js
Normal file
@ -0,0 +1,87 @@
|
||||
function rcube_webmail() {
|
||||
this.env = {};
|
||||
this.labels = {};
|
||||
this.buttons = {};
|
||||
this.buttons_sel = {};
|
||||
this.gui_objects = {};
|
||||
this.gui_containers = {};
|
||||
this.commands = {};
|
||||
this.command_handlers = {};
|
||||
this.onloads = [];
|
||||
this.messages = {};
|
||||
this.ref = "rcmail";
|
||||
var j = this;
|
||||
this.dblclick_time = 500;
|
||||
this.message_time = 2E3;
|
||||
this.identifier_expr = RegExp("[^0-9a-z-_]", "gi");
|
||||
this.mimetypes = "text/plain,text/html,text/xml,image/jpeg,image/gif,image/png,application/x-javascript,application/pdf,application/x-shockwave-flash".split(",");
|
||||
this.env.keep_alive = 60;
|
||||
this.env.request_timeout = 180;
|
||||
this.env.draft_autosave = 0;
|
||||
this.env.comm_path = "./";
|
||||
this.env.blankpage = "program/blank.gif";
|
||||
$.ajaxSetup({
|
||||
cache: !1,
|
||||
error: function (a, b, d) {
|
||||
j.http_error(a, b, d)
|
||||
},
|
||||
beforeSend: function (a) {
|
||||
a.setRequestHeader("X-Roundcube-Request", j.env.request_token)
|
||||
}
|
||||
});
|
||||
this.set_env = function (a, b) {
|
||||
if (a != null && typeof a == "object" && !b) for (var d in a) this.env[d] = a[d];
|
||||
else this.env[a] = b
|
||||
};
|
||||
this.add_label = function (a, b) {
|
||||
this.labels[a] = b
|
||||
};
|
||||
this.register_button = function (a, b, d, e, f, g) {
|
||||
this.buttons[a] || (this.buttons[a] = []);
|
||||
b = {
|
||||
id: b,
|
||||
type: d
|
||||
};
|
||||
if (e) b.act = e;
|
||||
if (f) b.sel = f;
|
||||
if (g) b.over = g;
|
||||
this.buttons[a].push(b)
|
||||
};
|
||||
this.gui_object = function (a, b) {
|
||||
this.gui_objects[a] = b
|
||||
};
|
||||
this.gui_container = function (a, b) {
|
||||
this.gui_containers[a] = b
|
||||
};
|
||||
this.add_element = function (a, b) {
|
||||
this.gui_containers[b] && this.gui_containers[b].jquery && this.gui_containers[b].append(a)
|
||||
};
|
||||
this.register_command = function (a, b, d) {
|
||||
this.command_handlers[a] = b;
|
||||
d && this.enable_command(a, !0)
|
||||
};
|
||||
this.add_onload = function (a) {
|
||||
this.onloads.push(a)
|
||||
};
|
||||
this.init = function () {
|
||||
var a = this;
|
||||
this.task = this.env.task;
|
||||
if (!bw.dom || !bw.xmlhttp_test()) this.goto_url("error", "_code=0x199");
|
||||
else {
|
||||
for (var b in this.gui_containers) this.gui_containers[b] = $("#" + this.gui_containers[b]);
|
||||
for (b in this.gui_objects) this.gui_objects[b] = rcube_find_object(this.gui_objects[b]);
|
||||
|
||||
this.loaded = !0;
|
||||
this.pending_message && this.display_message(this.pending_message[0], this.pending_message[1]);
|
||||
if (this.gui_objects.folderlist) this.gui_containers.foldertray = $(this.gui_objects.folderlist);
|
||||
/*this.triggerEvent("init", {
|
||||
task: this.task,
|
||||
action: this.env.action
|
||||
});*/
|
||||
for (var d in this.onloads) if (typeof this.onloads[d] == "string") eval(this.onloads[d]);
|
||||
else if (typeof this.onloads[d] == "function") this.onloads[d]();
|
||||
//this.start_keepalive()
|
||||
}
|
||||
};
|
||||
|
||||
}
|
199
webui/view/javascript/splitter.js
Normal file
@ -0,0 +1,199 @@
|
||||
|
||||
/**
|
||||
* Roundcube splitter GUI class
|
||||
*
|
||||
* @constructor
|
||||
*/
|
||||
function rcube_splitter(attrib)
|
||||
{
|
||||
this.p1id = attrib.p1;
|
||||
this.p2id = attrib.p2;
|
||||
this.id = attrib.id ? attrib.id : this.p1id + '_' + this.p2id + '_splitter';
|
||||
this.orientation = attrib.orientation;
|
||||
this.horizontal = (this.orientation == 'horizontal' || this.orientation == 'h');
|
||||
this.offset = bw.ie6 ? 2 : 0;
|
||||
this.pos = attrib.start ? attrib.start * 1 : 0;
|
||||
this.relative = attrib.relative ? true : false;
|
||||
this.drag_active = false;
|
||||
|
||||
this.init = function()
|
||||
{
|
||||
this.p1 = document.getElementById(this.p1id);
|
||||
this.p2 = document.getElementById(this.p2id);
|
||||
|
||||
// create and position the handle for this splitter
|
||||
this.p1pos = this.relative ? $(this.p1).position() : $(this.p1).offset();
|
||||
this.p2pos = this.relative ? $(this.p2).position() : $(this.p2).offset();
|
||||
|
||||
if (this.horizontal) {
|
||||
var top = this.p1pos.top + this.p1.offsetHeight;
|
||||
this.layer = new rcube_layer(this.id, {x: 0, y: top, height: 10,
|
||||
width: '100%', vis: 1, parent: this.p1.parentNode});
|
||||
}
|
||||
else {
|
||||
var left = this.p1pos.left + this.p1.offsetWidth;
|
||||
this.layer = new rcube_layer(this.id, {x: left, y: 0, width: 10,
|
||||
height: '100%', vis: 1, parent: this.p1.parentNode});
|
||||
}
|
||||
|
||||
this.elm = this.layer.elm;
|
||||
this.elm.className = 'splitter '+(this.horizontal ? 'splitter-h' : 'splitter-v');
|
||||
this.elm.unselectable = 'on';
|
||||
|
||||
// add the mouse event listeners
|
||||
rcube_event.add_listener({element: this.elm, event:'mousedown', object:this, method:'onDragStart'});
|
||||
if (bw.ie)
|
||||
rcube_event.add_listener({element: window, event:'resize', object:this, method:'onResize'});
|
||||
|
||||
// read saved position from cookie
|
||||
var cookie = bw.get_cookie(this.id);
|
||||
if (cookie && !isNaN(cookie)) {
|
||||
this.pos = parseFloat(cookie);
|
||||
this.resize();
|
||||
}
|
||||
else if (this.pos) {
|
||||
this.resize();
|
||||
this.set_cookie();
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Set size and position of all DOM objects
|
||||
* according to the saved splitter position
|
||||
*/
|
||||
this.resize = function()
|
||||
{
|
||||
if (this.horizontal) {
|
||||
var lh = this.layer.height - this.offset * 2;
|
||||
this.p1.style.height = Math.floor(this.pos - this.p1pos.top - lh / 2) + 'px';
|
||||
this.p2.style.top = Math.ceil(this.pos + lh / 2) + 'px';
|
||||
this.layer.move(this.layer.x, Math.round(this.pos - lh / 2 + 1));
|
||||
if (bw.ie) {
|
||||
var new_height = parseInt(this.p2.parentNode.offsetHeight, 10) - parseInt(this.p2.style.top, 10) - (bw.ie8 ? 2 : 0);
|
||||
this.p2.style.height = (new_height > 0 ? new_height : 0) + 'px';
|
||||
}
|
||||
}
|
||||
else {
|
||||
this.p1.style.width = Math.floor(this.pos - this.p1pos.left - this.layer.width / 2) + 'px';
|
||||
this.p2.style.left = Math.ceil(this.pos + this.layer.width / 2) + 'px';
|
||||
this.layer.move(Math.round(this.pos - this.layer.width / 2 + 1), this.layer.y);
|
||||
if (bw.ie) {
|
||||
var new_width = parseInt(this.p2.parentNode.offsetWidth, 10) - parseInt(this.p2.style.left, 10) ;
|
||||
this.p2.style.width = (new_width > 0 ? new_width : 0) + 'px';
|
||||
}
|
||||
}
|
||||
$(this.p2).resize();
|
||||
$(this.p1).resize();
|
||||
};
|
||||
|
||||
/**
|
||||
* Handler for mousedown events
|
||||
*/
|
||||
this.onDragStart = function(e)
|
||||
{
|
||||
// disable text selection while dragging the splitter
|
||||
if (bw.konq || bw.chrome || bw.safari)
|
||||
document.body.style.webkitUserSelect = 'none';
|
||||
|
||||
this.p1pos = this.relative ? $(this.p1).position() : $(this.p1).offset();
|
||||
this.p2pos = this.relative ? $(this.p2).position() : $(this.p2).offset();
|
||||
this.drag_active = true;
|
||||
|
||||
// start listening to mousemove events
|
||||
rcube_event.add_listener({element:document, event:'mousemove', object:this, method:'onDrag'});
|
||||
rcube_event.add_listener({element:document, event:'mouseup', object:this, method:'onDragStop'});
|
||||
|
||||
// enable dragging above iframes
|
||||
$('iframe').each(function() {
|
||||
$('<div class="iframe-splitter-fix"></div>')
|
||||
.css({background: '#fff',
|
||||
width: this.offsetWidth+'px', height: this.offsetHeight+'px',
|
||||
position: 'absolute', opacity: '0.001', zIndex: 1000
|
||||
})
|
||||
.css($(this).offset())
|
||||
.appendTo('body');
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Handler for mousemove events
|
||||
*/
|
||||
this.onDrag = function(e)
|
||||
{
|
||||
if (!this.drag_active)
|
||||
return false;
|
||||
|
||||
var pos = rcube_event.get_mouse_pos(e);
|
||||
|
||||
if (this.relative) {
|
||||
var parent = $(this.p1.parentNode).offset();
|
||||
pos.x -= parent.left;
|
||||
pos.y -= parent.top;
|
||||
}
|
||||
|
||||
if (this.horizontal) {
|
||||
if (((pos.y - this.layer.height * 1.5) > this.p1pos.top) && ((pos.y + this.layer.height * 1.5) < (this.p2pos.top + this.p2.offsetHeight))) {
|
||||
this.pos = pos.y;
|
||||
this.resize();
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (((pos.x - this.layer.width * 1.5) > this.p1pos.left) && ((pos.x + this.layer.width * 1.5) < (this.p2pos.left + this.p2.offsetWidth))) {
|
||||
this.pos = pos.x;
|
||||
this.resize();
|
||||
}
|
||||
}
|
||||
|
||||
this.p1pos = this.relative ? $(this.p1).position() : $(this.p1).offset();
|
||||
this.p2pos = this.relative ? $(this.p2).position() : $(this.p2).offset();
|
||||
return false;
|
||||
};
|
||||
|
||||
/**
|
||||
* Handler for mouseup events
|
||||
*/
|
||||
this.onDragStop = function(e)
|
||||
{
|
||||
// resume the ability to highlight text
|
||||
if (bw.konq || bw.chrome || bw.safari)
|
||||
document.body.style.webkitUserSelect = 'auto';
|
||||
|
||||
// cancel the listening for drag events
|
||||
rcube_event.remove_listener({element:document, event:'mousemove', object:this, method:'onDrag'});
|
||||
rcube_event.remove_listener({element:document, event:'mouseup', object:this, method:'onDragStop'});
|
||||
this.drag_active = false;
|
||||
|
||||
// remove temp divs
|
||||
$('div.iframe-splitter-fix').each(function() { this.parentNode.removeChild(this); });
|
||||
|
||||
this.set_cookie();
|
||||
|
||||
return bw.safari ? true : rcube_event.cancel(e);
|
||||
};
|
||||
|
||||
/**
|
||||
* Handler for window resize events
|
||||
*/
|
||||
this.onResize = function(e)
|
||||
{
|
||||
if (this.horizontal) {
|
||||
var new_height = parseInt(this.p2.parentNode.offsetHeight, 10) - parseInt(this.p2.style.top, 10) - (bw.ie8 ? 2 : 0);
|
||||
this.p2.style.height = (new_height > 0 ? new_height : 0) +'px';
|
||||
}
|
||||
else {
|
||||
var new_width = parseInt(this.p2.parentNode.offsetWidth, 10) - parseInt(this.p2.style.left, 10);
|
||||
this.p2.style.width = (new_width > 0 ? new_width : 0) + 'px';
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Saves splitter position in cookie
|
||||
*/
|
||||
this.set_cookie = function()
|
||||
{
|
||||
var exp = new Date();
|
||||
exp.setYear(exp.getFullYear() + 1);
|
||||
bw.set_cookie(this.id, this.pos, exp);
|
||||
};
|
||||
|
||||
} // end class rcube_splitter
|
@ -1,221 +0,0 @@
|
||||
/*
|
||||
tip_balloon.js v. 1.81
|
||||
|
||||
The latest version is available at
|
||||
http://www.walterzorn.com
|
||||
or http://www.devira.com
|
||||
or http://www.walterzorn.de
|
||||
|
||||
Initial author: Walter Zorn
|
||||
Last modified: 2.2.2009
|
||||
|
||||
Extension for the tooltip library wz_tooltip.js.
|
||||
Implements balloon tooltips.
|
||||
*/
|
||||
|
||||
// Make sure that the core file wz_tooltip.js is included first
|
||||
if(typeof config == "undefined")
|
||||
alert("Error:\nThe core tooltip script file 'wz_tooltip.js' must be included first, before the plugin files!");
|
||||
|
||||
// Here we define new global configuration variable(s) (as members of the
|
||||
// predefined "config." class).
|
||||
// From each of these config variables, wz_tooltip.js will automatically derive
|
||||
// a command which can be passed to Tip() or TagToTip() in order to customize
|
||||
// tooltips individually. These command names are just the config variable
|
||||
// name(s) translated to uppercase,
|
||||
// e.g. from config. Balloon a command BALLOON will automatically be
|
||||
// created.
|
||||
|
||||
//=================== GLOBAL TOOLTIP CONFIGURATION =========================//
|
||||
config. Balloon = false // true or false - set to true if you want this to be the default behaviour
|
||||
config. BalloonImgPath = "view/javascript/tip_balloon/" // Path to images (border, corners, stem), in quotes. Path must be relative to your HTML file.
|
||||
// Sizes of balloon images
|
||||
config. BalloonEdgeSize = 6 // Integer - sidelength of quadratic corner images
|
||||
config. BalloonStemWidth = 15 // Integer
|
||||
config. BalloonStemHeight = 19 // Integer
|
||||
config. BalloonStemOffset = -7 // Integer - horizontal offset of left stem edge from mouse (recommended: -stemwidth/2 to center the stem above the mouse)
|
||||
config. BalloonImgExt = "gif";// File name extension of default balloon images, e.g. "gif" or "png"
|
||||
//======= END OF TOOLTIP CONFIG, DO NOT CHANGE ANYTHING BELOW ==============//
|
||||
|
||||
|
||||
// Create a new tt_Extension object (make sure that the name of that object,
|
||||
// here balloon, is unique amongst the extensions available for wz_tooltips.js):
|
||||
var balloon = new tt_Extension();
|
||||
|
||||
// Implement extension eventhandlers on which our extension should react
|
||||
|
||||
balloon.OnLoadConfig = function()
|
||||
{
|
||||
if(tt_aV[BALLOON])
|
||||
{
|
||||
// Turn off native style properties which are not appropriate
|
||||
balloon.padding = Math.max(tt_aV[PADDING] - tt_aV[BALLOONEDGESIZE], 0);
|
||||
balloon.width = tt_aV[WIDTH];
|
||||
//if(tt_bBoxOld)
|
||||
// balloon.width += (balloon.padding << 1);
|
||||
tt_aV[BORDERWIDTH] = 0;
|
||||
tt_aV[WIDTH] = 0;
|
||||
tt_aV[PADDING] = 0;
|
||||
tt_aV[BGCOLOR] = "";
|
||||
tt_aV[BGIMG] = "";
|
||||
tt_aV[SHADOW] = false;
|
||||
// Append slash to img path if missing
|
||||
if(tt_aV[BALLOONIMGPATH].charAt(tt_aV[BALLOONIMGPATH].length - 1) != '/')
|
||||
tt_aV[BALLOONIMGPATH] += "/";
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
};
|
||||
balloon.OnCreateContentString = function()
|
||||
{
|
||||
if(!tt_aV[BALLOON])
|
||||
return false;
|
||||
|
||||
var aImg, sImgZ, sCssCrn, sVaT, sVaB, sCss0;
|
||||
|
||||
// Cache balloon images in advance:
|
||||
// Either use the pre-cached default images...
|
||||
if(tt_aV[BALLOONIMGPATH] == config.BalloonImgPath)
|
||||
aImg = balloon.aDefImg;
|
||||
// ...or load images from different directory
|
||||
else
|
||||
aImg = Balloon_CacheImgs(tt_aV[BALLOONIMGPATH], tt_aV[BALLOONIMGEXT]);
|
||||
sCss0 = 'padding:0;margin:0;border:0;line-height:0;overflow:hidden;';
|
||||
sCssCrn = ' style="position:relative;width:' + tt_aV[BALLOONEDGESIZE] + 'px;' + sCss0 + 'overflow:hidden;';
|
||||
sVaT = 'vertical-align:top;" valign="top"';
|
||||
sVaB = 'vertical-align:bottom;" valign="bottom"';
|
||||
sImgZ = '" style="' + sCss0 + '" />';
|
||||
|
||||
tt_sContent = '<table border="0" cellpadding="0" cellspacing="0" style="width:auto;padding:0;margin:0;left:0;top:0;"><tr>'
|
||||
// Left-top corner
|
||||
+ '<td' + sCssCrn + sVaB + '>'
|
||||
+ '<img src="' + aImg[1].src + '" width="' + tt_aV[BALLOONEDGESIZE] + '" height="' + tt_aV[BALLOONEDGESIZE] + sImgZ
|
||||
+ '</td>'
|
||||
// Top border
|
||||
+ '<td valign="bottom" style="position:relative;' + sCss0 + '">'
|
||||
+ '<img id="bALlOOnT" style="position:relative;top:1px;z-index:1;display:none;' + sCss0 + '" src="' + aImg[9].src + '" width="' + tt_aV[BALLOONSTEMWIDTH] + '" height="' + tt_aV[BALLOONSTEMHEIGHT] + '" />'
|
||||
+ '<div style="position:relative;z-index:0;top:0;' + sCss0 + 'width:auto;height:' + tt_aV[BALLOONEDGESIZE] + 'px;background-image:url(' + aImg[2].src + ');">'
|
||||
+ '</div>'
|
||||
+ '</td>'
|
||||
// Right-top corner
|
||||
+ '<td' + sCssCrn + sVaB + '>'
|
||||
+ '<img src="' + aImg[3].src + '" width="' + tt_aV[BALLOONEDGESIZE] + '" height="' + tt_aV[BALLOONEDGESIZE] + sImgZ
|
||||
+ '</td>'
|
||||
+ '</tr><tr>'
|
||||
// Left border (background-repeat fix courtesy Dirk Schnitzler)
|
||||
+ '<td style="position:relative;background-repeat:repeat;' + sCss0 + 'width:' + tt_aV[BALLOONEDGESIZE] + 'px;background-image:url(' + aImg[8].src + ');">'
|
||||
// Redundant image for bugous old Geckos which won't auto-expand TD height to 100%
|
||||
+ '<img width="' + tt_aV[BALLOONEDGESIZE] + '" height="100%" src="' + aImg[8].src + sImgZ
|
||||
+ '</td>'
|
||||
// Content
|
||||
+ '<td id="bALlO0nBdY" style="position:relative;line-height:normal;background-repeat:repeat;'
|
||||
+ ';background-image:url(' + aImg[0].src + ')'
|
||||
+ ';color:' + tt_aV[FONTCOLOR]
|
||||
+ ';font-family:' + tt_aV[FONTFACE]
|
||||
+ ';font-size:' + tt_aV[FONTSIZE]
|
||||
+ ';font-weight:' + tt_aV[FONTWEIGHT]
|
||||
+ ';text-align:' + tt_aV[TEXTALIGN]
|
||||
+ ';padding:' + balloon.padding + 'px'
|
||||
+ ';width:' + ((balloon.width > 0) ? (balloon.width + 'px') : 'auto')
|
||||
+ ';">' + tt_sContent + '</td>'
|
||||
// Right border
|
||||
+ '<td style="position:relative;background-repeat:repeat;' + sCss0 + 'width:' + tt_aV[BALLOONEDGESIZE] + 'px;background-image:url(' + aImg[4].src + ');">'
|
||||
// Image redundancy for bugous old Geckos that won't auto-expand TD height to 100%
|
||||
+ '<img width="' + tt_aV[BALLOONEDGESIZE] + '" height="100%" src="' + aImg[4].src + sImgZ
|
||||
+ '</td>'
|
||||
+ '</tr><tr>'
|
||||
// Left-bottom corner
|
||||
+ '<td' + sCssCrn + sVaT + '>'
|
||||
+ '<img src="' + aImg[7].src + '" width="' + tt_aV[BALLOONEDGESIZE] + '" height="' + tt_aV[BALLOONEDGESIZE] + sImgZ
|
||||
+ '</td>'
|
||||
// Bottom border
|
||||
+ '<td valign="top" style="position:relative;' + sCss0 + '">'
|
||||
+ '<div style="position:relative;left:0;top:0;' + sCss0 + 'width:auto;height:' + tt_aV[BALLOONEDGESIZE] + 'px;background-image:url(' + aImg[6].src + ');"></div>'
|
||||
+ '<img id="bALlOOnB" style="position:relative;top:-1px;left:2px;z-index:1;display:none;' + sCss0 + '" src="' + aImg[10].src + '" width="' + tt_aV[BALLOONSTEMWIDTH] + '" height="' + tt_aV[BALLOONSTEMHEIGHT] + '" />'
|
||||
+ '</td>'
|
||||
// Right-bottom corner
|
||||
+ '<td' + sCssCrn + sVaT + '>'
|
||||
+ '<img src="' + aImg[5].src + '" width="' + tt_aV[BALLOONEDGESIZE] + '" height="' + tt_aV[BALLOONEDGESIZE] + sImgZ
|
||||
+ '</td>'
|
||||
+ '</tr></table>';//alert(tt_sContent);
|
||||
return true;
|
||||
};
|
||||
balloon.OnSubDivsCreated = function()
|
||||
{
|
||||
if(tt_aV[BALLOON])
|
||||
{
|
||||
var bdy = tt_GetElt("bALlO0nBdY");
|
||||
|
||||
// Insert a TagToTip() HTML element into the central body TD
|
||||
if (tt_t2t && !tt_aV[COPYCONTENT] && bdy)
|
||||
tt_MovDomNode(tt_t2t, tt_GetDad(tt_t2t), bdy);
|
||||
balloon.iStem = tt_aV[ABOVE] * 1;
|
||||
balloon.aStem = [tt_GetElt("bALlOOnT"), tt_GetElt("bALlOOnB")];
|
||||
balloon.aStem[balloon.iStem].style.display = "inline";
|
||||
if (balloon.width < -1)
|
||||
Balloon_MaxW(bdy);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
};
|
||||
// Display the stem appropriately
|
||||
balloon.OnMoveAfter = function()
|
||||
{
|
||||
if(tt_aV[BALLOON])
|
||||
{
|
||||
var iStem = (tt_aV[ABOVE] != tt_bJmpVert) * 1;
|
||||
|
||||
// Tooltip position vertically flipped?
|
||||
if(iStem != balloon.iStem)
|
||||
{
|
||||
// Display opposite stem
|
||||
balloon.aStem[balloon.iStem].style.display = "none";
|
||||
balloon.aStem[iStem].style.display = "inline";
|
||||
balloon.iStem = iStem;
|
||||
}
|
||||
|
||||
balloon.aStem[iStem].style.left = Balloon_CalcStemX() + "px";
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
};
|
||||
function Balloon_CalcStemX()
|
||||
{
|
||||
var x = tt_musX - tt_x + tt_aV[BALLOONSTEMOFFSET] - tt_aV[BALLOONEDGESIZE];
|
||||
return Math.max(Math.min(x, tt_w - tt_aV[BALLOONSTEMWIDTH] - (tt_aV[BALLOONEDGESIZE] << 1) - 2), 2);
|
||||
}
|
||||
function Balloon_CacheImgs(sPath, sExt)
|
||||
{
|
||||
var asImg = ["background", "lt", "t", "rt", "r", "rb", "b", "lb", "l", "stemt", "stemb"],
|
||||
n = asImg.length,
|
||||
aImg = new Array(n),
|
||||
img;
|
||||
|
||||
while(n)
|
||||
{--n;
|
||||
img = aImg[n] = new Image();
|
||||
img.src = sPath + asImg[n] + "." + sExt;
|
||||
}
|
||||
return aImg;
|
||||
}
|
||||
function Balloon_MaxW(bdy)
|
||||
{
|
||||
if (bdy)
|
||||
{
|
||||
var iAdd = tt_bBoxOld ? (balloon.padding << 1) : 0, w = tt_GetDivW(bdy);
|
||||
if (w > -balloon.width + iAdd)
|
||||
bdy.style.width = (-balloon.width + iAdd) + "px";
|
||||
}
|
||||
}
|
||||
// This mechanism pre-caches the default images specified by
|
||||
// congif.BalloonImgPath, so, whenever a balloon tip using these default images
|
||||
// is created, no further server connection is necessary.
|
||||
function Balloon_PreCacheDefImgs()
|
||||
{
|
||||
// Append slash to img path if missing
|
||||
if(config.BalloonImgPath.charAt(config.BalloonImgPath.length - 1) != '/')
|
||||
config.BalloonImgPath += "/";
|
||||
// Preload default images into array
|
||||
balloon.aDefImg = Balloon_CacheImgs(config.BalloonImgPath, config.BalloonImgExt);
|
||||
}
|
||||
Balloon_PreCacheDefImgs();
|
Before Width: | Height: | Size: 46 B |
Before Width: | Height: | Size: 43 B |
Before Width: | Height: | Size: 46 B |
Before Width: | Height: | Size: 85 B |
Before Width: | Height: | Size: 86 B |
Before Width: | Height: | Size: 46 B |
Before Width: | Height: | Size: 86 B |
Before Width: | Height: | Size: 85 B |
Before Width: | Height: | Size: 165 B |
Before Width: | Height: | Size: 167 B |
Before Width: | Height: | Size: 46 B |
@ -1,104 +0,0 @@
|
||||
/*
|
||||
tip_centerwindow.js v. 1.21
|
||||
|
||||
The latest version is available at
|
||||
http://www.walterzorn.com
|
||||
or http://www.devira.com
|
||||
or http://www.walterzorn.de
|
||||
|
||||
Initial author: Walter Zorn
|
||||
Last modified: 3.6.2008
|
||||
|
||||
Extension for the tooltip library wz_tooltip.js.
|
||||
Centers a sticky tooltip in the window's visible clientarea,
|
||||
optionally even if the window is being scrolled or resized.
|
||||
*/
|
||||
|
||||
// Make sure that the core file wz_tooltip.js is included first
|
||||
if(typeof config == "undefined")
|
||||
alert("Error:\nThe core tooltip script file 'wz_tooltip.js' must be included first, before the plugin files!");
|
||||
|
||||
// Here we define new global configuration variable(s) (as members of the
|
||||
// predefined "config." class).
|
||||
// From each of these config variables, wz_tooltip.js will automatically derive
|
||||
// a command which can be passed to Tip() or TagToTip() in order to customize
|
||||
// tooltips individually. These command names are just the config variable
|
||||
// name(s) translated to uppercase,
|
||||
// e.g. from config. CenterWindow a command CENTERWINDOW will automatically be
|
||||
// created.
|
||||
|
||||
//=================== GLOBAL TOOLTIP CONFIGURATION =========================//
|
||||
config. CenterWindow = false // true or false - set to true if you want this to be the default behaviour
|
||||
config. CenterAlways = false // true or false - recenter if window is resized or scrolled
|
||||
//======= END OF TOOLTIP CONFIG, DO NOT CHANGE ANYTHING BELOW ==============//
|
||||
|
||||
|
||||
// Create a new tt_Extension object (make sure that the name of that object,
|
||||
// here ctrwnd, is unique amongst the extensions available for
|
||||
// wz_tooltips.js):
|
||||
var ctrwnd = new tt_Extension();
|
||||
|
||||
// Implement extension eventhandlers on which our extension should react
|
||||
ctrwnd.OnLoadConfig = function()
|
||||
{
|
||||
if(tt_aV[CENTERWINDOW])
|
||||
{
|
||||
// Permit CENTERWINDOW only if the tooltip is sticky
|
||||
if(tt_aV[STICKY])
|
||||
{
|
||||
if(tt_aV[CENTERALWAYS])
|
||||
{
|
||||
// IE doesn't support style.position "fixed"
|
||||
if(tt_ie)
|
||||
tt_AddEvtFnc(window, "scroll", Ctrwnd_DoCenter);
|
||||
else
|
||||
tt_aElt[0].style.position = "fixed";
|
||||
tt_AddEvtFnc(window, "resize", Ctrwnd_DoCenter);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
tt_aV[CENTERWINDOW] = false;
|
||||
}
|
||||
return false;
|
||||
};
|
||||
// We react on the first OnMouseMove event to center the tip on that occasion
|
||||
ctrwnd.OnMoveBefore = Ctrwnd_DoCenter;
|
||||
ctrwnd.OnKill = function()
|
||||
{
|
||||
if(tt_aV[CENTERWINDOW] && tt_aV[CENTERALWAYS])
|
||||
{
|
||||
tt_RemEvtFnc(window, "resize", Ctrwnd_DoCenter);
|
||||
if(tt_ie)
|
||||
tt_RemEvtFnc(window, "scroll", Ctrwnd_DoCenter);
|
||||
else
|
||||
tt_aElt[0].style.position = "absolute";
|
||||
}
|
||||
return false;
|
||||
};
|
||||
// Helper function
|
||||
function Ctrwnd_DoCenter()
|
||||
{
|
||||
if(tt_aV[CENTERWINDOW])
|
||||
{
|
||||
var x, y, dx, dy;
|
||||
|
||||
// Here we use some functions and variables (tt_w, tt_h) which the
|
||||
// extension API of wz_tooltip.js provides for us
|
||||
if(tt_ie || !tt_aV[CENTERALWAYS])
|
||||
{
|
||||
dx = tt_GetScrollX();
|
||||
dy = tt_GetScrollY();
|
||||
}
|
||||
else
|
||||
{
|
||||
dx = 0;
|
||||
dy = 0;
|
||||
}
|
||||
// Position the tip, offset from the center by OFFSETX and OFFSETY
|
||||
x = (tt_GetClientW() - tt_w) / 2 + dx + tt_aV[OFFSETX];
|
||||
y = (tt_GetClientH() - tt_h) / 2 + dy + tt_aV[OFFSETY];
|
||||
tt_SetTipPos(x, y);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
@ -1,88 +0,0 @@
|
||||
/*
|
||||
tip_followscroll.js v. 1.11
|
||||
|
||||
The latest version is available at
|
||||
http://www.walterzorn.com
|
||||
or http://www.devira.com
|
||||
or http://www.walterzorn.de
|
||||
|
||||
Initial author: Walter Zorn
|
||||
Last modified: 3.6.2008
|
||||
|
||||
Extension for the tooltip library wz_tooltip.js.
|
||||
Lets a "sticky" tooltip keep its position inside the clientarea if the window
|
||||
is scrolled.
|
||||
*/
|
||||
|
||||
// Make sure that the core file wz_tooltip.js is included first
|
||||
if(typeof config == "undefined")
|
||||
alert("Error:\nThe core tooltip script file 'wz_tooltip.js' must be included first, before the plugin files!");
|
||||
|
||||
// Here we define new global configuration variable(s) (as members of the
|
||||
// predefined "config." class).
|
||||
// From each of these config variables, wz_tooltip.js will automatically derive
|
||||
// a command which can be passed to Tip() or TagToTip() in order to customize
|
||||
// tooltips individually. These command names are just the config variable
|
||||
// name(s) translated to uppercase,
|
||||
// e.g. from config. FollowScroll a command FOLLOWSCROLL will automatically be
|
||||
// created.
|
||||
|
||||
//=================== GLOBAL TOOLTIP CONFIGURATION ======================//
|
||||
config. FollowScroll = false // true or false - set to true if you want this to be the default behaviour
|
||||
//======= END OF TOOLTIP CONFIG, DO NOT CHANGE ANYTHING BELOW ==============//
|
||||
|
||||
|
||||
// Create a new tt_Extension object (make sure that the name of that object,
|
||||
// here fscrl, is unique amongst the extensions available for
|
||||
// wz_tooltips.js):
|
||||
var fscrl = new tt_Extension();
|
||||
|
||||
// Implement extension eventhandlers on which our extension should react
|
||||
fscrl.OnShow = function()
|
||||
{
|
||||
if(tt_aV[FOLLOWSCROLL])
|
||||
{
|
||||
// Permit FOLLOWSCROLL only if the tooltip is sticky
|
||||
if(tt_aV[STICKY])
|
||||
{
|
||||
var x = tt_x - tt_GetScrollX(), y = tt_y - tt_GetScrollY();
|
||||
|
||||
if(tt_ie)
|
||||
{
|
||||
fscrl.MoveOnScrl.offX = x;
|
||||
fscrl.MoveOnScrl.offY = y;
|
||||
fscrl.AddRemEvtFncs(tt_AddEvtFnc);
|
||||
}
|
||||
else
|
||||
{
|
||||
tt_SetTipPos(x, y);
|
||||
tt_aElt[0].style.position = "fixed";
|
||||
}
|
||||
return true;
|
||||
}
|
||||
tt_aV[FOLLOWSCROLL] = false;
|
||||
}
|
||||
return false;
|
||||
};
|
||||
fscrl.OnHide = function()
|
||||
{
|
||||
if(tt_aV[FOLLOWSCROLL])
|
||||
{
|
||||
if(tt_ie)
|
||||
fscrl.AddRemEvtFncs(tt_RemEvtFnc);
|
||||
else
|
||||
tt_aElt[0].style.position = "absolute";
|
||||
}
|
||||
};
|
||||
// Helper functions (encapsulate in the class to avoid conflicts with other
|
||||
// extensions)
|
||||
fscrl.MoveOnScrl = function()
|
||||
{
|
||||
tt_SetTipPos(fscrl.MoveOnScrl.offX + tt_GetScrollX(), fscrl.MoveOnScrl.offY + tt_GetScrollY());
|
||||
};
|
||||
fscrl.AddRemEvtFncs = function(PAddRem)
|
||||
{
|
||||
PAddRem(window, "resize", fscrl.MoveOnScrl);
|
||||
PAddRem(window, "scroll", fscrl.MoveOnScrl);
|
||||
};
|
||||
|