/* compact [
	prive/javascript/jquery.js
	prive/javascript/jquery.form.js
	prive/javascript/ajaxCallback.js
	plugins/auto/jquery_ui/javascript/jquery-ui-1.8.16/ui/jquery.ui.core.js
	plugins/auto/jquery_ui/javascript/jquery-ui-1.8.16/ui/jquery.ui.datepicker.js
	plugins/auto/jquery_ui/javascript/jquery-ui-1.8.16/ui/jquery-ui.js
	extensions/porte_plume/javascript/xregexp-min.js
	extensions/porte_plume/javascript/jquery.markitup_pour_spip.js
	extensions/porte_plume/javascript/jquery.previsu_spip.js
	page=porte_plume_start.js(lang=fr)
	plugins/splickrbox/splickrbox.js
	plugins/thickbox2/javascript/thickbox.js
	plugins/auto/jquery_corner/javascript/jquery.corner.js
] 65.8% */

/* prive/javascript/jquery.js */

(function(window,undefined){
var jQuery=function(selector,context){
return new jQuery.fn.init(selector,context)},
_jQuery=window.jQuery,
_$=window.$,
document=window.document,
rootjQuery,
quickExpr=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,
isSimple=/^.[^:#\[\.,]*$/,
rnotwhite=/\S/,
rtrim=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,
rsingleTag=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,
userAgent=navigator.userAgent,
browserMatch,
readyBound=false,
readyList=[],
DOMContentLoaded,
toString=Object.prototype.toString,
hasOwnProperty=Object.prototype.hasOwnProperty,
push=Array.prototype.push,
slice=Array.prototype.slice,
indexOf=Array.prototype.indexOf;
jQuery.fn=jQuery.prototype={
init:function(selector,context){
var match,elem,ret,doc;
if(!selector){
return this}
if(selector.nodeType){
this.context=this[0]=selector;
this.length=1;
return this}
if(selector==="body"&&!context){
this.context=document;
this[0]=document.body;
this.selector="body";
this.length=1;
return this}
if(typeof selector==="string"){
match=quickExpr.exec(selector);
if(match&&(match[1]||!context)){
if(match[1]){
doc=(context?context.ownerDocument||context:document);
ret=rsingleTag.exec(selector);
if(ret){
if(jQuery.isPlainObject(context)){
selector=[document.createElement(ret[1])];
jQuery.fn.attr.call(selector,context,true)}else{
selector=[doc.createElement(ret[1])]}
}else{
ret=buildFragment([match[1]],[doc]);
selector=(ret.cacheable?ret.fragment.cloneNode(true):ret.fragment).childNodes}
return jQuery.merge(this,selector)}else{
elem=document.getElementById(match[2]);
if(elem){
if(elem.id!==match[2]){
return rootjQuery.find(selector)}
this.length=1;
this[0]=elem}
this.context=document;
this.selector=selector;
return this}
}else if(!context&&/^\w+$/.test(selector)){
this.selector=selector;
this.context=document;
selector=document.getElementsByTagName(selector);
return jQuery.merge(this,selector)}else if(!context||context.jquery){
return(context||rootjQuery).find(selector)}else{
return jQuery(context).find(selector)}
}else if(jQuery.isFunction(selector)){
return rootjQuery.ready(selector)}
if(selector.selector!==undefined){
this.selector=selector.selector;
this.context=selector.context}
return jQuery.makeArray(selector,this)},
selector:"",
jquery:"1.4.2",
length:0,
size:function(){
return this.length},
toArray:function(){
return slice.call(this,0)},
get:function(num){
return num==null?
this.toArray():
(num<0?this.slice(num)[0]:this[num])},
pushStack:function(elems,name,selector){
var ret=jQuery();
if(jQuery.isArray(elems)){
push.apply(ret,elems)}else{
jQuery.merge(ret,elems)}
ret.prevObject=this;
ret.context=this.context;
if(name==="find"){
ret.selector=this.selector+(this.selector?" ":"")+selector}else if(name){
ret.selector=this.selector+"."+name+"("+selector+")"}
return ret},
each:function(callback,args){
return jQuery.each(this,callback,args)},
ready:function(fn){
jQuery.bindReady();
if(jQuery.isReady){
fn.call(document,jQuery)}else if(readyList){
readyList.push(fn)}
return this},
eq:function(i){
return i===-1?
this.slice(i):
this.slice(i,+i+1)},
first:function(){
return this.eq(0)},
last:function(){
return this.eq(-1)},
slice:function(){
return this.pushStack(slice.apply(this,arguments),
"slice",slice.call(arguments).join(","))},
map:function(callback){
return this.pushStack(jQuery.map(this,function(elem,i){
return callback.call(elem,i,elem)}))},
end:function(){
return this.prevObject||jQuery(null)},
push:push,
sort:[].sort,
splice:[].splice
};
jQuery.fn.init.prototype=jQuery.fn;
jQuery.extend=jQuery.fn.extend=function(){
var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options,name,src,copy;
if(typeof target==="boolean"){
deep=target;
target=arguments[1]||{};
i=2}
if(typeof target!=="object"&&!jQuery.isFunction(target)){
target={}}
if(length===i){
target=this;
--i}
for(;i<length;i++){
if((options=arguments[i])!=null){
for(name in options){
src=target[name];
copy=options[name];
if(target===copy){
continue}
if(deep&&copy&&(jQuery.isPlainObject(copy)||jQuery.isArray(copy))){
var clone=src&&(jQuery.isPlainObject(src)||jQuery.isArray(src))?src
:jQuery.isArray(copy)?[]:{};
target[name]=jQuery.extend(deep,clone,copy)}else if(copy!==undefined){
target[name]=copy}
}
}
}
return target};
jQuery.extend({
noConflict:function(deep){
window.$=_$;
if(deep){
window.jQuery=_jQuery}
return jQuery},
isReady:false,
ready:function(){
if(!jQuery.isReady){
if(!document.body){
return setTimeout(jQuery.ready,13)}
jQuery.isReady=true;
if(readyList){
var fn,i=0;
while((fn=readyList[i++])){
fn.call(document,jQuery)}
readyList=null}
if(jQuery.fn.triggerHandler){
jQuery(document).triggerHandler("ready")}
}
},
bindReady:function(){
if(readyBound){
return}
readyBound=true;
if(document.readyState==="complete"){
return jQuery.ready()}
if(document.addEventListener){
document.addEventListener("DOMContentLoaded",DOMContentLoaded,false);
window.addEventListener("load",jQuery.ready,false)}else if(document.attachEvent){
document.attachEvent("onreadystatechange",DOMContentLoaded);
window.attachEvent("onload",jQuery.ready);
var toplevel=false;
try{
toplevel=window.frameElement==null}catch(e){}
if(document.documentElement.doScroll&&toplevel){
doScrollCheck()}
}
},
isFunction:function(obj){
return toString.call(obj)==="[object Function]"},
isArray:function(obj){
return toString.call(obj)==="[object Array]"},
isPlainObject:function(obj){
if(!obj||toString.call(obj)!=="[object Object]"||obj.nodeType||obj.setInterval){
return false}
if(obj.constructor
&&!hasOwnProperty.call(obj,"constructor")
&&!hasOwnProperty.call(obj.constructor.prototype,"isPrototypeOf")){
return false}
var key;
for(key in obj){}
return key===undefined||hasOwnProperty.call(obj,key)},
isEmptyObject:function(obj){
for(var name in obj){
return false}
return true},
error:function(msg){
throw msg},
parseJSON:function(data){
if(typeof data!=="string"||!data){
return null}
data=jQuery.trim(data);
if(/^[\],:{}\s]*$/.test(data.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@")
.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]")
.replace(/(?:^|:|,)(?:\s*\[)+/g,""))){
return window.JSON&&window.JSON.parse?
window.JSON.parse(data):
(new Function("return "+data))()}else{
jQuery.error("Invalid JSON: "+data)}
},
noop:function(){},
globalEval:function(data){
if(data&&rnotwhite.test(data)){
var head=document.getElementsByTagName("head")[0]||document.documentElement,
script=document.createElement("script");
script.type="text/javascript";
if(jQuery.support.scriptEval){
script.appendChild(document.createTextNode(data))}else{
script.text=data}
head.insertBefore(script,head.firstChild);
head.removeChild(script)}
},
nodeName:function(elem,name){
return elem.nodeName&&elem.nodeName.toUpperCase()===name.toUpperCase()},
each:function(object,callback,args){
var name,i=0,
length=object.length,
isObj=length===undefined||jQuery.isFunction(object);
if(args){
if(isObj){
for(name in object){
if(callback.apply(object[name],args)===false){
break}
}
}else{
for(;i<length;){
if(callback.apply(object[i++],args)===false){
break}
}
}
}else{
if(isObj){
for(name in object){
if(callback.call(object[name],name,object[name])===false){
break}
}
}else{
for(var value=object[0];
i<length&&callback.call(value,i,value)!==false;value=object[++i]){}
}
}
return object},
trim:function(text){
return(text||"").replace(rtrim,"")},
makeArray:function(array,results){
var ret=results||[];
if(array!=null){
if(array.length==null||typeof array==="string"||jQuery.isFunction(array)||(typeof array!=="function"&&array.setInterval)){
push.call(ret,array)}else{
jQuery.merge(ret,array)}
}
return ret},
inArray:function(elem,array){
if(array.indexOf){
return array.indexOf(elem)}
for(var i=0,length=array.length;i<length;i++){
if(array[i]===elem){
return i}
}
return-1},
merge:function(first,second){
var i=first.length,j=0;
if(typeof second.length==="number"){
for(var l=second.length;j<l;j++){
first[i++]=second[j]}
}else{
while(second[j]!==undefined){
first[i++]=second[j++]}
}
first.length=i;
return first},
grep:function(elems,callback,inv){
var ret=[];
for(var i=0,length=elems.length;i<length;i++){
if(!inv!==!callback(elems[i],i)){
ret.push(elems[i])}
}
return ret},
map:function(elems,callback,arg){
var ret=[],value;
for(var i=0,length=elems.length;i<length;i++){
value=callback(elems[i],i,arg);
if(value!=null){
ret[ret.length]=value}
}
return ret.concat.apply([],ret)},
guid:1,
proxy:function(fn,proxy,thisObject){
if(arguments.length===2){
if(typeof proxy==="string"){
thisObject=fn;
fn=thisObject[proxy];
proxy=undefined}else if(proxy&&!jQuery.isFunction(proxy)){
thisObject=proxy;
proxy=undefined}
}
if(!proxy&&fn){
proxy=function(){
return fn.apply(thisObject||this,arguments)}}
if(fn){
proxy.guid=fn.guid=fn.guid||proxy.guid||jQuery.guid++}
return proxy},
uaMatch:function(ua){
ua=ua.toLowerCase();
var match=/(webkit)[ \/]([\w.]+)/.exec(ua)||/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(ua)||/(msie) ([\w.]+)/.exec(ua)||
!/compatible/.test(ua)&&/(mozilla)(?:.*? rv:([\w.]+))?/.exec(ua)||
[];
return{browser:match[1]||"",version:match[2]||"0"}},
browser:{}
});
browserMatch=jQuery.uaMatch(userAgent);
if(browserMatch.browser){
jQuery.browser[browserMatch.browser]=true;
jQuery.browser.version=browserMatch.version}
if(jQuery.browser.webkit){
jQuery.browser.safari=true}
if(indexOf){
jQuery.inArray=function(elem,array){
return indexOf.call(array,elem)}}
rootjQuery=jQuery(document);
if(document.addEventListener){
DOMContentLoaded=function(){
document.removeEventListener("DOMContentLoaded",DOMContentLoaded,false);
jQuery.ready()}}else if(document.attachEvent){
DOMContentLoaded=function(){
if(document.readyState==="complete"){
document.detachEvent("onreadystatechange",DOMContentLoaded);
jQuery.ready()}
}}
function doScrollCheck(){
if(jQuery.isReady){
return}
try{
document.documentElement.doScroll("left")}catch(error){
setTimeout(doScrollCheck,1);
return}
jQuery.ready()}
function evalScript(i,elem){
if(elem.src){
jQuery.ajax({
url:elem.src,
async:false,
dataType:"script"
})}else{
jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"")}
if(elem.parentNode){
elem.parentNode.removeChild(elem)}
}
function access(elems,key,value,exec,fn,pass){
var length=elems.length;
if(typeof key==="object"){
for(var k in key){
access(elems,k,key[k],exec,fn,value)}
return elems}
if(value!==undefined){
exec=!pass&&exec&&jQuery.isFunction(value);
for(var i=0;i<length;i++){
fn(elems[i],key,exec?value.call(elems[i],i,fn(elems[i],key)):value,pass)}
return elems}
return length?fn(elems[0],key):undefined}
function now(){
return(new Date).getTime()}
(function(){
jQuery.support={};
var root=document.documentElement,
script=document.createElement("script"),
div=document.createElement("div"),
id="script"+now();
div.style.display="none";
div.innerHTML="   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
var all=div.getElementsByTagName("*"),
a=div.getElementsByTagName("a")[0];
if(!all||!all.length||!a){
return}
jQuery.support={
leadingWhitespace:div.firstChild.nodeType===3,
tbody:!div.getElementsByTagName("tbody").length,
htmlSerialize:!!div.getElementsByTagName("link").length,
style:/red/.test(a.getAttribute("style")),
hrefNormalized:a.getAttribute("href")==="/a",
opacity:/^0.55$/.test(a.style.opacity),
cssFloat:!!a.style.cssFloat,
checkOn:div.getElementsByTagName("input")[0].value==="on",
optSelected:document.createElement("select").appendChild(document.createElement("option")).selected,
parentNode:div.removeChild(div.appendChild(document.createElement("div"))).parentNode===null,
deleteExpando:true,
checkClone:false,
scriptEval:false,
noCloneEvent:true,
boxModel:null
};
script.type="text/javascript";
try{
script.appendChild(document.createTextNode("window."+id+"=1;"))}catch(e){}
root.insertBefore(script,root.firstChild);
if(window[id]){
jQuery.support.scriptEval=true;
delete window[id]}
try{
delete script.test}catch(e){
jQuery.support.deleteExpando=false}
root.removeChild(script);
if(div.attachEvent&&div.fireEvent){
div.attachEvent("onclick",function click(){
jQuery.support.noCloneEvent=false;
div.detachEvent("onclick",click)});
div.cloneNode(true).fireEvent("onclick")}
div=document.createElement("div");
div.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";
var fragment=document.createDocumentFragment();
fragment.appendChild(div.firstChild);
jQuery.support.checkClone=fragment.cloneNode(true).cloneNode(true).lastChild.checked;
jQuery(function(){
var div=document.createElement("div");
div.style.width=div.style.paddingLeft="1px";
document.body.appendChild(div);
jQuery.boxModel=jQuery.support.boxModel=div.offsetWidth===2;
document.body.removeChild(div).style.display='none';
div=null});
var eventSupported=function(eventName){
var el=document.createElement("div");
eventName="on"+eventName;
var isSupported=(eventName in el);
if(!isSupported){
el.setAttribute(eventName,"return;");
isSupported=typeof el[eventName]==="function"}
el=null;
return isSupported};
jQuery.support.submitBubbles=eventSupported("submit");
jQuery.support.changeBubbles=eventSupported("change");
root=script=div=all=a=null})();
jQuery.props={
"for":"htmlFor",
"class":"className",
readonly:"readOnly",
maxlength:"maxLength",
cellspacing:"cellSpacing",
rowspan:"rowSpan",
colspan:"colSpan",
tabindex:"tabIndex",
usemap:"useMap",
frameborder:"frameBorder"
};
var expando="jQuery"+now(),uuid=0,windowData={};
jQuery.extend({
cache:{},
expando:expando,
noData:{
"embed":true,
"object":true,
"applet":true
},
data:function(elem,name,data){
if(elem.nodeName&&jQuery.noData[elem.nodeName.toLowerCase()]){
return}
elem=elem==window?
windowData:
elem;
var id=elem[expando],cache=jQuery.cache,thisCache;
if(!id&&typeof name==="string"&&data===undefined){
return null}
if(!id){
id=++uuid}
if(typeof name==="object"){
elem[expando]=id;
thisCache=cache[id]=jQuery.extend(true,{},name)}else if(!cache[id]){
elem[expando]=id;
cache[id]={}}
thisCache=cache[id];
if(data!==undefined){
thisCache[name]=data}
return typeof name==="string"?thisCache[name]:thisCache},
removeData:function(elem,name){
if(elem.nodeName&&jQuery.noData[elem.nodeName.toLowerCase()]){
return}
elem=elem==window?
windowData:
elem;
var id=elem[expando],cache=jQuery.cache,thisCache=cache[id];
if(name){
if(thisCache){
delete thisCache[name];
if(jQuery.isEmptyObject(thisCache)){
jQuery.removeData(elem)}
}
}else{
if(jQuery.support.deleteExpando){
delete elem[jQuery.expando]}else if(elem.removeAttribute){
elem.removeAttribute(jQuery.expando)}
delete cache[id]}
}
});
jQuery.fn.extend({
data:function(key,value){
if(typeof key==="undefined"&&this.length){
return jQuery.data(this[0])}else if(typeof key==="object"){
return this.each(function(){
jQuery.data(this,key)})}
var parts=key.split(".");
parts[1]=parts[1]?"."+parts[1]:"";
if(value===undefined){
var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);
if(data===undefined&&this.length){
data=jQuery.data(this[0],key)}
return data===undefined&&parts[1]?
this.data(parts[0]):
data}else{
return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){
jQuery.data(this,key,value)})}
},
removeData:function(key){
return this.each(function(){
jQuery.removeData(this,key)})}
});
jQuery.extend({
queue:function(elem,type,data){
if(!elem){
return}
type=(type||"fx")+"queue";
var q=jQuery.data(elem,type);
if(!data){
return q||[]}
if(!q||jQuery.isArray(data)){
q=jQuery.data(elem,type,jQuery.makeArray(data))}else{
q.push(data)}
return q},
dequeue:function(elem,type){
type=type||"fx";
var queue=jQuery.queue(elem,type),fn=queue.shift();
if(fn==="inprogress"){
fn=queue.shift()}
if(fn){
if(type==="fx"){
queue.unshift("inprogress")}
fn.call(elem,function(){
jQuery.dequeue(elem,type)})}
}
});
jQuery.fn.extend({
queue:function(type,data){
if(typeof type!=="string"){
data=type;
type="fx"}
if(data===undefined){
return jQuery.queue(this[0],type)}
return this.each(function(i,elem){
var queue=jQuery.queue(this,type,data);
if(type==="fx"&&queue[0]!=="inprogress"){
jQuery.dequeue(this,type)}
})},
dequeue:function(type){
return this.each(function(){
jQuery.dequeue(this,type)})},
delay:function(time,type){
time=jQuery.fx?jQuery.fx.speeds[time]||time:time;
type=type||"fx";
return this.queue(type,function(){
var elem=this;
setTimeout(function(){
jQuery.dequeue(elem,type)},time)})},
clearQueue:function(type){
return this.queue(type||"fx",[])}
});
var rclass=/[\n\t]/g,
rspace=/\s+/,
rreturn=/\r/g,
rspecialurl=/href|src|style/,
rtype=/(button|input)/i,
rfocusable=/(button|input|object|select|textarea)/i,
rclickable=/^(a|area)$/i,
rradiocheck=/radio|checkbox/;
jQuery.fn.extend({
attr:function(name,value){
return access(this,name,value,true,jQuery.attr)},
removeAttr:function(name,fn){
return this.each(function(){
jQuery.attr(this,name,"");
if(this.nodeType===1){
this.removeAttribute(name)}
})},
addClass:function(value){
if(jQuery.isFunction(value)){
return this.each(function(i){
var self=jQuery(this);
self.addClass(value.call(this,i,self.attr("class")))})}
if(value&&typeof value==="string"){
var classNames=(value||"").split(rspace);
for(var i=0,l=this.length;i<l;i++){
var elem=this[i];
if(elem.nodeType===1){
if(!elem.className){
elem.className=value}else{
var className=" "+elem.className+" ",setClass=elem.className;
for(var c=0,cl=classNames.length;c<cl;c++){
if(className.indexOf(" "+classNames[c]+" ")<0){
setClass+=" "+classNames[c]}
}
elem.className=jQuery.trim(setClass)}
}
}
}
return this},
removeClass:function(value){
if(jQuery.isFunction(value)){
return this.each(function(i){
var self=jQuery(this);
self.removeClass(value.call(this,i,self.attr("class")))})}
if((value&&typeof value==="string")||value===undefined){
var classNames=(value||"").split(rspace);
for(var i=0,l=this.length;i<l;i++){
var elem=this[i];
if(elem.nodeType===1&&elem.className){
if(value){
var className=(" "+elem.className+" ").replace(rclass," ");
for(var c=0,cl=classNames.length;c<cl;c++){
className=className.replace(" "+classNames[c]+" "," ")}
elem.className=jQuery.trim(className)}else{
elem.className=""}
}
}
}
return this},
toggleClass:function(value,stateVal){
var type=typeof value,isBool=typeof stateVal==="boolean";
if(jQuery.isFunction(value)){
return this.each(function(i){
var self=jQuery(this);
self.toggleClass(value.call(this,i,self.attr("class"),stateVal),stateVal)})}
return this.each(function(){
if(type==="string"){
var className,i=0,self=jQuery(this),
state=stateVal,
classNames=value.split(rspace);
while((className=classNames[i++])){
state=isBool?state:!self.hasClass(className);
self[state?"addClass":"removeClass"](className)}
}else if(type==="undefined"||type==="boolean"){
if(this.className){
jQuery.data(this,"__className__",this.className)}
this.className=this.className||value===false?"":jQuery.data(this,"__className__")||""}
})},
hasClass:function(selector){
var className=" "+selector+" ";
for(var i=0,l=this.length;i<l;i++){
if((" "+this[i].className+" ").replace(rclass," ").indexOf(className)>-1){
return true}
}
return false},
val:function(value){
if(value===undefined){
var elem=this[0];
if(elem){
if(jQuery.nodeName(elem,"option")){
return(elem.attributes.value||{}).specified?elem.value:elem.text}
if(jQuery.nodeName(elem,"select")){
var index=elem.selectedIndex,
values=[],
options=elem.options,
one=elem.type==="select-one";
if(index<0){
return null}
for(var i=one?index:0,max=one?index+1:options.length;i<max;i++){
var option=options[i];
if(option.selected){
value=jQuery(option).val();
if(one){
return value}
values.push(value)}
}
return values}
if(rradiocheck.test(elem.type)&&!jQuery.support.checkOn){
return elem.getAttribute("value")===null?"on":elem.value}
return(elem.value||"").replace(rreturn,"")}
return undefined}
var isFunction=jQuery.isFunction(value);
return this.each(function(i){
var self=jQuery(this),val=value;
if(this.nodeType!==1){
return}
if(isFunction){
val=value.call(this,i,self.val())}
if(typeof val==="number"){
val+=""}
if(jQuery.isArray(val)&&rradiocheck.test(this.type)){
this.checked=jQuery.inArray(self.val(),val)>=0}else if(jQuery.nodeName(this,"select")){
var values=jQuery.makeArray(val);
jQuery("option",this).each(function(){
this.selected=jQuery.inArray(jQuery(this).val(),values)>=0});
if(!values.length){
this.selectedIndex=-1}
}else{
this.value=val}
})}
});
jQuery.extend({
attrFn:{
val:true,
css:true,
html:true,
text:true,
data:true,
width:true,
height:true,
offset:true
},
attr:function(elem,name,value,pass){
if(!elem||elem.nodeType===3||elem.nodeType===8){
return undefined}
if(pass&&name in jQuery.attrFn){
return jQuery(elem)[name](value)}
var notxml=elem.nodeType!==1||!jQuery.isXMLDoc(elem),
set=value!==undefined;
name=notxml&&jQuery.props[name]||name;
if(elem.nodeType===1){
var special=rspecialurl.test(name);
if(name==="selected"&&!jQuery.support.optSelected){
var parent=elem.parentNode;
if(parent){
parent.selectedIndex;
if(parent.parentNode){
parent.parentNode.selectedIndex}
}
}
if(name in elem&&notxml&&!special){
if(set){
if(name==="type"&&rtype.test(elem.nodeName)&&elem.parentNode){
jQuery.error("type property can't be changed")}
elem[name]=value}
if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)){
return elem.getAttributeNode(name).nodeValue}
if(name==="tabIndex"){
var attributeNode=elem.getAttributeNode("tabIndex");
return attributeNode&&attributeNode.specified?
attributeNode.value:
rfocusable.test(elem.nodeName)||rclickable.test(elem.nodeName)&&elem.href?
0:
undefined}
return elem[name]}
if(!jQuery.support.style&&notxml&&name==="style"){
if(set){
elem.style.cssText=""+value}
return elem.style.cssText}
if(set){
elem.setAttribute(name,""+value)}
var attr=!jQuery.support.hrefNormalized&&notxml&&special?
elem.getAttribute(name,2):
elem.getAttribute(name);
return attr===null?undefined:attr}
return jQuery.style(elem,name,value)}
});
var rnamespaces=/\.(.*)$/,
fcleanup=function(nm){
return nm.replace(/[^\w\s\.\|`]/g,function(ch){
return"\\"+ch})};
jQuery.event={
add:function(elem,types,handler,data){
if(elem.nodeType===3||elem.nodeType===8){
return}
if(elem.setInterval&&(elem!==window&&!elem.frameElement)){
elem=window}
var handleObjIn,handleObj;
if(handler.handler){
handleObjIn=handler;
handler=handleObjIn.handler}
if(!handler.guid){
handler.guid=jQuery.guid++}
var elemData=jQuery.data(elem);
if(!elemData){
return}
var events=elemData.events=elemData.events||{},
eventHandle=elemData.handle,eventHandle;
if(!eventHandle){
elemData.handle=eventHandle=function(){
return typeof jQuery!=="undefined"&&!jQuery.event.triggered?
jQuery.event.handle.apply(eventHandle.elem,arguments):
undefined}}
eventHandle.elem=elem;
types=types.split(" ");
var type,i=0,namespaces;
while((type=types[i++])){
handleObj=handleObjIn?
jQuery.extend({},handleObjIn):
{handler:handler,data:data};
if(type.indexOf(".")>-1){
namespaces=type.split(".");
type=namespaces.shift();
handleObj.namespace=namespaces.slice(0).sort().join(".")}else{
namespaces=[];
handleObj.namespace=""}
handleObj.type=type;
handleObj.guid=handler.guid;
var handlers=events[type],
special=jQuery.event.special[type]||{};
if(!handlers){
handlers=events[type]=[];
if(!special.setup||special.setup.call(elem,data,namespaces,eventHandle)===false){
if(elem.addEventListener){
elem.addEventListener(type,eventHandle,false)}else if(elem.attachEvent){
elem.attachEvent("on"+type,eventHandle)}
}
}
if(special.add){
special.add.call(elem,handleObj);
if(!handleObj.handler.guid){
handleObj.handler.guid=handler.guid}
}
handlers.push(handleObj);
jQuery.event.global[type]=true}
elem=null},
global:{},
remove:function(elem,types,handler,pos){
if(elem.nodeType===3||elem.nodeType===8){
return}
var ret,type,fn,i=0,all,namespaces,namespace,special,eventType,handleObj,origType,
elemData=jQuery.data(elem),
events=elemData&&elemData.events;
if(!elemData||!events){
return}
if(types&&types.type){
handler=types.handler;
types=types.type}
if(!types||typeof types==="string"&&types.charAt(0)==="."){
types=types||"";
for(type in events){
jQuery.event.remove(elem,type+types)}
return}
types=types.split(" ");
while((type=types[i++])){
origType=type;
handleObj=null;
all=type.indexOf(".")<0;
namespaces=[];
if(!all){
namespaces=type.split(".");
type=namespaces.shift();
namespace=new RegExp("(^|\\.)"+
jQuery.map(namespaces.slice(0).sort(),fcleanup).join("\\.(?:.*\\.)?")+"(\\.|$)")
}
eventType=events[type];
if(!eventType){
continue}
if(!handler){
for(var j=0;j<eventType.length;j++){
handleObj=eventType[j];
if(all||namespace.test(handleObj.namespace)){
jQuery.event.remove(elem,origType,handleObj.handler,j);
eventType.splice(j--,1)}
}
continue}
special=jQuery.event.special[type]||{};
for(var j=pos||0;j<eventType.length;j++){
handleObj=eventType[j];
if(handler.guid===handleObj.guid){
if(all||namespace.test(handleObj.namespace)){
if(pos==null){
eventType.splice(j--,1)}
if(special.remove){
special.remove.call(elem,handleObj)}
}
if(pos!=null){
break}
}
}
if(eventType.length===0||pos!=null&&eventType.length===1){
if(!special.teardown||special.teardown.call(elem,namespaces)===false){
removeEvent(elem,type,elemData.handle)}
ret=null;
delete events[type]}
}
if(jQuery.isEmptyObject(events)){
var handle=elemData.handle;
if(handle){
handle.elem=null}
delete elemData.events;
delete elemData.handle;
if(jQuery.isEmptyObject(elemData)){
jQuery.removeData(elem)}
}
},
trigger:function(event,data,elem){
var type=event.type||event,
bubbling=arguments[3];
if(!bubbling){
event=typeof event==="object"?
event[expando]?event:
jQuery.extend(jQuery.Event(type),event):
jQuery.Event(type);
if(type.indexOf("!")>=0){
event.type=type=type.slice(0,-1);
event.exclusive=true}
if(!elem){
event.stopPropagation();
if(jQuery.event.global[type]){
jQuery.each(jQuery.cache,function(){
if(this.events&&this.events[type]){
jQuery.event.trigger(event,data,this.handle.elem)}
})}
}
if(!elem||elem.nodeType===3||elem.nodeType===8){
return undefined}
event.result=undefined;
event.target=elem;
data=jQuery.makeArray(data);
data.unshift(event)}
event.currentTarget=elem;
var handle=jQuery.data(elem,"handle");
if(handle){
handle.apply(elem,data)}
var parent=elem.parentNode||elem.ownerDocument;
try{
if(!(elem&&elem.nodeName&&jQuery.noData[elem.nodeName.toLowerCase()])){
if(elem["on"+type]&&elem["on"+type].apply(elem,data)===false){
event.result=false}
}
}catch(e){}
if(!event.isPropagationStopped()&&parent){
jQuery.event.trigger(event,data,parent,true)}else if(!event.isDefaultPrevented()){
var target=event.target,old,
isClick=jQuery.nodeName(target,"a")&&type==="click",
special=jQuery.event.special[type]||{};
if((!special._default||special._default.call(elem,event)===false)&&
!isClick&&!(target&&target.nodeName&&jQuery.noData[target.nodeName.toLowerCase()])){
try{
if(target[type]){
old=target["on"+type];
if(old){
target["on"+type]=null}
jQuery.event.triggered=true;
target[type]()}
}catch(e){}
if(old){
target["on"+type]=old}
jQuery.event.triggered=false}
}
},
handle:function(event){
var all,handlers,namespaces,namespace,events;
event=arguments[0]=jQuery.event.fix(event||window.event);
event.currentTarget=this;
all=event.type.indexOf(".")<0&&!event.exclusive;
if(!all){
namespaces=event.type.split(".");
event.type=namespaces.shift();
namespace=new RegExp("(^|\\.)"+namespaces.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)")}
var events=jQuery.data(this,"events"),handlers=events[event.type];
if(events&&handlers){
handlers=handlers.slice(0);
for(var j=0,l=handlers.length;j<l;j++){
var handleObj=handlers[j];
if(all||namespace.test(handleObj.namespace)){
event.handler=handleObj.handler;
event.data=handleObj.data;
event.handleObj=handleObj;
var ret=handleObj.handler.apply(this,arguments);
if(ret!==undefined){
event.result=ret;
if(ret===false){
event.preventDefault();
event.stopPropagation()}
}
if(event.isImmediatePropagationStopped()){
break}
}
}
}
return event.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(event){
if(event[expando]){
return event}
var originalEvent=event;
event=jQuery.Event(originalEvent);
for(var i=this.props.length,prop;i;){
prop=this.props[--i];
event[prop]=originalEvent[prop]}
if(!event.target){
event.target=event.srcElement||document}
if(event.target.nodeType===3){
event.target=event.target.parentNode}
if(!event.relatedTarget&&event.fromElement){
event.relatedTarget=event.fromElement===event.target?event.toElement:event.fromElement}
if(event.pageX==null&&event.clientX!=null){
var doc=document.documentElement,body=document.body;
event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc&&doc.clientLeft||body&&body.clientLeft||0);
event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc&&doc.clientTop||body&&body.clientTop||0)}
if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)){
event.which=event.charCode||event.keyCode}
if(!event.metaKey&&event.ctrlKey){
event.metaKey=event.ctrlKey}
if(!event.which&&event.button!==undefined){
event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)))}
return event},
guid:1E8,
proxy:jQuery.proxy,
special:{
ready:{
setup:jQuery.bindReady,
teardown:jQuery.noop
},
live:{
add:function(handleObj){
jQuery.event.add(this,handleObj.origType,jQuery.extend({},handleObj,{handler:liveHandler}))},
remove:function(handleObj){
var remove=true,
type=handleObj.origType.replace(rnamespaces,"");
jQuery.each(jQuery.data(this,"events").live||[],function(){
if(type===this.origType.replace(rnamespaces,"")){
remove=false;
return false}
});
if(remove){
jQuery.event.remove(this,handleObj.origType,liveHandler)}
}
},
beforeunload:{
setup:function(data,namespaces,eventHandle){
if(this.setInterval){
this.onbeforeunload=eventHandle}
return false},
teardown:function(namespaces,eventHandle){
if(this.onbeforeunload===eventHandle){
this.onbeforeunload=null}
}
}
}
};
var removeEvent=document.removeEventListener?
function(elem,type,handle){
elem.removeEventListener(type,handle,false)}:
function(elem,type,handle){
elem.detachEvent("on"+type,handle)};
jQuery.Event=function(src){
if(!this.preventDefault){
return new jQuery.Event(src)}
if(src&&src.type){
this.originalEvent=src;
this.type=src.type}else{
this.type=src}
this.timeStamp=now();
this[expando]=true};
function returnFalse(){
return false}
function returnTrue(){
return true}
jQuery.Event.prototype={
preventDefault:function(){
this.isDefaultPrevented=returnTrue;
var e=this.originalEvent;
if(!e){
return}
if(e.preventDefault){
e.preventDefault()}
e.returnValue=false},
stopPropagation:function(){
this.isPropagationStopped=returnTrue;
var e=this.originalEvent;
if(!e){
return}
if(e.stopPropagation){
e.stopPropagation()}
e.cancelBubble=true},
stopImmediatePropagation:function(){
this.isImmediatePropagationStopped=returnTrue;
this.stopPropagation()},
isDefaultPrevented:returnFalse,
isPropagationStopped:returnFalse,
isImmediatePropagationStopped:returnFalse
};
var withinElement=function(event){
var parent=event.relatedTarget;
try{
while(parent&&parent!==this){
parent=parent.parentNode}
if(parent!==this){
event.type=event.data;
jQuery.event.handle.apply(this,arguments)}
}catch(e){}
},
delegate=function(event){
event.type=event.data;
jQuery.event.handle.apply(this,arguments)};
jQuery.each({
mouseenter:"mouseover",
mouseleave:"mouseout"
},function(orig,fix){
jQuery.event.special[orig]={
setup:function(data){
jQuery.event.add(this,fix,data&&data.selector?delegate:withinElement,orig)},
teardown:function(data){
jQuery.event.remove(this,fix,data&&data.selector?delegate:withinElement)}
}});
if(!jQuery.support.submitBubbles){
jQuery.event.special.submit={
setup:function(data,namespaces){
if(this.nodeName.toLowerCase()!=="form"){
jQuery.event.add(this,"click.specialSubmit",function(e){
var elem=e.target,type=elem.type;
if((type==="submit"||type==="image")&&jQuery(elem).closest("form").length){
return trigger("submit",this,arguments)}
});
jQuery.event.add(this,"keypress.specialSubmit",function(e){
var elem=e.target,type=elem.type;
if((type==="text"||type==="password")&&jQuery(elem).closest("form").length&&e.keyCode===13){
return trigger("submit",this,arguments)}
})}else{
return false}
},
teardown:function(namespaces){
jQuery.event.remove(this,".specialSubmit")}
}}
if(!jQuery.support.changeBubbles){
var formElems=/textarea|input|select/i,
changeFilters,
getVal=function(elem){
var type=elem.type,val=elem.value;
if(type==="radio"||type==="checkbox"){
val=elem.checked}else if(type==="select-multiple"){
val=elem.selectedIndex>-1?
jQuery.map(elem.options,function(elem){
return elem.selected}).join("-"):
""}else if(elem.nodeName.toLowerCase()==="select"){
val=elem.selectedIndex}
return val},
testChange=function testChange(e){
var elem=e.target,data,val;
if(!formElems.test(elem.nodeName)||elem.readOnly){
return}
data=jQuery.data(elem,"_change_data");
val=getVal(elem);
if(e.type!=="focusout"||elem.type!=="radio"){
jQuery.data(elem,"_change_data",val)}
if(data===undefined||val===data){
return}
if(data!=null||val){
e.type="change";
return jQuery.event.trigger(e,arguments[1],elem)}
};
jQuery.event.special.change={
filters:{
focusout:testChange,
click:function(e){
var elem=e.target,type=elem.type;
if(type==="radio"||type==="checkbox"||elem.nodeName.toLowerCase()==="select"){
return testChange.call(this,e)}
},
keydown:function(e){
var elem=e.target,type=elem.type;
if((e.keyCode===13&&elem.nodeName.toLowerCase()!=="textarea")||
(e.keyCode===32&&(type==="checkbox"||type==="radio"))||
type==="select-multiple"){
return testChange.call(this,e)}
},
beforeactivate:function(e){
var elem=e.target;
jQuery.data(elem,"_change_data",getVal(elem))}
},
setup:function(data,namespaces){
if(this.type==="file"){
return false}
for(var type in changeFilters){
jQuery.event.add(this,type+".specialChange",changeFilters[type])}
return formElems.test(this.nodeName)},
teardown:function(namespaces){
jQuery.event.remove(this,".specialChange");
return formElems.test(this.nodeName)}
};
changeFilters=jQuery.event.special.change.filters}
function trigger(type,elem,args){
args[0].type=type;
return jQuery.event.handle.apply(elem,args)}
if(document.addEventListener){
jQuery.each({focus:"focusin",blur:"focusout"},function(orig,fix){
jQuery.event.special[fix]={
setup:function(){
this.addEventListener(orig,handler,true)},
teardown:function(){
this.removeEventListener(orig,handler,true)}
};
function handler(e){
e=jQuery.event.fix(e);
e.type=fix;
return jQuery.event.handle.call(this,e)}
})}
jQuery.each(["bind","one"],function(i,name){
jQuery.fn[name]=function(type,data,fn){
if(typeof type==="object"){
for(var key in type){
this[name](key,data,type[key],fn)}
return this}
if(jQuery.isFunction(data)){
fn=data;
data=undefined}
var handler=name==="one"?jQuery.proxy(fn,function(event){
jQuery(this).unbind(event,handler);
return fn.apply(this,arguments)}):fn;
if(type==="unload"&&name!=="one"){
this.one(type,data,fn)}else{
for(var i=0,l=this.length;i<l;i++){
jQuery.event.add(this[i],type,handler,data)}
}
return this}});
jQuery.fn.extend({
unbind:function(type,fn){
if(typeof type==="object"&&!type.preventDefault){
for(var key in type){
this.unbind(key,type[key])}
}else{
for(var i=0,l=this.length;i<l;i++){
jQuery.event.remove(this[i],type,fn)}
}
return this},
delegate:function(selector,types,data,fn){
return this.live(types,data,fn,selector)},
undelegate:function(selector,types,fn){
if(arguments.length===0){
return this.unbind("live")}else{
return this.die(types,null,fn,selector)}
},
trigger:function(type,data){
return this.each(function(){
jQuery.event.trigger(type,data,this)})},
triggerHandler:function(type,data){
if(this[0]){
var event=jQuery.Event(type);
event.preventDefault();
event.stopPropagation();
jQuery.event.trigger(event,data,this[0]);
return event.result}
},
toggle:function(fn){
var args=arguments,i=1;
while(i<args.length){
jQuery.proxy(fn,args[i++])}
return this.click(jQuery.proxy(fn,function(event){
var lastToggle=(jQuery.data(this,"lastToggle"+fn.guid)||0)%i;
jQuery.data(this,"lastToggle"+fn.guid,lastToggle+1);
event.preventDefault();
return args[lastToggle].apply(this,arguments)||false}))},
hover:function(fnOver,fnOut){
return this.mouseenter(fnOver).mouseleave(fnOut||fnOver)}
});
var liveMap={
focus:"focusin",
blur:"focusout",
mouseenter:"mouseover",
mouseleave:"mouseout"
};
jQuery.each(["live","die"],function(i,name){
jQuery.fn[name]=function(types,data,fn,origSelector){
var type,i=0,match,namespaces,preType,
selector=origSelector||this.selector,
context=origSelector?this:jQuery(this.context);
if(jQuery.isFunction(data)){
fn=data;
data=undefined}
types=(types||"").split(" ");
while((type=types[i++])!=null){
match=rnamespaces.exec(type);
namespaces="";
if(match){
namespaces=match[0];
type=type.replace(rnamespaces,"")}
if(type==="hover"){
types.push("mouseenter"+namespaces,"mouseleave"+namespaces);
continue}
preType=type;
if(type==="focus"||type==="blur"){
types.push(liveMap[type]+namespaces);
type=type+namespaces}else{
type=(liveMap[type]||type)+namespaces}
if(name==="live"){
context.each(function(){
jQuery.event.add(this,liveConvert(type,selector),
{data:data,selector:selector,handler:fn,origType:type,origHandler:fn,preType:preType})})}else{
context.unbind(liveConvert(type,selector),fn)}
}
return this}
});
function liveHandler(event){
var stop,elems=[],selectors=[],args=arguments,
related,match,handleObj,elem,j,i,l,data,
events=jQuery.data(this,"events");
if(event.liveFired===this||!events||!events.live||event.button&&event.type==="click"){
return}
event.liveFired=this;
var live=events.live.slice(0);
for(j=0;j<live.length;j++){
handleObj=live[j];
if(handleObj.origType.replace(rnamespaces,"")===event.type){
selectors.push(handleObj.selector)}else{
live.splice(j--,1)}
}
match=jQuery(event.target).closest(selectors,event.currentTarget);
for(i=0,l=match.length;i<l;i++){
for(j=0;j<live.length;j++){
handleObj=live[j];
if(match[i].selector===handleObj.selector){
elem=match[i].elem;
related=null;
if(handleObj.preType==="mouseenter"||handleObj.preType==="mouseleave"){
related=jQuery(event.relatedTarget).closest(handleObj.selector)[0]}
if(!related||related!==elem){
elems.push({elem:elem,handleObj:handleObj})}
}
}
}
for(i=0,l=elems.length;i<l;i++){
match=elems[i];
event.currentTarget=match.elem;
event.data=match.handleObj.data;
event.handleObj=match.handleObj;
if(match.handleObj.origHandler.apply(match.elem,args)===false){
stop=false;
break}
}
return stop}
function liveConvert(type,selector){
return"live."+(type&&type!=="*"?type+".":"")+selector.replace(/\./g,"`").replace(/ /g,"&")}
jQuery.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(i,name){
jQuery.fn[name]=function(fn){
return fn?this.bind(name,fn):this.trigger(name)};
if(jQuery.attrFn){
jQuery.attrFn[name]=true}
});
if(window.attachEvent&&!window.addEventListener){
window.attachEvent("onunload",function(){
for(var id in jQuery.cache){
if(jQuery.cache[id].handle){
try{
jQuery.event.remove(jQuery.cache[id].handle.elem)}catch(e){}
}
}
})}
(function(){
var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
done=0,
toString=Object.prototype.toString,
hasDuplicate=false,
baseHasDuplicate=true;
[0,0].sort(function(){
baseHasDuplicate=false;
return 0});
var Sizzle=function(selector,context,results,seed){
results=results||[];
var origContext=context=context||document;
if(context.nodeType!==1&&context.nodeType!==9){
return[]}
if(!selector||typeof selector!=="string"){
return results}
var parts=[],m,set,checkSet,extra,prune=true,contextXML=isXML(context),
soFar=selector;
while((chunker.exec(""),m=chunker.exec(soFar))!==null){
soFar=m[3];
parts.push(m[1]);
if(m[2]){
extra=m[3];
break}
}
if(parts.length>1&&origPOS.exec(selector)){
if(parts.length===2&&Expr.relative[parts[0]]){
set=posProcess(parts[0]+parts[1],context)}else{
set=Expr.relative[parts[0]]?
[context]:
Sizzle(parts.shift(),context);
while(parts.length){
selector=parts.shift();
if(Expr.relative[selector]){
selector+=parts.shift()}
set=posProcess(selector,set)}
}
}else{
if(!seed&&parts.length>1&&context.nodeType===9&&!contextXML&&
Expr.match.ID.test(parts[0])&&!Expr.match.ID.test(parts[parts.length-1])){
var ret=Sizzle.find(parts.shift(),context,contextXML);
context=ret.expr?Sizzle.filter(ret.expr,ret.set)[0]:ret.set[0]}
if(context){
var ret=seed?
{expr:parts.pop(),set:makeArray(seed)}:
Sizzle.find(parts.pop(),parts.length===1&&(parts[0]==="~"||parts[0]==="+")&&context.parentNode?context.parentNode:context,contextXML);
set=ret.expr?Sizzle.filter(ret.expr,ret.set):ret.set;
if(parts.length>0){
checkSet=makeArray(set)}else{
prune=false}
while(parts.length){
var cur=parts.pop(),pop=cur;
if(!Expr.relative[cur]){
cur=""}else{
pop=parts.pop()}
if(pop==null){
pop=context}
Expr.relative[cur](checkSet,pop,contextXML)}
}else{
checkSet=parts=[]}
}
if(!checkSet){
checkSet=set}
if(!checkSet){
Sizzle.error(cur||selector)}
if(toString.call(checkSet)==="[object Array]"){
if(!prune){
results.push.apply(results,checkSet)}else if(context&&context.nodeType===1){
for(var i=0;checkSet[i]!=null;i++){
if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){
results.push(set[i])}
}
}else{
for(var i=0;checkSet[i]!=null;i++){
if(checkSet[i]&&checkSet[i].nodeType===1){
results.push(set[i])}
}
}
}else{
makeArray(checkSet,results)}
if(extra){
Sizzle(extra,origContext,results,seed);
Sizzle.uniqueSort(results)}
return results};
Sizzle.uniqueSort=function(results){
if(sortOrder){
hasDuplicate=baseHasDuplicate;
results.sort(sortOrder);
if(hasDuplicate){
for(var i=1;i<results.length;i++){
if(results[i]===results[i-1]){
results.splice(i--,1)}
}
}
}
return results};
Sizzle.matches=function(expr,set){
return Sizzle(expr,null,null,set)};
Sizzle.find=function(expr,context,isXML){
var set,match;
if(!expr){
return[]}
for(var i=0,l=Expr.order.length;i<l;i++){
var type=Expr.order[i],match;
if((match=Expr.leftMatch[type].exec(expr))){
var left=match[1];
match.splice(1,1);
if(left.substr(left.length-1)!=="\\"){
match[1]=(match[1]||"").replace(/\\/g,"");
set=Expr.find[type](match,context,isXML);
if(set!=null){
expr=expr.replace(Expr.match[type],"");
break}
}
}
}
if(!set){
set=context.getElementsByTagName("*")}
return{set:set,expr:expr}};
Sizzle.filter=function(expr,set,inplace,not){
var old=expr,result=[],curLoop=set,match,anyFound,
isXMLFilter=set&&set[0]&&isXML(set[0]);
while(expr&&set.length){
for(var type in Expr.filter){
if((match=Expr.leftMatch[type].exec(expr))!=null&&match[2]){
var filter=Expr.filter[type],found,item,left=match[1];
anyFound=false;
match.splice(1,1);
if(left.substr(left.length-1)==="\\"){
continue}
if(curLoop===result){
result=[]}
if(Expr.preFilter[type]){
match=Expr.preFilter[type](match,curLoop,inplace,result,not,isXMLFilter);
if(!match){
anyFound=found=true}else if(match===true){
continue}
}
if(match){
for(var i=0;(item=curLoop[i])!=null;i++){
if(item){
found=filter(item,match,i,curLoop);
var pass=not^!!found;
if(inplace&&found!=null){
if(pass){
anyFound=true}else{
curLoop[i]=false}
}else if(pass){
result.push(item);
anyFound=true}
}
}
}
if(found!==undefined){
if(!inplace){
curLoop=result}
expr=expr.replace(Expr.match[type],"");
if(!anyFound){
return[]}
break}
}
}
if(expr===old){
if(anyFound==null){
Sizzle.error(expr)}else{
break}
}
old=expr}
return curLoop};
Sizzle.error=function(msg){
throw"Syntax error, unrecognized expression: "+msg};
var Expr=Sizzle.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(elem){
return elem.getAttribute("href")}
},
relative:{
"+":function(checkSet,part){
var isPartStr=typeof part==="string",
isTag=isPartStr&&!/\W/.test(part),
isPartStrNotTag=isPartStr&&!isTag;
if(isTag){
part=part.toLowerCase()}
for(var i=0,l=checkSet.length,elem;i<l;i++){
if((elem=checkSet[i])){
while((elem=elem.previousSibling)&&elem.nodeType!==1){}
checkSet[i]=isPartStrNotTag||elem&&elem.nodeName.toLowerCase()===part?
elem||false:
elem===part}
}
if(isPartStrNotTag){
Sizzle.filter(part,checkSet,true)}
},
">":function(checkSet,part){
var isPartStr=typeof part==="string";
if(isPartStr&&!/\W/.test(part)){
part=part.toLowerCase();
for(var i=0,l=checkSet.length;i<l;i++){
var elem=checkSet[i];
if(elem){
var parent=elem.parentNode;
checkSet[i]=parent.nodeName.toLowerCase()===part?parent:false}
}
}else{
for(var i=0,l=checkSet.length;i<l;i++){
var elem=checkSet[i];
if(elem){
checkSet[i]=isPartStr?
elem.parentNode:
elem.parentNode===part}
}
if(isPartStr){
Sizzle.filter(part,checkSet,true)}
}
},
"":function(checkSet,part,isXML){
var doneName=done++,checkFn=dirCheck;
if(typeof part==="string"&&!/\W/.test(part)){
var nodeCheck=part=part.toLowerCase();
checkFn=dirNodeCheck}
checkFn("parentNode",part,doneName,checkSet,nodeCheck,isXML)},
"~":function(checkSet,part,isXML){
var doneName=done++,checkFn=dirCheck;
if(typeof part==="string"&&!/\W/.test(part)){
var nodeCheck=part=part.toLowerCase();
checkFn=dirNodeCheck}
checkFn("previousSibling",part,doneName,checkSet,nodeCheck,isXML)}
},
find:{
ID:function(match,context,isXML){
if(typeof context.getElementById!=="undefined"&&!isXML){
var m=context.getElementById(match[1]);
return m?[m]:[]}
},
NAME:function(match,context){
if(typeof context.getElementsByName!=="undefined"){
var ret=[],results=context.getElementsByName(match[1]);
for(var i=0,l=results.length;i<l;i++){
if(results[i].getAttribute("name")===match[1]){
ret.push(results[i])}
}
return ret.length===0?null:ret}
},
TAG:function(match,context){
return context.getElementsByTagName(match[1])}
},
preFilter:{
CLASS:function(match,curLoop,inplace,result,not,isXML){
match=" "+match[1].replace(/\\/g,"")+" ";
if(isXML){
return match}
for(var i=0,elem;(elem=curLoop[i])!=null;i++){
if(elem){
if(not^(elem.className&&(" "+elem.className+" ").replace(/[\t\n]/g," ").indexOf(match)>=0)){
if(!inplace){
result.push(elem)}
}else if(inplace){
curLoop[i]=false}
}
}
return false},
ID:function(match){
return match[1].replace(/\\/g,"")},
TAG:function(match,curLoop){
return match[1].toLowerCase()},
CHILD:function(match){
if(match[1]==="nth"){
var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(
match[2]==="even"&&"2n"||match[2]==="odd"&&"2n+1"||
!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);
match[2]=(test[1]+(test[2]||1))-0;
match[3]=test[3]-0}
match[0]=done++;
return match},
ATTR:function(match,curLoop,inplace,result,not,isXML){
var name=match[1].replace(/\\/g,"");
if(!isXML&&Expr.attrMap[name]){
match[1]=Expr.attrMap[name]}
if(match[2]==="~="){
match[4]=" "+match[4]+" "}
return match},
PSEUDO:function(match,curLoop,inplace,result,not){
if(match[1]==="not"){
if((chunker.exec(match[3])||"").length>1||/^\w/.test(match[3])){
match[3]=Sizzle(match[3],null,null,curLoop)}else{
var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);
if(!inplace){
result.push.apply(result,ret)}
return false}
}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){
return true}
return match},
POS:function(match){
match.unshift(true);
return match}
},
filters:{
enabled:function(elem){
return elem.disabled===false&&elem.type!=="hidden"},
disabled:function(elem){
return elem.disabled===true},
checked:function(elem){
return elem.checked===true},
selected:function(elem){
elem.parentNode.selectedIndex;
return elem.selected===true},
parent:function(elem){
return!!elem.firstChild},
empty:function(elem){
return!elem.firstChild},
has:function(elem,i,match){
return!!Sizzle(match[3],elem).length},
header:function(elem){
return/h\d/i.test(elem.nodeName)},
text:function(elem){
return"text"===elem.type},
radio:function(elem){
return"radio"===elem.type},
checkbox:function(elem){
return"checkbox"===elem.type},
file:function(elem){
return"file"===elem.type},
password:function(elem){
return"password"===elem.type},
submit:function(elem){
return"submit"===elem.type},
image:function(elem){
return"image"===elem.type},
reset:function(elem){
return"reset"===elem.type},
button:function(elem){
return"button"===elem.type||elem.nodeName.toLowerCase()==="button"},
input:function(elem){
return/input|select|textarea|button/i.test(elem.nodeName)}
},
setFilters:{
first:function(elem,i){
return i===0},
last:function(elem,i,match,array){
return i===array.length-1},
even:function(elem,i){
return i%2===0},
odd:function(elem,i){
return i%2===1},
lt:function(elem,i,match){
return i<match[3]-0},
gt:function(elem,i,match){
return i>match[3]-0},
nth:function(elem,i,match){
return match[3]-0===i},
eq:function(elem,i,match){
return match[3]-0===i}
},
filter:{
PSEUDO:function(elem,match,i,array){
var name=match[1],filter=Expr.filters[name];
if(filter){
return filter(elem,i,match,array)}else if(name==="contains"){
return(elem.textContent||elem.innerText||getText([elem])||"").indexOf(match[3])>=0}else if(name==="not"){
var not=match[3];
for(var i=0,l=not.length;i<l;i++){
if(not[i]===elem){
return false}
}
return true}else{
Sizzle.error("Syntax error, unrecognized expression: "+name)}
},
CHILD:function(elem,match){
var type=match[1],node=elem;
switch(type){
case'only':
case'first':
while((node=node.previousSibling)){
if(node.nodeType===1){
return false}
}
if(type==="first"){
return true}
node=elem;
case'last':
while((node=node.nextSibling)){
if(node.nodeType===1){
return false}
}
return true;
case'nth':
var first=match[2],last=match[3];
if(first===1&&last===0){
return true}
var doneName=match[0],
parent=elem.parentNode;
if(parent&&(parent.sizcache!==doneName||!elem.nodeIndex)){
var count=0;
for(node=parent.firstChild;node;node=node.nextSibling){
if(node.nodeType===1){
node.nodeIndex=++count}
}
parent.sizcache=doneName}
var diff=elem.nodeIndex-last;
if(first===0){
return diff===0}else{
return(diff%first===0&&diff/first>=0)}
}
},
ID:function(elem,match){
return elem.nodeType===1&&elem.getAttribute("id")===match},
TAG:function(elem,match){
return(match==="*"&&elem.nodeType===1)||elem.nodeName.toLowerCase()===match},
CLASS:function(elem,match){
return(" "+(elem.className||elem.getAttribute("class"))+" ")
.indexOf(match)>-1},
ATTR:function(elem,match){
var name=match[1],
result=Expr.attrHandle[name]?
Expr.attrHandle[name](elem):
elem[name]!=null?
elem[name]:
elem.getAttribute(name),
value=result+"",
type=match[2],
check=match[4];
return result==null?
type==="!=":
type==="="?
value===check:
type==="*="?
value.indexOf(check)>=0:
type==="~="?
(" "+value+" ").indexOf(check)>=0:
!check?
value&&result!==false:
type==="!="?
value!==check:
type==="^="?
value.indexOf(check)===0:
type==="$="?
value.substr(value.length-check.length)===check:
type==="|="?
value===check||value.substr(0,check.length+1)===check+"-":
false},
POS:function(elem,match,i,array){
var name=match[2],filter=Expr.setFilters[name];
if(filter){
return filter(elem,i,match,array)}
}
}
};
var origPOS=Expr.match.POS;
for(var type in Expr.match){
Expr.match[type]=new RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);
Expr.leftMatch[type]=new RegExp(/(^(?:.|\r|\n)*?)/.source+Expr.match[type].source.replace(/\\(\d+)/g,function(all,num){
return"\\"+(num-0+1)}))}
var makeArray=function(array,results){
array=Array.prototype.slice.call(array,0);
if(results){
results.push.apply(results,array);
return results}
return array};
try{
Array.prototype.slice.call(document.documentElement.childNodes,0)[0].nodeType}catch(e){
makeArray=function(array,results){
var ret=results||[];
if(toString.call(array)==="[object Array]"){
Array.prototype.push.apply(ret,array)}else{
if(typeof array.length==="number"){
for(var i=0,l=array.length;i<l;i++){
ret.push(array[i])}
}else{
for(var i=0;array[i];i++){
ret.push(array[i])}
}
}
return ret}}
var sortOrder;
if(document.documentElement.compareDocumentPosition){
sortOrder=function(a,b){
if(!a.compareDocumentPosition||!b.compareDocumentPosition){
if(a==b){
hasDuplicate=true}
return a.compareDocumentPosition?-1:1}
var ret=a.compareDocumentPosition(b)&4?-1:a===b?0:1;
if(ret===0){
hasDuplicate=true}
return ret}}else if("sourceIndex"in document.documentElement){
sortOrder=function(a,b){
if(!a.sourceIndex||!b.sourceIndex){
if(a==b){
hasDuplicate=true}
return a.sourceIndex?-1:1}
var ret=a.sourceIndex-b.sourceIndex;
if(ret===0){
hasDuplicate=true}
return ret}}else if(document.createRange){
sortOrder=function(a,b){
if(!a.ownerDocument||!b.ownerDocument){
if(a==b){
hasDuplicate=true}
return a.ownerDocument?-1:1}
var aRange=a.ownerDocument.createRange(),bRange=b.ownerDocument.createRange();
aRange.setStart(a,0);
aRange.setEnd(a,0);
bRange.setStart(b,0);
bRange.setEnd(b,0);
var ret=aRange.compareBoundaryPoints(Range.START_TO_END,bRange);
if(ret===0){
hasDuplicate=true}
return ret}}
function getText(elems){
var ret="",elem;
for(var i=0;elems[i];i++){
elem=elems[i];
if(elem.nodeType===3||elem.nodeType===4){
ret+=elem.nodeValue}else if(elem.nodeType!==8){
ret+=getText(elem.childNodes)}
}
return ret}
(function(){
var form=document.createElement("div"),
id="script"+(new Date).getTime();
form.innerHTML="<a name='"+id+"'/>";
var root=document.documentElement;
root.insertBefore(form,root.firstChild);
if(document.getElementById(id)){
Expr.find.ID=function(match,context,isXML){
if(typeof context.getElementById!=="undefined"&&!isXML){
var m=context.getElementById(match[1]);
return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[]}
};
Expr.filter.ID=function(elem,match){
var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");
return elem.nodeType===1&&node&&node.nodeValue===match}}
root.removeChild(form);
root=form=null})();
(function(){
var div=document.createElement("div");
div.appendChild(document.createComment(""));
if(div.getElementsByTagName("*").length>0){
Expr.find.TAG=function(match,context){
var results=context.getElementsByTagName(match[1]);
if(match[1]==="*"){
var tmp=[];
for(var i=0;results[i];i++){
if(results[i].nodeType===1){
tmp.push(results[i])}
}
results=tmp}
return results}}
div.innerHTML="<a href='#'></a>";
if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&
div.firstChild.getAttribute("href")!=="#"){
Expr.attrHandle.href=function(elem){
return elem.getAttribute("href",2)}}
div=null})();
if(document.querySelectorAll){
(function(){
var oldSizzle=Sizzle,div=document.createElement("div");
div.innerHTML="<p class='TEST'></p>";
if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){
return}
Sizzle=function(query,context,extra,seed){
context=context||document;
if(!seed&&context.nodeType===9&&!isXML(context)){
try{
return makeArray(context.querySelectorAll(query),extra)}catch(e){}
}
return oldSizzle(query,context,extra,seed)};
for(var prop in oldSizzle){
Sizzle[prop]=oldSizzle[prop]}
div=null})()}
(function(){
var div=document.createElement("div");
div.innerHTML="<div class='test e'></div><div class='test'></div>";
if(!div.getElementsByClassName||div.getElementsByClassName("e").length===0){
return}
div.lastChild.className="e";
if(div.getElementsByClassName("e").length===1){
return}
Expr.order.splice(1,0,"CLASS");
Expr.find.CLASS=function(match,context,isXML){
if(typeof context.getElementsByClassName!=="undefined"&&!isXML){
return context.getElementsByClassName(match[1])}
};
div=null})();
function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){
for(var i=0,l=checkSet.length;i<l;i++){
var elem=checkSet[i];
if(elem){
elem=elem[dir];
var match=false;
while(elem){
if(elem.sizcache===doneName){
match=checkSet[elem.sizset];
break}
if(elem.nodeType===1&&!isXML){
elem.sizcache=doneName;
elem.sizset=i}
if(elem.nodeName.toLowerCase()===cur){
match=elem;
break}
elem=elem[dir]}
checkSet[i]=match}
}
}
function dirCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){
for(var i=0,l=checkSet.length;i<l;i++){
var elem=checkSet[i];
if(elem){
elem=elem[dir];
var match=false;
while(elem){
if(elem.sizcache===doneName){
match=checkSet[elem.sizset];
break}
if(elem.nodeType===1){
if(!isXML){
elem.sizcache=doneName;
elem.sizset=i}
if(typeof cur!=="string"){
if(elem===cur){
match=true;
break}
}else if(Sizzle.filter(cur,[elem]).length>0){
match=elem;
break}
}
elem=elem[dir]}
checkSet[i]=match}
}
}
var contains=document.compareDocumentPosition?function(a,b){
return!!(a.compareDocumentPosition(b)&16)}:function(a,b){
return a!==b&&(a.contains?a.contains(b):true)};
var isXML=function(elem){
var documentElement=(elem?elem.ownerDocument||elem:0).documentElement;
return documentElement?documentElement.nodeName!=="HTML":false};
var posProcess=function(selector,context){
var tmpSet=[],later="",match,
root=context.nodeType?[context]:context;
while((match=Expr.match.PSEUDO.exec(selector))){
later+=match[0];
selector=selector.replace(Expr.match.PSEUDO,"")}
selector=Expr.relative[selector]?selector+"*":selector;
for(var i=0,l=root.length;i<l;i++){
Sizzle(selector,root[i],tmpSet)}
return Sizzle.filter(later,tmpSet)};
jQuery.find=Sizzle;
jQuery.expr=Sizzle.selectors;
jQuery.expr[":"]=jQuery.expr.filters;
jQuery.unique=Sizzle.uniqueSort;
jQuery.text=getText;
jQuery.isXMLDoc=isXML;
jQuery.contains=contains;
return;
window.Sizzle=Sizzle})();
var runtil=/Until$/,
rparentsprev=/^(?:parents|prevUntil|prevAll)/,
rmultiselector=/,/,
slice=Array.prototype.slice;
var winnow=function(elements,qualifier,keep){
if(jQuery.isFunction(qualifier)){
return jQuery.grep(elements,function(elem,i){
return!!qualifier.call(elem,i,elem)===keep})}else if(qualifier.nodeType){
return jQuery.grep(elements,function(elem,i){
return(elem===qualifier)===keep})}else if(typeof qualifier==="string"){
var filtered=jQuery.grep(elements,function(elem){
return elem.nodeType===1});
if(isSimple.test(qualifier)){
return jQuery.filter(qualifier,filtered,!keep)}else{
qualifier=jQuery.filter(qualifier,filtered)}
}
return jQuery.grep(elements,function(elem,i){
return(jQuery.inArray(elem,qualifier)>=0)===keep})};
jQuery.fn.extend({
find:function(selector){
var ret=this.pushStack("","find",selector),length=0;
for(var i=0,l=this.length;i<l;i++){
length=ret.length;
jQuery.find(selector,this[i],ret);
if(i>0){
for(var n=length;n<ret.length;n++){
for(var r=0;r<length;r++){
if(ret[r]===ret[n]){
ret.splice(n--,1);
break}
}
}
}
}
return ret},
has:function(target){
var targets=jQuery(target);
return this.filter(function(){
for(var i=0,l=targets.length;i<l;i++){
if(jQuery.contains(this,targets[i])){
return true}
}
})},
not:function(selector){
return this.pushStack(winnow(this,selector,false),"not",selector)},
filter:function(selector){
return this.pushStack(winnow(this,selector,true),"filter",selector)},
is:function(selector){
return!!selector&&jQuery.filter(selector,this).length>0},
closest:function(selectors,context){
if(jQuery.isArray(selectors)){
var ret=[],cur=this[0],match,matches={},selector;
if(cur&&selectors.length){
for(var i=0,l=selectors.length;i<l;i++){
selector=selectors[i];
if(!matches[selector]){
matches[selector]=jQuery.expr.match.POS.test(selector)?
jQuery(selector,context||this.context):
selector}
}
while(cur&&cur.ownerDocument&&cur!==context){
for(selector in matches){
match=matches[selector];
if(match.jquery?match.index(cur)>-1:jQuery(cur).is(match)){
ret.push({selector:selector,elem:cur});
delete matches[selector]}
}
cur=cur.parentNode}
}
return ret}
var pos=jQuery.expr.match.POS.test(selectors)?
jQuery(selectors,context||this.context):null;
return this.map(function(i,cur){
while(cur&&cur.ownerDocument&&cur!==context){
if(pos?pos.index(cur)>-1:jQuery(cur).is(selectors)){
return cur}
cur=cur.parentNode}
return null})},
index:function(elem){
if(!elem||typeof elem==="string"){
return jQuery.inArray(this[0],
elem?jQuery(elem):this.parent().children())}
return jQuery.inArray(
elem.jquery?elem[0]:elem,this)},
add:function(selector,context){
var set=typeof selector==="string"?
jQuery(selector,context||this.context):
jQuery.makeArray(selector),
all=jQuery.merge(this.get(),set);
return this.pushStack(isDisconnected(set[0])||isDisconnected(all[0])?
all:
jQuery.unique(all))},
andSelf:function(){
return this.add(this.prevObject)}
});
function isDisconnected(node){
return!node||!node.parentNode||node.parentNode.nodeType===11}
jQuery.each({
parent:function(elem){
var parent=elem.parentNode;
return parent&&parent.nodeType!==11?parent:null},
parents:function(elem){
return jQuery.dir(elem,"parentNode")},
parentsUntil:function(elem,i,until){
return jQuery.dir(elem,"parentNode",until)},
next:function(elem){
return jQuery.nth(elem,2,"nextSibling")},
prev:function(elem){
return jQuery.nth(elem,2,"previousSibling")},
nextAll:function(elem){
return jQuery.dir(elem,"nextSibling")},
prevAll:function(elem){
return jQuery.dir(elem,"previousSibling")},
nextUntil:function(elem,i,until){
return jQuery.dir(elem,"nextSibling",until)},
prevUntil:function(elem,i,until){
return jQuery.dir(elem,"previousSibling",until)},
siblings:function(elem){
return jQuery.sibling(elem.parentNode.firstChild,elem)},
children:function(elem){
return jQuery.sibling(elem.firstChild)},
contents:function(elem){
return jQuery.nodeName(elem,"iframe")?
elem.contentDocument||elem.contentWindow.document:
jQuery.makeArray(elem.childNodes)}
},function(name,fn){
jQuery.fn[name]=function(until,selector){
var ret=jQuery.map(this,fn,until);
if(!runtil.test(name)){
selector=until}
if(selector&&typeof selector==="string"){
ret=jQuery.filter(selector,ret)}
ret=this.length>1?jQuery.unique(ret):ret;
if((this.length>1||rmultiselector.test(selector))&&rparentsprev.test(name)){
ret=ret.reverse()}
return this.pushStack(ret,name,slice.call(arguments).join(","))}});
jQuery.extend({
filter:function(expr,elems,not){
if(not){
expr=":not("+expr+")"}
return jQuery.find.matches(expr,elems)},
dir:function(elem,dir,until){
var matched=[],cur=elem[dir];
while(cur&&cur.nodeType!==9&&(until===undefined||cur.nodeType!==1||!jQuery(cur).is(until))){
if(cur.nodeType===1){
matched.push(cur)}
cur=cur[dir]}
return matched},
nth:function(cur,result,dir,elem){
result=result||1;
var num=0;
for(;cur;cur=cur[dir]){
if(cur.nodeType===1&&++num===result){
break}
}
return cur},
sibling:function(n,elem){
var r=[];
for(;n;n=n.nextSibling){
if(n.nodeType===1&&n!==elem){
r.push(n)}
}
return r}
});
var rinlinejQuery=/ jQuery\d+="(?:\d+|null)"/g,
rleadingWhitespace=/^\s+/,
rxhtmlTag=/(<([\w:]+)[^>]*?)\/>/g,
rselfClosing=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,
rtagName=/<([\w:]+)/,
rtbody=/<tbody/i,
rhtml=/<|&#?\w+;/,
rnocache=/<script|<object|<embed|<option|<style/i,
rchecked=/checked\s*(?:[^=]|=\s*.checked.)/i,fcloseTag=function(all,front,tag){
return rselfClosing.test(tag)?
all:
front+"></"+tag+">"},
wrapMap={
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,"",""]
};
wrapMap.optgroup=wrapMap.option;
wrapMap.tbody=wrapMap.tfoot=wrapMap.colgroup=wrapMap.caption=wrapMap.thead;
wrapMap.th=wrapMap.td;
if(!jQuery.support.htmlSerialize){
wrapMap._default=[1,"div<div>","</div>"]}
jQuery.fn.extend({
text:function(text){
if(jQuery.isFunction(text)){
return this.each(function(i){
var self=jQuery(this);
self.text(text.call(this,i,self.text()))})}
if(typeof text!=="object"&&text!==undefined){
return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text))}
return jQuery.text(this)},
wrapAll:function(html){
if(jQuery.isFunction(html)){
return this.each(function(i){
jQuery(this).wrapAll(html.call(this,i))})}
if(this[0]){
var wrap=jQuery(html,this[0].ownerDocument).eq(0).clone(true);
if(this[0].parentNode){
wrap.insertBefore(this[0])}
wrap.map(function(){
var elem=this;
while(elem.firstChild&&elem.firstChild.nodeType===1){
elem=elem.firstChild}
return elem}).append(this)}
return this},
wrapInner:function(html){
if(jQuery.isFunction(html)){
return this.each(function(i){
jQuery(this).wrapInner(html.call(this,i))})}
return this.each(function(){
var self=jQuery(this),contents=self.contents();
if(contents.length){
contents.wrapAll(html)}else{
self.append(html)}
})},
wrap:function(html){
return this.each(function(){
jQuery(this).wrapAll(html)})},
unwrap:function(){
return this.parent().each(function(){
if(!jQuery.nodeName(this,"body")){
jQuery(this).replaceWith(this.childNodes)}
}).end()},
append:function(){
return this.domManip(arguments,true,function(elem){
if(this.nodeType===1){
this.appendChild(elem)}
})},
prepend:function(){
return this.domManip(arguments,true,function(elem){
if(this.nodeType===1){
this.insertBefore(elem,this.firstChild)}
})},
before:function(){
if(this[0]&&this[0].parentNode){
return this.domManip(arguments,false,function(elem){
this.parentNode.insertBefore(elem,this)})}else if(arguments.length){
var set=jQuery(arguments[0]);
set.push.apply(set,this.toArray());
return this.pushStack(set,"before",arguments)}
},
after:function(){
if(this[0]&&this[0].parentNode){
return this.domManip(arguments,false,function(elem){
this.parentNode.insertBefore(elem,this.nextSibling)})}else if(arguments.length){
var set=this.pushStack(this,"after",arguments);
set.push.apply(set,jQuery(arguments[0]).toArray());
return set}
},
remove:function(selector,keepData){
for(var i=0,elem;(elem=this[i])!=null;i++){
if(!selector||jQuery.filter(selector,[elem]).length){
if(!keepData&&elem.nodeType===1){
jQuery.cleanData(elem.getElementsByTagName("*"));
jQuery.cleanData([elem])}
if(elem.parentNode){
elem.parentNode.removeChild(elem)}
}
}
return this},
empty:function(){
for(var i=0,elem;(elem=this[i])!=null;i++){
if(elem.nodeType===1){
jQuery.cleanData(elem.getElementsByTagName("*"))}
while(elem.firstChild){
elem.removeChild(elem.firstChild)}
}
return this},
clone:function(events){
var ret=this.map(function(){
if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){
var html=this.outerHTML,ownerDocument=this.ownerDocument;
if(!html){
var div=ownerDocument.createElement("div");
div.appendChild(this.cloneNode(true));
html=div.innerHTML}
return jQuery.clean([html.replace(rinlinejQuery,"")
.replace(/=([^="'>\s]+\/)>/g,'="$1">')
.replace(rleadingWhitespace,"")],ownerDocument)[0]}else{
return this.cloneNode(true)}
});
if(events===true){
cloneCopyEvent(this,ret);
cloneCopyEvent(this.find("*"),ret.find("*"))}
return ret},
html:function(value){
if(value===undefined){
return this[0]&&this[0].nodeType===1?
this[0].innerHTML.replace(rinlinejQuery,""):
null}else if(typeof value==="string"&&!rnocache.test(value)&&
(jQuery.support.leadingWhitespace||!rleadingWhitespace.test(value))&&
!wrapMap[(rtagName.exec(value)||["",""])[1].toLowerCase()]){
value=value.replace(rxhtmlTag,fcloseTag);
try{
for(var i=0,l=this.length;i<l;i++){
if(this[i].nodeType===1){
jQuery.cleanData(this[i].getElementsByTagName("*"));
this[i].innerHTML=value}
}
}catch(e){
this.empty().append(value)}
}else if(jQuery.isFunction(value)){
this.each(function(i){
var self=jQuery(this),old=self.html();
self.empty().append(function(){
return value.call(this,i,old)})})}else{
this.empty().append(value)}
return this},
replaceWith:function(value){
if(this[0]&&this[0].parentNode){
if(jQuery.isFunction(value)){
return this.each(function(i){
var self=jQuery(this),old=self.html();
self.replaceWith(value.call(this,i,old))})}
if(typeof value!=="string"){
value=jQuery(value).detach()}
return this.each(function(){
var next=this.nextSibling,parent=this.parentNode;
jQuery(this).remove();
if(next){
jQuery(next).before(value)}else{
jQuery(parent).append(value)}
})}else{
return this.pushStack(jQuery(jQuery.isFunction(value)?value():value),"replaceWith",value)}
},
detach:function(selector){
return this.remove(selector,true)},
domManip:function(args,table,callback){
var results,first,value=args[0],scripts=[],fragment,parent;
if(!jQuery.support.checkClone&&arguments.length===3&&typeof value==="string"&&rchecked.test(value)){
return this.each(function(){
jQuery(this).domManip(args,table,callback,true)})}
if(jQuery.isFunction(value)){
return this.each(function(i){
var self=jQuery(this);
args[0]=value.call(this,i,table?self.html():undefined);
self.domManip(args,table,callback)})}
if(this[0]){
parent=value&&value.parentNode;
if(jQuery.support.parentNode&&parent&&parent.nodeType===11&&parent.childNodes.length===this.length){
results={fragment:parent}}else{
results=buildFragment(args,this,scripts)}
fragment=results.fragment;
if(fragment.childNodes.length===1){
first=fragment=fragment.firstChild}else{
first=fragment.firstChild}
if(first){
table=table&&jQuery.nodeName(first,"tr");
for(var i=0,l=this.length;i<l;i++){
callback.call(
table?
root(this[i],first):
this[i],
i>0||results.cacheable||this.length>1?
fragment.cloneNode(true):
fragment
)}
}
if(scripts.length){
jQuery.each(scripts,evalScript)}
}
return this;
function root(elem,cur){
return jQuery.nodeName(elem,"table")?
(elem.getElementsByTagName("tbody")[0]||
elem.appendChild(elem.ownerDocument.createElement("tbody"))):
elem}
}
});
function cloneCopyEvent(orig,ret){
var i=0;
ret.each(function(){
if(this.nodeName!==(orig[i]&&orig[i].nodeName)){
return}
var oldData=jQuery.data(orig[i++]),curData=jQuery.data(this,oldData),events=oldData&&oldData.events;
if(events){
delete curData.handle;
curData.events={};
for(var type in events){
for(var handler in events[type]){
jQuery.event.add(this,type,events[type][handler],events[type][handler].data)}
}
}
})}
function buildFragment(args,nodes,scripts){
var fragment,cacheable,cacheresults,
doc=(nodes&&nodes[0]?nodes[0].ownerDocument||nodes[0]:document);
if(args.length===1&&typeof args[0]==="string"&&args[0].length<512&&doc===document&&
!rnocache.test(args[0])&&(jQuery.support.checkClone||!rchecked.test(args[0]))){
cacheable=true;
cacheresults=jQuery.fragments[args[0]];
if(cacheresults){
if(cacheresults!==1){
fragment=cacheresults}
}
}
if(!fragment){
fragment=doc.createDocumentFragment();
jQuery.clean(args,doc,fragment,scripts)}
if(cacheable){
jQuery.fragments[args[0]]=cacheresults?fragment:1}
return{fragment:fragment,cacheable:cacheable}}
jQuery.fragments={};
jQuery.each({
appendTo:"append",
prependTo:"prepend",
insertBefore:"before",
insertAfter:"after",
replaceAll:"replaceWith"
},function(name,original){
jQuery.fn[name]=function(selector){
var ret=[],insert=jQuery(selector),
parent=this.length===1&&this[0].parentNode;
if(parent&&parent.nodeType===11&&parent.childNodes.length===1&&insert.length===1){
insert[original](this[0]);
return this}else{
for(var i=0,l=insert.length;i<l;i++){
var elems=(i>0?this.clone(true):this).get();
jQuery.fn[original].apply(jQuery(insert[i]),elems);
ret=ret.concat(elems)}
return this.pushStack(ret,name,insert.selector)}
}});
jQuery.extend({
clean:function(elems,context,fragment,scripts){
context=context||document;
if(typeof context.createElement==="undefined"){
context=context.ownerDocument||context[0]&&context[0].ownerDocument||document}
var ret=[];
for(var i=0,elem;(elem=elems[i])!=null;i++){
if(typeof elem==="number"){
elem+=""}
if(!elem){
continue}
if(typeof elem==="string"&&!rhtml.test(elem)){
elem=context.createTextNode(elem)}else if(typeof elem==="string"){
elem=elem.replace(rxhtmlTag,fcloseTag);
var tag=(rtagName.exec(elem)||["",""])[1].toLowerCase(),
wrap=wrapMap[tag]||wrapMap._default,
depth=wrap[0],
div=context.createElement("div");
div.innerHTML=wrap[1]+elem+wrap[2];
while(depth--){
div=div.lastChild}
if(!jQuery.support.tbody){
var hasBody=rtbody.test(elem),
tbody=tag==="table"&&!hasBody?
div.firstChild&&div.firstChild.childNodes:
wrap[1]==="<table>"&&!hasBody?
div.childNodes:
[];
for(var j=tbody.length-1;j>=0;--j){
if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length){
tbody[j].parentNode.removeChild(tbody[j])}
}
}
if(!jQuery.support.leadingWhitespace&&rleadingWhitespace.test(elem)){
div.insertBefore(context.createTextNode(rleadingWhitespace.exec(elem)[0]),div.firstChild)}
elem=div.childNodes}
if(elem.nodeType){
ret.push(elem)}else{
ret=jQuery.merge(ret,elem)}
}
if(fragment){
for(var i=0;ret[i];i++){
if(scripts&&jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){
scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i])}else{
if(ret[i].nodeType===1){
ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))))}
fragment.appendChild(ret[i])}
}
}
return ret},
cleanData:function(elems){
var data,id,cache=jQuery.cache,
special=jQuery.event.special,
deleteExpando=jQuery.support.deleteExpando;
for(var i=0,elem;(elem=elems[i])!=null;i++){
id=elem[jQuery.expando];
if(id){
data=cache[id];
if(data.events){
for(var type in data.events){
if(special[type]){
jQuery.event.remove(elem,type)}else{
removeEvent(elem,type,data.handle)}
}
}
if(deleteExpando){
delete elem[jQuery.expando]}else if(elem.removeAttribute){
elem.removeAttribute(jQuery.expando)}
delete cache[id]}
}
}
});
var rexclude=/z-?index|font-?weight|opacity|zoom|line-?height/i,
ralpha=/alpha\([^)]*\)/,
ropacity=/opacity=([^)]*)/,
rfloat=/float/i,
rdashAlpha=/-([a-z])/ig,
rupper=/([A-Z])/g,
rnumpx=/^-?\d+(?:px)?$/i,
rnum=/^-?\d/,
cssShow={position:"absolute",visibility:"hidden",display:"block"},
cssWidth=["Left","Right"],
cssHeight=["Top","Bottom"],
getComputedStyle=document.defaultView&&document.defaultView.getComputedStyle,
styleFloat=jQuery.support.cssFloat?"cssFloat":"styleFloat",
fcamelCase=function(all,letter){
return letter.toUpperCase()};
jQuery.fn.css=function(name,value){
return access(this,name,value,true,function(elem,name,value){
if(value===undefined){
return jQuery.curCSS(elem,name)}
if(typeof value==="number"&&!rexclude.test(name)){
value+="px"}
jQuery.style(elem,name,value)})};
jQuery.extend({
style:function(elem,name,value){
if(!elem||elem.nodeType===3||elem.nodeType===8){
return undefined}
if((name==="width"||name==="height")&&parseFloat(value)<0){
value=undefined}
var style=elem.style||elem,set=value!==undefined;
if(!jQuery.support.opacity&&name==="opacity"){
if(set){
style.zoom=1;
var opacity=parseInt(value,10)+""==="NaN"?"":"alpha(opacity="+value*100+")";
var filter=style.filter||jQuery.curCSS(elem,"filter")||"";
style.filter=ralpha.test(filter)?filter.replace(ralpha,opacity):opacity}
return style.filter&&style.filter.indexOf("opacity=")>=0?
(parseFloat(ropacity.exec(style.filter)[1])/100)+"":
""}
if(rfloat.test(name)){
name=styleFloat}
name=name.replace(rdashAlpha,fcamelCase);
if(set){
style[name]=value}
return style[name]},
css:function(elem,name,force,extra){
if(name==="width"||name==="height"){
var val,props=cssShow,which=name==="width"?cssWidth:cssHeight;
function getWH(){
val=name==="width"?elem.offsetWidth:elem.offsetHeight;
if(extra==="border"){
return}
jQuery.each(which,function(){
if(!extra){
val-=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0}
if(extra==="margin"){
val+=parseFloat(jQuery.curCSS(elem,"margin"+this,true))||0}else{
val-=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0}
})}
if(elem.offsetWidth!==0){
getWH()}else{
jQuery.swap(elem,props,getWH)}
return Math.max(0,Math.round(val))}
return jQuery.curCSS(elem,name,force)},
curCSS:function(elem,name,force){
var ret,style=elem.style,filter;
if(!jQuery.support.opacity&&name==="opacity"&&elem.currentStyle){
ret=ropacity.test(elem.currentStyle.filter||"")?
(parseFloat(RegExp.$1)/100)+"":
"";
return ret===""?
"1":
ret}
if(rfloat.test(name)){
name=styleFloat}
if(!force&&style&&style[name]){
ret=style[name]}else if(getComputedStyle){
if(rfloat.test(name)){
name="float"}
name=name.replace(rupper,"-$1").toLowerCase();
var defaultView=elem.ownerDocument.defaultView;
if(!defaultView){
return null}
var computedStyle=defaultView.getComputedStyle(elem,null);
if(computedStyle){
ret=computedStyle.getPropertyValue(name)}
if(name==="opacity"&&ret===""){
ret="1"}
}else if(elem.currentStyle){
var camelCase=name.replace(rdashAlpha,fcamelCase);
ret=elem.currentStyle[name]||elem.currentStyle[camelCase];
if(!rnumpx.test(ret)&&rnum.test(ret)){
var left=style.left,rsLeft=elem.runtimeStyle.left;
elem.runtimeStyle.left=elem.currentStyle.left;
style.left=camelCase==="fontSize"?"1em":(ret||0);
ret=style.pixelLeft+"px";
style.left=left;
elem.runtimeStyle.left=rsLeft}
}
return ret},
swap:function(elem,options,callback){
var old={};
for(var name in options){
old[name]=elem.style[name];
elem.style[name]=options[name]}
callback.call(elem);
for(var name in options){
elem.style[name]=old[name]}
}
});
if(jQuery.expr&&jQuery.expr.filters){
jQuery.expr.filters.hidden=function(elem){
var width=elem.offsetWidth,height=elem.offsetHeight,
skip=elem.nodeName.toLowerCase()==="tr";
return width===0&&height===0&&!skip?
true:
width>0&&height>0&&!skip?
false:
jQuery.curCSS(elem,"display")==="none"};
jQuery.expr.filters.visible=function(elem){
return!jQuery.expr.filters.hidden(elem)}}
var jsc=now(),
rscript=/<script(.|\s)*?\/script>/gi,
rselectTextarea=/select|textarea/i,
rinput=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,
jsre=/=\?(&|$)/,
rquery=/\?/,
rts=/(\?|&)_=.*?(&|$)/,
rurl=/^(\w+:)?\/\/([^\/?#]+)/,
r20=/%20/g,
_load=jQuery.fn.load;
jQuery.fn.extend({
load:function(url,params,callback){
if(typeof url!=="string"){
return _load.call(this,url)}else if(!this.length){
return this}
var off=url.indexOf(" ");
if(off>=0){
var selector=url.slice(off,url.length);
url=url.slice(0,off)}
var type="GET";
if(params){
if(jQuery.isFunction(params)){
callback=params;
params=null}else if(typeof params==="object"){
params=jQuery.param(params,jQuery.ajaxSettings.traditional);
type="POST"}
}
var self=this;
jQuery.ajax({
url:url,
type:type,
dataType:"html",
data:params,
complete:function(res,status){
if(status==="success"||status==="notmodified"){
self.html(selector?
jQuery("<div />")
.append(res.responseText.replace(rscript,""))
.find(selector):
res.responseText)}
if(callback){
self.each(callback,[res.responseText,status,res])}
}
});
return this},
serialize:function(){
return jQuery.param(this.serializeArray())},
serializeArray:function(){
return this.map(function(){
return this.elements?jQuery.makeArray(this.elements):this})
.filter(function(){
return this.name&&!this.disabled&&
(this.checked||rselectTextarea.test(this.nodeName)||
rinput.test(this.type))})
.map(function(i,elem){
var val=jQuery(this).val();
return val==null?
null:
jQuery.isArray(val)?
jQuery.map(val,function(val,i){
return{name:elem.name,value:val}}):
{name:elem.name,value:val}}).get()}
});
jQuery.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(i,o){
jQuery.fn[o]=function(f){
return this.bind(o,f)}});
jQuery.extend({
get:function(url,data,callback,type){
if(jQuery.isFunction(data)){
type=type||callback;
callback=data;
data=null}
return jQuery.ajax({
type:"GET",
url:url,
data:data,
success:callback,
dataType:type
})},
getScript:function(url,callback){
return jQuery.get(url,null,callback,"script")},
getJSON:function(url,data,callback){
return jQuery.get(url,data,callback,"json")},
post:function(url,data,callback,type){
if(jQuery.isFunction(data)){
type=type||callback;
callback=data;
data={}}
return jQuery.ajax({
type:"POST",
url:url,
data:data,
success:callback,
dataType:type
})},
ajaxSetup:function(settings){
jQuery.extend(jQuery.ajaxSettings,settings)},
ajaxSettings:{
url:location.href,
global:true,
type:"GET",
contentType:"application/x-www-form-urlencoded",
processData:true,
async:true,
xhr:window.XMLHttpRequest&&(window.location.protocol!=="file:"||!window.ActiveXObject)?
function(){
return new window.XMLHttpRequest()}:
function(){
try{
return new window.ActiveXObject("Microsoft.XMLHTTP")}catch(e){}
},
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(origSettings){
var s=jQuery.extend(true,{},jQuery.ajaxSettings,origSettings);
var jsonp,status,data,
callbackContext=origSettings&&origSettings.context||s,
type=s.type.toUpperCase();
if(s.data&&s.processData&&typeof s.data!=="string"){
s.data=jQuery.param(s.data,s.traditional)}
if(s.dataType==="jsonp"){
if(type==="GET"){
if(!jsre.test(s.url)){
s.url+=(rquery.test(s.url)?"&":"?")+(s.jsonp||"callback")+"=?"}
}else if(!s.data||!jsre.test(s.data)){
s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?"}
s.dataType="json"}
if(s.dataType==="json"&&(s.data&&jsre.test(s.data)||jsre.test(s.url))){
jsonp=s.jsonpCallback||("jsonp"+jsc++);
if(s.data){
s.data=(s.data+"").replace(jsre,"="+jsonp+"$1")}
s.url=s.url.replace(jsre,"="+jsonp+"$1");
s.dataType="script";
window[jsonp]=window[jsonp]||function(tmp){
data=tmp;
success();
complete();
window[jsonp]=undefined;
try{
delete window[jsonp]}catch(e){}
if(head){
head.removeChild(script)}
}}
if(s.dataType==="script"&&s.cache===null){
s.cache=false}
if(s.cache===false&&type==="GET"){
var ts=now();
var ret=s.url.replace(rts,"$1_="+ts+"$2");
s.url=ret+((ret===s.url)?(rquery.test(s.url)?"&":"?")+"_="+ts:"")}
if(s.data&&type==="GET"){
s.url+=(rquery.test(s.url)?"&":"?")+s.data}
if(s.global&&!jQuery.active++){
jQuery.event.trigger("ajaxStart")}
var parts=rurl.exec(s.url),
remote=parts&&(parts[1]&&parts[1]!==location.protocol||parts[2]!==location.host);
if(s.dataType==="script"&&type==="GET"&&remote){
var head=document.getElementsByTagName("head")[0]||document.documentElement;
var script=document.createElement("script");
script.src=s.url;
if(s.scriptCharset){
script.charset=s.scriptCharset}
if(!jsonp){
var done=false;
script.onload=script.onreadystatechange=function(){
if(!done&&(!this.readyState||
this.readyState==="loaded"||this.readyState==="complete")){
done=true;
success();
complete();
script.onload=script.onreadystatechange=null;
if(head&&script.parentNode){
head.removeChild(script)}
}
}}
head.insertBefore(script,head.firstChild);
return undefined}
var requestDone=false;
var xhr=s.xhr();
if(!xhr){
return}
if(s.username){
xhr.open(type,s.url,s.async,s.username,s.password)}else{
xhr.open(type,s.url,s.async)}
try{
if(s.data||origSettings&&origSettings.contentType){
xhr.setRequestHeader("Content-Type",s.contentType)}
if(s.ifModified){
if(jQuery.lastModified[s.url]){
xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url])}
if(jQuery.etag[s.url]){
xhr.setRequestHeader("If-None-Match",jQuery.etag[s.url])}
}
if(!remote){
xhr.setRequestHeader("X-Requested-With","XMLHttpRequest")}
xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?
s.accepts[s.dataType]+", */*":
s.accepts._default)}catch(e){}
if(s.beforeSend&&s.beforeSend.call(callbackContext,xhr,s)===false){
if(s.global&&!--jQuery.active){
jQuery.event.trigger("ajaxStop")}
xhr.abort();
return false}
if(s.global){
trigger("ajaxSend",[xhr,s])}
var onreadystatechange=xhr.onreadystatechange=function(isTimeout){
if(!xhr||xhr.readyState===0||isTimeout==="abort"){
if(!requestDone){
complete()}
requestDone=true;
if(xhr){
xhr.onreadystatechange=jQuery.noop}
}else if(!requestDone&&xhr&&(xhr.readyState===4||isTimeout==="timeout")){
requestDone=true;
xhr.onreadystatechange=jQuery.noop;
status=isTimeout==="timeout"?
"timeout":
!jQuery.httpSuccess(xhr)?
"error":
s.ifModified&&jQuery.httpNotModified(xhr,s.url)?
"notmodified":
"success";
var errMsg;
if(status==="success"){
try{
data=jQuery.httpData(xhr,s.dataType,s)}catch(err){
status="parsererror";
errMsg=err}
}
if(status==="success"||status==="notmodified"){
if(!jsonp){
success()}
}else{
jQuery.handleError(s,xhr,status,errMsg)}
complete();
if(isTimeout==="timeout"){
xhr.abort()}
if(s.async){
xhr=null}
}
};
try{
var oldAbort=xhr.abort;
xhr.abort=function(){
if(xhr){
oldAbort.call(xhr)}
onreadystatechange("abort")}}catch(e){}
if(s.async&&s.timeout>0){
setTimeout(function(){
if(xhr&&!requestDone){
onreadystatechange("timeout")}
},s.timeout)}
try{
xhr.send(type==="POST"||type==="PUT"||type==="DELETE"?s.data:null)}catch(e){
jQuery.handleError(s,xhr,null,e);
complete()}
if(!s.async){
onreadystatechange()}
function success(){
if(s.success){
s.success.call(callbackContext,data,status,xhr)}
if(s.global){
trigger("ajaxSuccess",[xhr,s])}
}
function complete(){
if(s.complete){
s.complete.call(callbackContext,xhr,status)}
if(s.global){
trigger("ajaxComplete",[xhr,s])}
if(s.global&&!--jQuery.active){
jQuery.event.trigger("ajaxStop")}
}
function trigger(type,args){
(s.context?jQuery(s.context):jQuery.event).trigger(type,args)}
return xhr},
handleError:function(s,xhr,status,e){
if(s.error){
s.error.call(s.context||s,xhr,status,e)}
if(s.global){
(s.context?jQuery(s.context):jQuery.event).trigger("ajaxError",[xhr,s,e])}
},
active:0,
httpSuccess:function(xhr){
try{
return!xhr.status&&location.protocol==="file:"||
(xhr.status>=200&&xhr.status<300)||
xhr.status===304||xhr.status===1223||xhr.status===0}catch(e){}
return false},
httpNotModified:function(xhr,url){
var lastModified=xhr.getResponseHeader("Last-Modified"),
etag=xhr.getResponseHeader("Etag");
if(lastModified){
jQuery.lastModified[url]=lastModified}
if(etag){
jQuery.etag[url]=etag}
return xhr.status===304||xhr.status===0},
httpData:function(xhr,type,s){
var ct=xhr.getResponseHeader("content-type")||"",
xml=type==="xml"||!type&&ct.indexOf("xml")>=0,
data=xml?xhr.responseXML:xhr.responseText;
if(xml&&data.documentElement.nodeName==="parsererror"){
jQuery.error("parsererror")}
if(s&&s.dataFilter){
data=s.dataFilter(data,type)}
if(typeof data==="string"){
if(type==="json"||!type&&ct.indexOf("json")>=0){
data=jQuery.parseJSON(data)}else if(type==="script"||!type&&ct.indexOf("javascript")>=0){
jQuery.globalEval(data)}
}
return data},
param:function(a,traditional){
var s=[];
if(traditional===undefined){
traditional=jQuery.ajaxSettings.traditional}
if(jQuery.isArray(a)||a.jquery){
jQuery.each(a,function(){
add(this.name,this.value)})}else{
for(var prefix in a){
buildParams(prefix,a[prefix])}
}
return s.join("&").replace(r20,"+");
function buildParams(prefix,obj){
if(jQuery.isArray(obj)){
jQuery.each(obj,function(i,v){
if(traditional||/\[\]$/.test(prefix)){
add(prefix,v)}else{
buildParams(prefix+"["+(typeof v==="object"||jQuery.isArray(v)?i:"")+"]",v)}
})}else if(!traditional&&obj!=null&&typeof obj==="object"){
jQuery.each(obj,function(k,v){
buildParams(prefix+"["+k+"]",v)})}else{
add(prefix,obj)}
}
function add(key,value){
value=jQuery.isFunction(value)?value():value;
s[s.length]=encodeURIComponent(key)+"="+encodeURIComponent(value)}
}
});
var elemdisplay={},
rfxtypes=/toggle|show|hide/,
rfxnum=/^([+-]=)?([\d+-.]+)(.*)$/,
timerId,
fxAttrs=[
["height","marginTop","marginBottom","paddingTop","paddingBottom"],
["width","marginLeft","marginRight","paddingLeft","paddingRight"],
["opacity"]
];
jQuery.fn.extend({
show:function(speed,callback){
if(speed||speed===0){
return this.animate(genFx("show",3),speed,callback)}else{
for(var i=0,l=this.length;i<l;i++){
var old=jQuery.data(this[i],"olddisplay");
this[i].style.display=old||"";
if(jQuery.css(this[i],"display")==="none"){
var nodeName=this[i].nodeName,display;
if(elemdisplay[nodeName]){
display=elemdisplay[nodeName]}else{
var elem=jQuery("<"+nodeName+" />").appendTo("body");
display=elem.css("display");
if(display==="none"){
display="block"}
elem.remove();
elemdisplay[nodeName]=display}
jQuery.data(this[i],"olddisplay",display)}
}
for(var j=0,k=this.length;j<k;j++){
this[j].style.display=jQuery.data(this[j],"olddisplay")||""}
return this}
},
hide:function(speed,callback){
if(speed||speed===0){
return this.animate(genFx("hide",3),speed,callback)}else{
for(var i=0,l=this.length;i<l;i++){
var old=jQuery.data(this[i],"olddisplay");
if(!old&&old!=="none"){
jQuery.data(this[i],"olddisplay",jQuery.css(this[i],"display"))}
}
for(var j=0,k=this.length;j<k;j++){
this[j].style.display="none"}
return this}
},
_toggle:jQuery.fn.toggle,
toggle:function(fn,fn2){
var bool=typeof fn==="boolean";
if(jQuery.isFunction(fn)&&jQuery.isFunction(fn2)){
this._toggle.apply(this,arguments)}else if(fn==null||bool){
this.each(function(){
var state=bool?fn:jQuery(this).is(":hidden");
jQuery(this)[state?"show":"hide"]()})}else{
this.animate(genFx("toggle",3),fn,fn2)}
return this},
fadeTo:function(speed,to,callback){
return this.filter(":hidden").css("opacity",0).show().end()
.animate({opacity:to},speed,callback)},
animate:function(prop,speed,easing,callback){
var optall=jQuery.speed(speed,easing,callback);
if(jQuery.isEmptyObject(prop)){
return this.each(optall.complete)}
return this[optall.queue===false?"each":"queue"](function(){
var opt=jQuery.extend({},optall),p,
hidden=this.nodeType===1&&jQuery(this).is(":hidden"),
self=this;
for(p in prop){
var name=p.replace(rdashAlpha,fcamelCase);
if(p!==name){
prop[name]=prop[p];
delete prop[p];
p=name}
if(prop[p]==="hide"&&hidden||prop[p]==="show"&&!hidden){
return opt.complete.call(this)}
if((p==="height"||p==="width")&&this.style){
opt.display=jQuery.css(this,"display");
opt.overflow=this.style.overflow}
if(jQuery.isArray(prop[p])){
(opt.specialEasing=opt.specialEasing||{})[p]=prop[p][1];
prop[p]=prop[p][0]}
}
if(opt.overflow!=null){
this.style.overflow="hidden"}
opt.curAnim=jQuery.extend({},prop);
jQuery.each(prop,function(name,val){
var e=new jQuery.fx(self,opt,name);
if(rfxtypes.test(val)){
e[val==="toggle"?hidden?"show":"hide":val](prop)}else{
var parts=rfxnum.exec(val),
start=e.cur(true)||0;
if(parts){
var end=parseFloat(parts[2]),
unit=parts[3]||"px";
if(unit!=="px"){
self.style[name]=(end||1)+unit;
start=((end||1)/e.cur(true))*start;
self.style[name]=start+unit}
if(parts[1]){
end=((parts[1]==="-="?-1:1)*end)+start}
e.custom(start,end,unit)}else{
e.custom(start,val,"")}
}
});
return true})},
stop:function(clearQueue,gotoEnd){
var timers=jQuery.timers;
if(clearQueue){
this.queue([])}
this.each(function(){
for(var i=timers.length-1;i>=0;i--){
if(timers[i].elem===this){
if(gotoEnd){
timers[i](true)}
timers.splice(i,1)}
}
});
if(!gotoEnd){
this.dequeue()}
return this}
});
jQuery.each({
slideDown:genFx("show",1),
slideUp:genFx("hide",1),
slideToggle:genFx("toggle",1),
fadeIn:{opacity:"show"},
fadeOut:{opacity:"hide"}
},function(name,props){
jQuery.fn[name]=function(speed,callback){
return this.animate(props,speed,callback)}});
jQuery.extend({
speed:function(speed,easing,fn){
var opt=speed&&typeof speed==="object"?speed:{
complete:fn||!fn&&easing||
jQuery.isFunction(speed)&&speed,
duration:speed,
easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing
};
opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:
jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;
opt.old=opt.complete;
opt.complete=function(){
if(opt.queue!==false){
jQuery(this).dequeue()}
if(jQuery.isFunction(opt.old)){
opt.old.call(this)}
};
return opt},
easing:{
linear:function(p,n,firstNum,diff){
return firstNum+diff*p},
swing:function(p,n,firstNum,diff){
return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum}
},
timers:[],
fx:function(elem,options,prop){
this.options=options;
this.elem=elem;
this.prop=prop;
if(!options.orig){
options.orig={}}
}
});
jQuery.fx.prototype={
update:function(){
if(this.options.step){
this.options.step.call(this.elem,this.now,this)}
(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);
if((this.prop==="height"||this.prop==="width")&&this.elem.style){
this.elem.style.display="block"}
},
cur:function(force){
if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){
return this.elem[this.prop]}
var r=parseFloat(jQuery.css(this.elem,this.prop,force));
return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0},
custom:function(from,to,unit){
this.startTime=now();
this.start=from;
this.end=to;
this.unit=unit||this.unit||"px";
this.now=this.start;
this.pos=this.state=0;
var self=this;
function t(gotoEnd){
return self.step(gotoEnd)}
t.elem=this.elem;
if(t()&&jQuery.timers.push(t)&&!timerId){
timerId=setInterval(jQuery.fx.tick,13)}
},
show:function(){
this.options.orig[this.prop]=jQuery.style(this.elem,this.prop);
this.options.show=true;
this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());
jQuery(this.elem).show()},
hide:function(){
this.options.orig[this.prop]=jQuery.style(this.elem,this.prop);
this.options.hide=true;
this.custom(this.cur(),0)},
step:function(gotoEnd){
var t=now(),done=true;
if(gotoEnd||t>=this.options.duration+this.startTime){
this.now=this.end;
this.pos=this.state=1;
this.update();
this.options.curAnim[this.prop]=true;
for(var i in this.options.curAnim){
if(this.options.curAnim[i]!==true){
done=false}
}
if(done){
if(this.options.display!=null){
this.elem.style.overflow=this.options.overflow;
var old=jQuery.data(this.elem,"olddisplay");
this.elem.style.display=old?old:this.options.display;
if(jQuery.css(this.elem,"display")==="none"){
this.elem.style.display="block"}
}
if(this.options.hide){
jQuery(this.elem).hide()}
if(this.options.hide||this.options.show){
for(var p in this.options.curAnim){
jQuery.style(this.elem,p,this.options.orig[p])}
}
this.options.complete.call(this.elem)}
return false}else{
var n=t-this.startTime;
this.state=n/this.options.duration;
var specialEasing=this.options.specialEasing&&this.options.specialEasing[this.prop];
var defaultEasing=this.options.easing||(jQuery.easing.swing?"swing":"linear");
this.pos=jQuery.easing[specialEasing||defaultEasing](this.state,n,0,1,this.options.duration);
this.now=this.start+((this.end-this.start)*this.pos);
this.update()}
return true}
};
jQuery.extend(jQuery.fx,{
tick:function(){
var timers=jQuery.timers;
for(var i=0;i<timers.length;i++){
if(!timers[i]()){
timers.splice(i--,1)}
}
if(!timers.length){
jQuery.fx.stop()}
},
stop:function(){
clearInterval(timerId);
timerId=null},
speeds:{
slow:600,
fast:200,
_default:400
},
step:{
opacity:function(fx){
jQuery.style(fx.elem,"opacity",fx.now)},
_default:function(fx){
if(fx.elem.style&&fx.elem.style[fx.prop]!=null){
fx.elem.style[fx.prop]=(fx.prop==="width"||fx.prop==="height"?Math.max(0,fx.now):fx.now)+fx.unit}else{
fx.elem[fx.prop]=fx.now}
}
}
});
if(jQuery.expr&&jQuery.expr.filters){
jQuery.expr.filters.animated=function(elem){
return jQuery.grep(jQuery.timers,function(fn){
return elem===fn.elem}).length}}
function genFx(type,num){
var obj={};
jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){
obj[this]=type});
return obj}
if("getBoundingClientRect"in document.documentElement){
jQuery.fn.offset=function(options){
var elem=this[0];
if(options){
return this.each(function(i){
jQuery.offset.setOffset(this,options,i)})}
if(!elem||!elem.ownerDocument){
return null}
if(elem===elem.ownerDocument.body){
return jQuery.offset.bodyOffset(elem)}
var box=elem.getBoundingClientRect(),doc=elem.ownerDocument,body=doc.body,docElem=doc.documentElement,
clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,
top=box.top+(self.pageYOffset||jQuery.support.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,
left=box.left+(self.pageXOffset||jQuery.support.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;
return{top:top,left:left}}}else{
jQuery.fn.offset=function(options){
var elem=this[0];
if(options){
return this.each(function(i){
jQuery.offset.setOffset(this,options,i)})}
if(!elem||!elem.ownerDocument){
return null}
if(elem===elem.ownerDocument.body){
return jQuery.offset.bodyOffset(elem)}
jQuery.offset.initialize();
var offsetParent=elem.offsetParent,prevOffsetParent=elem,
doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,
body=doc.body,defaultView=doc.defaultView,
prevComputedStyle=defaultView?defaultView.getComputedStyle(elem,null):elem.currentStyle,
top=elem.offsetTop,left=elem.offsetLeft;
while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){
if(jQuery.offset.supportsFixedPosition&&prevComputedStyle.position==="fixed"){
break}
computedStyle=defaultView?defaultView.getComputedStyle(elem,null):elem.currentStyle;
top-=elem.scrollTop;
left-=elem.scrollLeft;
if(elem===offsetParent){
top+=elem.offsetTop;
left+=elem.offsetLeft;
if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.nodeName))){
top+=parseFloat(computedStyle.borderTopWidth)||0;
left+=parseFloat(computedStyle.borderLeftWidth)||0}
prevOffsetParent=offsetParent,offsetParent=elem.offsetParent}
if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible"){
top+=parseFloat(computedStyle.borderTopWidth)||0;
left+=parseFloat(computedStyle.borderLeftWidth)||0}
prevComputedStyle=computedStyle}
if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static"){
top+=body.offsetTop;
left+=body.offsetLeft}
if(jQuery.offset.supportsFixedPosition&&prevComputedStyle.position==="fixed"){
top+=Math.max(docElem.scrollTop,body.scrollTop);
left+=Math.max(docElem.scrollLeft,body.scrollLeft)}
return{top:top,left:left}}}
jQuery.offset={
initialize:function(){
var body=document.body,container=document.createElement("div"),innerDiv,checkDiv,table,td,bodyMarginTop=parseFloat(jQuery.curCSS(body,"marginTop",true))||0,
html="<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>";
jQuery.extend(container.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"});
container.innerHTML=html;
body.insertBefore(container,body.firstChild);
innerDiv=container.firstChild;
checkDiv=innerDiv.firstChild;
td=innerDiv.nextSibling.firstChild.firstChild;
this.doesNotAddBorder=(checkDiv.offsetTop!==5);
this.doesAddBorderForTableAndCells=(td.offsetTop===5);
checkDiv.style.position="fixed",checkDiv.style.top="20px";
this.supportsFixedPosition=(checkDiv.offsetTop===20||checkDiv.offsetTop===15);
checkDiv.style.position=checkDiv.style.top="";
innerDiv.style.overflow="hidden",innerDiv.style.position="relative";
this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);
this.doesNotIncludeMarginInBodyOffset=(body.offsetTop!==bodyMarginTop);
body.removeChild(container);
body=container=innerDiv=checkDiv=table=td=null;
jQuery.offset.initialize=jQuery.noop},
bodyOffset:function(body){
var top=body.offsetTop,left=body.offsetLeft;
jQuery.offset.initialize();
if(jQuery.offset.doesNotIncludeMarginInBodyOffset){
top+=parseFloat(jQuery.curCSS(body,"marginTop",true))||0;
left+=parseFloat(jQuery.curCSS(body,"marginLeft",true))||0}
return{top:top,left:left}},
setOffset:function(elem,options,i){
if(/static/.test(jQuery.curCSS(elem,"position"))){
elem.style.position="relative"}
var curElem=jQuery(elem),
curOffset=curElem.offset(),
curTop=parseInt(jQuery.curCSS(elem,"top",true),10)||0,
curLeft=parseInt(jQuery.curCSS(elem,"left",true),10)||0;
if(jQuery.isFunction(options)){
options=options.call(elem,i,curOffset)}
var props={
top:(options.top-curOffset.top)+curTop,
left:(options.left-curOffset.left)+curLeft
};
if("using"in options){
options.using.call(elem,props)}else{
curElem.css(props)}
}
};
jQuery.fn.extend({
position:function(){
if(!this[0]){
return null}
var elem=this[0],
offsetParent=this.offsetParent(),
offset=this.offset(),
parentOffset=/^body|html$/i.test(offsetParent[0].nodeName)?{top:0,left:0}:offsetParent.offset();
offset.top-=parseFloat(jQuery.curCSS(elem,"marginTop",true))||0;
offset.left-=parseFloat(jQuery.curCSS(elem,"marginLeft",true))||0;
parentOffset.top+=parseFloat(jQuery.curCSS(offsetParent[0],"borderTopWidth",true))||0;
parentOffset.left+=parseFloat(jQuery.curCSS(offsetParent[0],"borderLeftWidth",true))||0;
return{
top:offset.top-parentOffset.top,
left:offset.left-parentOffset.left
}},
offsetParent:function(){
return this.map(function(){
var offsetParent=this.offsetParent||document.body;
while(offsetParent&&(!/^body|html$/i.test(offsetParent.nodeName)&&jQuery.css(offsetParent,"position")==="static")){
offsetParent=offsetParent.offsetParent}
return offsetParent})}
});
jQuery.each(["Left","Top"],function(i,name){
var method="scroll"+name;
jQuery.fn[method]=function(val){
var elem=this[0],win;
if(!elem){
return null}
if(val!==undefined){
return this.each(function(){
win=getWindow(this);
if(win){
win.scrollTo(
!i?val:jQuery(win).scrollLeft(),
i?val:jQuery(win).scrollTop()
)}else{
this[method]=val}
})}else{
win=getWindow(elem);
return win?("pageXOffset"in win)?win[i?"pageYOffset":"pageXOffset"]:
jQuery.support.boxModel&&win.document.documentElement[method]||
win.document.body[method]:
elem[method]}
}});
function getWindow(elem){
return("scrollTo"in elem&&elem.document)?
elem:
elem.nodeType===9?
elem.defaultView||elem.parentWindow:
false}
jQuery.each(["Height","Width"],function(i,name){
var type=name.toLowerCase();
jQuery.fn["inner"+name]=function(){
return this[0]?
jQuery.css(this[0],type,false,"padding"):
null};
jQuery.fn["outer"+name]=function(margin){
return this[0]?
jQuery.css(this[0],type,false,margin?"margin":"border"):
null};
jQuery.fn[type]=function(size){
var elem=this[0];
if(!elem){
return size==null?null:this}
if(jQuery.isFunction(size)){
return this.each(function(i){
var self=jQuery(this);
self[type](size.call(this,i,self[type]()))})}
return("scrollTo"in elem&&elem.document)?elem.document.compatMode==="CSS1Compat"&&elem.document.documentElement["client"+name]||
elem.document.body["client"+name]:
(elem.nodeType===9)?Math.max(
elem.documentElement["client"+name],
elem.body["scroll"+name],elem.documentElement["scroll"+name],
elem.body["offset"+name],elem.documentElement["offset"+name]
):
size===undefined?
jQuery.css(elem,type):
this.css(type,typeof size==="string"?size:size+"px")}});
window.jQuery=window.$=jQuery})(window);


/* prive/javascript/jquery.form.js */

;(function($){
$.fn.ajaxSubmit=function(options){
if(!this.length){
log('ajaxSubmit: skipping submit process - no element selected');
return this}
if(typeof options=='function')
options={success:options};
var url=$.trim(this.attr('action'));
if(url){
url=(url.match(/^([^#]+)/)||[])[1]}
url=url||window.location.href||'';
options=$.extend({
url:url,
type:this.attr('method')||'GET',
iframeSrc:/^https/i.test(window.location.href||'')?'javascript:false':'about:blank'
},options||{});
var veto={};
this.trigger('form-pre-serialize',[this,options,veto]);
if(veto.veto){
log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');
return this}
if(options.beforeSerialize&&options.beforeSerialize(this,options)===false){
log('ajaxSubmit: submit aborted via beforeSerialize callback');
return this}
var a=this.formToArray(options.semantic);
if(options.data){
options.extraData=options.data;
for(var n in options.data){
if(options.data[n]instanceof Array){
for(var k in options.data[n])
a.push({name:n,value:options.data[n][k]})}
else
a.push({name:n,value:options.data[n]})}
}
if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){
log('ajaxSubmit: submit aborted via beforeSubmit callback');
return this}
this.trigger('form-submit-validate',[a,this,options,veto]);
if(veto.veto){
log('ajaxSubmit: submit vetoed via form-submit-validate trigger');
return this}
var q=$.param(a);
if(options.type.toUpperCase()=='GET'){
options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;
options.data=null}
else
options.data=q;
var $form=this,callbacks=[];
if(options.resetForm)callbacks.push(function(){$form.resetForm()});
if(options.clearForm)callbacks.push(function(){$form.clearForm()});
if(!options.dataType&&options.target){
var oldSuccess=options.success||function(){};
callbacks.push(function(data){
$(options.target).html(data).each(oldSuccess,arguments)})}
else if(options.success)
callbacks.push(options.success);
options.success=function(data,status){
for(var i=0,max=callbacks.length;i<max;i++)
callbacks[i].apply(options,[data,status,$form])};
var files=$('input:file',this).fieldValue();
var found=false;
for(var j=0;j<files.length;j++)
if(files[j])
found=true;
var multipart=false;
if((files.length&&options.iframe!==false)||options.iframe||found||multipart){
if(options.closeKeepAlive)
$.get(options.closeKeepAlive,fileUpload);
else
fileUpload()}
else
$.ajax(options);
this.trigger('form-submit-notify',[this,options]);
return this;
function fileUpload(){
var form=$form[0];
if($(':input[name=submit]',form).length){
alert('Error: Form elements must not be named "submit".');
return}
var opts=$.extend({},$.ajaxSettings,options);
var s=$.extend(true,{},$.extend(true,{},$.ajaxSettings),opts);
var id='jqFormIO'+(new Date().getTime());
var $io=$('<iframe id="'+id+'" name="'+id+'" src="'+opts.iframeSrc+'" />');
var io=$io[0];
$io.css({position:'absolute',top:'-1000px',left:'-1000px'});
var xhr={aborted:0,
responseText:null,
responseXML:null,
status:0,
statusText:'n/a',
getAllResponseHeaders:function(){},
getResponseHeader:function(){},
setRequestHeader:function(){},
abort:function(){
this.aborted=1;
$io.attr('src',opts.iframeSrc)}
};
var g=opts.global;
if(g&&!$.active++)$.event.trigger("ajaxStart");
if(g)$.event.trigger("ajaxSend",[xhr,opts]);
if(s.beforeSend&&s.beforeSend(xhr,s)===false){
s.global&&$.active--;
return}
if(xhr.aborted)
return;
var cbInvoked=0;
var timedOut=0;
var sub=form.clk;
if(sub){
var n=sub.name;
if(n&&!sub.disabled){
options.extraData=options.extraData||{};
options.extraData[n]=sub.value;
if(sub.type=="image"){
options.extraData[name+'.x']=form.clk_x;
options.extraData[name+'.y']=form.clk_y}
}
}
setTimeout(function(){
var t=$form.attr('target'),a=$form.attr('action');
form.setAttribute('target',id);
if(form.getAttribute('method')!='POST')
form.setAttribute('method','POST');
if(form.getAttribute('action')!=opts.url)
form.setAttribute('action',opts.url);
if(!options.skipEncodingOverride){
$form.attr({
encoding:'multipart/form-data',
enctype:'multipart/form-data'
})}
if(opts.timeout)
setTimeout(function(){timedOut=true;cb()},opts.timeout);
var extraInputs=[];
try{
if(options.extraData)
for(var n in options.extraData)
extraInputs.push(
$('<input type="hidden" name="'+n+'" value="'+options.extraData[n]+'" />')
.appendTo(form)[0]);
$io.appendTo('body');
io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);
form.submit()}
finally{
form.setAttribute('action',a);
t?form.setAttribute('target',t):$form.removeAttr('target');
$(extraInputs).remove()}
},10);
var domCheckCount=50;
function cb(){
if(cbInvoked++)return;
io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);
var ok=true;
try{
if(timedOut)throw'timeout';
var data,doc;
doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;
var isXml=opts.dataType=='xml'||doc.XMLDocument||$.isXMLDoc(doc);
log('isXml='+isXml);
if(!isXml&&(doc.body==null||doc.body.innerHTML=='')){
if(--domCheckCount){
cbInvoked=0;
setTimeout(cb,100);
return}
log('Could not access iframe DOM after 50 tries.');
return}
xhr.responseText=doc.body?doc.body.innerHTML:null;
xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;
xhr.getResponseHeader=function(header){
var headers={'content-type':opts.dataType};
return headers[header]};
if(opts.dataType=='json'||opts.dataType=='script'){
var ta=doc.getElementsByTagName('textarea')[0];
if(ta)
xhr.responseText=ta.value;
else{
var pre=doc.getElementsByTagName('pre')[0];
if(pre)
xhr.responseText=pre.innerHTML}
}
else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){
xhr.responseXML=toXml(xhr.responseText)}
data=$.httpData(xhr,opts.dataType)}
catch(e){
ok=false;
$.handleError(opts,xhr,'error',e)}
if(ok){
opts.success(data,'success');
if(g)$.event.trigger("ajaxSuccess",[xhr,opts])}
if(g)$.event.trigger("ajaxComplete",[xhr,opts]);
if(g&&!--$.active)$.event.trigger("ajaxStop");
if(opts.complete)opts.complete(xhr,ok?'success':'error');
setTimeout(function(){
$io.remove();
xhr.responseXML=null},100)};
function toXml(s,doc){
if(window.ActiveXObject){
doc=new ActiveXObject('Microsoft.XMLDOM');
doc.async='false';
doc.loadXML(s)}
else
doc=(new DOMParser()).parseFromString(s,'text/xml');
return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null}}};
$.fn.ajaxForm=function(options){
return this.ajaxFormUnbind().bind('submit.form-plugin',function(){
$(this).ajaxSubmit(options);
return false}).bind('click.form-plugin',function(e){
var target=e.target;
var $el=$(target);
if(!($el.is(":submit,input:image"))){
var t=$el.closest(':submit');
if(t.length==0)
return;
target=t[0]}
var form=this;
form.clk=target;
if(target.type=='image'){
if(e.offsetX!=undefined){
form.clk_x=e.offsetX;
form.clk_y=e.offsetY}else if(typeof $.fn.offset=='function'){var offset=$el.offset();
form.clk_x=e.pageX-offset.left;
form.clk_y=e.pageY-offset.top}else{
form.clk_x=e.pageX-target.offsetLeft;
form.clk_y=e.pageY-target.offsetTop}
}
setTimeout(function(){form.clk=form.clk_x=form.clk_y=null},100)})};
$.fn.ajaxFormUnbind=function(){
return this.unbind('submit.form-plugin click.form-plugin')};
$.fn.formToArray=function(semantic){
var a=[];
if(this.length==0)return a;
var form=this[0];
var els=semantic?form.getElementsByTagName('*'):form.elements;
if(!els)return a;
for(var i=0,max=els.length;i<max;i++){
var el=els[i];
var n=el.name;
if(!n)continue;
if(semantic&&form.clk&&el.type=="image"){
if(!el.disabled&&form.clk==el){
a.push({name:n,value:$(el).val()});
a.push({name:n+'.x',value:form.clk_x},{name:n+'.y',value:form.clk_y})}
continue}
var v=$.fieldValue(el,true);
if(v&&v.constructor==Array){
for(var j=0,jmax=v.length;j<jmax;j++)
a.push({name:n,value:v[j]})}
else if(v!==null&&typeof v!='undefined')
a.push({name:n,value:v})}
if(!semantic&&form.clk){
var $input=$(form.clk),input=$input[0],n=input.name;
if(n&&!input.disabled&&input.type=='image'){
a.push({name:n,value:$input.val()});
a.push({name:n+'.x',value:form.clk_x},{name:n+'.y',value:form.clk_y})}
}
return a};
$.fn.formSerialize=function(semantic){
return $.param(this.formToArray(semantic))};
$.fn.fieldSerialize=function(successful){
var a=[];
this.each(function(){
var n=this.name;
if(!n)return;
var v=$.fieldValue(this,successful);
if(v&&v.constructor==Array){
for(var i=0,max=v.length;i<max;i++)
a.push({name:n,value:v[i]})}
else if(v!==null&&typeof v!='undefined')
a.push({name:this.name,value:v})});
return $.param(a)};
$.fn.fieldValue=function(successful){
for(var val=[],i=0,max=this.length;i<max;i++){
var el=this[i];
var v=$.fieldValue(el,successful);
if(v===null||typeof v=='undefined'||(v.constructor==Array&&!v.length))
continue;
v.constructor==Array?$.merge(val,v):val.push(v)}
return val};
$.fieldValue=function(el,successful){
var n=el.name,t=el.type,tag=el.tagName.toLowerCase();
if(typeof successful=='undefined')successful=true;
if(successful&&(!n||el.disabled||t=='reset'||t=='button'||
(t=='checkbox'||t=='radio')&&!el.checked||
(t=='submit'||t=='image')&&el.form&&el.form.clk!=el||
tag=='select'&&el.selectedIndex==-1))
return null;
if(tag=='select'){
var index=el.selectedIndex;
if(index<0)return null;
var a=[],ops=el.options;
var one=(t=='select-one');
var max=(one?index+1:ops.length);
for(var i=(one?index:0);i<max;i++){
var op=ops[i];
if(op.selected){
var v=op.value;
if(!v)v=(op.attributes&&op.attributes['value']&&!(op.attributes['value'].specified))?op.text:op.value;
if(one)return v;
a.push(v)}
}
return a}
return el.value};
$.fn.clearForm=function(){
return this.each(function(){
$('input,select,textarea',this).clearFields()})};
$.fn.clearFields=$.fn.clearInputs=function(){
return this.each(function(){
var t=this.type,tag=this.tagName.toLowerCase();
if(t=='text'||t=='password'||tag=='textarea')
this.value='';
else if(t=='checkbox'||t=='radio')
this.checked=false;
else if(tag=='select')
this.selectedIndex=-1})};
$.fn.resetForm=function(){
return this.each(function(){
if(typeof this.reset=='function'||(typeof this.reset=='object'&&!this.reset.nodeType))
this.reset()})};
$.fn.enable=function(b){
if(b==undefined)b=true;
return this.each(function(){
this.disabled=!b})};
$.fn.selected=function(select){
if(select==undefined)select=true;
return this.each(function(){
var t=this.type;
if(t=='checkbox'||t=='radio')
this.checked=select;
else if(this.tagName.toLowerCase()=='option'){
var $sel=$(this).parent('select');
if(select&&$sel[0]&&$sel[0].type=='select-one'){
$sel.find('option').selected(false)}
this.selected=select}
})};
function log(){
if($.fn.ajaxSubmit.debug&&window.console&&window.console.log)
window.console.log('[jquery.form] '+Array.prototype.join.call(arguments,''))}})(jQuery);


/* prive/javascript/ajaxCallback.js */
if(!jQuery.load_handlers){
jQuery.load_handlers=new Array();
function onAjaxLoad(f){
jQuery.load_handlers.push(f)};
function triggerAjaxLoad(root){
for(var i=0;i<jQuery.load_handlers.length;i++)
jQuery.load_handlers[i].apply(root)};
jQuery.fn._ACBload=jQuery.fn.load;
jQuery.fn.load=function(url,params,callback){
callback=callback||function(){};
if(params){
if(params.constructor==Function){
callback=params;
params=null}
}
var callback2=function(res,status){triggerAjaxLoad(this);callback.call(this,res,status)};
return this._ACBload(url,params,callback2)};
jQuery._ACBajax=jQuery.ajax;
jQuery.ajax=function(type){
var s=jQuery.extend(true,{},jQuery.ajaxSettings,type);
var callbackContext=s.context||s;
if(jQuery.ajax.caller==jQuery.fn._load)return jQuery._ACBajax(type);
var orig_complete=s.complete||function(){};
type.complete=function(res,status){
var dataType=type.dataType;
var ct=(res&&(typeof res.getResponseHeader=='function'))
?res.getResponseHeader("content-type"):'';
var xml=!dataType&&ct&&ct.indexOf("xml")>=0;
orig_complete.call(callbackContext,res,status);
if(!dataType&&!xml||dataType=="html")triggerAjaxLoad(document)};
return jQuery._ACBajax(type)}}
jQuery.fn.animeajax=function(end){
this.children().css('opacity',0.5);
if(typeof ajax_image_searching!='undefined'){
var i=(this).find('.image_loading');
if(i.length)i.eq(0).html(ajax_image_searching);
else this.prepend('<span class="image_loading">'+ajax_image_searching+'</span>')}
return this}
jQuery.fn.positionner=function(force){
var offset=jQuery(this).offset();
var hauteur=parseInt(jQuery(this).css('height'));
var scrolltop=self['pageYOffset']||
jQuery.boxModel&&document.documentElement['scrollTop']||
document.body['scrollTop'];
var h=jQuery(window).height();
var scroll=0;
if(force||offset['top']-5<=scrolltop)
scroll=offset['top']-5;
else if(offset['top']+hauteur-h+5>scrolltop)
scroll=Math.min(offset['top']-5,offset['top']+hauteur-h+15);
if(scroll)
jQuery('html,body')
.animate({scrollTop:scroll},300);
jQuery(jQuery('*',this).filter('input[type=text],textarea')[0]).focus();
return this}
var virtualbuffer_id='spip_virtualbufferupdate';
function initReaderBuffer(){
if(jQuery('#'+virtualbuffer_id).length)return;
jQuery('body').append('<p style="float:left;width:0;height:0;position:absolute;left:-5000;top:-5000;"><input type="hidden" name="'+virtualbuffer_id+'" id="'+virtualbuffer_id+'" value="0" /></p>')}
function updateReaderBuffer(){
var i=jQuery('#'+virtualbuffer_id);
if(!i.length)return;
i.attr('value',parseInt(i.attr('value'))+1)}
jQuery.fn.formulaire_dyn_ajax=function(target){
if(this.length)
initReaderBuffer();
return this.each(function(){
var cible=target||this;
jQuery('form:not(.noajax,.bouton_action_post)',this).each(function(){
var leform=this;
var leclk,leclk_x,leclk_y;
jQuery(this).prepend("<input type='hidden' name='var_ajax' value='form' />")
.ajaxForm({
beforeSubmit:function(){
leclk=leform.clk;
if(leclk){
var n=leclk.name;
if(n&&!leclk.disabled&&leclk.type=="image"){
leclk_x=leform.clk_x;
leclk_y=leform.clk_y}
}
jQuery(cible).addClass('loading').animeajax()},
success:function(c){
if(c=='noajax'){
jQuery("input[name=var_ajax]",leform).remove();
if(leclk){
var n=leclk.name;
if(n&&!leclk.disabled){
jQuery(leform).prepend("<input type='hidden' name='"+n+"' value='"+leclk.value+"' />");
if(leclk.type=="image"){
jQuery(leform).prepend("<input type='hidden' name='"+n+".x' value='"+leform.clk_x+"' />");
jQuery(leform).prepend("<input type='hidden' name='"+n+".y' value='"+leform.clk_y+"' />")}
}
}
jQuery(leform).ajaxFormUnbind().submit()}
else{
var recu=jQuery('<div><\/div>').html(c);
var d=jQuery('div.ajax',recu);
if(d.length)
c=d.html();
jQuery(cible)
.removeClass('loading')
.html(c);
var a=jQuery('a:first',recu).eq(0);
if(a.length
&&a.is('a[name=ajax_ancre]')
&&jQuery(a.attr('href'),cible).length){
a=a.attr('href');
if(jQuery(a,cible).length)
setTimeout(function(){
jQuery(a,cible).positionner(true)},10)}
else{
jQuery(cible).positionner(false);
if(a.length&&a.is('a[name=ajax_redirect]')){
a=a.attr('href');
jQuery(cible).addClass('loading').animeajax();
setTimeout(function(){
document.location.replace(a)},10)}
}
triggerAjaxLoad(cible);
updateReaderBuffer()}
},
iframe:jQuery.browser.msie
})
.addClass('noajax')})})}
var ajax_confirm=true;
var ajax_confirm_date=0;
var spip_confirm=window.confirm;
function _confirm(message){
ajax_confirm=spip_confirm(message);
if(!ajax_confirm){
var d=new Date();
ajax_confirm_date=d.getTime()}
return ajax_confirm}
window.confirm=_confirm;
var preloaded_urls={};
var ajaxbloc_selecteur;
jQuery.fn.ajaxbloc=function(){
if(this.length)
initReaderBuffer();
return this.each(function(){
jQuery('div.ajaxbloc',this).ajaxbloc();var blocfrag=jQuery(this);
var on_pagination=function(c){
jQuery(blocfrag)
.html(c)
.removeClass('loading');
var a=jQuery('a:first',jQuery(blocfrag)).eq(0);
if(a.length
&&a.is('a[name=ajax_ancre]')
&&jQuery(a.attr('href'),blocfrag).length){
a=a.attr('href')
setTimeout(function(){
jQuery(a,blocfrag).positionner(true)},10)}
else{
jQuery(blocfrag).positionner(false)}
updateReaderBuffer()}
var ajax_env=(""+blocfrag.attr('class')).match(/env-([^ ]+)/);
if(!ajax_env||ajax_env==undefined)return;
ajax_env=ajax_env[1];
if(ajaxbloc_selecteur==undefined)
ajaxbloc_selecteur='.pagination a,a.ajax';
jQuery(ajaxbloc_selecteur,this).not('.noajax').each(function(){
var url=this.href.split('#');
url[0]+=(url[0].indexOf("?")>0?'&':'?')+'var_ajax=1&var_ajax_env='+encodeURIComponent(ajax_env);
if(url[1])
url[0]+="&var_ajax_ancre="+url[1];
if(jQuery(this).is('.preload')&&!preloaded_urls[url[0]]){
jQuery.ajax({"url":url[0],"success":function(r){preloaded_urls[url[0]]=r}})}
jQuery(this).click(function(){
if(!ajax_confirm){
ajax_confirm=true;
var d=new Date();
if((d.getTime()-ajax_confirm_date)<=2)
return false}
jQuery(blocfrag)
.animeajax()
.addClass('loading');
if(preloaded_urls[url[0]]){
on_pagination(preloaded_urls[url[0]]);
triggerAjaxLoad(document)}else{
jQuery.ajax({
url:url[0],
success:function(c){
on_pagination(c);
preloaded_urls[url[0]]=c}
})}
return false})}).addClass('noajax');jQuery('form.bouton_action_post.ajax:not(.noajax)',this).each(function(){
var leform=this;
var url=jQuery(this).attr('action').split('#');
jQuery(this)
.prepend("<input type='hidden' name='var_ajax' value='1' /><input type='hidden' name='var_ajax_env' value='"+(ajax_env)+"' />"+(url[1]?"<input type='hidden' name='var_ajax_ancre' value='"+url[1]+"' />":""))
.ajaxForm({
beforeSubmit:function(){
jQuery(blocfrag).addClass('loading').animeajax()},
success:function(c){
on_pagination(c);
preloaded_urls={};jQuery(blocfrag)
.ajaxbloc()},
iframe:jQuery.browser.msie
})
.addClass('noajax')})})};
jQuery(function(){
jQuery('form:not(.bouton_action_post)').parents('div.ajax')
.formulaire_dyn_ajax();
jQuery('div.ajaxbloc').ajaxbloc()});
onAjaxLoad(function(){
if(jQuery){
jQuery('form:not(.bouton_action_post)',this).parents('div.ajax')
.formulaire_dyn_ajax();
jQuery('div.ajaxbloc',this)
.ajaxbloc()}
});


/* plugins/auto/jquery_ui/javascript/jquery-ui-1.8.16/ui/jquery.ui.core.js */

(function($,undefined){
$.ui=$.ui||{};
if($.ui.version){
return}
$.extend($.ui,{
version:"1.8.16",
keyCode:{
ALT:18,
BACKSPACE:8,
CAPS_LOCK:20,
COMMA:188,
COMMAND:91,
COMMAND_LEFT:91,COMMAND_RIGHT:93,
CONTROL:17,
DELETE:46,
DOWN:40,
END:35,
ENTER:13,
ESCAPE:27,
HOME:36,
INSERT:45,
LEFT:37,
MENU:93,NUMPAD_ADD:107,
NUMPAD_DECIMAL:110,
NUMPAD_DIVIDE:111,
NUMPAD_ENTER:108,
NUMPAD_MULTIPLY:106,
NUMPAD_SUBTRACT:109,
PAGE_DOWN:34,
PAGE_UP:33,
PERIOD:190,
RIGHT:39,
SHIFT:16,
SPACE:32,
TAB:9,
UP:38,
WINDOWS:91}
});
$.fn.extend({
propAttr:$.fn.prop||$.fn.attr,
_focus:$.fn.focus,
focus:function(delay,fn){
return typeof delay==="number"?
this.each(function(){
var elem=this;
setTimeout(function(){
$(elem).focus();
if(fn){
fn.call(elem)}
},delay)}):
this._focus.apply(this,arguments)},
scrollParent:function(){
var scrollParent;
if(($.browser.msie&&(/(static|relative)/).test(this.css('position')))||(/absolute/).test(this.css('position'))){
scrollParent=this.parents().filter(function(){
return(/(relative|absolute|fixed)/).test($.curCSS(this,'position',1))&&(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1))}).eq(0)}else{
scrollParent=this.parents().filter(function(){
return(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1))}).eq(0)}
return(/fixed/).test(this.css('position'))||!scrollParent.length?$(document):scrollParent},
zIndex:function(zIndex){
if(zIndex!==undefined){
return this.css("zIndex",zIndex)}
if(this.length){
var elem=$(this[0]),position,value;
while(elem.length&&elem[0]!==document){
position=elem.css("position");
if(position==="absolute"||position==="relative"||position==="fixed"){
value=parseInt(elem.css("zIndex"),10);
if(!isNaN(value)&&value!==0){
return value}
}
elem=elem.parent()}
}
return 0},
disableSelection:function(){
return this.bind(($.support.selectstart?"selectstart":"mousedown")+
".ui-disableSelection",function(event){
event.preventDefault()})},
enableSelection:function(){
return this.unbind(".ui-disableSelection")}
});
$.each(["Width","Height"],function(i,name){
var side=name==="Width"?["Left","Right"]:["Top","Bottom"],
type=name.toLowerCase(),
orig={
innerWidth:$.fn.innerWidth,
innerHeight:$.fn.innerHeight,
outerWidth:$.fn.outerWidth,
outerHeight:$.fn.outerHeight
};
function reduce(elem,size,border,margin){
$.each(side,function(){
size-=parseFloat($.curCSS(elem,"padding"+this,true))||0;
if(border){
size-=parseFloat($.curCSS(elem,"border"+this+"Width",true))||0}
if(margin){
size-=parseFloat($.curCSS(elem,"margin"+this,true))||0}
});
return size}
$.fn["inner"+name]=function(size){
if(size===undefined){
return orig["inner"+name].call(this)}
return this.each(function(){
$(this).css(type,reduce(this,size)+"px")})};
$.fn["outer"+name]=function(size,margin){
if(typeof size!=="number"){
return orig["outer"+name].call(this,size)}
return this.each(function(){
$(this).css(type,reduce(this,size,true,margin)+"px")})}});
function focusable(element,isTabIndexNotNaN){
var nodeName=element.nodeName.toLowerCase();
if("area"===nodeName){
var map=element.parentNode,
mapName=map.name,
img;
if(!element.href||!mapName||map.nodeName.toLowerCase()!=="map"){
return false}
img=$("img[usemap=#"+mapName+"]")[0];
return!!img&&visible(img)}
return(/input|select|textarea|button|object/.test(nodeName)
?!element.disabled
:"a"==nodeName
?element.href||isTabIndexNotNaN
:isTabIndexNotNaN)
&&visible(element)}
function visible(element){
return!$(element).parents().andSelf().filter(function(){
return $.curCSS(this,"visibility")==="hidden"||
$.expr.filters.hidden(this)}).length}
$.extend($.expr[":"],{
data:function(elem,i,match){
return!!$.data(elem,match[3])},
focusable:function(element){
return focusable(element,!isNaN($.attr(element,"tabindex")))},
tabbable:function(element){
var tabIndex=$.attr(element,"tabindex"),
isTabIndexNaN=isNaN(tabIndex);
return(isTabIndexNaN||tabIndex>=0)&&focusable(element,!isTabIndexNaN)}
});
$(function(){
var body=document.body,
div=body.appendChild(div=document.createElement("div"));
$.extend(div.style,{
minHeight:"100px",
height:"auto",
padding:0,
borderWidth:0
});
$.support.minHeight=div.offsetHeight===100;
$.support.selectstart="onselectstart"in div;
body.removeChild(div).style.display="none"});
$.extend($.ui,{
plugin:{
add:function(module,option,set){
var proto=$.ui[module].prototype;
for(var i in set){
proto.plugins[i]=proto.plugins[i]||[];
proto.plugins[i].push([option,set[i]])}
},
call:function(instance,name,args){
var set=instance.plugins[name];
if(!set||!instance.element[0].parentNode){
return}
for(var i=0;i<set.length;i++){
if(instance.options[set[i][0]]){
set[i][1].apply(instance.element,args)}
}
}
},
contains:function(a,b){
return document.compareDocumentPosition?
a.compareDocumentPosition(b)&16:
a!==b&&a.contains(b)},
hasScroll:function(el,a){
if($(el).css("overflow")==="hidden"){
return false}
var scroll=(a&&a==="left")?"scrollLeft":"scrollTop",
has=false;
if(el[scroll]>0){
return true}
el[scroll]=1;
has=(el[scroll]>0);
el[scroll]=0;
return has},
isOverAxis:function(x,reference,size){
return(x>reference)&&(x<(reference+size))},
isOver:function(y,x,top,left,height,width){
return $.ui.isOverAxis(y,top,height)&&$.ui.isOverAxis(x,left,width)}
})})(jQuery);


/* plugins/auto/jquery_ui/javascript/jquery-ui-1.8.16/ui/jquery.ui.datepicker.js */

(function($,undefined){
$.extend($.ui,{datepicker:{version:"1.8.16"}});
var PROP_NAME='datepicker';
var dpuuid=new Date().getTime();
var instActive;
function Datepicker(){
this.debug=false;this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._datepickerShowing=false;this._inDialog=false;this._mainDivId='ui-datepicker-div';this._inlineClass='ui-datepicker-inline';this._appendClass='ui-datepicker-append';this._triggerClass='ui-datepicker-trigger';this._dialogClass='ui-datepicker-dialog';this._disableClass='ui-datepicker-disabled';this._unselectableClass='ui-datepicker-unselectable';this._currentClass='ui-datepicker-current-day';this._dayOverClass='ui-datepicker-days-cell-over';this.regional=[];this.regional['']={closeText:'Done',prevText:'Prev',nextText:'Next',currentText:'Today',monthNames:['January','February','March','April','May','June',
'July','August','September','October','November','December'],monthNamesShort:['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'],dayNames:['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'],dayNamesShort:['Sun','Mon','Tue','Wed','Thu','Fri','Sat'],dayNamesMin:['Su','Mo','Tu','We','Th','Fr','Sa'],weekHeader:'Wk',dateFormat:'mm/dd/yy',firstDay:0,isRTL:false,showMonthAfterYear:false,yearSuffix:''};
this._defaults={showOn:'focus',showAnim:'fadeIn',showOptions:{},defaultDate:null,appendText:'',buttonText:'...',buttonImage:'',buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,yearRange:'c-10:c+10',showOtherMonths:false,selectOtherMonths:false,showWeek:false,calculateWeek:this.iso8601Week,shortYearCutoff:'+10',minDate:null,maxDate:null,duration:'fast',beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:'',altFormat:'',constrainInput:true,showButtonPanel:false,autoSize:false,disabled:false};
$.extend(this._defaults,this.regional['']);
this.dpDiv=bindHover($('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}
$.extend(Datepicker.prototype,{
markerClassName:'hasDatepicker',
maxRows:4,
log:function(){
if(this.debug)
console.log.apply('',arguments)},
_widgetDatepicker:function(){
return this.dpDiv},
setDefaults:function(settings){
extendRemove(this._defaults,settings||{});
return this},
_attachDatepicker:function(target,settings){
var inlineSettings=null;
for(var attrName in this._defaults){
var attrValue=target.getAttribute('date:'+attrName);
if(attrValue){
inlineSettings=inlineSettings||{};
try{
inlineSettings[attrName]=eval(attrValue)}catch(err){
inlineSettings[attrName]=attrValue}
}
}
var nodeName=target.nodeName.toLowerCase();
var inline=(nodeName=='div'||nodeName=='span');
if(!target.id){
this.uuid+=1;
target.id='dp'+this.uuid}
var inst=this._newInst($(target),inline);
inst.settings=$.extend({},settings||{},inlineSettings||{});
if(nodeName=='input'){
this._connectDatepicker(target,inst)}else if(inline){
this._inlineDatepicker(target,inst)}
},
_newInst:function(target,inline){
var id=target[0].id.replace(/([^A-Za-z0-9_-])/g,'\\\\$1');return{id:id,input:target,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:inline,dpDiv:(!inline?this.dpDiv:bindHover($('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')))}},
_connectDatepicker:function(target,inst){
var input=$(target);
inst.append=$([]);
inst.trigger=$([]);
if(input.hasClass(this.markerClassName))
return;
this._attachments(input,inst);
input.addClass(this.markerClassName).keydown(this._doKeyDown).
keypress(this._doKeyPress).keyup(this._doKeyUp).
bind("setData.datepicker",function(event,key,value){
inst.settings[key]=value}).bind("getData.datepicker",function(event,key){
return this._get(inst,key)});
this._autoSize(inst);
$.data(target,PROP_NAME,inst);
if(inst.settings.disabled){
this._disableDatepicker(target)}
},
_attachments:function(input,inst){
var appendText=this._get(inst,'appendText');
var isRTL=this._get(inst,'isRTL');
if(inst.append)
inst.append.remove();
if(appendText){
inst.append=$('<span class="'+this._appendClass+'">'+appendText+'</span>');
input[isRTL?'before':'after'](inst.append)}
input.unbind('focus',this._showDatepicker);
if(inst.trigger)
inst.trigger.remove();
var showOn=this._get(inst,'showOn');
if(showOn=='focus'||showOn=='both')input.focus(this._showDatepicker);
if(showOn=='button'||showOn=='both'){var buttonText=this._get(inst,'buttonText');
var buttonImage=this._get(inst,'buttonImage');
inst.trigger=$(this._get(inst,'buttonImageOnly')?
$('<img/>').addClass(this._triggerClass).
attr({src:buttonImage,alt:buttonText,title:buttonText}):
$('<button type="button"></button>').addClass(this._triggerClass).
html(buttonImage==''?buttonText:$('<img/>').attr(
{src:buttonImage,alt:buttonText,title:buttonText})));
input[isRTL?'before':'after'](inst.trigger);
inst.trigger.click(function(){
if($.datepicker._datepickerShowing&&$.datepicker._lastInput==input[0])
$.datepicker._hideDatepicker();
else
$.datepicker._showDatepicker(input[0]);
return false})}
},
_autoSize:function(inst){
if(this._get(inst,'autoSize')&&!inst.inline){
var date=new Date(2009,12-1,20);var dateFormat=this._get(inst,'dateFormat');
if(dateFormat.match(/[DM]/)){
var findMax=function(names){
var max=0;
var maxI=0;
for(var i=0;i<names.length;i++){
if(names[i].length>max){
max=names[i].length;
maxI=i}
}
return maxI};
date.setMonth(findMax(this._get(inst,(dateFormat.match(/MM/)?
'monthNames':'monthNamesShort'))));
date.setDate(findMax(this._get(inst,(dateFormat.match(/DD/)?
'dayNames':'dayNamesShort')))+20-date.getDay())}
inst.input.attr('size',this._formatDate(inst,date).length)}
},
_inlineDatepicker:function(target,inst){
var divSpan=$(target);
if(divSpan.hasClass(this.markerClassName))
return;
divSpan.addClass(this.markerClassName).append(inst.dpDiv).
bind("setData.datepicker",function(event,key,value){
inst.settings[key]=value}).bind("getData.datepicker",function(event,key){
return this._get(inst,key)});
$.data(target,PROP_NAME,inst);
this._setDate(inst,this._getDefaultDate(inst),true);
this._updateDatepicker(inst);
this._updateAlternate(inst);
if(inst.settings.disabled){
this._disableDatepicker(target)}
inst.dpDiv.css("display","block")},
_dialogDatepicker:function(input,date,onSelect,settings,pos){
var inst=this._dialogInst;if(!inst){
this.uuid+=1;
var id='dp'+this.uuid;
this._dialogInput=$('<input type="text" id="'+id+
'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>');
this._dialogInput.keydown(this._doKeyDown);
$('body').append(this._dialogInput);
inst=this._dialogInst=this._newInst(this._dialogInput,false);
inst.settings={};
$.data(this._dialogInput[0],PROP_NAME,inst)}
extendRemove(inst.settings,settings||{});
date=(date&&date.constructor==Date?this._formatDate(inst,date):date);
this._dialogInput.val(date);
this._pos=(pos?(pos.length?pos:[pos.pageX,pos.pageY]):null);
if(!this._pos){
var browserWidth=document.documentElement.clientWidth;
var browserHeight=document.documentElement.clientHeight;
var scrollX=document.documentElement.scrollLeft||document.body.scrollLeft;
var scrollY=document.documentElement.scrollTop||document.body.scrollTop;
this._pos=[(browserWidth/2)-100+scrollX,(browserHeight/2)-150+scrollY]}
this._dialogInput.css('left',(this._pos[0]+20)+'px').css('top',this._pos[1]+'px');
inst.settings.onSelect=onSelect;
this._inDialog=true;
this.dpDiv.addClass(this._dialogClass);
this._showDatepicker(this._dialogInput[0]);
if($.blockUI)
$.blockUI(this.dpDiv);
$.data(this._dialogInput[0],PROP_NAME,inst);
return this},
_destroyDatepicker:function(target){
var $target=$(target);
var inst=$.data(target,PROP_NAME);
if(!$target.hasClass(this.markerClassName)){
return}
var nodeName=target.nodeName.toLowerCase();
$.removeData(target,PROP_NAME);
if(nodeName=='input'){
inst.append.remove();
inst.trigger.remove();
$target.removeClass(this.markerClassName).
unbind('focus',this._showDatepicker).
unbind('keydown',this._doKeyDown).
unbind('keypress',this._doKeyPress).
unbind('keyup',this._doKeyUp)}else if(nodeName=='div'||nodeName=='span')
$target.removeClass(this.markerClassName).empty()},
_enableDatepicker:function(target){
var $target=$(target);
var inst=$.data(target,PROP_NAME);
if(!$target.hasClass(this.markerClassName)){
return}
var nodeName=target.nodeName.toLowerCase();
if(nodeName=='input'){
target.disabled=false;
inst.trigger.filter('button').
each(function(){this.disabled=false}).end().
filter('img').css({opacity:'1.0',cursor:''})}
else if(nodeName=='div'||nodeName=='span'){
var inline=$target.children('.'+this._inlineClass);
inline.children().removeClass('ui-state-disabled');
inline.find("select.ui-datepicker-month, select.ui-datepicker-year").
removeAttr("disabled")}
this._disabledInputs=$.map(this._disabledInputs,
function(value){return(value==target?null:value)})},
_disableDatepicker:function(target){
var $target=$(target);
var inst=$.data(target,PROP_NAME);
if(!$target.hasClass(this.markerClassName)){
return}
var nodeName=target.nodeName.toLowerCase();
if(nodeName=='input'){
target.disabled=true;
inst.trigger.filter('button').
each(function(){this.disabled=true}).end().
filter('img').css({opacity:'0.5',cursor:'default'})}
else if(nodeName=='div'||nodeName=='span'){
var inline=$target.children('.'+this._inlineClass);
inline.children().addClass('ui-state-disabled');
inline.find("select.ui-datepicker-month, select.ui-datepicker-year").
attr("disabled","disabled")}
this._disabledInputs=$.map(this._disabledInputs,
function(value){return(value==target?null:value)});this._disabledInputs[this._disabledInputs.length]=target},
_isDisabledDatepicker:function(target){
if(!target){
return false}
for(var i=0;i<this._disabledInputs.length;i++){
if(this._disabledInputs[i]==target)
return true}
return false},
_getInst:function(target){
try{
return $.data(target,PROP_NAME)}
catch(err){
throw'Missing instance data for this datepicker'}
},
_optionDatepicker:function(target,name,value){
var inst=this._getInst(target);
if(arguments.length==2&&typeof name=='string'){
return(name=='defaults'?$.extend({},$.datepicker._defaults):
(inst?(name=='all'?$.extend({},inst.settings):
this._get(inst,name)):null))}
var settings=name||{};
if(typeof name=='string'){
settings={};
settings[name]=value}
if(inst){
if(this._curInst==inst){
this._hideDatepicker()}
var date=this._getDateDatepicker(target,true);
var minDate=this._getMinMaxDate(inst,'min');
var maxDate=this._getMinMaxDate(inst,'max');
extendRemove(inst.settings,settings);
if(minDate!==null&&settings['dateFormat']!==undefined&&settings['minDate']===undefined)
inst.settings.minDate=this._formatDate(inst,minDate);
if(maxDate!==null&&settings['dateFormat']!==undefined&&settings['maxDate']===undefined)
inst.settings.maxDate=this._formatDate(inst,maxDate);
this._attachments($(target),inst);
this._autoSize(inst);
this._setDate(inst,date);
this._updateAlternate(inst);
this._updateDatepicker(inst)}
},
_changeDatepicker:function(target,name,value){
this._optionDatepicker(target,name,value)},
_refreshDatepicker:function(target){
var inst=this._getInst(target);
if(inst){
this._updateDatepicker(inst)}
},
_setDateDatepicker:function(target,date){
var inst=this._getInst(target);
if(inst){
this._setDate(inst,date);
this._updateDatepicker(inst);
this._updateAlternate(inst)}
},
_getDateDatepicker:function(target,noDefault){
var inst=this._getInst(target);
if(inst&&!inst.inline)
this._setDateFromField(inst,noDefault);
return(inst?this._getDate(inst):null)},
_doKeyDown:function(event){
var inst=$.datepicker._getInst(event.target);
var handled=true;
var isRTL=inst.dpDiv.is('.ui-datepicker-rtl');
inst._keyEvent=true;
if($.datepicker._datepickerShowing)
switch(event.keyCode){
case 9:$.datepicker._hideDatepicker();
handled=false;
break;case 13:var sel=$('td.'+$.datepicker._dayOverClass+':not(.'+
$.datepicker._currentClass+')',inst.dpDiv);
if(sel[0])
$.datepicker._selectDay(event.target,inst.selectedMonth,inst.selectedYear,sel[0]);
var onSelect=$.datepicker._get(inst,'onSelect');
if(onSelect){
var dateStr=$.datepicker._formatDate(inst);
onSelect.apply((inst.input?inst.input[0]:null),[dateStr,inst])}
else
$.datepicker._hideDatepicker();
return false;break;case 27:$.datepicker._hideDatepicker();
break;case 33:$.datepicker._adjustDate(event.target,(event.ctrlKey?
-$.datepicker._get(inst,'stepBigMonths'):
-$.datepicker._get(inst,'stepMonths')),'M');
break;case 34:$.datepicker._adjustDate(event.target,(event.ctrlKey?
+$.datepicker._get(inst,'stepBigMonths'):
+$.datepicker._get(inst,'stepMonths')),'M');
break;case 35:if(event.ctrlKey||event.metaKey)$.datepicker._clearDate(event.target);
handled=event.ctrlKey||event.metaKey;
break;case 36:if(event.ctrlKey||event.metaKey)$.datepicker._gotoToday(event.target);
handled=event.ctrlKey||event.metaKey;
break;case 37:if(event.ctrlKey||event.metaKey)$.datepicker._adjustDate(event.target,(isRTL?+1:-1),'D');
handled=event.ctrlKey||event.metaKey;
if(event.originalEvent.altKey)$.datepicker._adjustDate(event.target,(event.ctrlKey?
-$.datepicker._get(inst,'stepBigMonths'):
-$.datepicker._get(inst,'stepMonths')),'M');
break;
case 38:if(event.ctrlKey||event.metaKey)$.datepicker._adjustDate(event.target,-7,'D');
handled=event.ctrlKey||event.metaKey;
break;case 39:if(event.ctrlKey||event.metaKey)$.datepicker._adjustDate(event.target,(isRTL?-1:+1),'D');
handled=event.ctrlKey||event.metaKey;
if(event.originalEvent.altKey)$.datepicker._adjustDate(event.target,(event.ctrlKey?
+$.datepicker._get(inst,'stepBigMonths'):
+$.datepicker._get(inst,'stepMonths')),'M');
break;
case 40:if(event.ctrlKey||event.metaKey)$.datepicker._adjustDate(event.target,+7,'D');
handled=event.ctrlKey||event.metaKey;
break;default:handled=false}
else if(event.keyCode==36&&event.ctrlKey)$.datepicker._showDatepicker(this);
else{
handled=false}
if(handled){
event.preventDefault();
event.stopPropagation()}
},
_doKeyPress:function(event){
var inst=$.datepicker._getInst(event.target);
if($.datepicker._get(inst,'constrainInput')){
var chars=$.datepicker._possibleChars($.datepicker._get(inst,'dateFormat'));
var chr=String.fromCharCode(event.charCode==undefined?event.keyCode:event.charCode);
return event.ctrlKey||event.metaKey||(chr<' '||!chars||chars.indexOf(chr)>-1)}
},
_doKeyUp:function(event){
var inst=$.datepicker._getInst(event.target);
if(inst.input.val()!=inst.lastVal){
try{
var date=$.datepicker.parseDate($.datepicker._get(inst,'dateFormat'),
(inst.input?inst.input.val():null),
$.datepicker._getFormatConfig(inst));
if(date){$.datepicker._setDateFromField(inst);
$.datepicker._updateAlternate(inst);
$.datepicker._updateDatepicker(inst)}
}
catch(event){
$.datepicker.log(event)}
}
return true},
_showDatepicker:function(input){
input=input.target||input;
if(input.nodeName.toLowerCase()!='input')input=$('input',input.parentNode)[0];
if($.datepicker._isDisabledDatepicker(input)||$.datepicker._lastInput==input)return;
var inst=$.datepicker._getInst(input);
if($.datepicker._curInst&&$.datepicker._curInst!=inst){
if($.datepicker._datepickerShowing){
$.datepicker._triggerOnClose($.datepicker._curInst)}
$.datepicker._curInst.dpDiv.stop(true,true)}
var beforeShow=$.datepicker._get(inst,'beforeShow');
var beforeShowSettings=beforeShow?beforeShow.apply(input,[input,inst]):{};
if(beforeShowSettings===false){
return}
extendRemove(inst.settings,beforeShowSettings);
inst.lastVal=null;
$.datepicker._lastInput=input;
$.datepicker._setDateFromField(inst);
if($.datepicker._inDialog)input.value='';
if(!$.datepicker._pos){$.datepicker._pos=$.datepicker._findPos(input);
$.datepicker._pos[1]+=input.offsetHeight}
var isFixed=false;
$(input).parents().each(function(){
isFixed|=$(this).css('position')=='fixed';
return!isFixed});
if(isFixed&&$.browser.opera){$.datepicker._pos[0]-=document.documentElement.scrollLeft;
$.datepicker._pos[1]-=document.documentElement.scrollTop}
var offset={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};
$.datepicker._pos=null;
inst.dpDiv.empty();
inst.dpDiv.css({position:'absolute',display:'block',top:'-1000px'});
$.datepicker._updateDatepicker(inst);
offset=$.datepicker._checkOffset(inst,offset,isFixed);
inst.dpDiv.css({position:($.datepicker._inDialog&&$.blockUI?
'static':(isFixed?'fixed':'absolute')),display:'none',
left:offset.left+'px',top:offset.top+'px'});
if(!inst.inline){
var showAnim=$.datepicker._get(inst,'showAnim');
var duration=$.datepicker._get(inst,'duration');
var postProcess=function(){
var cover=inst.dpDiv.find('iframe.ui-datepicker-cover');if(!!cover.length){
var borders=$.datepicker._getBorders(inst.dpDiv);
cover.css({left:-borders[0],top:-borders[1],
width:inst.dpDiv.outerWidth(),height:inst.dpDiv.outerHeight()})}
};
inst.dpDiv.zIndex($(input).zIndex()+1);
$.datepicker._datepickerShowing=true;
if($.effects&&$.effects[showAnim])
inst.dpDiv.show(showAnim,$.datepicker._get(inst,'showOptions'),duration,postProcess);
else
inst.dpDiv[showAnim||'show']((showAnim?duration:null),postProcess);
if(!showAnim||!duration)
postProcess();
if(inst.input.is(':visible')&&!inst.input.is(':disabled'))
inst.input.focus();
$.datepicker._curInst=inst}
},
_updateDatepicker:function(inst){
var self=this;
self.maxRows=4;var borders=$.datepicker._getBorders(inst.dpDiv);
instActive=inst;inst.dpDiv.empty().append(this._generateHTML(inst));
var cover=inst.dpDiv.find('iframe.ui-datepicker-cover');if(!!cover.length){cover.css({left:-borders[0],top:-borders[1],width:inst.dpDiv.outerWidth(),height:inst.dpDiv.outerHeight()})
}
inst.dpDiv.find('.'+this._dayOverClass+' a').mouseover();
var numMonths=this._getNumberOfMonths(inst);
var cols=numMonths[1];
var width=17;
inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width('');
if(cols>1)
inst.dpDiv.addClass('ui-datepicker-multi-'+cols).css('width',(width*cols)+'em');
inst.dpDiv[(numMonths[0]!=1||numMonths[1]!=1?'add':'remove')+
'Class']('ui-datepicker-multi');
inst.dpDiv[(this._get(inst,'isRTL')?'add':'remove')+
'Class']('ui-datepicker-rtl');
if(inst==$.datepicker._curInst&&$.datepicker._datepickerShowing&&inst.input&&
inst.input.is(':visible')&&!inst.input.is(':disabled')&&inst.input[0]!=document.activeElement)
inst.input.focus();
if(inst.yearshtml){
var origyearshtml=inst.yearshtml;
setTimeout(function(){
if(origyearshtml===inst.yearshtml&&inst.yearshtml){
inst.dpDiv.find('select.ui-datepicker-year:first').replaceWith(inst.yearshtml)}
origyearshtml=inst.yearshtml=null},0)}
},
_getBorders:function(elem){
var convert=function(value){
return{thin:1,medium:2,thick:3}[value]||value};
return[parseFloat(convert(elem.css('border-left-width'))),
parseFloat(convert(elem.css('border-top-width')))]},
_checkOffset:function(inst,offset,isFixed){
var dpWidth=inst.dpDiv.outerWidth();
var dpHeight=inst.dpDiv.outerHeight();
var inputWidth=inst.input?inst.input.outerWidth():0;
var inputHeight=inst.input?inst.input.outerHeight():0;
var viewWidth=document.documentElement.clientWidth+$(document).scrollLeft();
var viewHeight=document.documentElement.clientHeight+$(document).scrollTop();
offset.left-=(this._get(inst,'isRTL')?(dpWidth-inputWidth):0);
offset.left-=(isFixed&&offset.left==inst.input.offset().left)?$(document).scrollLeft():0;
offset.top-=(isFixed&&offset.top==(inst.input.offset().top+inputHeight))?$(document).scrollTop():0;
offset.left-=Math.min(offset.left,(offset.left+dpWidth>viewWidth&&viewWidth>dpWidth)?
Math.abs(offset.left+dpWidth-viewWidth):0);
offset.top-=Math.min(offset.top,(offset.top+dpHeight>viewHeight&&viewHeight>dpHeight)?
Math.abs(dpHeight+inputHeight):0);
return offset},
_findPos:function(obj){
var inst=this._getInst(obj);
var isRTL=this._get(inst,'isRTL');
while(obj&&(obj.type=='hidden'||obj.nodeType!=1||$.expr.filters.hidden(obj))){
obj=obj[isRTL?'previousSibling':'nextSibling']}
var position=$(obj).offset();
return[position.left,position.top]},
_triggerOnClose:function(inst){
var onClose=this._get(inst,'onClose');
if(onClose)
onClose.apply((inst.input?inst.input[0]:null),
[(inst.input?inst.input.val():''),inst])},
_hideDatepicker:function(input){
var inst=this._curInst;
if(!inst||(input&&inst!=$.data(input,PROP_NAME)))
return;
if(this._datepickerShowing){
var showAnim=this._get(inst,'showAnim');
var duration=this._get(inst,'duration');
var postProcess=function(){
$.datepicker._tidyDialog(inst);
this._curInst=null};
if($.effects&&$.effects[showAnim])
inst.dpDiv.hide(showAnim,$.datepicker._get(inst,'showOptions'),duration,postProcess);
else
inst.dpDiv[(showAnim=='slideDown'?'slideUp':
(showAnim=='fadeIn'?'fadeOut':'hide'))]((showAnim?duration:null),postProcess);
if(!showAnim)
postProcess();
$.datepicker._triggerOnClose(inst);
this._datepickerShowing=false;
this._lastInput=null;
if(this._inDialog){
this._dialogInput.css({position:'absolute',left:'0',top:'-100px'});
if($.blockUI){
$.unblockUI();
$('body').append(this.dpDiv)}
}
this._inDialog=false}
},
_tidyDialog:function(inst){
inst.dpDiv.removeClass(this._dialogClass).unbind('.ui-datepicker-calendar')},
_checkExternalClick:function(event){
if(!$.datepicker._curInst)
return;
var $target=$(event.target);
if($target[0].id!=$.datepicker._mainDivId&&
$target.parents('#'+$.datepicker._mainDivId).length==0&&
!$target.hasClass($.datepicker.markerClassName)&&
!$target.hasClass($.datepicker._triggerClass)&&
$.datepicker._datepickerShowing&&!($.datepicker._inDialog&&$.blockUI))
$.datepicker._hideDatepicker()},
_adjustDate:function(id,offset,period){
var target=$(id);
var inst=this._getInst(target[0]);
if(this._isDisabledDatepicker(target[0])){
return}
this._adjustInstDate(inst,offset+
(period=='M'?this._get(inst,'showCurrentAtPos'):0),period);
this._updateDatepicker(inst)},
_gotoToday:function(id){
var target=$(id);
var inst=this._getInst(target[0]);
if(this._get(inst,'gotoCurrent')&&inst.currentDay){
inst.selectedDay=inst.currentDay;
inst.drawMonth=inst.selectedMonth=inst.currentMonth;
inst.drawYear=inst.selectedYear=inst.currentYear}
else{
var date=new Date();
inst.selectedDay=date.getDate();
inst.drawMonth=inst.selectedMonth=date.getMonth();
inst.drawYear=inst.selectedYear=date.getFullYear()}
this._notifyChange(inst);
this._adjustDate(target)},
_selectMonthYear:function(id,select,period){
var target=$(id);
var inst=this._getInst(target[0]);
inst['selected'+(period=='M'?'Month':'Year')]=
inst['draw'+(period=='M'?'Month':'Year')]=
parseInt(select.options[select.selectedIndex].value,10);
this._notifyChange(inst);
this._adjustDate(target)},
_selectDay:function(id,month,year,td){
var target=$(id);
if($(td).hasClass(this._unselectableClass)||this._isDisabledDatepicker(target[0])){
return}
var inst=this._getInst(target[0]);
inst.selectedDay=inst.currentDay=$('a',td).html();
inst.selectedMonth=inst.currentMonth=month;
inst.selectedYear=inst.currentYear=year;
this._selectDate(id,this._formatDate(inst,
inst.currentDay,inst.currentMonth,inst.currentYear))},
_clearDate:function(id){
var target=$(id);
var inst=this._getInst(target[0]);
this._selectDate(target,'')},
_selectDate:function(id,dateStr){
var target=$(id);
var inst=this._getInst(target[0]);
dateStr=(dateStr!=null?dateStr:this._formatDate(inst));
if(inst.input)
inst.input.val(dateStr);
this._updateAlternate(inst);
var onSelect=this._get(inst,'onSelect');
if(onSelect)
onSelect.apply((inst.input?inst.input[0]:null),[dateStr,inst]);else if(inst.input)
inst.input.trigger('change');if(inst.inline)
this._updateDatepicker(inst);
else{
this._hideDatepicker();
this._lastInput=inst.input[0];
if(typeof(inst.input[0])!='object')
inst.input.focus();this._lastInput=null}
},
_updateAlternate:function(inst){
var altField=this._get(inst,'altField');
if(altField){var altFormat=this._get(inst,'altFormat')||this._get(inst,'dateFormat');
var date=this._getDate(inst);
var dateStr=this.formatDate(altFormat,date,this._getFormatConfig(inst));
$(altField).each(function(){$(this).val(dateStr)})}
},
noWeekends:function(date){
var day=date.getDay();
return[(day>0&&day<6),'']},
iso8601Week:function(date){
var checkDate=new Date(date.getTime());
checkDate.setDate(checkDate.getDate()+4-(checkDate.getDay()||7));
var time=checkDate.getTime();
checkDate.setMonth(0);checkDate.setDate(1);
return Math.floor(Math.round((time-checkDate)/86400000)/7)+1},
parseDate:function(format,value,settings){
if(format==null||value==null)
throw'Invalid arguments';
value=(typeof value=='object'?value.toString():value+'');
if(value=='')
return null;
var shortYearCutoff=(settings?settings.shortYearCutoff:null)||this._defaults.shortYearCutoff;
shortYearCutoff=(typeof shortYearCutoff!='string'?shortYearCutoff:
new Date().getFullYear()%100+parseInt(shortYearCutoff,10));
var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;
var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;
var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;
var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;
var year=-1;
var month=-1;
var day=-1;
var doy=-1;
var literal=false;
var lookAhead=function(match){
var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);
if(matches)
iFormat++;
return matches};
var getNumber=function(match){
var isDoubled=lookAhead(match);
var size=(match=='@'?14:(match=='!'?20:
(match=='y'&&isDoubled?4:(match=='o'?3:2))));
var digits=new RegExp('^\\d{1,'+size+'}');
var num=value.substring(iValue).match(digits);
if(!num)
throw'Missing number at position '+iValue;
iValue+=num[0].length;
return parseInt(num[0],10)};
var getName=function(match,shortNames,longNames){
var names=$.map(lookAhead(match)?longNames:shortNames,function(v,k){
return[[k,v]]}).sort(function(a,b){
return-(a[1].length-b[1].length)});
var index=-1;
$.each(names,function(i,pair){
var name=pair[1];
if(value.substr(iValue,name.length).toLowerCase()==name.toLowerCase()){
index=pair[0];
iValue+=name.length;
return false}
});
if(index!=-1)
return index+1;
else
throw'Unknown name at position '+iValue};
var checkLiteral=function(){
if(value.charAt(iValue)!=format.charAt(iFormat))
throw'Unexpected literal at position '+iValue;
iValue++};
var iValue=0;
for(var iFormat=0;iFormat<format.length;iFormat++){
if(literal)
if(format.charAt(iFormat)=="'"&&!lookAhead("'"))
literal=false;
else
checkLiteral();
else
switch(format.charAt(iFormat)){
case'd':
day=getNumber('d');
break;
case'D':
getName('D',dayNamesShort,dayNames);
break;
case'o':
doy=getNumber('o');
break;
case'm':
month=getNumber('m');
break;
case'M':
month=getName('M',monthNamesShort,monthNames);
break;
case'y':
year=getNumber('y');
break;
case'@':
var date=new Date(getNumber('@'));
year=date.getFullYear();
month=date.getMonth()+1;
day=date.getDate();
break;
case'!':
var date=new Date((getNumber('!')-this._ticksTo1970)/10000);
year=date.getFullYear();
month=date.getMonth()+1;
day=date.getDate();
break;
case"'":
if(lookAhead("'"))
checkLiteral();
else
literal=true;
break;
default:
checkLiteral()}
}
if(iValue<value.length){
throw"Extra/unparsed characters found in date: "+value.substring(iValue)}
if(year==-1)
year=new Date().getFullYear();
else if(year<100)
year+=new Date().getFullYear()-new Date().getFullYear()%100+
(year<=shortYearCutoff?0:-100);
if(doy>-1){
month=1;
day=doy;
do{
var dim=this._getDaysInMonth(year,month-1);
if(day<=dim)
break;
month++;
day-=dim}while(true)}
var date=this._daylightSavingAdjust(new Date(year,month-1,day));
if(date.getFullYear()!=year||date.getMonth()+1!=month||date.getDate()!=day)
throw'Invalid date';return date},
ATOM:'yy-mm-dd',COOKIE:'D, dd M yy',
ISO_8601:'yy-mm-dd',
RFC_822:'D, d M y',
RFC_850:'DD, dd-M-y',
RFC_1036:'D, d M y',
RFC_1123:'D, d M yy',
RFC_2822:'D, d M yy',
RSS:'D, d M y',TICKS:'!',
TIMESTAMP:'@',
W3C:'yy-mm-dd',
_ticksTo1970:(((1970-1)*365+Math.floor(1970/4)-Math.floor(1970/100)+
Math.floor(1970/400))*24*60*60*10000000),
formatDate:function(format,date,settings){
if(!date)
return'';
var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;
var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;
var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;
var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;
var lookAhead=function(match){
var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);
if(matches)
iFormat++;
return matches};
var formatNumber=function(match,value,len){
var num=''+value;
if(lookAhead(match))
while(num.length<len)
num='0'+num;
return num};
var formatName=function(match,value,shortNames,longNames){
return(lookAhead(match)?longNames[value]:shortNames[value])};
var output='';
var literal=false;
if(date)
for(var iFormat=0;iFormat<format.length;iFormat++){
if(literal)
if(format.charAt(iFormat)=="'"&&!lookAhead("'"))
literal=false;
else
output+=format.charAt(iFormat);
else
switch(format.charAt(iFormat)){
case'd':
output+=formatNumber('d',date.getDate(),2);
break;
case'D':
output+=formatName('D',date.getDay(),dayNamesShort,dayNames);
break;
case'o':
output+=formatNumber('o',
Math.round((new Date(date.getFullYear(),date.getMonth(),date.getDate()).getTime()-new Date(date.getFullYear(),0,0).getTime())/86400000),3);
break;
case'm':
output+=formatNumber('m',date.getMonth()+1,2);
break;
case'M':
output+=formatName('M',date.getMonth(),monthNamesShort,monthNames);
break;
case'y':
output+=(lookAhead('y')?date.getFullYear():
(date.getYear()%100<10?'0':'')+date.getYear()%100);
break;
case'@':
output+=date.getTime();
break;
case'!':
output+=date.getTime()*10000+this._ticksTo1970;
break;
case"'":
if(lookAhead("'"))
output+="'";
else
literal=true;
break;
default:
output+=format.charAt(iFormat)}
}
return output},
_possibleChars:function(format){
var chars='';
var literal=false;
var lookAhead=function(match){
var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);
if(matches)
iFormat++;
return matches};
for(var iFormat=0;iFormat<format.length;iFormat++)
if(literal)
if(format.charAt(iFormat)=="'"&&!lookAhead("'"))
literal=false;
else
chars+=format.charAt(iFormat);
else
switch(format.charAt(iFormat)){
case'd':case'm':case'y':case'@':
chars+='0123456789';
break;
case'D':case'M':
return null;case"'":
if(lookAhead("'"))
chars+="'";
else
literal=true;
break;
default:
chars+=format.charAt(iFormat)}
return chars},
_get:function(inst,name){
return inst.settings[name]!==undefined?
inst.settings[name]:this._defaults[name]},
_setDateFromField:function(inst,noDefault){
if(inst.input.val()==inst.lastVal){
return}
var dateFormat=this._get(inst,'dateFormat');
var dates=inst.lastVal=inst.input?inst.input.val():null;
var date,defaultDate;
date=defaultDate=this._getDefaultDate(inst);
var settings=this._getFormatConfig(inst);
try{
date=this.parseDate(dateFormat,dates,settings)||defaultDate}catch(event){
this.log(event);
dates=(noDefault?'':dates)}
inst.selectedDay=date.getDate();
inst.drawMonth=inst.selectedMonth=date.getMonth();
inst.drawYear=inst.selectedYear=date.getFullYear();
inst.currentDay=(dates?date.getDate():0);
inst.currentMonth=(dates?date.getMonth():0);
inst.currentYear=(dates?date.getFullYear():0);
this._adjustInstDate(inst)},
_getDefaultDate:function(inst){
return this._restrictMinMax(inst,
this._determineDate(inst,this._get(inst,'defaultDate'),new Date()))},
_determineDate:function(inst,date,defaultDate){
var offsetNumeric=function(offset){
var date=new Date();
date.setDate(date.getDate()+offset);
return date};
var offsetString=function(offset){
try{
return $.datepicker.parseDate($.datepicker._get(inst,'dateFormat'),
offset,$.datepicker._getFormatConfig(inst))}
catch(e){
}
var date=(offset.toLowerCase().match(/^c/)?
$.datepicker._getDate(inst):null)||new Date();
var year=date.getFullYear();
var month=date.getMonth();
var day=date.getDate();
var pattern=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g;
var matches=pattern.exec(offset);
while(matches){
switch(matches[2]||'d'){
case'd':case'D':
day+=parseInt(matches[1],10);break;
case'w':case'W':
day+=parseInt(matches[1],10)*7;break;
case'm':case'M':
month+=parseInt(matches[1],10);
day=Math.min(day,$.datepicker._getDaysInMonth(year,month));
break;
case'y':case'Y':
year+=parseInt(matches[1],10);
day=Math.min(day,$.datepicker._getDaysInMonth(year,month));
break}
matches=pattern.exec(offset)}
return new Date(year,month,day)};
var newDate=(date==null||date===''?defaultDate:(typeof date=='string'?offsetString(date):
(typeof date=='number'?(isNaN(date)?defaultDate:offsetNumeric(date)):new Date(date.getTime()))));
newDate=(newDate&&newDate.toString()=='Invalid Date'?defaultDate:newDate);
if(newDate){
newDate.setHours(0);
newDate.setMinutes(0);
newDate.setSeconds(0);
newDate.setMilliseconds(0)}
return this._daylightSavingAdjust(newDate)},
_daylightSavingAdjust:function(date){
if(!date)return null;
date.setHours(date.getHours()>12?date.getHours()+2:0);
return date},
_setDate:function(inst,date,noChange){
var clear=!date;
var origMonth=inst.selectedMonth;
var origYear=inst.selectedYear;
var newDate=this._restrictMinMax(inst,this._determineDate(inst,date,new Date()));
inst.selectedDay=inst.currentDay=newDate.getDate();
inst.drawMonth=inst.selectedMonth=inst.currentMonth=newDate.getMonth();
inst.drawYear=inst.selectedYear=inst.currentYear=newDate.getFullYear();
if((origMonth!=inst.selectedMonth||origYear!=inst.selectedYear)&&!noChange)
this._notifyChange(inst);
this._adjustInstDate(inst);
if(inst.input){
inst.input.val(clear?'':this._formatDate(inst))}
},
_getDate:function(inst){
var startDate=(!inst.currentYear||(inst.input&&inst.input.val()=='')?null:
this._daylightSavingAdjust(new Date(
inst.currentYear,inst.currentMonth,inst.currentDay)));
return startDate},
_generateHTML:function(inst){
var today=new Date();
today=this._daylightSavingAdjust(
new Date(today.getFullYear(),today.getMonth(),today.getDate()));var isRTL=this._get(inst,'isRTL');
var showButtonPanel=this._get(inst,'showButtonPanel');
var hideIfNoPrevNext=this._get(inst,'hideIfNoPrevNext');
var navigationAsDateFormat=this._get(inst,'navigationAsDateFormat');
var numMonths=this._getNumberOfMonths(inst);
var showCurrentAtPos=this._get(inst,'showCurrentAtPos');
var stepMonths=this._get(inst,'stepMonths');
var isMultiMonth=(numMonths[0]!=1||numMonths[1]!=1);
var currentDate=this._daylightSavingAdjust((!inst.currentDay?new Date(9999,9,9):
new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));
var minDate=this._getMinMaxDate(inst,'min');
var maxDate=this._getMinMaxDate(inst,'max');
var drawMonth=inst.drawMonth-showCurrentAtPos;
var drawYear=inst.drawYear;
if(drawMonth<0){
drawMonth+=12;
drawYear--}
if(maxDate){
var maxDraw=this._daylightSavingAdjust(new Date(maxDate.getFullYear(),
maxDate.getMonth()-(numMonths[0]*numMonths[1])+1,maxDate.getDate()));
maxDraw=(minDate&&maxDraw<minDate?minDate:maxDraw);
while(this._daylightSavingAdjust(new Date(drawYear,drawMonth,1))>maxDraw){
drawMonth--;
if(drawMonth<0){
drawMonth=11;
drawYear--}
}
}
inst.drawMonth=drawMonth;
inst.drawYear=drawYear;
var prevText=this._get(inst,'prevText');
prevText=(!navigationAsDateFormat?prevText:this.formatDate(prevText,
this._daylightSavingAdjust(new Date(drawYear,drawMonth-stepMonths,1)),
this._getFormatConfig(inst)));
var prev=(this._canAdjustMonth(inst,-1,drawYear,drawMonth)?
'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_'+dpuuid+
'.datepicker._adjustDate(\'#'+inst.id+'\', -'+stepMonths+', \'M\');"'+
' title="'+prevText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?'e':'w')+'">'+prevText+'</span></a>':
(hideIfNoPrevNext?'':'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+prevText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?'e':'w')+'">'+prevText+'</span></a>'));
var nextText=this._get(inst,'nextText');
nextText=(!navigationAsDateFormat?nextText:this.formatDate(nextText,
this._daylightSavingAdjust(new Date(drawYear,drawMonth+stepMonths,1)),
this._getFormatConfig(inst)));
var next=(this._canAdjustMonth(inst,+1,drawYear,drawMonth)?
'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_'+dpuuid+
'.datepicker._adjustDate(\'#'+inst.id+'\', +'+stepMonths+', \'M\');"'+
' title="'+nextText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?'w':'e')+'">'+nextText+'</span></a>':
(hideIfNoPrevNext?'':'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+nextText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?'w':'e')+'">'+nextText+'</span></a>'));
var currentText=this._get(inst,'currentText');
var gotoDate=(this._get(inst,'gotoCurrent')&&inst.currentDay?currentDate:today);
currentText=(!navigationAsDateFormat?currentText:
this.formatDate(currentText,gotoDate,this._getFormatConfig(inst)));
var controls=(!inst.inline?'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_'+dpuuid+
'.datepicker._hideDatepicker();">'+this._get(inst,'closeText')+'</button>':'');
var buttonPanel=(showButtonPanel)?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(isRTL?controls:'')+
(this._isInRange(inst,gotoDate)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_'+dpuuid+
'.datepicker._gotoToday(\'#'+inst.id+'\');"'+
'>'+currentText+'</button>':'')+(isRTL?'':controls)+'</div>':'';
var firstDay=parseInt(this._get(inst,'firstDay'),10);
firstDay=(isNaN(firstDay)?0:firstDay);
var showWeek=this._get(inst,'showWeek');
var dayNames=this._get(inst,'dayNames');
var dayNamesShort=this._get(inst,'dayNamesShort');
var dayNamesMin=this._get(inst,'dayNamesMin');
var monthNames=this._get(inst,'monthNames');
var monthNamesShort=this._get(inst,'monthNamesShort');
var beforeShowDay=this._get(inst,'beforeShowDay');
var showOtherMonths=this._get(inst,'showOtherMonths');
var selectOtherMonths=this._get(inst,'selectOtherMonths');
var calculateWeek=this._get(inst,'calculateWeek')||this.iso8601Week;
var defaultDate=this._getDefaultDate(inst);
var html='';
for(var row=0;row<numMonths[0];row++){
var group='';
this.maxRows=4;
for(var col=0;col<numMonths[1];col++){
var selectedDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,inst.selectedDay));
var cornerClass=' ui-corner-all';
var calender='';
if(isMultiMonth){
calender+='<div class="ui-datepicker-group';
if(numMonths[1]>1)
switch(col){
case 0:calender+=' ui-datepicker-group-first';
cornerClass=' ui-corner-'+(isRTL?'right':'left');break;
case numMonths[1]-1:calender+=' ui-datepicker-group-last';
cornerClass=' ui-corner-'+(isRTL?'left':'right');break;
default:calender+=' ui-datepicker-group-middle';cornerClass='';break}
calender+='">'}
calender+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+cornerClass+'">'+
(/all|left/.test(cornerClass)&&row==0?(isRTL?next:prev):'')+
(/all|right/.test(cornerClass)&&row==0?(isRTL?prev:next):'')+
this._generateMonthYearHeader(inst,drawMonth,drawYear,minDate,maxDate,
row>0||col>0,monthNames,monthNamesShort)+'</div><table class="ui-datepicker-calendar"><thead>'+
'<tr>';
var thead=(showWeek?'<th class="ui-datepicker-week-col">'+this._get(inst,'weekHeader')+'</th>':'');
for(var dow=0;dow<7;dow++){var day=(dow+firstDay)%7;
thead+='<th'+((dow+firstDay+6)%7>=5?' class="ui-datepicker-week-end"':'')+'>'+
'<span title="'+dayNames[day]+'">'+dayNamesMin[day]+'</span></th>'}
calender+=thead+'</tr></thead><tbody>';
var daysInMonth=this._getDaysInMonth(drawYear,drawMonth);
if(drawYear==inst.selectedYear&&drawMonth==inst.selectedMonth)
inst.selectedDay=Math.min(inst.selectedDay,daysInMonth);
var leadDays=(this._getFirstDayOfMonth(drawYear,drawMonth)-firstDay+7)%7;
var curRows=Math.ceil((leadDays+daysInMonth)/7); var numRows=(isMultiMonth?this.maxRows>curRows?this.maxRows:curRows:curRows);this.maxRows=numRows;
var printDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,1-leadDays));
for(var dRow=0;dRow<numRows;dRow++){calender+='<tr>';
var tbody=(!showWeek?'':'<td class="ui-datepicker-week-col">'+
this._get(inst,'calculateWeek')(printDate)+'</td>');
for(var dow=0;dow<7;dow++){var daySettings=(beforeShowDay?
beforeShowDay.apply((inst.input?inst.input[0]:null),[printDate]):[true,'']);
var otherMonth=(printDate.getMonth()!=drawMonth);
var unselectable=(otherMonth&&!selectOtherMonths)||!daySettings[0]||
(minDate&&printDate<minDate)||(maxDate&&printDate>maxDate);
tbody+='<td class="'+
((dow+firstDay+6)%7>=5?' ui-datepicker-week-end':'')+(otherMonth?' ui-datepicker-other-month':'')+((printDate.getTime()==selectedDate.getTime()&&drawMonth==inst.selectedMonth&&inst._keyEvent)||(defaultDate.getTime()==printDate.getTime()&&defaultDate.getTime()==selectedDate.getTime())?
' '+this._dayOverClass:'')+(unselectable?' '+this._unselectableClass+' ui-state-disabled':'')+(otherMonth&&!showOtherMonths?'':' '+daySettings[1]+(printDate.getTime()==currentDate.getTime()?' '+this._currentClass:'')+(printDate.getTime()==today.getTime()?' ui-datepicker-today':''))+'"'+((!otherMonth||showOtherMonths)&&daySettings[2]?' title="'+daySettings[2]+'"':'')+(unselectable?'':' onclick="DP_jQuery_'+dpuuid+'.datepicker._selectDay(\'#'+
inst.id+'\','+printDate.getMonth()+','+printDate.getFullYear()+', this);return false;"')+'>'+(otherMonth&&!showOtherMonths?'&#xa0;':(unselectable?'<span class="ui-state-default">'+printDate.getDate()+'</span>':'<a class="ui-state-default'+
(printDate.getTime()==today.getTime()?' ui-state-highlight':'')+
(printDate.getTime()==currentDate.getTime()?' ui-state-active':'')+(otherMonth?' ui-priority-secondary':'')+'" href="#">'+printDate.getDate()+'</a>'))+'</td>';printDate.setDate(printDate.getDate()+1);
printDate=this._daylightSavingAdjust(printDate)}
calender+=tbody+'</tr>'}
drawMonth++;
if(drawMonth>11){
drawMonth=0;
drawYear++}
calender+='</tbody></table>'+(isMultiMonth?'</div>'+
((numMonths[0]>0&&col==numMonths[1]-1)?'<div class="ui-datepicker-row-break"></div>':''):'');
group+=calender}
html+=group}
html+=buttonPanel+($.browser.msie&&parseInt($.browser.version,10)<7&&!inst.inline?
'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':'');
inst._keyEvent=false;
return html},
_generateMonthYearHeader:function(inst,drawMonth,drawYear,minDate,maxDate,
secondary,monthNames,monthNamesShort){
var changeMonth=this._get(inst,'changeMonth');
var changeYear=this._get(inst,'changeYear');
var showMonthAfterYear=this._get(inst,'showMonthAfterYear');
var html='<div class="ui-datepicker-title">';
var monthHtml='';
if(secondary||!changeMonth)
monthHtml+='<span class="ui-datepicker-month">'+monthNames[drawMonth]+'</span>';
else{
var inMinYear=(minDate&&minDate.getFullYear()==drawYear);
var inMaxYear=(maxDate&&maxDate.getFullYear()==drawYear);
monthHtml+='<select class="ui-datepicker-month" '+
'onchange="DP_jQuery_'+dpuuid+'.datepicker._selectMonthYear(\'#'+inst.id+'\', this, \'M\');" '+
'>';
for(var month=0;month<12;month++){
if((!inMinYear||month>=minDate.getMonth())&&
(!inMaxYear||month<=maxDate.getMonth()))
monthHtml+='<option value="'+month+'"'+
(month==drawMonth?' selected="selected"':'')+
'>'+monthNamesShort[month]+'</option>'}
monthHtml+='</select>'}
if(!showMonthAfterYear)
html+=monthHtml+(secondary||!(changeMonth&&changeYear)?'&#xa0;':'');
if(!inst.yearshtml){
inst.yearshtml='';
if(secondary||!changeYear)
html+='<span class="ui-datepicker-year">'+drawYear+'</span>';
else{
var years=this._get(inst,'yearRange').split(':');
var thisYear=new Date().getFullYear();
var determineYear=function(value){
var year=(value.match(/c[+-].*/)?drawYear+parseInt(value.substring(1),10):
(value.match(/[+-].*/)?thisYear+parseInt(value,10):
parseInt(value,10)));
return(isNaN(year)?thisYear:year)};
var year=determineYear(years[0]);
var endYear=Math.max(year,determineYear(years[1]||''));
year=(minDate?Math.max(year,minDate.getFullYear()):year);
endYear=(maxDate?Math.min(endYear,maxDate.getFullYear()):endYear);
inst.yearshtml+='<select class="ui-datepicker-year" '+
'onchange="DP_jQuery_'+dpuuid+'.datepicker._selectMonthYear(\'#'+inst.id+'\', this, \'Y\');" '+
'>';
for(;year<=endYear;year++){
inst.yearshtml+='<option value="'+year+'"'+
(year==drawYear?' selected="selected"':'')+
'>'+year+'</option>'}
inst.yearshtml+='</select>';
html+=inst.yearshtml;
inst.yearshtml=null}
}
html+=this._get(inst,'yearSuffix');
if(showMonthAfterYear)
html+=(secondary||!(changeMonth&&changeYear)?'&#xa0;':'')+monthHtml;
html+='</div>';return html},
_adjustInstDate:function(inst,offset,period){
var year=inst.drawYear+(period=='Y'?offset:0);
var month=inst.drawMonth+(period=='M'?offset:0);
var day=Math.min(inst.selectedDay,this._getDaysInMonth(year,month))+
(period=='D'?offset:0);
var date=this._restrictMinMax(inst,
this._daylightSavingAdjust(new Date(year,month,day)));
inst.selectedDay=date.getDate();
inst.drawMonth=inst.selectedMonth=date.getMonth();
inst.drawYear=inst.selectedYear=date.getFullYear();
if(period=='M'||period=='Y')
this._notifyChange(inst)},
_restrictMinMax:function(inst,date){
var minDate=this._getMinMaxDate(inst,'min');
var maxDate=this._getMinMaxDate(inst,'max');
var newDate=(minDate&&date<minDate?minDate:date);
newDate=(maxDate&&newDate>maxDate?maxDate:newDate);
return newDate},
_notifyChange:function(inst){
var onChange=this._get(inst,'onChangeMonthYear');
if(onChange)
onChange.apply((inst.input?inst.input[0]:null),
[inst.selectedYear,inst.selectedMonth+1,inst])},
_getNumberOfMonths:function(inst){
var numMonths=this._get(inst,'numberOfMonths');
return(numMonths==null?[1,1]:(typeof numMonths=='number'?[1,numMonths]:numMonths))},
_getMinMaxDate:function(inst,minMax){
return this._determineDate(inst,this._get(inst,minMax+'Date'),null)},
_getDaysInMonth:function(year,month){
return 32-this._daylightSavingAdjust(new Date(year,month,32)).getDate()},
_getFirstDayOfMonth:function(year,month){
return new Date(year,month,1).getDay()},
_canAdjustMonth:function(inst,offset,curYear,curMonth){
var numMonths=this._getNumberOfMonths(inst);
var date=this._daylightSavingAdjust(new Date(curYear,
curMonth+(offset<0?offset:numMonths[0]*numMonths[1]),1));
if(offset<0)
date.setDate(this._getDaysInMonth(date.getFullYear(),date.getMonth()));
return this._isInRange(inst,date)},
_isInRange:function(inst,date){
var minDate=this._getMinMaxDate(inst,'min');
var maxDate=this._getMinMaxDate(inst,'max');
return((!minDate||date.getTime()>=minDate.getTime())&&
(!maxDate||date.getTime()<=maxDate.getTime()))},
_getFormatConfig:function(inst){
var shortYearCutoff=this._get(inst,'shortYearCutoff');
shortYearCutoff=(typeof shortYearCutoff!='string'?shortYearCutoff:
new Date().getFullYear()%100+parseInt(shortYearCutoff,10));
return{shortYearCutoff:shortYearCutoff,
dayNamesShort:this._get(inst,'dayNamesShort'),dayNames:this._get(inst,'dayNames'),
monthNamesShort:this._get(inst,'monthNamesShort'),monthNames:this._get(inst,'monthNames')}},
_formatDate:function(inst,day,month,year){
if(!day){
inst.currentDay=inst.selectedDay;
inst.currentMonth=inst.selectedMonth;
inst.currentYear=inst.selectedYear}
var date=(day?(typeof day=='object'?day:
this._daylightSavingAdjust(new Date(year,month,day))):
this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));
return this.formatDate(this._get(inst,'dateFormat'),date,this._getFormatConfig(inst))}
});
function bindHover(dpDiv){
var selector='button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a';
return dpDiv.bind('mouseout',function(event){
var elem=$(event.target).closest(selector);
if(!elem.length){
return}
elem.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")})
.bind('mouseover',function(event){
var elem=$(event.target).closest(selector);
if($.datepicker._isDisabledDatepicker(instActive.inline?dpDiv.parent()[0]:instActive.input[0])||
!elem.length){
return}
elem.parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover');
elem.addClass('ui-state-hover');
if(elem.hasClass('ui-datepicker-prev'))elem.addClass('ui-datepicker-prev-hover');
if(elem.hasClass('ui-datepicker-next'))elem.addClass('ui-datepicker-next-hover')})}
function extendRemove(target,props){
$.extend(target,props);
for(var name in props)
if(props[name]==null||props[name]==undefined)
target[name]=props[name];
return target};
function isArray(a){
return(a&&(($.browser.safari&&typeof a=='object'&&a.length)||
(a.constructor&&a.constructor.toString().match(/\Array\(\)/))))};
$.fn.datepicker=function(options){
if(!this.length){
return this}
if(!$.datepicker.initialized){
$(document).mousedown($.datepicker._checkExternalClick).
find('body').append($.datepicker.dpDiv);
$.datepicker.initialized=true}
var otherArgs=Array.prototype.slice.call(arguments,1);
if(typeof options=='string'&&(options=='isDisabled'||options=='getDate'||options=='widget'))
return $.datepicker['_'+options+'Datepicker'].
apply($.datepicker,[this[0]].concat(otherArgs));
if(options=='option'&&arguments.length==2&&typeof arguments[1]=='string')
return $.datepicker['_'+options+'Datepicker'].
apply($.datepicker,[this[0]].concat(otherArgs));
return this.each(function(){
typeof options=='string'?
$.datepicker['_'+options+'Datepicker'].
apply($.datepicker,[this].concat(otherArgs)):
$.datepicker._attachDatepicker(this,options)})};
$.datepicker=new Datepicker();$.datepicker.initialized=false;
$.datepicker.uuid=new Date().getTime();
$.datepicker.version="1.8.16";
window['DP_jQuery_'+dpuuid]=$})(jQuery);


/* plugins/auto/jquery_ui/javascript/jquery-ui-1.8.16/ui/jquery-ui.js */

(function($,undefined){
$.ui=$.ui||{};
if($.ui.version){
return}
$.extend($.ui,{
version:"1.8.16",
keyCode:{
ALT:18,
BACKSPACE:8,
CAPS_LOCK:20,
COMMA:188,
COMMAND:91,
COMMAND_LEFT:91,COMMAND_RIGHT:93,
CONTROL:17,
DELETE:46,
DOWN:40,
END:35,
ENTER:13,
ESCAPE:27,
HOME:36,
INSERT:45,
LEFT:37,
MENU:93,NUMPAD_ADD:107,
NUMPAD_DECIMAL:110,
NUMPAD_DIVIDE:111,
NUMPAD_ENTER:108,
NUMPAD_MULTIPLY:106,
NUMPAD_SUBTRACT:109,
PAGE_DOWN:34,
PAGE_UP:33,
PERIOD:190,
RIGHT:39,
SHIFT:16,
SPACE:32,
TAB:9,
UP:38,
WINDOWS:91}
});
$.fn.extend({
propAttr:$.fn.prop||$.fn.attr,
_focus:$.fn.focus,
focus:function(delay,fn){
return typeof delay==="number"?
this.each(function(){
var elem=this;
setTimeout(function(){
$(elem).focus();
if(fn){
fn.call(elem)}
},delay)}):
this._focus.apply(this,arguments)},
scrollParent:function(){
var scrollParent;
if(($.browser.msie&&(/(static|relative)/).test(this.css('position')))||(/absolute/).test(this.css('position'))){
scrollParent=this.parents().filter(function(){
return(/(relative|absolute|fixed)/).test($.curCSS(this,'position',1))&&(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1))}).eq(0)}else{
scrollParent=this.parents().filter(function(){
return(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1))}).eq(0)}
return(/fixed/).test(this.css('position'))||!scrollParent.length?$(document):scrollParent},
zIndex:function(zIndex){
if(zIndex!==undefined){
return this.css("zIndex",zIndex)}
if(this.length){
var elem=$(this[0]),position,value;
while(elem.length&&elem[0]!==document){
position=elem.css("position");
if(position==="absolute"||position==="relative"||position==="fixed"){
value=parseInt(elem.css("zIndex"),10);
if(!isNaN(value)&&value!==0){
return value}
}
elem=elem.parent()}
}
return 0},
disableSelection:function(){
return this.bind(($.support.selectstart?"selectstart":"mousedown")+
".ui-disableSelection",function(event){
event.preventDefault()})},
enableSelection:function(){
return this.unbind(".ui-disableSelection")}
});
$.each(["Width","Height"],function(i,name){
var side=name==="Width"?["Left","Right"]:["Top","Bottom"],
type=name.toLowerCase(),
orig={
innerWidth:$.fn.innerWidth,
innerHeight:$.fn.innerHeight,
outerWidth:$.fn.outerWidth,
outerHeight:$.fn.outerHeight
};
function reduce(elem,size,border,margin){
$.each(side,function(){
size-=parseFloat($.curCSS(elem,"padding"+this,true))||0;
if(border){
size-=parseFloat($.curCSS(elem,"border"+this+"Width",true))||0}
if(margin){
size-=parseFloat($.curCSS(elem,"margin"+this,true))||0}
});
return size}
$.fn["inner"+name]=function(size){
if(size===undefined){
return orig["inner"+name].call(this)}
return this.each(function(){
$(this).css(type,reduce(this,size)+"px")})};
$.fn["outer"+name]=function(size,margin){
if(typeof size!=="number"){
return orig["outer"+name].call(this,size)}
return this.each(function(){
$(this).css(type,reduce(this,size,true,margin)+"px")})}});
function focusable(element,isTabIndexNotNaN){
var nodeName=element.nodeName.toLowerCase();
if("area"===nodeName){
var map=element.parentNode,
mapName=map.name,
img;
if(!element.href||!mapName||map.nodeName.toLowerCase()!=="map"){
return false}
img=$("img[usemap=#"+mapName+"]")[0];
return!!img&&visible(img)}
return(/input|select|textarea|button|object/.test(nodeName)
?!element.disabled
:"a"==nodeName
?element.href||isTabIndexNotNaN
:isTabIndexNotNaN)
&&visible(element)}
function visible(element){
return!$(element).parents().andSelf().filter(function(){
return $.curCSS(this,"visibility")==="hidden"||
$.expr.filters.hidden(this)}).length}
$.extend($.expr[":"],{
data:function(elem,i,match){
return!!$.data(elem,match[3])},
focusable:function(element){
return focusable(element,!isNaN($.attr(element,"tabindex")))},
tabbable:function(element){
var tabIndex=$.attr(element,"tabindex"),
isTabIndexNaN=isNaN(tabIndex);
return(isTabIndexNaN||tabIndex>=0)&&focusable(element,!isTabIndexNaN)}
});
$(function(){
var body=document.body,
div=body.appendChild(div=document.createElement("div"));
$.extend(div.style,{
minHeight:"100px",
height:"auto",
padding:0,
borderWidth:0
});
$.support.minHeight=div.offsetHeight===100;
$.support.selectstart="onselectstart"in div;
body.removeChild(div).style.display="none"});
$.extend($.ui,{
plugin:{
add:function(module,option,set){
var proto=$.ui[module].prototype;
for(var i in set){
proto.plugins[i]=proto.plugins[i]||[];
proto.plugins[i].push([option,set[i]])}
},
call:function(instance,name,args){
var set=instance.plugins[name];
if(!set||!instance.element[0].parentNode){
return}
for(var i=0;i<set.length;i++){
if(instance.options[set[i][0]]){
set[i][1].apply(instance.element,args)}
}
}
},
contains:function(a,b){
return document.compareDocumentPosition?
a.compareDocumentPosition(b)&16:
a!==b&&a.contains(b)},
hasScroll:function(el,a){
if($(el).css("overflow")==="hidden"){
return false}
var scroll=(a&&a==="left")?"scrollLeft":"scrollTop",
has=false;
if(el[scroll]>0){
return true}
el[scroll]=1;
has=(el[scroll]>0);
el[scroll]=0;
return has},
isOverAxis:function(x,reference,size){
return(x>reference)&&(x<(reference+size))},
isOver:function(y,x,top,left,height,width){
return $.ui.isOverAxis(y,top,height)&&$.ui.isOverAxis(x,left,width)}
})})(jQuery);
(function($,undefined){
if($.cleanData){
var _cleanData=$.cleanData;
$.cleanData=function(elems){
for(var i=0,elem;(elem=elems[i])!=null;i++){
try{
$(elem).triggerHandler("remove")}catch(e){}
}
_cleanData(elems)}}else{
var _remove=$.fn.remove;
$.fn.remove=function(selector,keepData){
return this.each(function(){
if(!keepData){
if(!selector||$.filter(selector,[this]).length){
$("*",this).add([this]).each(function(){
try{
$(this).triggerHandler("remove")}catch(e){}
})}
}
return _remove.call($(this),selector,keepData)})}}
$.widget=function(name,base,prototype){
var namespace=name.split(".")[0],
fullName;
name=name.split(".")[1];
fullName=namespace+"-"+name;
if(!prototype){
prototype=base;
base=$.Widget}
$.expr[":"][fullName]=function(elem){
return!!$.data(elem,name)};
$[namespace]=$[namespace]||{};
$[namespace][name]=function(options,element){
if(arguments.length){
this._createWidget(options,element)}
};
var basePrototype=new base();
basePrototype.options=$.extend(true,{},basePrototype.options);
$[namespace][name].prototype=$.extend(true,basePrototype,{
namespace:namespace,
widgetName:name,
widgetEventPrefix:$[namespace][name].prototype.widgetEventPrefix||name,
widgetBaseClass:fullName
},prototype);
$.widget.bridge(name,$[namespace][name])};
$.widget.bridge=function(name,object){
$.fn[name]=function(options){
var isMethodCall=typeof options==="string",
args=Array.prototype.slice.call(arguments,1),
returnValue=this;
options=!isMethodCall&&args.length?
$.extend.apply(null,[true,options].concat(args)):
options;
if(isMethodCall&&options.charAt(0)==="_"){
return returnValue}
if(isMethodCall){
this.each(function(){
var instance=$.data(this,name),
methodValue=instance&&$.isFunction(instance[options])?
instance[options].apply(instance,args):
instance;
if(methodValue!==instance&&methodValue!==undefined){
returnValue=methodValue;
return false}
})}else{
this.each(function(){
var instance=$.data(this,name);
if(instance){
instance.option(options||{})._init()}else{
$.data(this,name,new object(options,this))}
})}
return returnValue}};
$.Widget=function(options,element){
if(arguments.length){
this._createWidget(options,element)}
};
$.Widget.prototype={
widgetName:"widget",
widgetEventPrefix:"",
options:{
disabled:false
},
_createWidget:function(options,element){
$.data(element,this.widgetName,this);
this.element=$(element);
this.options=$.extend(true,{},
this.options,
this._getCreateOptions(),
options);
var self=this;
this.element.bind("remove."+this.widgetName,function(){
self.destroy()});
this._create();
this._trigger("create");
this._init()},
_getCreateOptions:function(){
return $.metadata&&$.metadata.get(this.element[0])[this.widgetName]},
_create:function(){},
_init:function(){},
destroy:function(){
this.element
.unbind("."+this.widgetName)
.removeData(this.widgetName);
this.widget()
.unbind("."+this.widgetName)
.removeAttr("aria-disabled")
.removeClass(
this.widgetBaseClass+"-disabled "+
"ui-state-disabled")},
widget:function(){
return this.element},
option:function(key,value){
var options=key;
if(arguments.length===0){
return $.extend({},this.options)}
if(typeof key==="string"){
if(value===undefined){
return this.options[key]}
options={};
options[key]=value}
this._setOptions(options);
return this},
_setOptions:function(options){
var self=this;
$.each(options,function(key,value){
self._setOption(key,value)});
return this},
_setOption:function(key,value){
this.options[key]=value;
if(key==="disabled"){
this.widget()
[value?"addClass":"removeClass"](
this.widgetBaseClass+"-disabled"+" "+
"ui-state-disabled")
.attr("aria-disabled",value)}
return this},
enable:function(){
return this._setOption("disabled",false)},
disable:function(){
return this._setOption("disabled",true)},
_trigger:function(type,event,data){
var callback=this.options[type];
event=$.Event(event);
event.type=(type===this.widgetEventPrefix?
type:
this.widgetEventPrefix+type).toLowerCase();
data=data||{};
if(event.originalEvent){
for(var i=$.event.props.length,prop;i;){
prop=$.event.props[--i];
event[prop]=event.originalEvent[prop]}
}
this.element.trigger(event,data);
return!($.isFunction(callback)&&
callback.call(this.element[0],event,data)===false||
event.isDefaultPrevented())}
}})(jQuery);
(function($,undefined){
var mouseHandled=false;
$(document).mouseup(function(e){
mouseHandled=false});
$.widget("ui.mouse",{
options:{
cancel:':input,option',
distance:1,
delay:0
},
_mouseInit:function(){
var self=this;
this.element
.bind('mousedown.'+this.widgetName,function(event){
return self._mouseDown(event)})
.bind('click.'+this.widgetName,function(event){
if(true===$.data(event.target,self.widgetName+'.preventClickEvent')){
$.removeData(event.target,self.widgetName+'.preventClickEvent');
event.stopImmediatePropagation();
return false}
});
this.started=false},
_mouseDestroy:function(){
this.element.unbind('.'+this.widgetName)},
_mouseDown:function(event){
if(mouseHandled){return};
(this._mouseStarted&&this._mouseUp(event));
this._mouseDownEvent=event;
var self=this,
btnIsLeft=(event.which==1),
elIsCancel=(typeof this.options.cancel=="string"&&event.target.nodeName?$(event.target).closest(this.options.cancel).length:false);
if(!btnIsLeft||elIsCancel||!this._mouseCapture(event)){
return true}
this.mouseDelayMet=!this.options.delay;
if(!this.mouseDelayMet){
this._mouseDelayTimer=setTimeout(function(){
self.mouseDelayMet=true},this.options.delay)}
if(this._mouseDistanceMet(event)&&this._mouseDelayMet(event)){
this._mouseStarted=(this._mouseStart(event)!==false);
if(!this._mouseStarted){
event.preventDefault();
return true}
}
if(true===$.data(event.target,this.widgetName+'.preventClickEvent')){
$.removeData(event.target,this.widgetName+'.preventClickEvent')}
this._mouseMoveDelegate=function(event){
return self._mouseMove(event)};
this._mouseUpDelegate=function(event){
return self._mouseUp(event)};
$(document)
.bind('mousemove.'+this.widgetName,this._mouseMoveDelegate)
.bind('mouseup.'+this.widgetName,this._mouseUpDelegate);
event.preventDefault();
mouseHandled=true;
return true},
_mouseMove:function(event){
if($.browser.msie&&!(document.documentMode>=9)&&!event.button){
return this._mouseUp(event)}
if(this._mouseStarted){
this._mouseDrag(event);
return event.preventDefault()}
if(this._mouseDistanceMet(event)&&this._mouseDelayMet(event)){
this._mouseStarted=
(this._mouseStart(this._mouseDownEvent,event)!==false);
(this._mouseStarted?this._mouseDrag(event):this._mouseUp(event))}
return!this._mouseStarted},
_mouseUp:function(event){
$(document)
.unbind('mousemove.'+this.widgetName,this._mouseMoveDelegate)
.unbind('mouseup.'+this.widgetName,this._mouseUpDelegate);
if(this._mouseStarted){
this._mouseStarted=false;
if(event.target==this._mouseDownEvent.target){
$.data(event.target,this.widgetName+'.preventClickEvent',true)}
this._mouseStop(event)}
return false},
_mouseDistanceMet:function(event){
return(Math.max(
Math.abs(this._mouseDownEvent.pageX-event.pageX),
Math.abs(this._mouseDownEvent.pageY-event.pageY)
)>=this.options.distance
)},
_mouseDelayMet:function(event){
return this.mouseDelayMet},
_mouseStart:function(event){},
_mouseDrag:function(event){},
_mouseStop:function(event){},
_mouseCapture:function(event){return true}
})})(jQuery);
(function($,undefined){
$.widget("ui.draggable",$.ui.mouse,{
widgetEventPrefix:"drag",
options:{
addClasses:true,
appendTo:"parent",
axis:false,
connectToSortable:false,
containment:false,
cursor:"auto",
cursorAt:false,
grid:false,
handle:false,
helper:"original",
iframeFix:false,
opacity:false,
refreshPositions:false,
revert:false,
revertDuration:500,
scope:"default",
scroll:true,
scrollSensitivity:20,
scrollSpeed:20,
snap:false,
snapMode:"both",
snapTolerance:20,
stack:false,
zIndex:false
},
_create:function(){
if(this.options.helper=='original'&&!(/^(?:r|a|f)/).test(this.element.css("position")))
this.element[0].style.position='relative';
(this.options.addClasses&&this.element.addClass("ui-draggable"));
(this.options.disabled&&this.element.addClass("ui-draggable-disabled"));
this._mouseInit()},
destroy:function(){
if(!this.element.data('draggable'))return;
this.element
.removeData("draggable")
.unbind(".draggable")
.removeClass("ui-draggable"
+" ui-draggable-dragging"
+" ui-draggable-disabled");
this._mouseDestroy();
return this},
_mouseCapture:function(event){
var o=this.options;
if(this.helper||o.disabled||$(event.target).is('.ui-resizable-handle'))
return false;
this.handle=this._getHandle(event);
if(!this.handle)
return false;
if(o.iframeFix){
$(o.iframeFix===true?"iframe":o.iframeFix).each(function(){
$('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>')
.css({
width:this.offsetWidth+"px",height:this.offsetHeight+"px",
position:"absolute",opacity:"0.001",zIndex:1000
})
.css($(this).offset())
.appendTo("body")})}
return true},
_mouseStart:function(event){
var o=this.options;
this.helper=this._createHelper(event);
this._cacheHelperProportions();
if($.ui.ddmanager)
$.ui.ddmanager.current=this;
this._cacheMargins();
this.cssPosition=this.helper.css("position");
this.scrollParent=this.helper.scrollParent();
this.offset=this.positionAbs=this.element.offset();
this.offset={
top:this.offset.top-this.margins.top,
left:this.offset.left-this.margins.left
};
$.extend(this.offset,{
click:{left:event.pageX-this.offset.left,
top:event.pageY-this.offset.top
},
parent:this._getParentOffset(),
relative:this._getRelativeOffset()});
this.originalPosition=this.position=this._generatePosition(event);
this.originalPageX=event.pageX;
this.originalPageY=event.pageY;
(o.cursorAt&&this._adjustOffsetFromHelper(o.cursorAt));
if(o.containment)
this._setContainment();
if(this._trigger("start",event)===false){
this._clear();
return false}
this._cacheHelperProportions();
if($.ui.ddmanager&&!o.dropBehaviour)
$.ui.ddmanager.prepareOffsets(this,event);
this.helper.addClass("ui-draggable-dragging");
this._mouseDrag(event,true);
if($.ui.ddmanager)$.ui.ddmanager.dragStart(this,event);
return true},
_mouseDrag:function(event,noPropagation){
this.position=this._generatePosition(event);
this.positionAbs=this._convertPositionTo("absolute");
if(!noPropagation){
var ui=this._uiHash();
if(this._trigger('drag',event,ui)===false){
this._mouseUp({});
return false}
this.position=ui.position}
if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+'px';
if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+'px';
if($.ui.ddmanager)$.ui.ddmanager.drag(this,event);
return false},
_mouseStop:function(event){
var dropped=false;
if($.ui.ddmanager&&!this.options.dropBehaviour)
dropped=$.ui.ddmanager.drop(this,event);
if(this.dropped){
dropped=this.dropped;
this.dropped=false}
if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")
return false;
if((this.options.revert=="invalid"&&!dropped)||(this.options.revert=="valid"&&dropped)||this.options.revert===true||($.isFunction(this.options.revert)&&this.options.revert.call(this.element,dropped))){
var self=this;
$(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){
if(self._trigger("stop",event)!==false){
self._clear()}
})}else{
if(this._trigger("stop",event)!==false){
this._clear()}
}
return false},
_mouseUp:function(event){
if(this.options.iframeFix===true){
$("div.ui-draggable-iframeFix").each(function(){
this.parentNode.removeChild(this)})}
if($.ui.ddmanager)$.ui.ddmanager.dragStop(this,event);
return $.ui.mouse.prototype._mouseUp.call(this,event)},
cancel:function(){
if(this.helper.is(".ui-draggable-dragging")){
this._mouseUp({})}else{
this._clear()}
return this},
_getHandle:function(event){
var handle=!this.options.handle||!$(this.options.handle,this.element).length?true:false;
$(this.options.handle,this.element)
.find("*")
.andSelf()
.each(function(){
if(this==event.target)handle=true});
return handle},
_createHelper:function(event){
var o=this.options;
var helper=$.isFunction(o.helper)?$(o.helper.apply(this.element[0],[event])):(o.helper=='clone'?this.element.clone().removeAttr('id'):this.element);
if(!helper.parents('body').length)
helper.appendTo((o.appendTo=='parent'?this.element[0].parentNode:o.appendTo));
if(helper[0]!=this.element[0]&&!(/(fixed|absolute)/).test(helper.css("position")))
helper.css("position","absolute");
return helper},
_adjustOffsetFromHelper:function(obj){
if(typeof obj=='string'){
obj=obj.split(' ')}
if($.isArray(obj)){
obj={left:+obj[0],top:+obj[1]||0}}
if('left'in obj){
this.offset.click.left=obj.left+this.margins.left}
if('right'in obj){
this.offset.click.left=this.helperProportions.width-obj.right+this.margins.left}
if('top'in obj){
this.offset.click.top=obj.top+this.margins.top}
if('bottom'in obj){
this.offset.click.top=this.helperProportions.height-obj.bottom+this.margins.top}
},
_getParentOffset:function(){
this.offsetParent=this.helper.offsetParent();
var po=this.offsetParent.offset();
if(this.cssPosition=='absolute'&&this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0])){
po.left+=this.scrollParent.scrollLeft();
po.top+=this.scrollParent.scrollTop()}
if((this.offsetParent[0]==document.body)||(this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=='html'&&$.browser.msie))po={top:0,left:0};
return{
top:po.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),
left:po.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)
}},
_getRelativeOffset:function(){
if(this.cssPosition=="relative"){
var p=this.element.position();
return{
top:p.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),
left:p.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()
}}else{
return{top:0,left:0}}
},
_cacheMargins:function(){
this.margins={
left:(parseInt(this.element.css("marginLeft"),10)||0),
top:(parseInt(this.element.css("marginTop"),10)||0),
right:(parseInt(this.element.css("marginRight"),10)||0),
bottom:(parseInt(this.element.css("marginBottom"),10)||0)
}},
_cacheHelperProportions:function(){
this.helperProportions={
width:this.helper.outerWidth(),
height:this.helper.outerHeight()
}},
_setContainment:function(){
var o=this.options;
if(o.containment=='parent')o.containment=this.helper[0].parentNode;
if(o.containment=='document'||o.containment=='window')this.containment=[
o.containment=='document'?0:$(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,
o.containment=='document'?0:$(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,
(o.containment=='document'?0:$(window).scrollLeft())+$(o.containment=='document'?document:window).width()-this.helperProportions.width-this.margins.left,
(o.containment=='document'?0:$(window).scrollTop())+($(o.containment=='document'?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top
];
if(!(/^(document|window|parent)$/).test(o.containment)&&o.containment.constructor!=Array){
var c=$(o.containment);
var ce=c[0];if(!ce)return;
var co=c.offset();
var over=($(ce).css("overflow")!='hidden');
this.containment=[
(parseInt($(ce).css("borderLeftWidth"),10)||0)+(parseInt($(ce).css("paddingLeft"),10)||0),
(parseInt($(ce).css("borderTopWidth"),10)||0)+(parseInt($(ce).css("paddingTop"),10)||0),
(over?Math.max(ce.scrollWidth,ce.offsetWidth):ce.offsetWidth)-(parseInt($(ce).css("borderLeftWidth"),10)||0)-(parseInt($(ce).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,
(over?Math.max(ce.scrollHeight,ce.offsetHeight):ce.offsetHeight)-(parseInt($(ce).css("borderTopWidth"),10)||0)-(parseInt($(ce).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom
];
this.relative_container=c}else if(o.containment.constructor==Array){
this.containment=o.containment}
},
_convertPositionTo:function(d,pos){
if(!pos)pos=this.position;
var mod=d=="absolute"?1:-1;
var o=this.options,scroll=this.cssPosition=='absolute'&&!(this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,scrollIsRootNode=(/(html|body)/i).test(scroll[0].tagName);
return{
top:(
pos.top+this.offset.relative.top*mod+this.offset.parent.top*mod-($.browser.safari&&$.browser.version<526&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollTop():(scrollIsRootNode?0:scroll.scrollTop()))*mod)
),
left:(
pos.left+this.offset.relative.left*mod+this.offset.parent.left*mod-($.browser.safari&&$.browser.version<526&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollLeft():scrollIsRootNode?0:scroll.scrollLeft())*mod)
)
}},
_generatePosition:function(event){
var o=this.options,scroll=this.cssPosition=='absolute'&&!(this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,scrollIsRootNode=(/(html|body)/i).test(scroll[0].tagName);
var pageX=event.pageX;
var pageY=event.pageY;
if(this.originalPosition){var containment;
if(this.containment){
if(this.relative_container){
var co=this.relative_container.offset();
containment=[this.containment[0]+co.left,
this.containment[1]+co.top,
this.containment[2]+co.left,
this.containment[3]+co.top]}
else{
containment=this.containment}
if(event.pageX-this.offset.click.left<containment[0])pageX=containment[0]+this.offset.click.left;
if(event.pageY-this.offset.click.top<containment[1])pageY=containment[1]+this.offset.click.top;
if(event.pageX-this.offset.click.left>containment[2])pageX=containment[2]+this.offset.click.left;
if(event.pageY-this.offset.click.top>containment[3])pageY=containment[3]+this.offset.click.top}
if(o.grid){
var top=o.grid[1]?this.originalPageY+Math.round((pageY-this.originalPageY)/o.grid[1])*o.grid[1]:this.originalPageY;
pageY=containment?(!(top-this.offset.click.top<containment[1]||top-this.offset.click.top>containment[3])?top:(!(top-this.offset.click.top<containment[1])?top-o.grid[1]:top+o.grid[1])):top;
var left=o.grid[0]?this.originalPageX+Math.round((pageX-this.originalPageX)/o.grid[0])*o.grid[0]:this.originalPageX;
pageX=containment?(!(left-this.offset.click.left<containment[0]||left-this.offset.click.left>containment[2])?left:(!(left-this.offset.click.left<containment[0])?left-o.grid[0]:left+o.grid[0])):left}
}
return{
top:(
pageY-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+($.browser.safari&&$.browser.version<526&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollTop():(scrollIsRootNode?0:scroll.scrollTop())))
),
left:(
pageX-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+($.browser.safari&&$.browser.version<526&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollLeft():scrollIsRootNode?0:scroll.scrollLeft()))
)
}},
_clear:function(){
this.helper.removeClass("ui-draggable-dragging");
if(this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval)this.helper.remove();
this.helper=null;
this.cancelHelperRemoval=false},
_trigger:function(type,event,ui){
ui=ui||this._uiHash();
$.ui.plugin.call(this,type,[event,ui]);
if(type=="drag")this.positionAbs=this._convertPositionTo("absolute");return $.Widget.prototype._trigger.call(this,type,event,ui)},
plugins:{},
_uiHash:function(event){
return{
helper:this.helper,
position:this.position,
originalPosition:this.originalPosition,
offset:this.positionAbs
}}
});
$.extend($.ui.draggable,{
version:"1.8.16"
});
$.ui.plugin.add("draggable","connectToSortable",{
start:function(event,ui){
var inst=$(this).data("draggable"),o=inst.options,
uiSortable=$.extend({},ui,{item:inst.element});
inst.sortables=[];
$(o.connectToSortable).each(function(){
var sortable=$.data(this,'sortable');
if(sortable&&!sortable.options.disabled){
inst.sortables.push({
instance:sortable,
shouldRevert:sortable.options.revert
});
sortable.refreshPositions();sortable._trigger("activate",event,uiSortable)}
})},
stop:function(event,ui){
var inst=$(this).data("draggable"),
uiSortable=$.extend({},ui,{item:inst.element});
$.each(inst.sortables,function(){
if(this.instance.isOver){
this.instance.isOver=0;
inst.cancelHelperRemoval=true;this.instance.cancelHelperRemoval=false;
if(this.shouldRevert)this.instance.options.revert=true;
this.instance._mouseStop(event);
this.instance.options.helper=this.instance.options._helper;
if(inst.options.helper=='original')
this.instance.currentItem.css({top:'auto',left:'auto'})}else{
this.instance.cancelHelperRemoval=false;this.instance._trigger("deactivate",event,uiSortable)}
})},
drag:function(event,ui){
var inst=$(this).data("draggable"),self=this;
var checkPos=function(o){
var dyClick=this.offset.click.top,dxClick=this.offset.click.left;
var helperTop=this.positionAbs.top,helperLeft=this.positionAbs.left;
var itemHeight=o.height,itemWidth=o.width;
var itemTop=o.top,itemLeft=o.left;
return $.ui.isOver(helperTop+dyClick,helperLeft+dxClick,itemTop,itemLeft,itemHeight,itemWidth)};
$.each(inst.sortables,function(i){
this.instance.positionAbs=inst.positionAbs;
this.instance.helperProportions=inst.helperProportions;
this.instance.offset.click=inst.offset.click;
if(this.instance._intersectsWith(this.instance.containerCache)){
if(!this.instance.isOver){
this.instance.isOver=1;
this.instance.currentItem=$(self).clone().removeAttr('id').appendTo(this.instance.element).data("sortable-item",true);
this.instance.options._helper=this.instance.options.helper;this.instance.options.helper=function(){return ui.helper[0]};
event.target=this.instance.currentItem[0];
this.instance._mouseCapture(event,true);
this.instance._mouseStart(event,true,true);
this.instance.offset.click.top=inst.offset.click.top;
this.instance.offset.click.left=inst.offset.click.left;
this.instance.offset.parent.left-=inst.offset.parent.left-this.instance.offset.parent.left;
this.instance.offset.parent.top-=inst.offset.parent.top-this.instance.offset.parent.top;
inst._trigger("toSortable",event);
inst.dropped=this.instance.element;inst.currentItem=inst.element;
this.instance.fromOutside=inst}
if(this.instance.currentItem)this.instance._mouseDrag(event)}else{
if(this.instance.isOver){
this.instance.isOver=0;
this.instance.cancelHelperRemoval=true;
this.instance.options.revert=false;
this.instance._trigger('out',event,this.instance._uiHash(this.instance));
this.instance._mouseStop(event,true);
this.instance.options.helper=this.instance.options._helper;
this.instance.currentItem.remove();
if(this.instance.placeholder)this.instance.placeholder.remove();
inst._trigger("fromSortable",event);
inst.dropped=false}
}})}
});
$.ui.plugin.add("draggable","cursor",{
start:function(event,ui){
var t=$('body'),o=$(this).data('draggable').options;
if(t.css("cursor"))o._cursor=t.css("cursor");
t.css("cursor",o.cursor)},
stop:function(event,ui){
var o=$(this).data('draggable').options;
if(o._cursor)$('body').css("cursor",o._cursor)}
});
$.ui.plugin.add("draggable","opacity",{
start:function(event,ui){
var t=$(ui.helper),o=$(this).data('draggable').options;
if(t.css("opacity"))o._opacity=t.css("opacity");
t.css('opacity',o.opacity)},
stop:function(event,ui){
var o=$(this).data('draggable').options;
if(o._opacity)$(ui.helper).css('opacity',o._opacity)}
});
$.ui.plugin.add("draggable","scroll",{
start:function(event,ui){
var i=$(this).data("draggable");
if(i.scrollParent[0]!=document&&i.scrollParent[0].tagName!='HTML')i.overflowOffset=i.scrollParent.offset()},
drag:function(event,ui){
var i=$(this).data("draggable"),o=i.options,scrolled=false;
if(i.scrollParent[0]!=document&&i.scrollParent[0].tagName!='HTML'){
if(!o.axis||o.axis!='x'){
if((i.overflowOffset.top+i.scrollParent[0].offsetHeight)-event.pageY<o.scrollSensitivity)
i.scrollParent[0].scrollTop=scrolled=i.scrollParent[0].scrollTop+o.scrollSpeed;
else if(event.pageY-i.overflowOffset.top<o.scrollSensitivity)
i.scrollParent[0].scrollTop=scrolled=i.scrollParent[0].scrollTop-o.scrollSpeed}
if(!o.axis||o.axis!='y'){
if((i.overflowOffset.left+i.scrollParent[0].offsetWidth)-event.pageX<o.scrollSensitivity)
i.scrollParent[0].scrollLeft=scrolled=i.scrollParent[0].scrollLeft+o.scrollSpeed;
else if(event.pageX-i.overflowOffset.left<o.scrollSensitivity)
i.scrollParent[0].scrollLeft=scrolled=i.scrollParent[0].scrollLeft-o.scrollSpeed}
}else{
if(!o.axis||o.axis!='x'){
if(event.pageY-$(document).scrollTop()<o.scrollSensitivity)
scrolled=$(document).scrollTop($(document).scrollTop()-o.scrollSpeed);
else if($(window).height()-(event.pageY-$(document).scrollTop())<o.scrollSensitivity)
scrolled=$(document).scrollTop($(document).scrollTop()+o.scrollSpeed)}
if(!o.axis||o.axis!='y'){
if(event.pageX-$(document).scrollLeft()<o.scrollSensitivity)
scrolled=$(document).scrollLeft($(document).scrollLeft()-o.scrollSpeed);
else if($(window).width()-(event.pageX-$(document).scrollLeft())<o.scrollSensitivity)
scrolled=$(document).scrollLeft($(document).scrollLeft()+o.scrollSpeed)}
}
if(scrolled!==false&&$.ui.ddmanager&&!o.dropBehaviour)
$.ui.ddmanager.prepareOffsets(i,event)}
});
$.ui.plugin.add("draggable","snap",{
start:function(event,ui){
var i=$(this).data("draggable"),o=i.options;
i.snapElements=[];
$(o.snap.constructor!=String?(o.snap.items||':data(draggable)'):o.snap).each(function(){
var $t=$(this);var $o=$t.offset();
if(this!=i.element[0])i.snapElements.push({
item:this,
width:$t.outerWidth(),height:$t.outerHeight(),
top:$o.top,left:$o.left
})})},
drag:function(event,ui){
var inst=$(this).data("draggable"),o=inst.options;
var d=o.snapTolerance;
var x1=ui.offset.left,x2=x1+inst.helperProportions.width,
y1=ui.offset.top,y2=y1+inst.helperProportions.height;
for(var i=inst.snapElements.length-1;i>=0;i--){
var l=inst.snapElements[i].left,r=l+inst.snapElements[i].width,
t=inst.snapElements[i].top,b=t+inst.snapElements[i].height;
if(!((l-d<x1&&x1<r+d&&t-d<y1&&y1<b+d)||(l-d<x1&&x1<r+d&&t-d<y2&&y2<b+d)||(l-d<x2&&x2<r+d&&t-d<y1&&y1<b+d)||(l-d<x2&&x2<r+d&&t-d<y2&&y2<b+d))){
if(inst.snapElements[i].snapping)(inst.options.snap.release&&inst.options.snap.release.call(inst.element,event,$.extend(inst._uiHash(),{snapItem:inst.snapElements[i].item})));
inst.snapElements[i].snapping=false;
continue}
if(o.snapMode!='inner'){
var ts=Math.abs(t-y2)<=d;
var bs=Math.abs(b-y1)<=d;
var ls=Math.abs(l-x2)<=d;
var rs=Math.abs(r-x1)<=d;
if(ts)ui.position.top=inst._convertPositionTo("relative",{top:t-inst.helperProportions.height,left:0}).top-inst.margins.top;
if(bs)ui.position.top=inst._convertPositionTo("relative",{top:b,left:0}).top-inst.margins.top;
if(ls)ui.position.left=inst._convertPositionTo("relative",{top:0,left:l-inst.helperProportions.width}).left-inst.margins.left;
if(rs)ui.position.left=inst._convertPositionTo("relative",{top:0,left:r}).left-inst.margins.left}
var first=(ts||bs||ls||rs);
if(o.snapMode!='outer'){
var ts=Math.abs(t-y1)<=d;
var bs=Math.abs(b-y2)<=d;
var ls=Math.abs(l-x1)<=d;
var rs=Math.abs(r-x2)<=d;
if(ts)ui.position.top=inst._convertPositionTo("relative",{top:t,left:0}).top-inst.margins.top;
if(bs)ui.position.top=inst._convertPositionTo("relative",{top:b-inst.helperProportions.height,left:0}).top-inst.margins.top;
if(ls)ui.position.left=inst._convertPositionTo("relative",{top:0,left:l}).left-inst.margins.left;
if(rs)ui.position.left=inst._convertPositionTo("relative",{top:0,left:r-inst.helperProportions.width}).left-inst.margins.left}
if(!inst.snapElements[i].snapping&&(ts||bs||ls||rs||first))
(inst.options.snap.snap&&inst.options.snap.snap.call(inst.element,event,$.extend(inst._uiHash(),{snapItem:inst.snapElements[i].item})));
inst.snapElements[i].snapping=(ts||bs||ls||rs||first)}}
});
$.ui.plugin.add("draggable","stack",{
start:function(event,ui){
var o=$(this).data("draggable").options;
var group=$.makeArray($(o.stack)).sort(function(a,b){
return(parseInt($(a).css("zIndex"),10)||0)-(parseInt($(b).css("zIndex"),10)||0)});
if(!group.length){return}
var min=parseInt(group[0].style.zIndex)||0;
$(group).each(function(i){
this.style.zIndex=min+i});
this[0].style.zIndex=min+group.length}
});
$.ui.plugin.add("draggable","zIndex",{
start:function(event,ui){
var t=$(ui.helper),o=$(this).data("draggable").options;
if(t.css("zIndex"))o._zIndex=t.css("zIndex");
t.css('zIndex',o.zIndex)},
stop:function(event,ui){
var o=$(this).data("draggable").options;
if(o._zIndex)$(ui.helper).css('zIndex',o._zIndex)}
})})(jQuery);
(function($,undefined){
$.widget("ui.droppable",{
widgetEventPrefix:"drop",
options:{
accept:'*',
activeClass:false,
addClasses:true,
greedy:false,
hoverClass:false,
scope:'default',
tolerance:'intersect'
},
_create:function(){
var o=this.options,accept=o.accept;
this.isover=0;this.isout=1;
this.accept=$.isFunction(accept)?accept:function(d){
return d.is(accept)};
this.proportions={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight};
$.ui.ddmanager.droppables[o.scope]=$.ui.ddmanager.droppables[o.scope]||[];
$.ui.ddmanager.droppables[o.scope].push(this);
(o.addClasses&&this.element.addClass("ui-droppable"))},
destroy:function(){
var drop=$.ui.ddmanager.droppables[this.options.scope];
for(var i=0;i<drop.length;i++)
if(drop[i]==this)
drop.splice(i,1);
this.element
.removeClass("ui-droppable ui-droppable-disabled")
.removeData("droppable")
.unbind(".droppable");
return this},
_setOption:function(key,value){
if(key=='accept'){
this.accept=$.isFunction(value)?value:function(d){
return d.is(value)}}
$.Widget.prototype._setOption.apply(this,arguments)},
_activate:function(event){
var draggable=$.ui.ddmanager.current;
if(this.options.activeClass)this.element.addClass(this.options.activeClass);
(draggable&&this._trigger('activate',event,this.ui(draggable)))},
_deactivate:function(event){
var draggable=$.ui.ddmanager.current;
if(this.options.activeClass)this.element.removeClass(this.options.activeClass);
(draggable&&this._trigger('deactivate',event,this.ui(draggable)))},
_over:function(event){
var draggable=$.ui.ddmanager.current;
if(!draggable||(draggable.currentItem||draggable.element)[0]==this.element[0])return;
if(this.accept.call(this.element[0],(draggable.currentItem||draggable.element))){
if(this.options.hoverClass)this.element.addClass(this.options.hoverClass);
this._trigger('over',event,this.ui(draggable))}
},
_out:function(event){
var draggable=$.ui.ddmanager.current;
if(!draggable||(draggable.currentItem||draggable.element)[0]==this.element[0])return;
if(this.accept.call(this.element[0],(draggable.currentItem||draggable.element))){
if(this.options.hoverClass)this.element.removeClass(this.options.hoverClass);
this._trigger('out',event,this.ui(draggable))}
},
_drop:function(event,custom){
var draggable=custom||$.ui.ddmanager.current;
if(!draggable||(draggable.currentItem||draggable.element)[0]==this.element[0])return false;
var childrenIntersection=false;
this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function(){
var inst=$.data(this,'droppable');
if(
inst.options.greedy
&&!inst.options.disabled
&&inst.options.scope==draggable.options.scope
&&inst.accept.call(inst.element[0],(draggable.currentItem||draggable.element))
&&$.ui.intersect(draggable,$.extend(inst,{offset:inst.element.offset()}),inst.options.tolerance)
){childrenIntersection=true;return false}
});
if(childrenIntersection)return false;
if(this.accept.call(this.element[0],(draggable.currentItem||draggable.element))){
if(this.options.activeClass)this.element.removeClass(this.options.activeClass);
if(this.options.hoverClass)this.element.removeClass(this.options.hoverClass);
this._trigger('drop',event,this.ui(draggable));
return this.element}
return false},
ui:function(c){
return{
draggable:(c.currentItem||c.element),
helper:c.helper,
position:c.position,
offset:c.positionAbs
}}
});
$.extend($.ui.droppable,{
version:"1.8.16"
});
$.ui.intersect=function(draggable,droppable,toleranceMode){
if(!droppable.offset)return false;
var x1=(draggable.positionAbs||draggable.position.absolute).left,x2=x1+draggable.helperProportions.width,
y1=(draggable.positionAbs||draggable.position.absolute).top,y2=y1+draggable.helperProportions.height;
var l=droppable.offset.left,r=l+droppable.proportions.width,
t=droppable.offset.top,b=t+droppable.proportions.height;
switch(toleranceMode){
case'fit':
return(l<=x1&&x2<=r
&&t<=y1&&y2<=b);
break;
case'intersect':
return(l<x1+(draggable.helperProportions.width/2) &&x2-(draggable.helperProportions.width/2)<r &&t<y1+(draggable.helperProportions.height/2) &&y2-(draggable.helperProportions.height/2)<b); break;
case'pointer':
var draggableLeft=((draggable.positionAbs||draggable.position.absolute).left+(draggable.clickOffset||draggable.offset.click).left),
draggableTop=((draggable.positionAbs||draggable.position.absolute).top+(draggable.clickOffset||draggable.offset.click).top),
isOver=$.ui.isOver(draggableTop,draggableLeft,t,l,droppable.proportions.height,droppable.proportions.width);
return isOver;
break;
case'touch':
return(
(y1>=t&&y1<=b)||(y2>=t&&y2<=b)||(y1<t&&y2>b))&&(
(x1>=l&&x1<=r)||(x2>=l&&x2<=r)||(x1<l&&x2>r));
break;
default:
return false;
break}
};
$.ui.ddmanager={
current:null,
droppables:{'default':[]},
prepareOffsets:function(t,event){
var m=$.ui.ddmanager.droppables[t.options.scope]||[];
var type=event?event.type:null;var list=(t.currentItem||t.element).find(":data(droppable)").andSelf();
droppablesLoop:for(var i=0;i<m.length;i++){
if(m[i].options.disabled||(t&&!m[i].accept.call(m[i].element[0],(t.currentItem||t.element))))continue;for(var j=0;j<list.length;j++){if(list[j]==m[i].element[0]){m[i].proportions.height=0;continue droppablesLoop}};m[i].visible=m[i].element.css("display")!="none";if(!m[i].visible)continue;
if(type=="mousedown")m[i]._activate.call(m[i],event);
m[i].offset=m[i].element.offset();
m[i].proportions={width:m[i].element[0].offsetWidth,height:m[i].element[0].offsetHeight}}
},
drop:function(draggable,event){
var dropped=false;
$.each($.ui.ddmanager.droppables[draggable.options.scope]||[],function(){
if(!this.options)return;
if(!this.options.disabled&&this.visible&&$.ui.intersect(draggable,this,this.options.tolerance))
dropped=dropped||this._drop.call(this,event);
if(!this.options.disabled&&this.visible&&this.accept.call(this.element[0],(draggable.currentItem||draggable.element))){
this.isout=1;this.isover=0;
this._deactivate.call(this,event)}
});
return dropped},
dragStart:function(draggable,event){
draggable.element.parents(":not(body,html)").bind("scroll.droppable",function(){
if(!draggable.options.refreshPositions)$.ui.ddmanager.prepareOffsets(draggable,event)})},
drag:function(draggable,event){
if(draggable.options.refreshPositions)$.ui.ddmanager.prepareOffsets(draggable,event);
$.each($.ui.ddmanager.droppables[draggable.options.scope]||[],function(){
if(this.options.disabled||this.greedyChild||!this.visible)return;
var intersects=$.ui.intersect(draggable,this,this.options.tolerance);
var c=!intersects&&this.isover==1?'isout':(intersects&&this.isover==0?'isover':null);
if(!c)return;
var parentInstance;
if(this.options.greedy){
var parent=this.element.parents(':data(droppable):eq(0)');
if(parent.length){
parentInstance=$.data(parent[0],'droppable');
parentInstance.greedyChild=(c=='isover'?1:0)}
}
if(parentInstance&&c=='isover'){
parentInstance['isover']=0;
parentInstance['isout']=1;
parentInstance._out.call(parentInstance,event)}
this[c]=1;this[c=='isout'?'isover':'isout']=0;
this[c=="isover"?"_over":"_out"].call(this,event);
if(parentInstance&&c=='isout'){
parentInstance['isout']=0;
parentInstance['isover']=1;
parentInstance._over.call(parentInstance,event)}
})},
dragStop:function(draggable,event){
draggable.element.parents(":not(body,html)").unbind("scroll.droppable");
if(!draggable.options.refreshPositions)$.ui.ddmanager.prepareOffsets(draggable,event)}
}})(jQuery);
(function($,undefined){
$.widget("ui.resizable",$.ui.mouse,{
widgetEventPrefix:"resize",
options:{
alsoResize:false,
animate:false,
animateDuration:"slow",
animateEasing:"swing",
aspectRatio:false,
autoHide:false,
containment:false,
ghost:false,
grid:false,
handles:"e,s,se",
helper:false,
maxHeight:null,
maxWidth:null,
minHeight:10,
minWidth:10,
zIndex:1000
},
_create:function(){
var self=this,o=this.options;
this.element.addClass("ui-resizable");
$.extend(this,{
_aspectRatio:!!(o.aspectRatio),
aspectRatio:o.aspectRatio,
originalElement:this.element,
_proportionallyResizeElements:[],
_helper:o.helper||o.ghost||o.animate?o.helper||'ui-resizable-helper':null
});
if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){
if(/relative/.test(this.element.css('position'))&&$.browser.opera)
this.element.css({position:'relative',top:'auto',left:'auto'});
this.element.wrap(
$('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({
position:this.element.css('position'),
width:this.element.outerWidth(),
height:this.element.outerHeight(),
top:this.element.css('top'),
left:this.element.css('left')
})
);
this.element=this.element.parent().data(
"resizable",this.element.data('resizable')
);
this.elementIsWrapper=true;
this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});
this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});
this.originalResizeStyle=this.originalElement.css('resize');
this.originalElement.css('resize','none');
this._proportionallyResizeElements.push(this.originalElement.css({position:'static',zoom:1,display:'block'}));
this.originalElement.css({margin:this.originalElement.css('margin')});
this._proportionallyResize()}
this.handles=o.handles||(!$('.ui-resizable-handle',this.element).length?"e,s,se":{n:'.ui-resizable-n',e:'.ui-resizable-e',s:'.ui-resizable-s',w:'.ui-resizable-w',se:'.ui-resizable-se',sw:'.ui-resizable-sw',ne:'.ui-resizable-ne',nw:'.ui-resizable-nw'});
if(this.handles.constructor==String){
if(this.handles=='all')this.handles='n,e,s,w,se,sw,ne,nw';
var n=this.handles.split(",");this.handles={};
for(var i=0;i<n.length;i++){
var handle=$.trim(n[i]),hname='ui-resizable-'+handle;
var axis=$('<div class="ui-resizable-handle '+hname+'"></div>');
if(/sw|se|ne|nw/.test(handle))axis.css({zIndex:++o.zIndex});
if('se'==handle){
axis.addClass('ui-icon ui-icon-gripsmall-diagonal-se')};
this.handles[handle]='.ui-resizable-'+handle;
this.element.append(axis)}
}
this._renderAxis=function(target){
target=target||this.element;
for(var i in this.handles){
if(this.handles[i].constructor==String)
this.handles[i]=$(this.handles[i],this.element).show();
if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){
var axis=$(this.handles[i],this.element),padWrapper=0;
padWrapper=/sw|ne|nw|se|n|s/.test(i)?axis.outerHeight():axis.outerWidth();
var padPos=['padding',/ne|nw|n/.test(i)?'Top':/se|sw|s/.test(i)?'Bottom':/^e$/.test(i)?'Right':'Left'].join("");
target.css(padPos,padWrapper);
this._proportionallyResize()}
if(!$(this.handles[i]).length)
continue}
};
this._renderAxis(this.element);
this._handles=$('.ui-resizable-handle',this.element)
.disableSelection();
this._handles.mouseover(function(){
if(!self.resizing){
if(this.className)
var axis=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);
self.axis=axis&&axis[1]?axis[1]:'se'}
});
if(o.autoHide){
this._handles.hide();
$(this.element)
.addClass("ui-resizable-autohide")
.hover(function(){
if(o.disabled)return;
$(this).removeClass("ui-resizable-autohide");
self._handles.show()},
function(){
if(o.disabled)return;
if(!self.resizing){
$(this).addClass("ui-resizable-autohide");
self._handles.hide()}
})}
this._mouseInit()},
destroy:function(){
this._mouseDestroy();
var _destroy=function(exp){
$(exp).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing")
.removeData("resizable").unbind(".resizable").find('.ui-resizable-handle').remove()};
if(this.elementIsWrapper){
_destroy(this.element);
var wrapper=this.element;
wrapper.after(
this.originalElement.css({
position:wrapper.css('position'),
width:wrapper.outerWidth(),
height:wrapper.outerHeight(),
top:wrapper.css('top'),
left:wrapper.css('left')
})
).remove()}
this.originalElement.css('resize',this.originalResizeStyle);
_destroy(this.originalElement);
return this},
_mouseCapture:function(event){
var handle=false;
for(var i in this.handles){
if($(this.handles[i])[0]==event.target){
handle=true}
}
return!this.options.disabled&&handle},
_mouseStart:function(event){
var o=this.options,iniPos=this.element.position(),el=this.element;
this.resizing=true;
this.documentScroll={top:$(document).scrollTop(),left:$(document).scrollLeft()};
if(el.is('.ui-draggable')||(/absolute/).test(el.css('position'))){
el.css({position:'absolute',top:iniPos.top,left:iniPos.left})}
if($.browser.opera&&(/relative/).test(el.css('position')))
el.css({position:'relative',top:'auto',left:'auto'});
this._renderProxy();
var curleft=num(this.helper.css('left')),curtop=num(this.helper.css('top'));
if(o.containment){
curleft+=$(o.containment).scrollLeft()||0;
curtop+=$(o.containment).scrollTop()||0}
this.offset=this.helper.offset();
this.position={left:curleft,top:curtop};
this.size=this._helper?{width:el.outerWidth(),height:el.outerHeight()}:{width:el.width(),height:el.height()};
this.originalSize=this._helper?{width:el.outerWidth(),height:el.outerHeight()}:{width:el.width(),height:el.height()};
this.originalPosition={left:curleft,top:curtop};
this.sizeDiff={width:el.outerWidth()-el.width(),height:el.outerHeight()-el.height()};
this.originalMousePosition={left:event.pageX,top:event.pageY};
this.aspectRatio=(typeof o.aspectRatio=='number')?o.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);
var cursor=$('.ui-resizable-'+this.axis).css('cursor');
$('body').css('cursor',cursor=='auto'?this.axis+'-resize':cursor);
el.addClass("ui-resizable-resizing");
this._propagate("start",event);
return true},
_mouseDrag:function(event){
var el=this.helper,o=this.options,props={},
self=this,smp=this.originalMousePosition,a=this.axis;
var dx=(event.pageX-smp.left)||0,dy=(event.pageY-smp.top)||0;
var trigger=this._change[a];
if(!trigger)return false;
var data=trigger.apply(this,[event,dx,dy]),ie6=$.browser.msie&&$.browser.version<7,csdif=this.sizeDiff;
this._updateVirtualBoundaries(event.shiftKey);
if(this._aspectRatio||event.shiftKey)
data=this._updateRatio(data,event);
data=this._respectSize(data,event);
this._propagate("resize",event);
el.css({
top:this.position.top+"px",left:this.position.left+"px",
width:this.size.width+"px",height:this.size.height+"px"
});
if(!this._helper&&this._proportionallyResizeElements.length)
this._proportionallyResize();
this._updateCache(data);
this._trigger('resize',event,this.ui());
return false},
_mouseStop:function(event){
this.resizing=false;
var o=this.options,self=this;
if(this._helper){
var pr=this._proportionallyResizeElements,ista=pr.length&&(/textarea/i).test(pr[0].nodeName),
soffseth=ista&&$.ui.hasScroll(pr[0],'left')?0:self.sizeDiff.height,
soffsetw=ista?0:self.sizeDiff.width;
var s={width:(self.helper.width()-soffsetw),height:(self.helper.height()-soffseth)},
left=(parseInt(self.element.css('left'),10)+(self.position.left-self.originalPosition.left))||null,
top=(parseInt(self.element.css('top'),10)+(self.position.top-self.originalPosition.top))||null;
if(!o.animate)
this.element.css($.extend(s,{top:top,left:left}));
self.helper.height(self.size.height);
self.helper.width(self.size.width);
if(this._helper&&!o.animate)this._proportionallyResize()}
$('body').css('cursor','auto');
this.element.removeClass("ui-resizable-resizing");
this._propagate("stop",event);
if(this._helper)this.helper.remove();
return false},
_updateVirtualBoundaries:function(forceAspectRatio){
var o=this.options,pMinWidth,pMaxWidth,pMinHeight,pMaxHeight,b;
b={
minWidth:isNumber(o.minWidth)?o.minWidth:0,
maxWidth:isNumber(o.maxWidth)?o.maxWidth:Infinity,
minHeight:isNumber(o.minHeight)?o.minHeight:0,
maxHeight:isNumber(o.maxHeight)?o.maxHeight:Infinity
};
if(this._aspectRatio||forceAspectRatio){
pMinWidth=b.minHeight*this.aspectRatio;
pMinHeight=b.minWidth/this.aspectRatio;
pMaxWidth=b.maxHeight*this.aspectRatio;
pMaxHeight=b.maxWidth/this.aspectRatio;
if(pMinWidth>b.minWidth)b.minWidth=pMinWidth;
if(pMinHeight>b.minHeight)b.minHeight=pMinHeight;
if(pMaxWidth<b.maxWidth)b.maxWidth=pMaxWidth;
if(pMaxHeight<b.maxHeight)b.maxHeight=pMaxHeight}
this._vBoundaries=b},
_updateCache:function(data){
var o=this.options;
this.offset=this.helper.offset();
if(isNumber(data.left))this.position.left=data.left;
if(isNumber(data.top))this.position.top=data.top;
if(isNumber(data.height))this.size.height=data.height;
if(isNumber(data.width))this.size.width=data.width},
_updateRatio:function(data,event){
var o=this.options,cpos=this.position,csize=this.size,a=this.axis;
if(isNumber(data.height))data.width=(data.height*this.aspectRatio);
else if(isNumber(data.width))data.height=(data.width/this.aspectRatio);
if(a=='sw'){
data.left=cpos.left+(csize.width-data.width);
data.top=null}
if(a=='nw'){
data.top=cpos.top+(csize.height-data.height);
data.left=cpos.left+(csize.width-data.width)}
return data},
_respectSize:function(data,event){
var el=this.helper,o=this._vBoundaries,pRatio=this._aspectRatio||event.shiftKey,a=this.axis,
ismaxw=isNumber(data.width)&&o.maxWidth&&(o.maxWidth<data.width),ismaxh=isNumber(data.height)&&o.maxHeight&&(o.maxHeight<data.height),
isminw=isNumber(data.width)&&o.minWidth&&(o.minWidth>data.width),isminh=isNumber(data.height)&&o.minHeight&&(o.minHeight>data.height);
if(isminw)data.width=o.minWidth;
if(isminh)data.height=o.minHeight;
if(ismaxw)data.width=o.maxWidth;
if(ismaxh)data.height=o.maxHeight;
var dw=this.originalPosition.left+this.originalSize.width,dh=this.position.top+this.size.height;
var cw=/sw|nw|w/.test(a),ch=/nw|ne|n/.test(a);
if(isminw&&cw)data.left=dw-o.minWidth;
if(ismaxw&&cw)data.left=dw-o.maxWidth;
if(isminh&&ch)data.top=dh-o.minHeight;
if(ismaxh&&ch)data.top=dh-o.maxHeight;
var isNotwh=!data.width&&!data.height;
if(isNotwh&&!data.left&&data.top)data.top=null;
else if(isNotwh&&!data.top&&data.left)data.left=null;
return data},
_proportionallyResize:function(){
var o=this.options;
if(!this._proportionallyResizeElements.length)return;
var element=this.helper||this.element;
for(var i=0;i<this._proportionallyResizeElements.length;i++){
var prel=this._proportionallyResizeElements[i];
if(!this.borderDif){
var b=[prel.css('borderTopWidth'),prel.css('borderRightWidth'),prel.css('borderBottomWidth'),prel.css('borderLeftWidth')],
p=[prel.css('paddingTop'),prel.css('paddingRight'),prel.css('paddingBottom'),prel.css('paddingLeft')];
this.borderDif=$.map(b,function(v,i){
var border=parseInt(v,10)||0,padding=parseInt(p[i],10)||0;
return border+padding})}
if($.browser.msie&&!(!($(element).is(':hidden')||$(element).parents(':hidden').length)))
continue;
prel.css({
height:(element.height()-this.borderDif[0]-this.borderDif[2])||0,
width:(element.width()-this.borderDif[1]-this.borderDif[3])||0
})}},
_renderProxy:function(){
var el=this.element,o=this.options;
this.elementOffset=el.offset();
if(this._helper){
this.helper=this.helper||$('<div style="overflow:hidden;"></div>');
var ie6=$.browser.msie&&$.browser.version<7,ie6offset=(ie6?1:0),
pxyoffset=(ie6?2:-1);
this.helper.addClass(this._helper).css({
width:this.element.outerWidth()+pxyoffset,
height:this.element.outerHeight()+pxyoffset,
position:'absolute',
left:this.elementOffset.left-ie6offset+'px',
top:this.elementOffset.top-ie6offset+'px',
zIndex:++o.zIndex});
this.helper
.appendTo("body")
.disableSelection()}else{
this.helper=this.element}
},
_change:{
e:function(event,dx,dy){
return{width:this.originalSize.width+dx}},
w:function(event,dx,dy){
var o=this.options,cs=this.originalSize,sp=this.originalPosition;
return{left:sp.left+dx,width:cs.width-dx}},
n:function(event,dx,dy){
var o=this.options,cs=this.originalSize,sp=this.originalPosition;
return{top:sp.top+dy,height:cs.height-dy}},
s:function(event,dx,dy){
return{height:this.originalSize.height+dy}},
se:function(event,dx,dy){
return $.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[event,dx,dy]))},
sw:function(event,dx,dy){
return $.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[event,dx,dy]))},
ne:function(event,dx,dy){
return $.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[event,dx,dy]))},
nw:function(event,dx,dy){
return $.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[event,dx,dy]))}
},
_propagate:function(n,event){
$.ui.plugin.call(this,n,[event,this.ui()]);
(n!="resize"&&this._trigger(n,event,this.ui()))},
plugins:{},
ui:function(){
return{
originalElement:this.originalElement,
element:this.element,
helper:this.helper,
position:this.position,
size:this.size,
originalSize:this.originalSize,
originalPosition:this.originalPosition
}}
});
$.extend($.ui.resizable,{
version:"1.8.16"
});
$.ui.plugin.add("resizable","alsoResize",{
start:function(event,ui){
var self=$(this).data("resizable"),o=self.options;
var _store=function(exp){
$(exp).each(function(){
var el=$(this);
el.data("resizable-alsoresize",{
width:parseInt(el.width(),10),height:parseInt(el.height(),10),
left:parseInt(el.css('left'),10),top:parseInt(el.css('top'),10),
position:el.css('position')})})};
if(typeof(o.alsoResize)=='object'&&!o.alsoResize.parentNode){
if(o.alsoResize.length){o.alsoResize=o.alsoResize[0];_store(o.alsoResize)}
else{$.each(o.alsoResize,function(exp){_store(exp)})}
}else{
_store(o.alsoResize)}
},
resize:function(event,ui){
var self=$(this).data("resizable"),o=self.options,os=self.originalSize,op=self.originalPosition;
var delta={
height:(self.size.height-os.height)||0,width:(self.size.width-os.width)||0,
top:(self.position.top-op.top)||0,left:(self.position.left-op.left)||0
},
_alsoResize=function(exp,c){
$(exp).each(function(){
var el=$(this),start=$(this).data("resizable-alsoresize"),style={},
css=c&&c.length?c:el.parents(ui.originalElement[0]).length?['width','height']:['width','height','top','left'];
$.each(css,function(i,prop){
var sum=(start[prop]||0)+(delta[prop]||0);
if(sum&&sum>=0)
style[prop]=sum||null});
if($.browser.opera&&/relative/.test(el.css('position'))){
self._revertToRelativePosition=true;
el.css({position:'absolute',top:'auto',left:'auto'})}
el.css(style)})};
if(typeof(o.alsoResize)=='object'&&!o.alsoResize.nodeType){
$.each(o.alsoResize,function(exp,c){_alsoResize(exp,c)})}else{
_alsoResize(o.alsoResize)}
},
stop:function(event,ui){
var self=$(this).data("resizable"),o=self.options;
var _reset=function(exp){
$(exp).each(function(){
var el=$(this);
el.css({position:el.data("resizable-alsoresize").position})})};
if(self._revertToRelativePosition){
self._revertToRelativePosition=false;
if(typeof(o.alsoResize)=='object'&&!o.alsoResize.nodeType){
$.each(o.alsoResize,function(exp){_reset(exp)})}else{
_reset(o.alsoResize)}
}
$(this).removeData("resizable-alsoresize")}
});
$.ui.plugin.add("resizable","animate",{
stop:function(event,ui){
var self=$(this).data("resizable"),o=self.options;
var pr=self._proportionallyResizeElements,ista=pr.length&&(/textarea/i).test(pr[0].nodeName),
soffseth=ista&&$.ui.hasScroll(pr[0],'left')?0:self.sizeDiff.height,
soffsetw=ista?0:self.sizeDiff.width;
var style={width:(self.size.width-soffsetw),height:(self.size.height-soffseth)},
left=(parseInt(self.element.css('left'),10)+(self.position.left-self.originalPosition.left))||null,
top=(parseInt(self.element.css('top'),10)+(self.position.top-self.originalPosition.top))||null;
self.element.animate(
$.extend(style,top&&left?{top:top,left:left}:{}),{
duration:o.animateDuration,
easing:o.animateEasing,
step:function(){
var data={
width:parseInt(self.element.css('width'),10),
height:parseInt(self.element.css('height'),10),
top:parseInt(self.element.css('top'),10),
left:parseInt(self.element.css('left'),10)
};
if(pr&&pr.length)$(pr[0]).css({width:data.width,height:data.height});
self._updateCache(data);
self._propagate("resize",event)}
}
)}
});
$.ui.plugin.add("resizable","containment",{
start:function(event,ui){
var self=$(this).data("resizable"),o=self.options,el=self.element;
var oc=o.containment,ce=(oc instanceof $)?oc.get(0):(/parent/.test(oc))?el.parent().get(0):oc;
if(!ce)return;
self.containerElement=$(ce);
if(/document/.test(oc)||oc==document){
self.containerOffset={left:0,top:0};
self.containerPosition={left:0,top:0};
self.parentData={
element:$(document),left:0,top:0,
width:$(document).width(),height:$(document).height()||document.body.parentNode.scrollHeight
}}
else{
var element=$(ce),p=[];
$(["Top","Right","Left","Bottom"]).each(function(i,name){p[i]=num(element.css("padding"+name))});
self.containerOffset=element.offset();
self.containerPosition=element.position();
self.containerSize={height:(element.innerHeight()-p[3]),width:(element.innerWidth()-p[1])};
var co=self.containerOffset,ch=self.containerSize.height,cw=self.containerSize.width,
width=($.ui.hasScroll(ce,"left")?ce.scrollWidth:cw),height=($.ui.hasScroll(ce)?ce.scrollHeight:ch);
self.parentData={
element:ce,left:co.left,top:co.top,width:width,height:height
}}
},
resize:function(event,ui){
var self=$(this).data("resizable"),o=self.options,
ps=self.containerSize,co=self.containerOffset,cs=self.size,cp=self.position,
pRatio=self._aspectRatio||event.shiftKey,cop={top:0,left:0},ce=self.containerElement;
if(ce[0]!=document&&(/static/).test(ce.css('position')))cop=co;
if(cp.left<(self._helper?co.left:0)){
self.size.width=self.size.width+(self._helper?(self.position.left-co.left):(self.position.left-cop.left));
if(pRatio)self.size.height=self.size.width/o.aspectRatio;
self.position.left=o.helper?co.left:0}
if(cp.top<(self._helper?co.top:0)){
self.size.height=self.size.height+(self._helper?(self.position.top-co.top):self.position.top);
if(pRatio)self.size.width=self.size.height*o.aspectRatio;
self.position.top=self._helper?co.top:0}
self.offset.left=self.parentData.left+self.position.left;
self.offset.top=self.parentData.top+self.position.top;
var woset=Math.abs((self._helper?self.offset.left-cop.left:(self.offset.left-cop.left))+self.sizeDiff.width),
hoset=Math.abs((self._helper?self.offset.top-cop.top:(self.offset.top-co.top))+self.sizeDiff.height);
var isParent=self.containerElement.get(0)==self.element.parent().get(0),
isOffsetRelative=/relative|absolute/.test(self.containerElement.css('position'));
if(isParent&&isOffsetRelative)woset-=self.parentData.left;
if(woset+self.size.width>=self.parentData.width){
self.size.width=self.parentData.width-woset;
if(pRatio)self.size.height=self.size.width/self.aspectRatio}
if(hoset+self.size.height>=self.parentData.height){
self.size.height=self.parentData.height-hoset;
if(pRatio)self.size.width=self.size.height*self.aspectRatio}
},
stop:function(event,ui){
var self=$(this).data("resizable"),o=self.options,cp=self.position,
co=self.containerOffset,cop=self.containerPosition,ce=self.containerElement;
var helper=$(self.helper),ho=helper.offset(),w=helper.outerWidth()-self.sizeDiff.width,h=helper.outerHeight()-self.sizeDiff.height;
if(self._helper&&!o.animate&&(/relative/).test(ce.css('position')))
$(this).css({left:ho.left-cop.left-co.left,width:w,height:h});
if(self._helper&&!o.animate&&(/static/).test(ce.css('position')))
$(this).css({left:ho.left-cop.left-co.left,width:w,height:h})}
});
$.ui.plugin.add("resizable","ghost",{
start:function(event,ui){
var self=$(this).data("resizable"),o=self.options,cs=self.size;
self.ghost=self.originalElement.clone();
self.ghost
.css({opacity:.25,display:'block',position:'relative',height:cs.height,width:cs.width,margin:0,left:0,top:0})
.addClass('ui-resizable-ghost')
.addClass(typeof o.ghost=='string'?o.ghost:'');
self.ghost.appendTo(self.helper)},
resize:function(event,ui){
var self=$(this).data("resizable"),o=self.options;
if(self.ghost)self.ghost.css({position:'relative',height:self.size.height,width:self.size.width})},
stop:function(event,ui){
var self=$(this).data("resizable"),o=self.options;
if(self.ghost&&self.helper)self.helper.get(0).removeChild(self.ghost.get(0))}
});
$.ui.plugin.add("resizable","grid",{
resize:function(event,ui){
var self=$(this).data("resizable"),o=self.options,cs=self.size,os=self.originalSize,op=self.originalPosition,a=self.axis,ratio=o._aspectRatio||event.shiftKey;
o.grid=typeof o.grid=="number"?[o.grid,o.grid]:o.grid;
var ox=Math.round((cs.width-os.width)/(o.grid[0]||1))*(o.grid[0]||1),oy=Math.round((cs.height-os.height)/(o.grid[1]||1))*(o.grid[1]||1);
if(/^(se|s|e)$/.test(a)){
self.size.width=os.width+ox;
self.size.height=os.height+oy}
else if(/^(ne)$/.test(a)){
self.size.width=os.width+ox;
self.size.height=os.height+oy;
self.position.top=op.top-oy}
else if(/^(sw)$/.test(a)){
self.size.width=os.width+ox;
self.size.height=os.height+oy;
self.position.left=op.left-ox}
else{
self.size.width=os.width+ox;
self.size.height=os.height+oy;
self.position.top=op.top-oy;
self.position.left=op.left-ox}
}
});
var num=function(v){
return parseInt(v,10)||0};
var isNumber=function(value){
return!isNaN(parseInt(value,10))}})(jQuery);
(function($,undefined){
$.widget("ui.selectable",$.ui.mouse,{
options:{
appendTo:'body',
autoRefresh:true,
distance:0,
filter:'*',
tolerance:'touch'
},
_create:function(){
var self=this;
this.element.addClass("ui-selectable");
this.dragged=false;
var selectees;
this.refresh=function(){
selectees=$(self.options.filter,self.element[0]);
selectees.each(function(){
var $this=$(this);
var pos=$this.offset();
$.data(this,"selectable-item",{
element:this,
$element:$this,
left:pos.left,
top:pos.top,
right:pos.left+$this.outerWidth(),
bottom:pos.top+$this.outerHeight(),
startselected:false,
selected:$this.hasClass('ui-selected'),
selecting:$this.hasClass('ui-selecting'),
unselecting:$this.hasClass('ui-unselecting')
})})};
this.refresh();
this.selectees=selectees.addClass("ui-selectee");
this._mouseInit();
this.helper=$("<div class='ui-selectable-helper'></div>")},
destroy:function(){
this.selectees
.removeClass("ui-selectee")
.removeData("selectable-item");
this.element
.removeClass("ui-selectable ui-selectable-disabled")
.removeData("selectable")
.unbind(".selectable");
this._mouseDestroy();
return this},
_mouseStart:function(event){
var self=this;
this.opos=[event.pageX,event.pageY];
if(this.options.disabled)
return;
var options=this.options;
this.selectees=$(options.filter,this.element[0]);
this._trigger("start",event);
$(options.appendTo).append(this.helper);
this.helper.css({
"left":event.clientX,
"top":event.clientY,
"width":0,
"height":0
});
if(options.autoRefresh){
this.refresh()}
this.selectees.filter('.ui-selected').each(function(){
var selectee=$.data(this,"selectable-item");
selectee.startselected=true;
if(!event.metaKey){
selectee.$element.removeClass('ui-selected');
selectee.selected=false;
selectee.$element.addClass('ui-unselecting');
selectee.unselecting=true;
self._trigger("unselecting",event,{
unselecting:selectee.element
})}
});
$(event.target).parents().andSelf().each(function(){
var selectee=$.data(this,"selectable-item");
if(selectee){
var doSelect=!event.metaKey||!selectee.$element.hasClass('ui-selected');
selectee.$element
.removeClass(doSelect?"ui-unselecting":"ui-selected")
.addClass(doSelect?"ui-selecting":"ui-unselecting");
selectee.unselecting=!doSelect;
selectee.selecting=doSelect;
selectee.selected=doSelect;
if(doSelect){
self._trigger("selecting",event,{
selecting:selectee.element
})}else{
self._trigger("unselecting",event,{
unselecting:selectee.element
})}
return false}
})},
_mouseDrag:function(event){
var self=this;
this.dragged=true;
if(this.options.disabled)
return;
var options=this.options;
var x1=this.opos[0],y1=this.opos[1],x2=event.pageX,y2=event.pageY;
if(x1>x2){var tmp=x2;x2=x1;x1=tmp}
if(y1>y2){var tmp=y2;y2=y1;y1=tmp}
this.helper.css({left:x1,top:y1,width:x2-x1,height:y2-y1});
this.selectees.each(function(){
var selectee=$.data(this,"selectable-item");
if(!selectee||selectee.element==self.element[0])
return;
var hit=false;
if(options.tolerance=='touch'){
hit=(!(selectee.left>x2||selectee.right<x1||selectee.top>y2||selectee.bottom<y1))}else if(options.tolerance=='fit'){
hit=(selectee.left>x1&&selectee.right<x2&&selectee.top>y1&&selectee.bottom<y2)}
if(hit){
if(selectee.selected){
selectee.$element.removeClass('ui-selected');
selectee.selected=false}
if(selectee.unselecting){
selectee.$element.removeClass('ui-unselecting');
selectee.unselecting=false}
if(!selectee.selecting){
selectee.$element.addClass('ui-selecting');
selectee.selecting=true;
self._trigger("selecting",event,{
selecting:selectee.element
})}
}else{
if(selectee.selecting){
if(event.metaKey&&selectee.startselected){
selectee.$element.removeClass('ui-selecting');
selectee.selecting=false;
selectee.$element.addClass('ui-selected');
selectee.selected=true}else{
selectee.$element.removeClass('ui-selecting');
selectee.selecting=false;
if(selectee.startselected){
selectee.$element.addClass('ui-unselecting');
selectee.unselecting=true}
self._trigger("unselecting",event,{
unselecting:selectee.element
})}
}
if(selectee.selected){
if(!event.metaKey&&!selectee.startselected){
selectee.$element.removeClass('ui-selected');
selectee.selected=false;
selectee.$element.addClass('ui-unselecting');
selectee.unselecting=true;
self._trigger("unselecting",event,{
unselecting:selectee.element
})}
}
}
});
return false},
_mouseStop:function(event){
var self=this;
this.dragged=false;
var options=this.options;
$('.ui-unselecting',this.element[0]).each(function(){
var selectee=$.data(this,"selectable-item");
selectee.$element.removeClass('ui-unselecting');
selectee.unselecting=false;
selectee.startselected=false;
self._trigger("unselected",event,{
unselected:selectee.element
})});
$('.ui-selecting',this.element[0]).each(function(){
var selectee=$.data(this,"selectable-item");
selectee.$element.removeClass('ui-selecting').addClass('ui-selected');
selectee.selecting=false;
selectee.selected=true;
selectee.startselected=true;
self._trigger("selected",event,{
selected:selectee.element
})});
this._trigger("stop",event);
this.helper.remove();
return false}
});
$.extend($.ui.selectable,{
version:"1.8.16"
})})(jQuery);
(function($,undefined){
$.widget("ui.sortable",$.ui.mouse,{
widgetEventPrefix:"sort",
options:{
appendTo:"parent",
axis:false,
connectWith:false,
containment:false,
cursor:'auto',
cursorAt:false,
dropOnEmpty:true,
forcePlaceholderSize:false,
forceHelperSize:false,
grid:false,
handle:false,
helper:"original",
items:'> *',
opacity:false,
placeholder:false,
revert:false,
scroll:true,
scrollSensitivity:20,
scrollSpeed:20,
scope:"default",
tolerance:"intersect",
zIndex:1000
},
_create:function(){
var o=this.options;
this.containerCache={};
this.element.addClass("ui-sortable");
this.refresh();
this.floating=this.items.length?o.axis==='x'||(/left|right/).test(this.items[0].item.css('float'))||(/inline|table-cell/).test(this.items[0].item.css('display')):false;
this.offset=this.element.offset();
this._mouseInit()},
destroy:function(){
this.element
.removeClass("ui-sortable ui-sortable-disabled")
.removeData("sortable")
.unbind(".sortable");
this._mouseDestroy();
for(var i=this.items.length-1;i>=0;i--)
this.items[i].item.removeData("sortable-item");
return this},
_setOption:function(key,value){
if(key==="disabled"){
this.options[key]=value;
this.widget()
[value?"addClass":"removeClass"]("ui-sortable-disabled")}else{
$.Widget.prototype._setOption.apply(this,arguments)}
},
_mouseCapture:function(event,overrideHandle){
if(this.reverting){
return false}
if(this.options.disabled||this.options.type=='static')return false;
this._refreshItems(event);
var currentItem=null,self=this,nodes=$(event.target).parents().each(function(){
if($.data(this,'sortable-item')==self){
currentItem=$(this);
return false}
});
if($.data(event.target,'sortable-item')==self)currentItem=$(event.target);
if(!currentItem)return false;
if(this.options.handle&&!overrideHandle){
var validHandle=false;
$(this.options.handle,currentItem).find("*").andSelf().each(function(){if(this==event.target)validHandle=true});
if(!validHandle)return false}
this.currentItem=currentItem;
this._removeCurrentsFromItems();
return true},
_mouseStart:function(event,overrideHandle,noActivation){
var o=this.options,self=this;
this.currentContainer=this;
this.refreshPositions();
this.helper=this._createHelper(event);
this._cacheHelperProportions();
this._cacheMargins();
this.scrollParent=this.helper.scrollParent();
this.offset=this.currentItem.offset();
this.offset={
top:this.offset.top-this.margins.top,
left:this.offset.left-this.margins.left
};
this.helper.css("position","absolute");
this.cssPosition=this.helper.css("position");
$.extend(this.offset,{
click:{left:event.pageX-this.offset.left,
top:event.pageY-this.offset.top
},
parent:this._getParentOffset(),
relative:this._getRelativeOffset()});
this.originalPosition=this._generatePosition(event);
this.originalPageX=event.pageX;
this.originalPageY=event.pageY;
(o.cursorAt&&this._adjustOffsetFromHelper(o.cursorAt));
this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};
if(this.helper[0]!=this.currentItem[0]){
this.currentItem.hide()}
this._createPlaceholder();
if(o.containment)
this._setContainment();
if(o.cursor){if($('body').css("cursor"))this._storedCursor=$('body').css("cursor");
$('body').css("cursor",o.cursor)}
if(o.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");
this.helper.css("opacity",o.opacity)}
if(o.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");
this.helper.css("zIndex",o.zIndex)}
if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!='HTML')
this.overflowOffset=this.scrollParent.offset();
this._trigger("start",event,this._uiHash());
if(!this._preserveHelperProportions)
this._cacheHelperProportions();
if(!noActivation){
for(var i=this.containers.length-1;i>=0;i--){this.containers[i]._trigger("activate",event,self._uiHash(this))}
}
if($.ui.ddmanager)
$.ui.ddmanager.current=this;
if($.ui.ddmanager&&!o.dropBehaviour)
$.ui.ddmanager.prepareOffsets(this,event);
this.dragging=true;
this.helper.addClass("ui-sortable-helper");
this._mouseDrag(event);return true},
_mouseDrag:function(event){
this.position=this._generatePosition(event);
this.positionAbs=this._convertPositionTo("absolute");
if(!this.lastPositionAbs){
this.lastPositionAbs=this.positionAbs}
if(this.options.scroll){
var o=this.options,scrolled=false;
if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!='HTML'){
if((this.overflowOffset.top+this.scrollParent[0].offsetHeight)-event.pageY<o.scrollSensitivity)
this.scrollParent[0].scrollTop=scrolled=this.scrollParent[0].scrollTop+o.scrollSpeed;
else if(event.pageY-this.overflowOffset.top<o.scrollSensitivity)
this.scrollParent[0].scrollTop=scrolled=this.scrollParent[0].scrollTop-o.scrollSpeed;
if((this.overflowOffset.left+this.scrollParent[0].offsetWidth)-event.pageX<o.scrollSensitivity)
this.scrollParent[0].scrollLeft=scrolled=this.scrollParent[0].scrollLeft+o.scrollSpeed;
else if(event.pageX-this.overflowOffset.left<o.scrollSensitivity)
this.scrollParent[0].scrollLeft=scrolled=this.scrollParent[0].scrollLeft-o.scrollSpeed}else{
if(event.pageY-$(document).scrollTop()<o.scrollSensitivity)
scrolled=$(document).scrollTop($(document).scrollTop()-o.scrollSpeed);
else if($(window).height()-(event.pageY-$(document).scrollTop())<o.scrollSensitivity)
scrolled=$(document).scrollTop($(document).scrollTop()+o.scrollSpeed);
if(event.pageX-$(document).scrollLeft()<o.scrollSensitivity)
scrolled=$(document).scrollLeft($(document).scrollLeft()-o.scrollSpeed);
else if($(window).width()-(event.pageX-$(document).scrollLeft())<o.scrollSensitivity)
scrolled=$(document).scrollLeft($(document).scrollLeft()+o.scrollSpeed)}
if(scrolled!==false&&$.ui.ddmanager&&!o.dropBehaviour)
$.ui.ddmanager.prepareOffsets(this,event)}
this.positionAbs=this._convertPositionTo("absolute");
if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+'px';
if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+'px';
for(var i=this.items.length-1;i>=0;i--){
var item=this.items[i],itemElement=item.item[0],intersection=this._intersectsWithPointer(item);
if(!intersection)continue;
if(itemElement!=this.currentItem[0]&&this.placeholder[intersection==1?"next":"prev"]()[0]!=itemElement&&!$.ui.contains(this.placeholder[0],itemElement)&&(this.options.type=='semi-dynamic'?!$.ui.contains(this.element[0],itemElement):true)
){
this.direction=intersection==1?"down":"up";
if(this.options.tolerance=="pointer"||this._intersectsWithSides(item)){
this._rearrange(event,item)}else{
break}
this._trigger("change",event,this._uiHash());
break}
}
this._contactContainers(event);
if($.ui.ddmanager)$.ui.ddmanager.drag(this,event);
this._trigger('sort',event,this._uiHash());
this.lastPositionAbs=this.positionAbs;
return false},
_mouseStop:function(event,noPropagation){
if(!event)return;
if($.ui.ddmanager&&!this.options.dropBehaviour)
$.ui.ddmanager.drop(this,event);
if(this.options.revert){
var self=this;
var cur=self.placeholder.offset();
self.reverting=true;
$(this.helper).animate({
left:cur.left-this.offset.parent.left-self.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),
top:cur.top-this.offset.parent.top-self.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)
},parseInt(this.options.revert,10)||500,function(){
self._clear(event)})}else{
this._clear(event,noPropagation)}
return false},
cancel:function(){
var self=this;
if(this.dragging){
this._mouseUp({target:null});
if(this.options.helper=="original")
this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper");
else
this.currentItem.show();
for(var i=this.containers.length-1;i>=0;i--){
this.containers[i]._trigger("deactivate",null,self._uiHash(this));
if(this.containers[i].containerCache.over){
this.containers[i]._trigger("out",null,self._uiHash(this));
this.containers[i].containerCache.over=0}
}
}
if(this.placeholder){
if(this.placeholder[0].parentNode)this.placeholder[0].parentNode.removeChild(this.placeholder[0]);
if(this.options.helper!="original"&&this.helper&&this.helper[0].parentNode)this.helper.remove();
$.extend(this,{
helper:null,
dragging:false,
reverting:false,
_noFinalSort:null
});
if(this.domPosition.prev){
$(this.domPosition.prev).after(this.currentItem)}else{
$(this.domPosition.parent).prepend(this.currentItem)}
}
return this},
serialize:function(o){
var items=this._getItemsAsjQuery(o&&o.connected);
var str=[];o=o||{};
$(items).each(function(){
var res=($(o.item||this).attr(o.attribute||'id')||'').match(o.expression||(/(.+)[-=_](.+)/));
if(res)str.push((o.key||res[1]+'[]')+'='+(o.key&&o.expression?res[1]:res[2]))});
if(!str.length&&o.key){
str.push(o.key+'=')}
return str.join('&')},
toArray:function(o){
var items=this._getItemsAsjQuery(o&&o.connected);
var ret=[];o=o||{};
items.each(function(){ret.push($(o.item||this).attr(o.attribute||'id')||'')});
return ret},
_intersectsWith:function(item){
var x1=this.positionAbs.left,
x2=x1+this.helperProportions.width,
y1=this.positionAbs.top,
y2=y1+this.helperProportions.height;
var l=item.left,
r=l+item.width,
t=item.top,
b=t+item.height;
var dyClick=this.offset.click.top,
dxClick=this.offset.click.left;
var isOverElement=(y1+dyClick)>t&&(y1+dyClick)<b&&(x1+dxClick)>l&&(x1+dxClick)<r;
if(this.options.tolerance=="pointer"
||this.options.forcePointerForContainers
||(this.options.tolerance!="pointer"&&this.helperProportions[this.floating?'width':'height']>item[this.floating?'width':'height'])
){
return isOverElement}else{
return(l<x1+(this.helperProportions.width/2) &&x2-(this.helperProportions.width/2)<r &&t<y1+(this.helperProportions.height/2) &&y2-(this.helperProportions.height/2)<b); 
}
},
_intersectsWithPointer:function(item){
var isOverElementHeight=$.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,item.top,item.height),
isOverElementWidth=$.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,item.left,item.width),
isOverElement=isOverElementHeight&&isOverElementWidth,
verticalDirection=this._getDragVerticalDirection(),
horizontalDirection=this._getDragHorizontalDirection();
if(!isOverElement)
return false;
return this.floating?
(((horizontalDirection&&horizontalDirection=="right")||verticalDirection=="down")?2:1)
:(verticalDirection&&(verticalDirection=="down"?2:1))},
_intersectsWithSides:function(item){
var isOverBottomHalf=$.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,item.top+(item.height/2),item.height),
isOverRightHalf=$.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,item.left+(item.width/2),item.width),
verticalDirection=this._getDragVerticalDirection(),
horizontalDirection=this._getDragHorizontalDirection();
if(this.floating&&horizontalDirection){
return((horizontalDirection=="right"&&isOverRightHalf)||(horizontalDirection=="left"&&!isOverRightHalf))}else{
return verticalDirection&&((verticalDirection=="down"&&isOverBottomHalf)||(verticalDirection=="up"&&!isOverBottomHalf))}
},
_getDragVerticalDirection:function(){
var delta=this.positionAbs.top-this.lastPositionAbs.top;
return delta!=0&&(delta>0?"down":"up")},
_getDragHorizontalDirection:function(){
var delta=this.positionAbs.left-this.lastPositionAbs.left;
return delta!=0&&(delta>0?"right":"left")},
refresh:function(event){
this._refreshItems(event);
this.refreshPositions();
return this},
_connectWith:function(){
var options=this.options;
return options.connectWith.constructor==String
?[options.connectWith]
:options.connectWith},
_getItemsAsjQuery:function(connected){
var self=this;
var items=[];
var queries=[];
var connectWith=this._connectWith();
if(connectWith&&connected){
for(var i=connectWith.length-1;i>=0;i--){
var cur=$(connectWith[i]);
for(var j=cur.length-1;j>=0;j--){
var inst=$.data(cur[j],'sortable');
if(inst&&inst!=this&&!inst.options.disabled){
queries.push([$.isFunction(inst.options.items)?inst.options.items.call(inst.element):$(inst.options.items,inst.element).not(".ui-sortable-helper").not('.ui-sortable-placeholder'),inst])}
}}}
queries.push([$.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):$(this.options.items,this.element).not(".ui-sortable-helper").not('.ui-sortable-placeholder'),this]);
for(var i=queries.length-1;i>=0;i--){
queries[i][0].each(function(){
items.push(this)})};
return $(items)},
_removeCurrentsFromItems:function(){
var list=this.currentItem.find(":data(sortable-item)");
for(var i=0;i<this.items.length;i++){
for(var j=0;j<list.length;j++){
if(list[j]==this.items[i].item[0])
this.items.splice(i,1)}}},
_refreshItems:function(event){
this.items=[];
this.containers=[this];
var items=this.items;
var self=this;
var queries=[[$.isFunction(this.options.items)?this.options.items.call(this.element[0],event,{item:this.currentItem}):$(this.options.items,this.element),this]];
var connectWith=this._connectWith();
if(connectWith){
for(var i=connectWith.length-1;i>=0;i--){
var cur=$(connectWith[i]);
for(var j=cur.length-1;j>=0;j--){
var inst=$.data(cur[j],'sortable');
if(inst&&inst!=this&&!inst.options.disabled){
queries.push([$.isFunction(inst.options.items)?inst.options.items.call(inst.element[0],event,{item:this.currentItem}):$(inst.options.items,inst.element),inst]);
this.containers.push(inst)}
}}}
for(var i=queries.length-1;i>=0;i--){
var targetData=queries[i][1];
var _queries=queries[i][0];
for(var j=0,queriesLength=_queries.length;j<queriesLength;j++){
var item=$(_queries[j]);
item.data('sortable-item',targetData);
items.push({
item:item,
instance:targetData,
width:0,height:0,
left:0,top:0
})}}},
refreshPositions:function(fast){
if(this.offsetParent&&this.helper){
this.offset.parent=this._getParentOffset()}
for(var i=this.items.length-1;i>=0;i--){
var item=this.items[i];
if(item.instance!=this.currentContainer&&this.currentContainer&&item.item[0]!=this.currentItem[0])
continue;
var t=this.options.toleranceElement?$(this.options.toleranceElement,item.item):item.item;
if(!fast){
item.width=t.outerWidth();
item.height=t.outerHeight()}
var p=t.offset();
item.left=p.left;
item.top=p.top};
if(this.options.custom&&this.options.custom.refreshContainers){
this.options.custom.refreshContainers.call(this)}else{
for(var i=this.containers.length-1;i>=0;i--){
var p=this.containers[i].element.offset();
this.containers[i].containerCache.left=p.left;
this.containers[i].containerCache.top=p.top;
this.containers[i].containerCache.width=this.containers[i].element.outerWidth();
this.containers[i].containerCache.height=this.containers[i].element.outerHeight()}}
return this},
_createPlaceholder:function(that){
var self=that||this,o=self.options;
if(!o.placeholder||o.placeholder.constructor==String){
var className=o.placeholder;
o.placeholder={
element:function(){
var el=$(document.createElement(self.currentItem[0].nodeName))
.addClass(className||self.currentItem[0].className+" ui-sortable-placeholder")
.removeClass("ui-sortable-helper")[0];
if(!className)
el.style.visibility="hidden";
return el},
update:function(container,p){
if(className&&!o.forcePlaceholderSize)return;
if(!p.height()){p.height(self.currentItem.innerHeight()-parseInt(self.currentItem.css('paddingTop')||0,10)-parseInt(self.currentItem.css('paddingBottom')||0,10))};
if(!p.width()){p.width(self.currentItem.innerWidth()-parseInt(self.currentItem.css('paddingLeft')||0,10)-parseInt(self.currentItem.css('paddingRight')||0,10))}}
}}
self.placeholder=$(o.placeholder.element.call(self.element,self.currentItem));
self.currentItem.after(self.placeholder);
o.placeholder.update(self,self.placeholder)},
_contactContainers:function(event){
var innermostContainer=null,innermostIndex=null;
for(var i=this.containers.length-1;i>=0;i--){
if($.ui.contains(this.currentItem[0],this.containers[i].element[0]))
continue;
if(this._intersectsWith(this.containers[i].containerCache)){
if(innermostContainer&&$.ui.contains(this.containers[i].element[0],innermostContainer.element[0]))
continue;
innermostContainer=this.containers[i];
innermostIndex=i}else{
if(this.containers[i].containerCache.over){
this.containers[i]._trigger("out",event,this._uiHash(this));
this.containers[i].containerCache.over=0}
}
}
if(!innermostContainer)return;
if(this.containers.length===1){
this.containers[innermostIndex]._trigger("over",event,this._uiHash(this));
this.containers[innermostIndex].containerCache.over=1}else if(this.currentContainer!=this.containers[innermostIndex]){
var dist=10000;var itemWithLeastDistance=null;var base=this.positionAbs[this.containers[innermostIndex].floating?'left':'top'];
for(var j=this.items.length-1;j>=0;j--){
if(!$.ui.contains(this.containers[innermostIndex].element[0],this.items[j].item[0]))continue;
var cur=this.items[j][this.containers[innermostIndex].floating?'left':'top'];
if(Math.abs(cur-base)<dist){
dist=Math.abs(cur-base);itemWithLeastDistance=this.items[j]}
}
if(!itemWithLeastDistance&&!this.options.dropOnEmpty)return;
this.currentContainer=this.containers[innermostIndex];
itemWithLeastDistance?this._rearrange(event,itemWithLeastDistance,null,true):this._rearrange(event,null,this.containers[innermostIndex].element,true);
this._trigger("change",event,this._uiHash());
this.containers[innermostIndex]._trigger("change",event,this._uiHash(this));
this.options.placeholder.update(this.currentContainer,this.placeholder);
this.containers[innermostIndex]._trigger("over",event,this._uiHash(this));
this.containers[innermostIndex].containerCache.over=1}
},
_createHelper:function(event){
var o=this.options;
var helper=$.isFunction(o.helper)?$(o.helper.apply(this.element[0],[event,this.currentItem])):(o.helper=='clone'?this.currentItem.clone():this.currentItem);
if(!helper.parents('body').length)$(o.appendTo!='parent'?o.appendTo:this.currentItem[0].parentNode)[0].appendChild(helper[0]);
if(helper[0]==this.currentItem[0])
this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")};
if(helper[0].style.width==''||o.forceHelperSize)helper.width(this.currentItem.width());
if(helper[0].style.height==''||o.forceHelperSize)helper.height(this.currentItem.height());
return helper},
_adjustOffsetFromHelper:function(obj){
if(typeof obj=='string'){
obj=obj.split(' ')}
if($.isArray(obj)){
obj={left:+obj[0],top:+obj[1]||0}}
if('left'in obj){
this.offset.click.left=obj.left+this.margins.left}
if('right'in obj){
this.offset.click.left=this.helperProportions.width-obj.right+this.margins.left}
if('top'in obj){
this.offset.click.top=obj.top+this.margins.top}
if('bottom'in obj){
this.offset.click.top=this.helperProportions.height-obj.bottom+this.margins.top}
},
_getParentOffset:function(){
this.offsetParent=this.helper.offsetParent();
var po=this.offsetParent.offset();
if(this.cssPosition=='absolute'&&this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0])){
po.left+=this.scrollParent.scrollLeft();
po.top+=this.scrollParent.scrollTop()}
if((this.offsetParent[0]==document.body)||(this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=='html'&&$.browser.msie))po={top:0,left:0};
return{
top:po.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),
left:po.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)
}},
_getRelativeOffset:function(){
if(this.cssPosition=="relative"){
var p=this.currentItem.position();
return{
top:p.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),
left:p.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()
}}else{
return{top:0,left:0}}
},
_cacheMargins:function(){
this.margins={
left:(parseInt(this.currentItem.css("marginLeft"),10)||0),
top:(parseInt(this.currentItem.css("marginTop"),10)||0)
}},
_cacheHelperProportions:function(){
this.helperProportions={
width:this.helper.outerWidth(),
height:this.helper.outerHeight()
}},
_setContainment:function(){
var o=this.options;
if(o.containment=='parent')o.containment=this.helper[0].parentNode;
if(o.containment=='document'||o.containment=='window')this.containment=[
0-this.offset.relative.left-this.offset.parent.left,
0-this.offset.relative.top-this.offset.parent.top,
$(o.containment=='document'?document:window).width()-this.helperProportions.width-this.margins.left,
($(o.containment=='document'?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top
];
if(!(/^(document|window|parent)$/).test(o.containment)){
var ce=$(o.containment)[0];
var co=$(o.containment).offset();
var over=($(ce).css("overflow")!='hidden');
this.containment=[
co.left+(parseInt($(ce).css("borderLeftWidth"),10)||0)+(parseInt($(ce).css("paddingLeft"),10)||0)-this.margins.left,
co.top+(parseInt($(ce).css("borderTopWidth"),10)||0)+(parseInt($(ce).css("paddingTop"),10)||0)-this.margins.top,
co.left+(over?Math.max(ce.scrollWidth,ce.offsetWidth):ce.offsetWidth)-(parseInt($(ce).css("borderLeftWidth"),10)||0)-(parseInt($(ce).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,
co.top+(over?Math.max(ce.scrollHeight,ce.offsetHeight):ce.offsetHeight)-(parseInt($(ce).css("borderTopWidth"),10)||0)-(parseInt($(ce).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top
]}
},
_convertPositionTo:function(d,pos){
if(!pos)pos=this.position;
var mod=d=="absolute"?1:-1;
var o=this.options,scroll=this.cssPosition=='absolute'&&!(this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,scrollIsRootNode=(/(html|body)/i).test(scroll[0].tagName);
return{
top:(
pos.top+this.offset.relative.top*mod+this.offset.parent.top*mod-($.browser.safari&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollTop():(scrollIsRootNode?0:scroll.scrollTop()))*mod)
),
left:(
pos.left+this.offset.relative.left*mod+this.offset.parent.left*mod-($.browser.safari&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollLeft():scrollIsRootNode?0:scroll.scrollLeft())*mod)
)
}},
_generatePosition:function(event){
var o=this.options,scroll=this.cssPosition=='absolute'&&!(this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,scrollIsRootNode=(/(html|body)/i).test(scroll[0].tagName);
if(this.cssPosition=='relative'&&!(this.scrollParent[0]!=document&&this.scrollParent[0]!=this.offsetParent[0])){
this.offset.relative=this._getRelativeOffset()}
var pageX=event.pageX;
var pageY=event.pageY;
if(this.originalPosition){
if(this.containment){
if(event.pageX-this.offset.click.left<this.containment[0])pageX=this.containment[0]+this.offset.click.left;
if(event.pageY-this.offset.click.top<this.containment[1])pageY=this.containment[1]+this.offset.click.top;
if(event.pageX-this.offset.click.left>this.containment[2])pageX=this.containment[2]+this.offset.click.left;
if(event.pageY-this.offset.click.top>this.containment[3])pageY=this.containment[3]+this.offset.click.top}
if(o.grid){
var top=this.originalPageY+Math.round((pageY-this.originalPageY)/o.grid[1])*o.grid[1];
pageY=this.containment?(!(top-this.offset.click.top<this.containment[1]||top-this.offset.click.top>this.containment[3])?top:(!(top-this.offset.click.top<this.containment[1])?top-o.grid[1]:top+o.grid[1])):top;
var left=this.originalPageX+Math.round((pageX-this.originalPageX)/o.grid[0])*o.grid[0];
pageX=this.containment?(!(left-this.offset.click.left<this.containment[0]||left-this.offset.click.left>this.containment[2])?left:(!(left-this.offset.click.left<this.containment[0])?left-o.grid[0]:left+o.grid[0])):left}
}
return{
top:(
pageY-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+($.browser.safari&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollTop():(scrollIsRootNode?0:scroll.scrollTop())))
),
left:(
pageX-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+($.browser.safari&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollLeft():scrollIsRootNode?0:scroll.scrollLeft()))
)
}},
_rearrange:function(event,i,a,hardRefresh){
a?a[0].appendChild(this.placeholder[0]):i.item[0].parentNode.insertBefore(this.placeholder[0],(this.direction=='down'?i.item[0]:i.item[0].nextSibling));
this.counter=this.counter?++this.counter:1;
var self=this,counter=this.counter;
window.setTimeout(function(){
if(counter==self.counter)self.refreshPositions(!hardRefresh)},0)},
_clear:function(event,noPropagation){
this.reverting=false;
var delayedTriggers=[],self=this;
if(!this._noFinalSort&&this.currentItem.parent().length)this.placeholder.before(this.currentItem);
this._noFinalSort=null;
if(this.helper[0]==this.currentItem[0]){
for(var i in this._storedCSS){
if(this._storedCSS[i]=='auto'||this._storedCSS[i]=='static')this._storedCSS[i]=''}
this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else{
this.currentItem.show()}
if(this.fromOutside&&!noPropagation)delayedTriggers.push(function(event){this._trigger("receive",event,this._uiHash(this.fromOutside))});
if((this.fromOutside||this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])&&!noPropagation)delayedTriggers.push(function(event){this._trigger("update",event,this._uiHash())});if(!$.ui.contains(this.element[0],this.currentItem[0])){if(!noPropagation)delayedTriggers.push(function(event){this._trigger("remove",event,this._uiHash())});
for(var i=this.containers.length-1;i>=0;i--){
if($.ui.contains(this.containers[i].element[0],this.currentItem[0])&&!noPropagation){
delayedTriggers.push((function(c){return function(event){c._trigger("receive",event,this._uiHash(this))}}).call(this,this.containers[i]));
delayedTriggers.push((function(c){return function(event){c._trigger("update",event,this._uiHash(this))}}).call(this,this.containers[i]))}
}};
for(var i=this.containers.length-1;i>=0;i--){
if(!noPropagation)delayedTriggers.push((function(c){return function(event){c._trigger("deactivate",event,this._uiHash(this))}}).call(this,this.containers[i]));
if(this.containers[i].containerCache.over){
delayedTriggers.push((function(c){return function(event){c._trigger("out",event,this._uiHash(this))}}).call(this,this.containers[i]));
this.containers[i].containerCache.over=0}
}
if(this._storedCursor)$('body').css("cursor",this._storedCursor);if(this._storedOpacity)this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=='auto'?'':this._storedZIndex);
this.dragging=false;
if(this.cancelHelperRemoval){
if(!noPropagation){
this._trigger("beforeStop",event,this._uiHash());
for(var i=0;i<delayedTriggers.length;i++){delayedTriggers[i].call(this,event)};this._trigger("stop",event,this._uiHash())}
return false}
if(!noPropagation)this._trigger("beforeStop",event,this._uiHash());
this.placeholder[0].parentNode.removeChild(this.placeholder[0]);
if(this.helper[0]!=this.currentItem[0])this.helper.remove();this.helper=null;
if(!noPropagation){
for(var i=0;i<delayedTriggers.length;i++){delayedTriggers[i].call(this,event)};this._trigger("stop",event,this._uiHash())}
this.fromOutside=false;
return true},
_trigger:function(){
if($.Widget.prototype._trigger.apply(this,arguments)===false){
this.cancel()}
},
_uiHash:function(inst){
var self=inst||this;
return{
helper:self.helper,
placeholder:self.placeholder||$([]),
position:self.position,
originalPosition:self.originalPosition,
offset:self.positionAbs,
item:self.currentItem,
sender:inst?inst.element:null
}}
});
$.extend($.ui.sortable,{
version:"1.8.16"
})})(jQuery);jQuery.effects||(function($,undefined){
$.effects={};
$.each(['backgroundColor','borderBottomColor','borderLeftColor',
'borderRightColor','borderTopColor','borderColor','color','outlineColor'],
function(i,attr){
$.fx.step[attr]=function(fx){
if(!fx.colorInit){
fx.start=getColor(fx.elem,attr);
fx.end=getRGB(fx.end);
fx.colorInit=true}
fx.elem.style[attr]='rgb('+
Math.max(Math.min(parseInt((fx.pos*(fx.end[0]-fx.start[0]))+fx.start[0],10),255),0)+','+
Math.max(Math.min(parseInt((fx.pos*(fx.end[1]-fx.start[1]))+fx.start[1],10),255),0)+','+
Math.max(Math.min(parseInt((fx.pos*(fx.end[2]-fx.start[2]))+fx.start[2],10),255),0)+')'}});
function getRGB(color){
var result;
if(color&&color.constructor==Array&&color.length==3)
return color;
if(result=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color))
return[parseInt(result[1],10),parseInt(result[2],10),parseInt(result[3],10)];
if(result=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color))
return[parseFloat(result[1])*2.55,parseFloat(result[2])*2.55,parseFloat(result[3])*2.55];
if(result=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color))
return[parseInt(result[1],16),parseInt(result[2],16),parseInt(result[3],16)];
if(result=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color))
return[parseInt(result[1]+result[1],16),parseInt(result[2]+result[2],16),parseInt(result[3]+result[3],16)];
if(result=/rgba\(0, 0, 0, 0\)/.exec(color))
return colors['transparent'];
return colors[$.trim(color).toLowerCase()]}
function getColor(elem,attr){
var color;
do{
color=$.curCSS(elem,attr);
if(color!=''&&color!='transparent'||$.nodeName(elem,"body"))
break;
attr="backgroundColor"}while(elem=elem.parentNode);
return getRGB(color)};
var colors={
aqua:[0,255,255],
azure:[240,255,255],
beige:[245,245,220],
black:[0,0,0],
blue:[0,0,255],
brown:[165,42,42],
cyan:[0,255,255],
darkblue:[0,0,139],
darkcyan:[0,139,139],
darkgrey:[169,169,169],
darkgreen:[0,100,0],
darkkhaki:[189,183,107],
darkmagenta:[139,0,139],
darkolivegreen:[85,107,47],
darkorange:[255,140,0],
darkorchid:[153,50,204],
darkred:[139,0,0],
darksalmon:[233,150,122],
darkviolet:[148,0,211],
fuchsia:[255,0,255],
gold:[255,215,0],
green:[0,128,0],
indigo:[75,0,130],
khaki:[240,230,140],
lightblue:[173,216,230],
lightcyan:[224,255,255],
lightgreen:[144,238,144],
lightgrey:[211,211,211],
lightpink:[255,182,193],
lightyellow:[255,255,224],
lime:[0,255,0],
magenta:[255,0,255],
maroon:[128,0,0],
navy:[0,0,128],
olive:[128,128,0],
orange:[255,165,0],
pink:[255,192,203],
purple:[128,0,128],
violet:[128,0,128],
red:[255,0,0],
silver:[192,192,192],
white:[255,255,255],
yellow:[255,255,0],
transparent:[255,255,255]
};
var classAnimationActions=['add','remove','toggle'],
shorthandStyles={
border:1,
borderBottom:1,
borderColor:1,
borderLeft:1,
borderRight:1,
borderTop:1,
borderWidth:1,
margin:1,
padding:1
};
function getElementStyles(){
var style=document.defaultView
?document.defaultView.getComputedStyle(this,null)
:this.currentStyle,
newStyle={},
key,
camelCase;
if(style&&style.length&&style[0]&&style[style[0]]){
var len=style.length;
while(len--){
key=style[len];
if(typeof style[key]=='string'){
camelCase=key.replace(/\-(\w)/g,function(all,letter){
return letter.toUpperCase()});
newStyle[camelCase]=style[key]}
}
}else{
for(key in style){
if(typeof style[key]==='string'){
newStyle[key]=style[key]}
}
}
return newStyle}
function filterStyles(styles){
var name,value;
for(name in styles){
value=styles[name];
if(
value==null||
$.isFunction(value)||
name in shorthandStyles||
(/scrollbar/).test(name)||
(!(/color/i).test(name)&&isNaN(parseFloat(value)))
){
delete styles[name]}
}
return styles}
function styleDifference(oldStyle,newStyle){
var diff={_:0},name;
for(name in newStyle){
if(oldStyle[name]!=newStyle[name]){
diff[name]=newStyle[name]}
}
return diff}
$.effects.animateClass=function(value,duration,easing,callback){
if($.isFunction(easing)){
callback=easing;
easing=null}
return this.queue(function(){
var that=$(this),
originalStyleAttr=that.attr('style')||' ',
originalStyle=filterStyles(getElementStyles.call(this)),
newStyle,
className=that.attr('class');
$.each(classAnimationActions,function(i,action){
if(value[action]){
that[action+'Class'](value[action])}
});
newStyle=filterStyles(getElementStyles.call(this));
that.attr('class',className);
that.animate(styleDifference(originalStyle,newStyle),{
queue:false,
duration:duration,
easing:easing,
complete:function(){
$.each(classAnimationActions,function(i,action){
if(value[action]){that[action+'Class'](value[action])}
});
if(typeof that.attr('style')=='object'){
that.attr('style').cssText='';
that.attr('style').cssText=originalStyleAttr}else{
that.attr('style',originalStyleAttr)}
if(callback){callback.apply(this,arguments)}
$.dequeue(this)}
})})};
$.fn.extend({
_addClass:$.fn.addClass,
addClass:function(classNames,speed,easing,callback){
return speed?$.effects.animateClass.apply(this,[{add:classNames},speed,easing,callback]):this._addClass(classNames)},
_removeClass:$.fn.removeClass,
removeClass:function(classNames,speed,easing,callback){
return speed?$.effects.animateClass.apply(this,[{remove:classNames},speed,easing,callback]):this._removeClass(classNames)},
_toggleClass:$.fn.toggleClass,
toggleClass:function(classNames,force,speed,easing,callback){
if(typeof force=="boolean"||force===undefined){
if(!speed){
return this._toggleClass(classNames,force)}else{
return $.effects.animateClass.apply(this,[(force?{add:classNames}:{remove:classNames}),speed,easing,callback])}
}else{
return $.effects.animateClass.apply(this,[{toggle:classNames},force,speed,easing])}
},
switchClass:function(remove,add,speed,easing,callback){
return $.effects.animateClass.apply(this,[{add:add,remove:remove},speed,easing,callback])}
});
$.extend($.effects,{
version:"1.8.16",
save:function(element,set){
for(var i=0;i<set.length;i++){
if(set[i]!==null)element.data("ec.storage."+set[i],element[0].style[set[i]])}
},
restore:function(element,set){
for(var i=0;i<set.length;i++){
if(set[i]!==null)element.css(set[i],element.data("ec.storage."+set[i]))}
},
setMode:function(el,mode){
if(mode=='toggle')mode=el.is(':hidden')?'show':'hide';return mode},
getBaseline:function(origin,original){var y,x;
switch(origin[0]){
case'top':y=0;break;
case'middle':y=0.5;break;
case'bottom':y=1;break;
default:y=origin[0]/original.height};
switch(origin[1]){
case'left':x=0;break;
case'center':x=0.5;break;
case'right':x=1;break;
default:x=origin[1]/original.width};
return{x:x,y:y}},
createWrapper:function(element){
if(element.parent().is('.ui-effects-wrapper')){
return element.parent()}
var props={
width:element.outerWidth(true),
height:element.outerHeight(true),
'float':element.css('float')
},
wrapper=$('<div></div>')
.addClass('ui-effects-wrapper')
.css({
fontSize:'100%',
background:'transparent',
border:'none',
margin:0,
padding:0
}),
active=document.activeElement;
element.wrap(wrapper);
if(element[0]===active||$.contains(element[0],active)){
$(active).focus()}
wrapper=element.parent();
if(element.css('position')=='static'){
wrapper.css({position:'relative'});
element.css({position:'relative'})}else{
$.extend(props,{
position:element.css('position'),
zIndex:element.css('z-index')
});
$.each(['top','left','bottom','right'],function(i,pos){
props[pos]=element.css(pos);
if(isNaN(parseInt(props[pos],10))){
props[pos]='auto'}
});
element.css({position:'relative',top:0,left:0,right:'auto',bottom:'auto'})}
return wrapper.css(props).show()},
removeWrapper:function(element){
var parent,
active=document.activeElement;
if(element.parent().is('.ui-effects-wrapper')){
parent=element.parent().replaceWith(element);
if(element[0]===active||$.contains(element[0],active)){
$(active).focus()}
return parent}
return element},
setTransition:function(element,list,factor,value){
value=value||{};
$.each(list,function(i,x){
unit=element.cssUnit(x);
if(unit[0]>0)value[x]=unit[0]*factor+unit[1]});
return value}
});
function _normalizeArguments(effect,options,speed,callback){
if(typeof effect=='object'){
callback=options;
speed=null;
options=effect;
effect=options.effect}
if($.isFunction(options)){
callback=options;
speed=null;
options={}}
if(typeof options=='number'||$.fx.speeds[options]){
callback=speed;
speed=options;
options={}}
if($.isFunction(speed)){
callback=speed;
speed=null}
options=options||{};
speed=speed||options.duration;
speed=$.fx.off?0:typeof speed=='number'
?speed:speed in $.fx.speeds?$.fx.speeds[speed]:$.fx.speeds._default;
callback=callback||options.complete;
return[effect,options,speed,callback]}
function standardSpeed(speed){
if(!speed||typeof speed==="number"||$.fx.speeds[speed]){
return true}
if(typeof speed==="string"&&!$.effects[speed]){
return true}
return false}
$.fn.extend({
effect:function(effect,options,speed,callback){
var args=_normalizeArguments.apply(this,arguments),
args2={
options:args[1],
duration:args[2],
callback:args[3]
},
mode=args2.options.mode,
effectMethod=$.effects[effect];
if($.fx.off||!effectMethod){
if(mode){
return this[mode](args2.duration,args2.callback)}else{
return this.each(function(){
if(args2.callback){
args2.callback.call(this)}
})}
}
return effectMethod.call(this,args2)},
_show:$.fn.show,
show:function(speed){
if(standardSpeed(speed)){
return this._show.apply(this,arguments)}else{
var args=_normalizeArguments.apply(this,arguments);
args[1].mode='show';
return this.effect.apply(this,args)}
},
_hide:$.fn.hide,
hide:function(speed){
if(standardSpeed(speed)){
return this._hide.apply(this,arguments)}else{
var args=_normalizeArguments.apply(this,arguments);
args[1].mode='hide';
return this.effect.apply(this,args)}
},
__toggle:$.fn.toggle,
toggle:function(speed){
if(standardSpeed(speed)||typeof speed==="boolean"||$.isFunction(speed)){
return this.__toggle.apply(this,arguments)}else{
var args=_normalizeArguments.apply(this,arguments);
args[1].mode='toggle';
return this.effect.apply(this,args)}
},
cssUnit:function(key){
var style=this.css(key),val=[];
$.each(['em','px','%','pt'],function(i,unit){
if(style.indexOf(unit)>0)
val=[parseFloat(style),unit]});
return val}
});
$.easing.jswing=$.easing.swing;
$.extend($.easing,
{
def:'easeOutQuad',
swing:function(x,t,b,c,d){
return $.easing[$.easing.def](x,t,b,c,d)},
easeInQuad:function(x,t,b,c,d){
return c*(t/=d)*t+b},
easeOutQuad:function(x,t,b,c,d){
return-c*(t/=d)*(t-2)+b},
easeInOutQuad:function(x,t,b,c,d){
if((t/=d/2)<1)return c/2*t*t+b;
return-c/2*((--t)*(t-2)-1)+b},
easeInCubic:function(x,t,b,c,d){
return c*(t/=d)*t*t+b},
easeOutCubic:function(x,t,b,c,d){
return c*((t=t/d-1)*t*t+1)+b},
easeInOutCubic:function(x,t,b,c,d){
if((t/=d/2)<1)return c/2*t*t*t+b;
return c/2*((t-=2)*t*t+2)+b},
easeInQuart:function(x,t,b,c,d){
return c*(t/=d)*t*t*t+b},
easeOutQuart:function(x,t,b,c,d){
return-c*((t=t/d-1)*t*t*t-1)+b},
easeInOutQuart:function(x,t,b,c,d){
if((t/=d/2)<1)return c/2*t*t*t*t+b;
return-c/2*((t-=2)*t*t*t-2)+b},
easeInQuint:function(x,t,b,c,d){
return c*(t/=d)*t*t*t*t+b},
easeOutQuint:function(x,t,b,c,d){
return c*((t=t/d-1)*t*t*t*t+1)+b},
easeInOutQuint:function(x,t,b,c,d){
if((t/=d/2)<1)return c/2*t*t*t*t*t+b;
return c/2*((t-=2)*t*t*t*t+2)+b},
easeInSine:function(x,t,b,c,d){
return-c*Math.cos(t/d*(Math.PI/2))+c+b},
easeOutSine:function(x,t,b,c,d){
return c*Math.sin(t/d*(Math.PI/2))+b},
easeInOutSine:function(x,t,b,c,d){
return-c/2*(Math.cos(Math.PI*t/d)-1)+b},
easeInExpo:function(x,t,b,c,d){
return(t==0)?b:c*Math.pow(2,10*(t/d-1))+b},
easeOutExpo:function(x,t,b,c,d){
return(t==d)?b+c:c*(-Math.pow(2,-10*t/d)+1)+b},
easeInOutExpo:function(x,t,b,c,d){
if(t==0)return b;
if(t==d)return b+c;
if((t/=d/2)<1)return c/2*Math.pow(2,10*(t-1))+b;
return c/2*(-Math.pow(2,-10*--t)+2)+b},
easeInCirc:function(x,t,b,c,d){
return-c*(Math.sqrt(1-(t/=d)*t)-1)+b},
easeOutCirc:function(x,t,b,c,d){
return c*Math.sqrt(1-(t=t/d-1)*t)+b},
easeInOutCirc:function(x,t,b,c,d){
if((t/=d/2)<1)return-c/2*(Math.sqrt(1-t*t)-1)+b;
return c/2*(Math.sqrt(1-(t-=2)*t)+1)+b},
easeInElastic:function(x,t,b,c,d){
var s=1.70158;var p=0;var a=c;
if(t==0)return b;if((t/=d)==1)return b+c;if(!p)p=d*.3;
if(a<Math.abs(c)){a=c;var s=p/4}
else var s=p/(2*Math.PI)*Math.asin(c/a);
return-(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b},
easeOutElastic:function(x,t,b,c,d){
var s=1.70158;var p=0;var a=c;
if(t==0)return b;if((t/=d)==1)return b+c;if(!p)p=d*.3;
if(a<Math.abs(c)){a=c;var s=p/4}
else var s=p/(2*Math.PI)*Math.asin(c/a);
return a*Math.pow(2,-10*t)*Math.sin((t*d-s)*(2*Math.PI)/p)+c+b},
easeInOutElastic:function(x,t,b,c,d){
var s=1.70158;var p=0;var a=c;
if(t==0)return b;if((t/=d/2)==2)return b+c;if(!p)p=d*(.3*1.5);
if(a<Math.abs(c)){a=c;var s=p/4}
else var s=p/(2*Math.PI)*Math.asin(c/a);
if(t<1)return-.5*(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b;
return a*Math.pow(2,-10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p)*.5+c+b},
easeInBack:function(x,t,b,c,d,s){
if(s==undefined)s=1.70158;
return c*(t/=d)*t*((s+1)*t-s)+b},
easeOutBack:function(x,t,b,c,d,s){
if(s==undefined)s=1.70158;
return c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},
easeInOutBack:function(x,t,b,c,d,s){
if(s==undefined)s=1.70158;
if((t/=d/2)<1)return c/2*(t*t*(((s*=(1.525))+1)*t-s))+b;
return c/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b},
easeInBounce:function(x,t,b,c,d){
return c-$.easing.easeOutBounce(x,d-t,0,c,d)+b},
easeOutBounce:function(x,t,b,c,d){
if((t/=d)<(1/2.75)){
return c*(7.5625*t*t)+b}else if(t<(2/2.75)){
return c*(7.5625*(t-=(1.5/2.75))*t+.75)+b}else if(t<(2.5/2.75)){
return c*(7.5625*(t-=(2.25/2.75))*t+.9375)+b}else{
return c*(7.5625*(t-=(2.625/2.75))*t+.984375)+b}
},
easeInOutBounce:function(x,t,b,c,d){
if(t<d/2)return $.easing.easeInBounce(x,t*2,0,c,d)*.5+b;
return $.easing.easeOutBounce(x,t*2-d,0,c,d)*.5+c*.5+b}
})})(jQuery);
(function($,undefined){
$.effects.blind=function(o){
return this.queue(function(){
var el=$(this),props=['position','top','bottom','left','right'];
var mode=$.effects.setMode(el,o.options.mode||'hide');var direction=o.options.direction||'vertical';
$.effects.save(el,props);el.show();var wrapper=$.effects.createWrapper(el).css({overflow:'hidden'});var ref=(direction=='vertical')?'height':'width';
var distance=(direction=='vertical')?wrapper.height():wrapper.width();
if(mode=='show')wrapper.css(ref,0);
var animation={};
animation[ref]=mode=='show'?distance:0;
wrapper.animate(animation,o.duration,o.options.easing,function(){
if(mode=='hide')el.hide();$.effects.restore(el,props);$.effects.removeWrapper(el);if(o.callback)o.callback.apply(el[0],arguments);el.dequeue()})})}})(jQuery);
(function($,undefined){
$.effects.bounce=function(o){
return this.queue(function(){
var el=$(this),props=['position','top','bottom','left','right'];
var mode=$.effects.setMode(el,o.options.mode||'effect');var direction=o.options.direction||'up';var distance=o.options.distance||20;var times=o.options.times||5;var speed=o.duration||250;if(/show|hide/.test(mode))props.push('opacity');
$.effects.save(el,props);el.show();$.effects.createWrapper(el);var ref=(direction=='up'||direction=='down')?'top':'left';
var motion=(direction=='up'||direction=='left')?'pos':'neg';
var distance=o.options.distance||(ref=='top'?el.outerHeight({margin:true})/3:el.outerWidth({margin:true})/3);
if(mode=='show')el.css('opacity',0).css(ref,motion=='pos'?-distance:distance);if(mode=='hide')distance=distance/(times*2);
if(mode!='hide')times--;
if(mode=='show'){var animation={opacity:1};
animation[ref]=(motion=='pos'?'+=':'-=')+distance;
el.animate(animation,speed/2,o.options.easing);
distance=distance/2;
times--};
for(var i=0;i<times;i++){var animation1={},animation2={};
animation1[ref]=(motion=='pos'?'-=':'+=')+distance;
animation2[ref]=(motion=='pos'?'+=':'-=')+distance;
el.animate(animation1,speed/2,o.options.easing).animate(animation2,speed/2,o.options.easing);
distance=(mode=='hide')?distance*2:distance/2};
if(mode=='hide'){var animation={opacity:0};
animation[ref]=(motion=='pos'?'-=':'+=')+distance;
el.animate(animation,speed/2,o.options.easing,function(){
el.hide();$.effects.restore(el,props);$.effects.removeWrapper(el);if(o.callback)o.callback.apply(this,arguments)})}else{
var animation1={},animation2={};
animation1[ref]=(motion=='pos'?'-=':'+=')+distance;
animation2[ref]=(motion=='pos'?'+=':'-=')+distance;
el.animate(animation1,speed/2,o.options.easing).animate(animation2,speed/2,o.options.easing,function(){
$.effects.restore(el,props);$.effects.removeWrapper(el);if(o.callback)o.callback.apply(this,arguments)})};
el.queue('fx',function(){el.dequeue()});
el.dequeue()})}})(jQuery);
(function($,undefined){
$.effects.clip=function(o){
return this.queue(function(){
var el=$(this),props=['position','top','bottom','left','right','height','width'];
var mode=$.effects.setMode(el,o.options.mode||'hide');var direction=o.options.direction||'vertical';
$.effects.save(el,props);el.show();var wrapper=$.effects.createWrapper(el).css({overflow:'hidden'});var animate=el[0].tagName=='IMG'?wrapper:el;
var ref={
size:(direction=='vertical')?'height':'width',
position:(direction=='vertical')?'top':'left'
};
var distance=(direction=='vertical')?animate.height():animate.width();
if(mode=='show'){animate.css(ref.size,0);animate.css(ref.position,distance/2)} 
var animation={};
animation[ref.size]=mode=='show'?distance:0;
animation[ref.position]=mode=='show'?0:distance/2;
animate.animate(animation,{queue:false,duration:o.duration,easing:o.options.easing,complete:function(){
if(mode=='hide')el.hide();$.effects.restore(el,props);$.effects.removeWrapper(el);if(o.callback)o.callback.apply(el[0],arguments);el.dequeue()}})})}})(jQuery);
(function($,undefined){
$.effects.drop=function(o){
return this.queue(function(){
var el=$(this),props=['position','top','bottom','left','right','opacity'];
var mode=$.effects.setMode(el,o.options.mode||'hide');var direction=o.options.direction||'left';
$.effects.save(el,props);el.show();$.effects.createWrapper(el);var ref=(direction=='up'||direction=='down')?'top':'left';
var motion=(direction=='up'||direction=='left')?'pos':'neg';
var distance=o.options.distance||(ref=='top'?el.outerHeight({margin:true})/2:el.outerWidth({margin:true})/2);
if(mode=='show')el.css('opacity',0).css(ref,motion=='pos'?-distance:distance);
var animation={opacity:mode=='show'?1:0};
animation[ref]=(mode=='show'?(motion=='pos'?'+=':'-='):(motion=='pos'?'-=':'+='))+distance;
el.animate(animation,{queue:false,duration:o.duration,easing:o.options.easing,complete:function(){
if(mode=='hide')el.hide();$.effects.restore(el,props);$.effects.removeWrapper(el);if(o.callback)o.callback.apply(this,arguments);el.dequeue()}})})}})(jQuery);
(function($,undefined){
$.effects.explode=function(o){
return this.queue(function(){
var rows=o.options.pieces?Math.round(Math.sqrt(o.options.pieces)):3;
var cells=o.options.pieces?Math.round(Math.sqrt(o.options.pieces)):3;
o.options.mode=o.options.mode=='toggle'?($(this).is(':visible')?'hide':'show'):o.options.mode;
var el=$(this).show().css('visibility','hidden');
var offset=el.offset();
offset.top-=parseInt(el.css("marginTop"),10)||0;
offset.left-=parseInt(el.css("marginLeft"),10)||0;
var width=el.outerWidth(true);
var height=el.outerHeight(true);
for(var i=0;i<rows;i++){for(var j=0;j<cells;j++){el
.clone()
.appendTo('body')
.wrap('<div></div>')
.css({
position:'absolute',
visibility:'visible',
left:-j*(width/cells),
top:-i*(height/rows)
})
.parent()
.addClass('ui-effects-explode')
.css({
position:'absolute',
overflow:'hidden',
width:width/cells,
height:height/rows,
left:offset.left+j*(width/cells)+(o.options.mode=='show'?(j-Math.floor(cells/2))*(width/cells):0),
top:offset.top+i*(height/rows)+(o.options.mode=='show'?(i-Math.floor(rows/2))*(height/rows):0),
opacity:o.options.mode=='show'?0:1
}).animate({
left:offset.left+j*(width/cells)+(o.options.mode=='show'?0:(j-Math.floor(cells/2))*(width/cells)),
top:offset.top+i*(height/rows)+(o.options.mode=='show'?0:(i-Math.floor(rows/2))*(height/rows)),
opacity:o.options.mode=='show'?1:0
},o.duration||500)}
}
setTimeout(function(){
o.options.mode=='show'?el.css({visibility:'visible'}):el.css({visibility:'visible'}).hide();
if(o.callback)o.callback.apply(el[0]);el.dequeue();
$('div.ui-effects-explode').remove()},o.duration||500)})}})(jQuery);
(function($,undefined){
$.effects.fade=function(o){
return this.queue(function(){
var elem=$(this),
mode=$.effects.setMode(elem,o.options.mode||'hide');
elem.animate({opacity:mode},{
queue:false,
duration:o.duration,
easing:o.options.easing,
complete:function(){
(o.callback&&o.callback.apply(this,arguments));
elem.dequeue()}
})})}})(jQuery);
(function($,undefined){
$.effects.fold=function(o){
return this.queue(function(){
var el=$(this),props=['position','top','bottom','left','right'];
var mode=$.effects.setMode(el,o.options.mode||'hide');var size=o.options.size||15;var horizFirst=!(!o.options.horizFirst);var duration=o.duration?o.duration/2:$.fx.speeds._default/2;
$.effects.save(el,props);el.show();var wrapper=$.effects.createWrapper(el).css({overflow:'hidden'});var widthFirst=((mode=='show')!=horizFirst);
var ref=widthFirst?['width','height']:['height','width'];
var distance=widthFirst?[wrapper.width(),wrapper.height()]:[wrapper.height(),wrapper.width()];
var percent=/([0-9]+)%/.exec(size);
if(percent)size=parseInt(percent[1],10)/100*distance[mode=='hide'?0:1];
if(mode=='show')wrapper.css(horizFirst?{height:0,width:size}:{height:size,width:0});
var animation1={},animation2={};
animation1[ref[0]]=mode=='show'?distance[0]:size;
animation2[ref[1]]=mode=='show'?distance[1]:0;
wrapper.animate(animation1,duration,o.options.easing)
.animate(animation2,duration,o.options.easing,function(){
if(mode=='hide')el.hide();$.effects.restore(el,props);$.effects.removeWrapper(el);if(o.callback)o.callback.apply(el[0],arguments);el.dequeue()})})}})(jQuery);
(function($,undefined){
$.effects.highlight=function(o){
return this.queue(function(){
var elem=$(this),
props=['backgroundImage','backgroundColor','opacity'],
mode=$.effects.setMode(elem,o.options.mode||'show'),
animation={
backgroundColor:elem.css('backgroundColor')
};
if(mode=='hide'){
animation.opacity=0}
$.effects.save(elem,props);
elem
.show()
.css({
backgroundImage:'none',
backgroundColor:o.options.color||'#ffff99'
})
.animate(animation,{
queue:false,
duration:o.duration,
easing:o.options.easing,
complete:function(){
(mode=='hide'&&elem.hide());
$.effects.restore(elem,props);
(mode=='show'&&!$.support.opacity&&this.style.removeAttribute('filter'));
(o.callback&&o.callback.apply(this,arguments));
elem.dequeue()}
})})}})(jQuery);
(function($,undefined){
$.effects.pulsate=function(o){
return this.queue(function(){
var elem=$(this),
mode=$.effects.setMode(elem,o.options.mode||'show');
times=((o.options.times||5)*2)-1;
duration=o.duration?o.duration/2:$.fx.speeds._default/2,
isVisible=elem.is(':visible'),
animateTo=0;
if(!isVisible){
elem.css('opacity',0).show();
animateTo=1}
if((mode=='hide'&&isVisible)||(mode=='show'&&!isVisible)){
times--}
for(var i=0;i<times;i++){
elem.animate({opacity:animateTo},duration,o.options.easing);
animateTo=(animateTo+1)%2}
elem.animate({opacity:animateTo},duration,o.options.easing,function(){
if(animateTo==0){
elem.hide()}
(o.callback&&o.callback.apply(this,arguments))});
elem
.queue('fx',function(){elem.dequeue()})
.dequeue()})}})(jQuery);
(function($,undefined){
$.effects.puff=function(o){
return this.queue(function(){
var elem=$(this),
mode=$.effects.setMode(elem,o.options.mode||'hide'),
percent=parseInt(o.options.percent,10)||150,
factor=percent/100,
original={height:elem.height(),width:elem.width()};
$.extend(o.options,{
fade:true,
mode:mode,
percent:mode=='hide'?percent:100,
from:mode=='hide'
?original
:{
height:original.height*factor,
width:original.width*factor
}
});
elem.effect('scale',o.options,o.duration,o.callback);
elem.dequeue()})};
$.effects.scale=function(o){
return this.queue(function(){
var el=$(this);
var options=$.extend(true,{},o.options);
var mode=$.effects.setMode(el,o.options.mode||'effect');var percent=parseInt(o.options.percent,10)||(parseInt(o.options.percent,10)==0?0:(mode=='hide'?0:100));var direction=o.options.direction||'both';var origin=o.options.origin;if(mode!='effect'){options.origin=origin||['middle','center'];
options.restore=true}
var original={height:el.height(),width:el.width()};el.from=o.options.from||(mode=='show'?{height:0,width:0}:original);
var factor={y:direction!='horizontal'?(percent/100):1,
x:direction!='vertical'?(percent/100):1
};
el.to={height:original.height*factor.y,width:original.width*factor.x};
if(o.options.fade){if(mode=='show'){el.from.opacity=0;el.to.opacity=1};
if(mode=='hide'){el.from.opacity=1;el.to.opacity=0}};
options.from=el.from;options.to=el.to;options.mode=mode;
el.effect('size',options,o.duration,o.callback);
el.dequeue()})};
$.effects.size=function(o){
return this.queue(function(){
var el=$(this),props=['position','top','bottom','left','right','width','height','overflow','opacity'];
var props1=['position','top','bottom','left','right','overflow','opacity'];var props2=['width','height','overflow'];var cProps=['fontSize'];
var vProps=['borderTopWidth','borderBottomWidth','paddingTop','paddingBottom'];
var hProps=['borderLeftWidth','borderRightWidth','paddingLeft','paddingRight'];
var mode=$.effects.setMode(el,o.options.mode||'effect');var restore=o.options.restore||false;var scale=o.options.scale||'both';var origin=o.options.origin;var original={height:el.height(),width:el.width()};el.from=o.options.from||original;el.to=o.options.to||original;if(origin){var baseline=$.effects.getBaseline(origin,original);
el.from.top=(original.height-el.from.height)*baseline.y;
el.from.left=(original.width-el.from.width)*baseline.x;
el.to.top=(original.height-el.to.height)*baseline.y;
el.to.left=(original.width-el.to.width)*baseline.x};
var factor={from:{y:el.from.height/original.height,x:el.from.width/original.width},
to:{y:el.to.height/original.height,x:el.to.width/original.width}
};
if(scale=='box'||scale=='both'){if(factor.from.y!=factor.to.y){props=props.concat(vProps);
el.from=$.effects.setTransition(el,vProps,factor.from.y,el.from);
el.to=$.effects.setTransition(el,vProps,factor.to.y,el.to)};
if(factor.from.x!=factor.to.x){props=props.concat(hProps);
el.from=$.effects.setTransition(el,hProps,factor.from.x,el.from);
el.to=$.effects.setTransition(el,hProps,factor.to.x,el.to)}};
if(scale=='content'||scale=='both'){if(factor.from.y!=factor.to.y){props=props.concat(cProps);
el.from=$.effects.setTransition(el,cProps,factor.from.y,el.from);
el.to=$.effects.setTransition(el,cProps,factor.to.y,el.to)}};
$.effects.save(el,restore?props:props1);el.show();$.effects.createWrapper(el);el.css('overflow','hidden').css(el.from);
if(scale=='content'||scale=='both'){vProps=vProps.concat(['marginTop','marginBottom']).concat(cProps);hProps=hProps.concat(['marginLeft','marginRight']);props2=props.concat(vProps).concat(hProps);el.find("*[width]").each(function(){
child=$(this);
if(restore)$.effects.save(child,props2);
var c_original={height:child.height(),width:child.width()};child.from={height:c_original.height*factor.from.y,width:c_original.width*factor.from.x};
child.to={height:c_original.height*factor.to.y,width:c_original.width*factor.to.x};
if(factor.from.y!=factor.to.y){child.from=$.effects.setTransition(child,vProps,factor.from.y,child.from);
child.to=$.effects.setTransition(child,vProps,factor.to.y,child.to)};
if(factor.from.x!=factor.to.x){child.from=$.effects.setTransition(child,hProps,factor.from.x,child.from);
child.to=$.effects.setTransition(child,hProps,factor.to.x,child.to)};
child.css(child.from);child.animate(child.to,o.duration,o.options.easing,function(){
if(restore)$.effects.restore(child,props2)})})};
el.animate(el.to,{queue:false,duration:o.duration,easing:o.options.easing,complete:function(){
if(el.to.opacity===0){
el.css('opacity',el.from.opacity)}
if(mode=='hide')el.hide();$.effects.restore(el,restore?props:props1);$.effects.removeWrapper(el);if(o.callback)o.callback.apply(this,arguments);el.dequeue()}})})}})(jQuery);
(function($,undefined){
$.effects.shake=function(o){
return this.queue(function(){
var el=$(this),props=['position','top','bottom','left','right'];
var mode=$.effects.setMode(el,o.options.mode||'effect');var direction=o.options.direction||'left';var distance=o.options.distance||20;var times=o.options.times||3;var speed=o.duration||o.options.duration||140;
$.effects.save(el,props);el.show();$.effects.createWrapper(el);var ref=(direction=='up'||direction=='down')?'top':'left';
var motion=(direction=='up'||direction=='left')?'pos':'neg';
var animation={},animation1={},animation2={};
animation[ref]=(motion=='pos'?'-=':'+=')+distance;
animation1[ref]=(motion=='pos'?'+=':'-=')+distance*2;
animation2[ref]=(motion=='pos'?'-=':'+=')+distance*2;
el.animate(animation,speed,o.options.easing);
for(var i=1;i<times;i++){el.animate(animation1,speed,o.options.easing).animate(animation2,speed,o.options.easing)};
el.animate(animation1,speed,o.options.easing).
animate(animation,speed/2,o.options.easing,function(){ $.effects.restore(el,props);$.effects.removeWrapper(el);if(o.callback)o.callback.apply(this,arguments)});
el.queue('fx',function(){el.dequeue()});
el.dequeue()})}})(jQuery);
(function($,undefined){
$.effects.slide=function(o){
return this.queue(function(){
var el=$(this),props=['position','top','bottom','left','right'];
var mode=$.effects.setMode(el,o.options.mode||'show');var direction=o.options.direction||'left';
$.effects.save(el,props);el.show();$.effects.createWrapper(el).css({overflow:'hidden'});var ref=(direction=='up'||direction=='down')?'top':'left';
var motion=(direction=='up'||direction=='left')?'pos':'neg';
var distance=o.options.distance||(ref=='top'?el.outerHeight({margin:true}):el.outerWidth({margin:true}));
if(mode=='show')el.css(ref,motion=='pos'?(isNaN(distance)?"-"+distance:-distance):distance);
var animation={};
animation[ref]=(mode=='show'?(motion=='pos'?'+=':'-='):(motion=='pos'?'-=':'+='))+distance;
el.animate(animation,{queue:false,duration:o.duration,easing:o.options.easing,complete:function(){
if(mode=='hide')el.hide();$.effects.restore(el,props);$.effects.removeWrapper(el);if(o.callback)o.callback.apply(this,arguments);el.dequeue()}})})}})(jQuery);
(function($,undefined){
$.effects.transfer=function(o){
return this.queue(function(){
var elem=$(this),
target=$(o.options.to),
endPosition=target.offset(),
animation={
top:endPosition.top,
left:endPosition.left,
height:target.innerHeight(),
width:target.innerWidth()
},
startPosition=elem.offset(),
transfer=$('<div class="ui-effects-transfer"></div>')
.appendTo(document.body)
.addClass(o.options.className)
.css({
top:startPosition.top,
left:startPosition.left,
height:elem.innerHeight(),
width:elem.innerWidth(),
position:'absolute'
})
.animate(animation,o.duration,o.options.easing,function(){
transfer.remove();
(o.callback&&o.callback.apply(elem[0],arguments));
elem.dequeue()})})}})(jQuery);
(function($,undefined){
$.widget("ui.accordion",{
options:{
active:0,
animated:"slide",
autoHeight:true,
clearStyle:false,
collapsible:false,
event:"click",
fillSpace:false,
header:"> li > :first-child,> :not(li):even",
icons:{
header:"ui-icon-triangle-1-e",
headerSelected:"ui-icon-triangle-1-s"
},
navigation:false,
navigationFilter:function(){
return this.href.toLowerCase()===location.href.toLowerCase()}
},
_create:function(){
var self=this,
options=self.options;
self.running=0;
self.element
.addClass("ui-accordion ui-widget ui-helper-reset")
.children("li")
.addClass("ui-accordion-li-fix");
self.headers=self.element.find(options.header)
.addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all")
.bind("mouseenter.accordion",function(){
if(options.disabled){
return}
$(this).addClass("ui-state-hover")})
.bind("mouseleave.accordion",function(){
if(options.disabled){
return}
$(this).removeClass("ui-state-hover")})
.bind("focus.accordion",function(){
if(options.disabled){
return}
$(this).addClass("ui-state-focus")})
.bind("blur.accordion",function(){
if(options.disabled){
return}
$(this).removeClass("ui-state-focus")});
self.headers.next()
.addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");
if(options.navigation){
var current=self.element.find("a").filter(options.navigationFilter).eq(0);
if(current.length){
var header=current.closest(".ui-accordion-header");
if(header.length){
self.active=header}else{
self.active=current.closest(".ui-accordion-content").prev()}
}
}
self.active=self._findActive(self.active||options.active)
.addClass("ui-state-default ui-state-active")
.toggleClass("ui-corner-all")
.toggleClass("ui-corner-top");
self.active.next().addClass("ui-accordion-content-active");
self._createIcons();
self.resize();
self.element.attr("role","tablist");
self.headers
.attr("role","tab")
.bind("keydown.accordion",function(event){
return self._keydown(event)})
.next()
.attr("role","tabpanel");
self.headers
.not(self.active||"")
.attr({
"aria-expanded":"false",
"aria-selected":"false",
tabIndex:-1
})
.next()
.hide();
if(!self.active.length){
self.headers.eq(0).attr("tabIndex",0)}else{
self.active
.attr({
"aria-expanded":"true",
"aria-selected":"true",
tabIndex:0
})}
if(!$.browser.safari){
self.headers.find("a").attr("tabIndex",-1)}
if(options.event){
self.headers.bind(options.event.split(" ").join(".accordion ")+".accordion",function(event){
self._clickHandler.call(self,event,this);
event.preventDefault()})}
},
_createIcons:function(){
var options=this.options;
if(options.icons){
$("<span></span>")
.addClass("ui-icon "+options.icons.header)
.prependTo(this.headers);
this.active.children(".ui-icon")
.toggleClass(options.icons.header)
.toggleClass(options.icons.headerSelected);
this.element.addClass("ui-accordion-icons")}
},
_destroyIcons:function(){
this.headers.children(".ui-icon").remove();
this.element.removeClass("ui-accordion-icons")},
destroy:function(){
var options=this.options;
this.element
.removeClass("ui-accordion ui-widget ui-helper-reset")
.removeAttr("role");
this.headers
.unbind(".accordion")
.removeClass("ui-accordion-header ui-accordion-disabled ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top")
.removeAttr("role")
.removeAttr("aria-expanded")
.removeAttr("aria-selected")
.removeAttr("tabIndex");
this.headers.find("a").removeAttr("tabIndex");
this._destroyIcons();
var contents=this.headers.next()
.css("display","")
.removeAttr("role")
.removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-accordion-disabled ui-state-disabled");
if(options.autoHeight||options.fillHeight){
contents.css("height","")}
return $.Widget.prototype.destroy.call(this)},
_setOption:function(key,value){
$.Widget.prototype._setOption.apply(this,arguments);
if(key=="active"){
this.activate(value)}
if(key=="icons"){
this._destroyIcons();
if(value){
this._createIcons()}
}
if(key=="disabled"){
this.headers.add(this.headers.next())
[value?"addClass":"removeClass"](
"ui-accordion-disabled ui-state-disabled")}
},
_keydown:function(event){
if(this.options.disabled||event.altKey||event.ctrlKey){
return}
var keyCode=$.ui.keyCode,
length=this.headers.length,
currentIndex=this.headers.index(event.target),
toFocus=false;
switch(event.keyCode){
case keyCode.RIGHT:
case keyCode.DOWN:
toFocus=this.headers[(currentIndex+1)%length];
break;
case keyCode.LEFT:
case keyCode.UP:
toFocus=this.headers[(currentIndex-1+length)%length];
break;
case keyCode.SPACE:
case keyCode.ENTER:
this._clickHandler({target:event.target},event.target);
event.preventDefault()}
if(toFocus){
$(event.target).attr("tabIndex",-1);
$(toFocus).attr("tabIndex",0);
toFocus.focus();
return false}
return true},
resize:function(){
var options=this.options,
maxHeight;
if(options.fillSpace){
if($.browser.msie){
var defOverflow=this.element.parent().css("overflow");
this.element.parent().css("overflow","hidden")}
maxHeight=this.element.parent().height();
if($.browser.msie){
this.element.parent().css("overflow",defOverflow)}
this.headers.each(function(){
maxHeight-=$(this).outerHeight(true)});
this.headers.next()
.each(function(){
$(this).height(Math.max(0,maxHeight-
$(this).innerHeight()+$(this).height()))})
.css("overflow","auto")}else if(options.autoHeight){
maxHeight=0;
this.headers.next()
.each(function(){
maxHeight=Math.max(maxHeight,$(this).height("").height())})
.height(maxHeight)}
return this},
activate:function(index){
this.options.active=index;
var active=this._findActive(index)[0];
this._clickHandler({target:active},active);
return this},
_findActive:function(selector){
return selector
?typeof selector==="number"
?this.headers.filter(":eq("+selector+")")
:this.headers.not(this.headers.not(selector))
:selector===false
?$([])
:this.headers.filter(":eq(0)")},
_clickHandler:function(event,target){
var options=this.options;
if(options.disabled){
return}
if(!event.target){
if(!options.collapsible){
return}
this.active
.removeClass("ui-state-active ui-corner-top")
.addClass("ui-state-default ui-corner-all")
.children(".ui-icon")
.removeClass(options.icons.headerSelected)
.addClass(options.icons.header);
this.active.next().addClass("ui-accordion-content-active");
var toHide=this.active.next(),
data={
options:options,
newHeader:$([]),
oldHeader:options.active,
newContent:$([]),
oldContent:toHide
},
toShow=(this.active=$([]));
this._toggle(toShow,toHide,data);
return}
var clicked=$(event.currentTarget||target),
clickedIsActive=clicked[0]===this.active[0];
options.active=options.collapsible&&clickedIsActive?
false:
this.headers.index(clicked);
if(this.running||(!options.collapsible&&clickedIsActive)){
return}
var active=this.active,
toShow=clicked.next(),
toHide=this.active.next(),
data={
options:options,
newHeader:clickedIsActive&&options.collapsible?$([]):clicked,
oldHeader:this.active,
newContent:clickedIsActive&&options.collapsible?$([]):toShow,
oldContent:toHide
},
down=this.headers.index(this.active[0])>this.headers.index(clicked[0]);
this.active=clickedIsActive?$([]):clicked;
this._toggle(toShow,toHide,data,clickedIsActive,down);
active
.removeClass("ui-state-active ui-corner-top")
.addClass("ui-state-default ui-corner-all")
.children(".ui-icon")
.removeClass(options.icons.headerSelected)
.addClass(options.icons.header);
if(!clickedIsActive){
clicked
.removeClass("ui-state-default ui-corner-all")
.addClass("ui-state-active ui-corner-top")
.children(".ui-icon")
.removeClass(options.icons.header)
.addClass(options.icons.headerSelected);
clicked
.next()
.addClass("ui-accordion-content-active")}
return},
_toggle:function(toShow,toHide,data,clickedIsActive,down){
var self=this,
options=self.options;
self.toShow=toShow;
self.toHide=toHide;
self.data=data;
var complete=function(){
if(!self){
return}
return self._completed.apply(self,arguments)};
self._trigger("changestart",null,self.data);
self.running=toHide.size()===0?toShow.size():toHide.size();
if(options.animated){
var animOptions={};
if(options.collapsible&&clickedIsActive){
animOptions={
toShow:$([]),
toHide:toHide,
complete:complete,
down:down,
autoHeight:options.autoHeight||options.fillSpace
}}else{
animOptions={
toShow:toShow,
toHide:toHide,
complete:complete,
down:down,
autoHeight:options.autoHeight||options.fillSpace
}}
if(!options.proxied){
options.proxied=options.animated}
if(!options.proxiedDuration){
options.proxiedDuration=options.duration}
options.animated=$.isFunction(options.proxied)?
options.proxied(animOptions):
options.proxied;
options.duration=$.isFunction(options.proxiedDuration)?
options.proxiedDuration(animOptions):
options.proxiedDuration;
var animations=$.ui.accordion.animations,
duration=options.duration,
easing=options.animated;
if(easing&&!animations[easing]&&!$.easing[easing]){
easing="slide"}
if(!animations[easing]){
animations[easing]=function(options){
this.slide(options,{
easing:easing,
duration:duration||700
})}}
animations[easing](animOptions)}else{
if(options.collapsible&&clickedIsActive){
toShow.toggle()}else{
toHide.hide();
toShow.show()}
complete(true)}
toHide.prev()
.attr({
"aria-expanded":"false",
"aria-selected":"false",
tabIndex:-1
})
.blur();
toShow.prev()
.attr({
"aria-expanded":"true",
"aria-selected":"true",
tabIndex:0
})
.focus()},
_completed:function(cancel){
this.running=cancel?0:--this.running;
if(this.running){
return}
if(this.options.clearStyle){
this.toShow.add(this.toHide).css({
height:"",
overflow:""
})}
this.toHide.removeClass("ui-accordion-content-active");
if(this.toHide.length){
this.toHide.parent()[0].className=this.toHide.parent()[0].className}
this._trigger("change",null,this.data)}
});
$.extend($.ui.accordion,{
version:"1.8.16",
animations:{
slide:function(options,additions){
options=$.extend({
easing:"swing",
duration:300
},options,additions);
if(!options.toHide.size()){
options.toShow.animate({
height:"show",
paddingTop:"show",
paddingBottom:"show"
},options);
return}
if(!options.toShow.size()){
options.toHide.animate({
height:"hide",
paddingTop:"hide",
paddingBottom:"hide"
},options);
return}
var overflow=options.toShow.css("overflow"),
percentDone=0,
showProps={},
hideProps={},
fxAttrs=["height","paddingTop","paddingBottom"],
originalWidth;
var s=options.toShow;
originalWidth=s[0].style.width;
s.width(parseInt(s.parent().width(),10)
-parseInt(s.css("paddingLeft"),10)
-parseInt(s.css("paddingRight"),10)
-(parseInt(s.css("borderLeftWidth"),10)||0)
-(parseInt(s.css("borderRightWidth"),10)||0));
$.each(fxAttrs,function(i,prop){
hideProps[prop]="hide";
var parts=(""+$.css(options.toShow[0],prop)).match(/^([\d+-.]+)(.*)$/);
showProps[prop]={
value:parts[1],
unit:parts[2]||"px"
}});
options.toShow.css({height:0,overflow:"hidden"}).show();
options.toHide
.filter(":hidden")
.each(options.complete)
.end()
.filter(":visible")
.animate(hideProps,{
step:function(now,settings){
if(settings.prop=="height"){
percentDone=(settings.end-settings.start===0)?0:
(settings.now-settings.start)/(settings.end-settings.start)}
options.toShow[0].style[settings.prop]=
(percentDone*showProps[settings.prop].value)
+showProps[settings.prop].unit},
duration:options.duration,
easing:options.easing,
complete:function(){
if(!options.autoHeight){
options.toShow.css("height","")}
options.toShow.css({
width:originalWidth,
overflow:overflow
});
options.complete()}
})},
bounceslide:function(options){
this.slide(options,{
easing:options.down?"easeOutBounce":"swing",
duration:options.down?1000:200
})}
}
})})(jQuery);
(function($,undefined){
var requestIndex=0;
$.widget("ui.autocomplete",{
options:{
appendTo:"body",
autoFocus:false,
delay:300,
minLength:1,
position:{
my:"left top",
at:"left bottom",
collision:"none"
},
source:null
},
pending:0,
_create:function(){
var self=this,
doc=this.element[0].ownerDocument,
suppressKeyPress;
this.element
.addClass("ui-autocomplete-input")
.attr("autocomplete","off")
.attr({
role:"textbox",
"aria-autocomplete":"list",
"aria-haspopup":"true"
})
.bind("keydown.autocomplete",function(event){
if(self.options.disabled||self.element.propAttr("readOnly")){
return}
suppressKeyPress=false;
var keyCode=$.ui.keyCode;
switch(event.keyCode){
case keyCode.PAGE_UP:
self._move("previousPage",event);
break;
case keyCode.PAGE_DOWN:
self._move("nextPage",event);
break;
case keyCode.UP:
self._move("previous",event);
event.preventDefault();
break;
case keyCode.DOWN:
self._move("next",event);
event.preventDefault();
break;
case keyCode.ENTER:
case keyCode.NUMPAD_ENTER:
if(self.menu.active){
suppressKeyPress=true;
event.preventDefault()}
case keyCode.TAB:
if(!self.menu.active){
return}
self.menu.select(event);
break;
case keyCode.ESCAPE:
self.element.val(self.term);
self.close(event);
break;
default:
clearTimeout(self.searching);
self.searching=setTimeout(function(){
if(self.term!=self.element.val()){
self.selectedItem=null;
self.search(null,event)}
},self.options.delay);
break}
})
.bind("keypress.autocomplete",function(event){
if(suppressKeyPress){
suppressKeyPress=false;
event.preventDefault()}
})
.bind("focus.autocomplete",function(){
if(self.options.disabled){
return}
self.selectedItem=null;
self.previous=self.element.val()})
.bind("blur.autocomplete",function(event){
if(self.options.disabled){
return}
clearTimeout(self.searching);
self.closing=setTimeout(function(){
self.close(event);
self._change(event)},150)});
this._initSource();
this.response=function(){
return self._response.apply(self,arguments)};
this.menu=$("<ul></ul>")
.addClass("ui-autocomplete")
.appendTo($(this.options.appendTo||"body",doc)[0])
.mousedown(function(event){
var menuElement=self.menu.element[0];
if(!$(event.target).closest(".ui-menu-item").length){
setTimeout(function(){
$(document).one('mousedown',function(event){
if(event.target!==self.element[0]&&
event.target!==menuElement&&
!$.ui.contains(menuElement,event.target)){
self.close()}
})},1)}
setTimeout(function(){
clearTimeout(self.closing)},13)})
.menu({
focus:function(event,ui){
var item=ui.item.data("item.autocomplete");
if(false!==self._trigger("focus",event,{item:item})){
if(/^key/.test(event.originalEvent.type)){
self.element.val(item.value)}
}
},
selected:function(event,ui){
var item=ui.item.data("item.autocomplete"),
previous=self.previous;
if(self.element[0]!==doc.activeElement){
self.element.focus();
self.previous=previous;
setTimeout(function(){
self.previous=previous;
self.selectedItem=item},1)}
if(false!==self._trigger("select",event,{item:item})){
self.element.val(item.value)}
self.term=self.element.val();
self.close(event);
self.selectedItem=item},
blur:function(event,ui){
if(self.menu.element.is(":visible")&&
(self.element.val()!==self.term)){
self.element.val(self.term)}
}
})
.zIndex(this.element.zIndex()+1)
.css({top:0,left:0})
.hide()
.data("menu");
if($.fn.bgiframe){
this.menu.element.bgiframe()}
},
destroy:function(){
this.element
.removeClass("ui-autocomplete-input")
.removeAttr("autocomplete")
.removeAttr("role")
.removeAttr("aria-autocomplete")
.removeAttr("aria-haspopup");
this.menu.element.remove();
$.Widget.prototype.destroy.call(this)},
_setOption:function(key,value){
$.Widget.prototype._setOption.apply(this,arguments);
if(key==="source"){
this._initSource()}
if(key==="appendTo"){
this.menu.element.appendTo($(value||"body",this.element[0].ownerDocument)[0])
}
if(key==="disabled"&&value&&this.xhr){
this.xhr.abort()}
},
_initSource:function(){
var self=this,
array,
url;
if($.isArray(this.options.source)){
array=this.options.source;
this.source=function(request,response){
response($.ui.autocomplete.filter(array,request.term))}}else if(typeof this.options.source==="string"){
url=this.options.source;
this.source=function(request,response){
if(self.xhr){
self.xhr.abort()}
self.xhr=$.ajax({
url:url,
data:request,
dataType:"json",
autocompleteRequest:++requestIndex,
success:function(data,status){
if(this.autocompleteRequest===requestIndex){
response(data)}
},
error:function(){
if(this.autocompleteRequest===requestIndex){
response([])}
}
})}}else{
this.source=this.options.source}
},
search:function(value,event){
value=value!=null?value:this.element.val();
this.term=this.element.val();
if(value.length<this.options.minLength){
return this.close(event)}
clearTimeout(this.closing);
if(this._trigger("search",event)===false){
return}
return this._search(value)},
_search:function(value){
this.pending++;
this.element.addClass("ui-autocomplete-loading");
this.source({term:value},this.response)},
_response:function(content){
if(!this.options.disabled&&content&&content.length){
content=this._normalize(content);
this._suggest(content);
this._trigger("open")}else{
this.close()}
this.pending--;
if(!this.pending){
this.element.removeClass("ui-autocomplete-loading")}
},
close:function(event){
clearTimeout(this.closing);
if(this.menu.element.is(":visible")){
this.menu.element.hide();
this.menu.deactivate();
this._trigger("close",event)}
},
_change:function(event){
if(this.previous!==this.element.val()){
this._trigger("change",event,{item:this.selectedItem})}
},
_normalize:function(items){
if(items.length&&items[0].label&&items[0].value){
return items}
return $.map(items,function(item){
if(typeof item==="string"){
return{
label:item,
value:item
}}
return $.extend({
label:item.label||item.value,
value:item.value||item.label
},item)})},
_suggest:function(items){
var ul=this.menu.element
.empty()
.zIndex(this.element.zIndex()+1);
this._renderMenu(ul,items);
this.menu.deactivate();
this.menu.refresh();
ul.show();
this._resizeMenu();
ul.position($.extend({
of:this.element
},this.options.position));
if(this.options.autoFocus){
this.menu.next(new $.Event("mouseover"))}
},
_resizeMenu:function(){
var ul=this.menu.element;
ul.outerWidth(Math.max(
ul.width("").outerWidth(),
this.element.outerWidth()
))},
_renderMenu:function(ul,items){
var self=this;
$.each(items,function(index,item){
self._renderItem(ul,item)})},
_renderItem:function(ul,item){
return $("<li></li>")
.data("item.autocomplete",item)
.append($("<a></a>").text(item.label))
.appendTo(ul)},
_move:function(direction,event){
if(!this.menu.element.is(":visible")){
this.search(null,event);
return}
if(this.menu.first()&&/^previous/.test(direction)||
this.menu.last()&&/^next/.test(direction)){
this.element.val(this.term);
this.menu.deactivate();
return}
this.menu[direction](event)},
widget:function(){
return this.menu.element}
});
$.extend($.ui.autocomplete,{
escapeRegex:function(value){
return value.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},
filter:function(array,term){
var matcher=new RegExp($.ui.autocomplete.escapeRegex(term),"i");
return $.grep(array,function(value){
return matcher.test(value.label||value.value||value)})}
})}(jQuery));
(function($){
$.widget("ui.menu",{
_create:function(){
var self=this;
this.element
.addClass("ui-menu ui-widget ui-widget-content ui-corner-all")
.attr({
role:"listbox",
"aria-activedescendant":"ui-active-menuitem"
})
.click(function(event){
if(!$(event.target).closest(".ui-menu-item a").length){
return}
event.preventDefault();
self.select(event)});
this.refresh()},
refresh:function(){
var self=this;
var items=this.element.children("li:not(.ui-menu-item):has(a)")
.addClass("ui-menu-item")
.attr("role","menuitem");
items.children("a")
.addClass("ui-corner-all")
.attr("tabindex",-1)
.mouseenter(function(event){
self.activate(event,$(this).parent())})
.mouseleave(function(){
self.deactivate()})},
activate:function(event,item){
this.deactivate();
if(this.hasScroll()){
var offset=item.offset().top-this.element.offset().top,
scroll=this.element.scrollTop(),
elementHeight=this.element.height();
if(offset<0){
this.element.scrollTop(scroll+offset)}else if(offset>=elementHeight){
this.element.scrollTop(scroll+offset-elementHeight+item.height())}
}
this.active=item.eq(0)
.children("a")
.addClass("ui-state-hover")
.attr("id","ui-active-menuitem")
.end();
this._trigger("focus",event,{item:item})},
deactivate:function(){
if(!this.active){return}
this.active.children("a")
.removeClass("ui-state-hover")
.removeAttr("id");
this._trigger("blur");
this.active=null},
next:function(event){
this.move("next",".ui-menu-item:first",event)},
previous:function(event){
this.move("prev",".ui-menu-item:last",event)},
first:function(){
return this.active&&!this.active.prevAll(".ui-menu-item").length},
last:function(){
return this.active&&!this.active.nextAll(".ui-menu-item").length},
move:function(direction,edge,event){
if(!this.active){
this.activate(event,this.element.children(edge));
return}
var next=this.active[direction+"All"](".ui-menu-item").eq(0);
if(next.length){
this.activate(event,next)}else{
this.activate(event,this.element.children(edge))}
},
nextPage:function(event){
if(this.hasScroll()){
if(!this.active||this.last()){
this.activate(event,this.element.children(".ui-menu-item:first"));
return}
var base=this.active.offset().top,
height=this.element.height(),
result=this.element.children(".ui-menu-item").filter(function(){
var close=$(this).offset().top-base-height+$(this).height();
return close<10&&close>-10});
if(!result.length){
result=this.element.children(".ui-menu-item:last")}
this.activate(event,result)}else{
this.activate(event,this.element.children(".ui-menu-item")
.filter(!this.active||this.last()?":first":":last"))}
},
previousPage:function(event){
if(this.hasScroll()){
if(!this.active||this.first()){
this.activate(event,this.element.children(".ui-menu-item:last"));
return}
var base=this.active.offset().top,
height=this.element.height();
result=this.element.children(".ui-menu-item").filter(function(){
var close=$(this).offset().top-base+height-$(this).height();
return close<10&&close>-10});
if(!result.length){
result=this.element.children(".ui-menu-item:first")}
this.activate(event,result)}else{
this.activate(event,this.element.children(".ui-menu-item")
.filter(!this.active||this.first()?":last":":first"))}
},
hasScroll:function(){
return this.element.height()<this.element[$.fn.prop?"prop":"attr"]("scrollHeight")},
select:function(event){
this._trigger("selected",event,{item:this.active})}
})}(jQuery));
(function($,undefined){
var lastActive,startXPos,startYPos,clickDragged,
baseClasses="ui-button ui-widget ui-state-default ui-corner-all",
stateClasses="ui-state-hover ui-state-active ",
typeClasses="ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only",
formResetHandler=function(){
var buttons=$(this).find(":ui-button");
setTimeout(function(){
buttons.button("refresh")},1)},
radioGroup=function(radio){
var name=radio.name,
form=radio.form,
radios=$([]);
if(name){
if(form){
radios=$(form).find("[name='"+name+"']")}else{
radios=$("[name='"+name+"']",radio.ownerDocument)
.filter(function(){
return!this.form})}
}
return radios};
$.widget("ui.button",{
options:{
disabled:null,
text:true,
label:null,
icons:{
primary:null,
secondary:null
}
},
_create:function(){
this.element.closest("form")
.unbind("reset.button")
.bind("reset.button",formResetHandler);
if(typeof this.options.disabled!=="boolean"){
this.options.disabled=this.element.propAttr("disabled")}
this._determineButtonType();
this.hasTitle=!!this.buttonElement.attr("title");
var self=this,
options=this.options,
toggleButton=this.type==="checkbox"||this.type==="radio",
hoverClass="ui-state-hover"+(!toggleButton?" ui-state-active":""),
focusClass="ui-state-focus";
if(options.label===null){
options.label=this.buttonElement.html()}
if(this.element.is(":disabled")){
options.disabled=true}
this.buttonElement
.addClass(baseClasses)
.attr("role","button")
.bind("mouseenter.button",function(){
if(options.disabled){
return}
$(this).addClass("ui-state-hover");
if(this===lastActive){
$(this).addClass("ui-state-active")}
})
.bind("mouseleave.button",function(){
if(options.disabled){
return}
$(this).removeClass(hoverClass)})
.bind("click.button",function(event){
if(options.disabled){
event.preventDefault();
event.stopImmediatePropagation()}
});
this.element
.bind("focus.button",function(){
self.buttonElement.addClass(focusClass)})
.bind("blur.button",function(){
self.buttonElement.removeClass(focusClass)});
if(toggleButton){
this.element.bind("change.button",function(){
if(clickDragged){
return}
self.refresh()});
this.buttonElement
.bind("mousedown.button",function(event){
if(options.disabled){
return}
clickDragged=false;
startXPos=event.pageX;
startYPos=event.pageY})
.bind("mouseup.button",function(event){
if(options.disabled){
return}
if(startXPos!==event.pageX||startYPos!==event.pageY){
clickDragged=true}
})}
if(this.type==="checkbox"){
this.buttonElement.bind("click.button",function(){
if(options.disabled||clickDragged){
return false}
$(this).toggleClass("ui-state-active");
self.buttonElement.attr("aria-pressed",self.element[0].checked)})}else if(this.type==="radio"){
this.buttonElement.bind("click.button",function(){
if(options.disabled||clickDragged){
return false}
$(this).addClass("ui-state-active");
self.buttonElement.attr("aria-pressed","true");
var radio=self.element[0];
radioGroup(radio)
.not(radio)
.map(function(){
return $(this).button("widget")[0]})
.removeClass("ui-state-active")
.attr("aria-pressed","false")})}else{
this.buttonElement
.bind("mousedown.button",function(){
if(options.disabled){
return false}
$(this).addClass("ui-state-active");
lastActive=this;
$(document).one("mouseup",function(){
lastActive=null})})
.bind("mouseup.button",function(){
if(options.disabled){
return false}
$(this).removeClass("ui-state-active")})
.bind("keydown.button",function(event){
if(options.disabled){
return false}
if(event.keyCode==$.ui.keyCode.SPACE||event.keyCode==$.ui.keyCode.ENTER){
$(this).addClass("ui-state-active")}
})
.bind("keyup.button",function(){
$(this).removeClass("ui-state-active")});
if(this.buttonElement.is("a")){
this.buttonElement.keyup(function(event){
if(event.keyCode===$.ui.keyCode.SPACE){
$(this).click()}
})}
}
this._setOption("disabled",options.disabled);
this._resetButton()},
_determineButtonType:function(){
if(this.element.is(":checkbox")){
this.type="checkbox"}else if(this.element.is(":radio")){
this.type="radio"}else if(this.element.is("input")){
this.type="input"}else{
this.type="button"}
if(this.type==="checkbox"||this.type==="radio"){
var ancestor=this.element.parents().filter(":last"),
labelSelector="label[for='"+this.element.attr("id")+"']";
this.buttonElement=ancestor.find(labelSelector);
if(!this.buttonElement.length){
ancestor=ancestor.length?ancestor.siblings():this.element.siblings();
this.buttonElement=ancestor.filter(labelSelector);
if(!this.buttonElement.length){
this.buttonElement=ancestor.find(labelSelector)}
}
this.element.addClass("ui-helper-hidden-accessible");
var checked=this.element.is(":checked");
if(checked){
this.buttonElement.addClass("ui-state-active")}
this.buttonElement.attr("aria-pressed",checked)}else{
this.buttonElement=this.element}
},
widget:function(){
return this.buttonElement},
destroy:function(){
this.element
.removeClass("ui-helper-hidden-accessible");
this.buttonElement
.removeClass(baseClasses+" "+stateClasses+" "+typeClasses)
.removeAttr("role")
.removeAttr("aria-pressed")
.html(this.buttonElement.find(".ui-button-text").html());
if(!this.hasTitle){
this.buttonElement.removeAttr("title")}
$.Widget.prototype.destroy.call(this)},
_setOption:function(key,value){
$.Widget.prototype._setOption.apply(this,arguments);
if(key==="disabled"){
if(value){
this.element.propAttr("disabled",true)}else{
this.element.propAttr("disabled",false)}
return}
this._resetButton()},
refresh:function(){
var isDisabled=this.element.is(":disabled");
if(isDisabled!==this.options.disabled){
this._setOption("disabled",isDisabled)}
if(this.type==="radio"){
radioGroup(this.element[0]).each(function(){
if($(this).is(":checked")){
$(this).button("widget")
.addClass("ui-state-active")
.attr("aria-pressed","true")}else{
$(this).button("widget")
.removeClass("ui-state-active")
.attr("aria-pressed","false")}
})}else if(this.type==="checkbox"){
if(this.element.is(":checked")){
this.buttonElement
.addClass("ui-state-active")
.attr("aria-pressed","true")}else{
this.buttonElement
.removeClass("ui-state-active")
.attr("aria-pressed","false")}
}
},
_resetButton:function(){
if(this.type==="input"){
if(this.options.label){
this.element.val(this.options.label)}
return}
var buttonElement=this.buttonElement.removeClass(typeClasses),
buttonText=$("<span></span>")
.addClass("ui-button-text")
.html(this.options.label)
.appendTo(buttonElement.empty())
.text(),
icons=this.options.icons,
multipleIcons=icons.primary&&icons.secondary,
buttonClasses=[];
if(icons.primary||icons.secondary){
if(this.options.text){
buttonClasses.push("ui-button-text-icon"+(multipleIcons?"s":(icons.primary?"-primary":"-secondary")))}
if(icons.primary){
buttonElement.prepend("<span class='ui-button-icon-primary ui-icon "+icons.primary+"'></span>")}
if(icons.secondary){
buttonElement.append("<span class='ui-button-icon-secondary ui-icon "+icons.secondary+"'></span>")}
if(!this.options.text){
buttonClasses.push(multipleIcons?"ui-button-icons-only":"ui-button-icon-only");
if(!this.hasTitle){
buttonElement.attr("title",buttonText)}
}
}else{
buttonClasses.push("ui-button-text-only")}
buttonElement.addClass(buttonClasses.join(" "))}
});
$.widget("ui.buttonset",{
options:{
items:":button, :submit, :reset, :checkbox, :radio, a, :data(button)"
},
_create:function(){
this.element.addClass("ui-buttonset")},
_init:function(){
this.refresh()},
_setOption:function(key,value){
if(key==="disabled"){
this.buttons.button("option",key,value)}
$.Widget.prototype._setOption.apply(this,arguments)},
refresh:function(){
var ltr=this.element.css("direction")==="ltr";
this.buttons=this.element.find(this.options.items)
.filter(":ui-button")
.button("refresh")
.end()
.not(":ui-button")
.button()
.end()
.map(function(){
return $(this).button("widget")[0]})
.removeClass("ui-corner-all ui-corner-left ui-corner-right")
.filter(":first")
.addClass(ltr?"ui-corner-left":"ui-corner-right")
.end()
.filter(":last")
.addClass(ltr?"ui-corner-right":"ui-corner-left")
.end()
.end()},
destroy:function(){
this.element.removeClass("ui-buttonset");
this.buttons
.map(function(){
return $(this).button("widget")[0]})
.removeClass("ui-corner-left ui-corner-right")
.end()
.button("destroy");
$.Widget.prototype.destroy.call(this)}
})}(jQuery));
(function($,undefined){
$.extend($.ui,{datepicker:{version:"1.8.16"}});
var PROP_NAME='datepicker';
var dpuuid=new Date().getTime();
var instActive;
function Datepicker(){
this.debug=false;this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._datepickerShowing=false;this._inDialog=false;this._mainDivId='ui-datepicker-div';this._inlineClass='ui-datepicker-inline';this._appendClass='ui-datepicker-append';this._triggerClass='ui-datepicker-trigger';this._dialogClass='ui-datepicker-dialog';this._disableClass='ui-datepicker-disabled';this._unselectableClass='ui-datepicker-unselectable';this._currentClass='ui-datepicker-current-day';this._dayOverClass='ui-datepicker-days-cell-over';this.regional=[];this.regional['']={closeText:'Done',prevText:'Prev',nextText:'Next',currentText:'Today',monthNames:['January','February','March','April','May','June',
'July','August','September','October','November','December'],monthNamesShort:['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'],dayNames:['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'],dayNamesShort:['Sun','Mon','Tue','Wed','Thu','Fri','Sat'],dayNamesMin:['Su','Mo','Tu','We','Th','Fr','Sa'],weekHeader:'Wk',dateFormat:'mm/dd/yy',firstDay:0,isRTL:false,showMonthAfterYear:false,yearSuffix:''};
this._defaults={showOn:'focus',showAnim:'fadeIn',showOptions:{},defaultDate:null,appendText:'',buttonText:'...',buttonImage:'',buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,yearRange:'c-10:c+10',showOtherMonths:false,selectOtherMonths:false,showWeek:false,calculateWeek:this.iso8601Week,shortYearCutoff:'+10',minDate:null,maxDate:null,duration:'fast',beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:'',altFormat:'',constrainInput:true,showButtonPanel:false,autoSize:false,disabled:false};
$.extend(this._defaults,this.regional['']);
this.dpDiv=bindHover($('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}
$.extend(Datepicker.prototype,{
markerClassName:'hasDatepicker',
maxRows:4,
log:function(){
if(this.debug)
console.log.apply('',arguments)},
_widgetDatepicker:function(){
return this.dpDiv},
setDefaults:function(settings){
extendRemove(this._defaults,settings||{});
return this},
_attachDatepicker:function(target,settings){
var inlineSettings=null;
for(var attrName in this._defaults){
var attrValue=target.getAttribute('date:'+attrName);
if(attrValue){
inlineSettings=inlineSettings||{};
try{
inlineSettings[attrName]=eval(attrValue)}catch(err){
inlineSettings[attrName]=attrValue}
}
}
var nodeName=target.nodeName.toLowerCase();
var inline=(nodeName=='div'||nodeName=='span');
if(!target.id){
this.uuid+=1;
target.id='dp'+this.uuid}
var inst=this._newInst($(target),inline);
inst.settings=$.extend({},settings||{},inlineSettings||{});
if(nodeName=='input'){
this._connectDatepicker(target,inst)}else if(inline){
this._inlineDatepicker(target,inst)}
},
_newInst:function(target,inline){
var id=target[0].id.replace(/([^A-Za-z0-9_-])/g,'\\\\$1');return{id:id,input:target,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:inline,dpDiv:(!inline?this.dpDiv:bindHover($('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')))}},
_connectDatepicker:function(target,inst){
var input=$(target);
inst.append=$([]);
inst.trigger=$([]);
if(input.hasClass(this.markerClassName))
return;
this._attachments(input,inst);
input.addClass(this.markerClassName).keydown(this._doKeyDown).
keypress(this._doKeyPress).keyup(this._doKeyUp).
bind("setData.datepicker",function(event,key,value){
inst.settings[key]=value}).bind("getData.datepicker",function(event,key){
return this._get(inst,key)});
this._autoSize(inst);
$.data(target,PROP_NAME,inst);
if(inst.settings.disabled){
this._disableDatepicker(target)}
},
_attachments:function(input,inst){
var appendText=this._get(inst,'appendText');
var isRTL=this._get(inst,'isRTL');
if(inst.append)
inst.append.remove();
if(appendText){
inst.append=$('<span class="'+this._appendClass+'">'+appendText+'</span>');
input[isRTL?'before':'after'](inst.append)}
input.unbind('focus',this._showDatepicker);
if(inst.trigger)
inst.trigger.remove();
var showOn=this._get(inst,'showOn');
if(showOn=='focus'||showOn=='both')input.focus(this._showDatepicker);
if(showOn=='button'||showOn=='both'){var buttonText=this._get(inst,'buttonText');
var buttonImage=this._get(inst,'buttonImage');
inst.trigger=$(this._get(inst,'buttonImageOnly')?
$('<img/>').addClass(this._triggerClass).
attr({src:buttonImage,alt:buttonText,title:buttonText}):
$('<button type="button"></button>').addClass(this._triggerClass).
html(buttonImage==''?buttonText:$('<img/>').attr(
{src:buttonImage,alt:buttonText,title:buttonText})));
input[isRTL?'before':'after'](inst.trigger);
inst.trigger.click(function(){
if($.datepicker._datepickerShowing&&$.datepicker._lastInput==input[0])
$.datepicker._hideDatepicker();
else
$.datepicker._showDatepicker(input[0]);
return false})}
},
_autoSize:function(inst){
if(this._get(inst,'autoSize')&&!inst.inline){
var date=new Date(2009,12-1,20);var dateFormat=this._get(inst,'dateFormat');
if(dateFormat.match(/[DM]/)){
var findMax=function(names){
var max=0;
var maxI=0;
for(var i=0;i<names.length;i++){
if(names[i].length>max){
max=names[i].length;
maxI=i}
}
return maxI};
date.setMonth(findMax(this._get(inst,(dateFormat.match(/MM/)?
'monthNames':'monthNamesShort'))));
date.setDate(findMax(this._get(inst,(dateFormat.match(/DD/)?
'dayNames':'dayNamesShort')))+20-date.getDay())}
inst.input.attr('size',this._formatDate(inst,date).length)}
},
_inlineDatepicker:function(target,inst){
var divSpan=$(target);
if(divSpan.hasClass(this.markerClassName))
return;
divSpan.addClass(this.markerClassName).append(inst.dpDiv).
bind("setData.datepicker",function(event,key,value){
inst.settings[key]=value}).bind("getData.datepicker",function(event,key){
return this._get(inst,key)});
$.data(target,PROP_NAME,inst);
this._setDate(inst,this._getDefaultDate(inst),true);
this._updateDatepicker(inst);
this._updateAlternate(inst);
if(inst.settings.disabled){
this._disableDatepicker(target)}
inst.dpDiv.css("display","block")},
_dialogDatepicker:function(input,date,onSelect,settings,pos){
var inst=this._dialogInst;if(!inst){
this.uuid+=1;
var id='dp'+this.uuid;
this._dialogInput=$('<input type="text" id="'+id+
'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>');
this._dialogInput.keydown(this._doKeyDown);
$('body').append(this._dialogInput);
inst=this._dialogInst=this._newInst(this._dialogInput,false);
inst.settings={};
$.data(this._dialogInput[0],PROP_NAME,inst)}
extendRemove(inst.settings,settings||{});
date=(date&&date.constructor==Date?this._formatDate(inst,date):date);
this._dialogInput.val(date);
this._pos=(pos?(pos.length?pos:[pos.pageX,pos.pageY]):null);
if(!this._pos){
var browserWidth=document.documentElement.clientWidth;
var browserHeight=document.documentElement.clientHeight;
var scrollX=document.documentElement.scrollLeft||document.body.scrollLeft;
var scrollY=document.documentElement.scrollTop||document.body.scrollTop;
this._pos=[(browserWidth/2)-100+scrollX,(browserHeight/2)-150+scrollY]}
this._dialogInput.css('left',(this._pos[0]+20)+'px').css('top',this._pos[1]+'px');
inst.settings.onSelect=onSelect;
this._inDialog=true;
this.dpDiv.addClass(this._dialogClass);
this._showDatepicker(this._dialogInput[0]);
if($.blockUI)
$.blockUI(this.dpDiv);
$.data(this._dialogInput[0],PROP_NAME,inst);
return this},
_destroyDatepicker:function(target){
var $target=$(target);
var inst=$.data(target,PROP_NAME);
if(!$target.hasClass(this.markerClassName)){
return}
var nodeName=target.nodeName.toLowerCase();
$.removeData(target,PROP_NAME);
if(nodeName=='input'){
inst.append.remove();
inst.trigger.remove();
$target.removeClass(this.markerClassName).
unbind('focus',this._showDatepicker).
unbind('keydown',this._doKeyDown).
unbind('keypress',this._doKeyPress).
unbind('keyup',this._doKeyUp)}else if(nodeName=='div'||nodeName=='span')
$target.removeClass(this.markerClassName).empty()},
_enableDatepicker:function(target){
var $target=$(target);
var inst=$.data(target,PROP_NAME);
if(!$target.hasClass(this.markerClassName)){
return}
var nodeName=target.nodeName.toLowerCase();
if(nodeName=='input'){
target.disabled=false;
inst.trigger.filter('button').
each(function(){this.disabled=false}).end().
filter('img').css({opacity:'1.0',cursor:''})}
else if(nodeName=='div'||nodeName=='span'){
var inline=$target.children('.'+this._inlineClass);
inline.children().removeClass('ui-state-disabled');
inline.find("select.ui-datepicker-month, select.ui-datepicker-year").
removeAttr("disabled")}
this._disabledInputs=$.map(this._disabledInputs,
function(value){return(value==target?null:value)})},
_disableDatepicker:function(target){
var $target=$(target);
var inst=$.data(target,PROP_NAME);
if(!$target.hasClass(this.markerClassName)){
return}
var nodeName=target.nodeName.toLowerCase();
if(nodeName=='input'){
target.disabled=true;
inst.trigger.filter('button').
each(function(){this.disabled=true}).end().
filter('img').css({opacity:'0.5',cursor:'default'})}
else if(nodeName=='div'||nodeName=='span'){
var inline=$target.children('.'+this._inlineClass);
inline.children().addClass('ui-state-disabled');
inline.find("select.ui-datepicker-month, select.ui-datepicker-year").
attr("disabled","disabled")}
this._disabledInputs=$.map(this._disabledInputs,
function(value){return(value==target?null:value)});this._disabledInputs[this._disabledInputs.length]=target},
_isDisabledDatepicker:function(target){
if(!target){
return false}
for(var i=0;i<this._disabledInputs.length;i++){
if(this._disabledInputs[i]==target)
return true}
return false},
_getInst:function(target){
try{
return $.data(target,PROP_NAME)}
catch(err){
throw'Missing instance data for this datepicker'}
},
_optionDatepicker:function(target,name,value){
var inst=this._getInst(target);
if(arguments.length==2&&typeof name=='string'){
return(name=='defaults'?$.extend({},$.datepicker._defaults):
(inst?(name=='all'?$.extend({},inst.settings):
this._get(inst,name)):null))}
var settings=name||{};
if(typeof name=='string'){
settings={};
settings[name]=value}
if(inst){
if(this._curInst==inst){
this._hideDatepicker()}
var date=this._getDateDatepicker(target,true);
var minDate=this._getMinMaxDate(inst,'min');
var maxDate=this._getMinMaxDate(inst,'max');
extendRemove(inst.settings,settings);
if(minDate!==null&&settings['dateFormat']!==undefined&&settings['minDate']===undefined)
inst.settings.minDate=this._formatDate(inst,minDate);
if(maxDate!==null&&settings['dateFormat']!==undefined&&settings['maxDate']===undefined)
inst.settings.maxDate=this._formatDate(inst,maxDate);
this._attachments($(target),inst);
this._autoSize(inst);
this._setDate(inst,date);
this._updateAlternate(inst);
this._updateDatepicker(inst)}
},
_changeDatepicker:function(target,name,value){
this._optionDatepicker(target,name,value)},
_refreshDatepicker:function(target){
var inst=this._getInst(target);
if(inst){
this._updateDatepicker(inst)}
},
_setDateDatepicker:function(target,date){
var inst=this._getInst(target);
if(inst){
this._setDate(inst,date);
this._updateDatepicker(inst);
this._updateAlternate(inst)}
},
_getDateDatepicker:function(target,noDefault){
var inst=this._getInst(target);
if(inst&&!inst.inline)
this._setDateFromField(inst,noDefault);
return(inst?this._getDate(inst):null)},
_doKeyDown:function(event){
var inst=$.datepicker._getInst(event.target);
var handled=true;
var isRTL=inst.dpDiv.is('.ui-datepicker-rtl');
inst._keyEvent=true;
if($.datepicker._datepickerShowing)
switch(event.keyCode){
case 9:$.datepicker._hideDatepicker();
handled=false;
break;case 13:var sel=$('td.'+$.datepicker._dayOverClass+':not(.'+
$.datepicker._currentClass+')',inst.dpDiv);
if(sel[0])
$.datepicker._selectDay(event.target,inst.selectedMonth,inst.selectedYear,sel[0]);
var onSelect=$.datepicker._get(inst,'onSelect');
if(onSelect){
var dateStr=$.datepicker._formatDate(inst);
onSelect.apply((inst.input?inst.input[0]:null),[dateStr,inst])}
else
$.datepicker._hideDatepicker();
return false;break;case 27:$.datepicker._hideDatepicker();
break;case 33:$.datepicker._adjustDate(event.target,(event.ctrlKey?
-$.datepicker._get(inst,'stepBigMonths'):
-$.datepicker._get(inst,'stepMonths')),'M');
break;case 34:$.datepicker._adjustDate(event.target,(event.ctrlKey?
+$.datepicker._get(inst,'stepBigMonths'):
+$.datepicker._get(inst,'stepMonths')),'M');
break;case 35:if(event.ctrlKey||event.metaKey)$.datepicker._clearDate(event.target);
handled=event.ctrlKey||event.metaKey;
break;case 36:if(event.ctrlKey||event.metaKey)$.datepicker._gotoToday(event.target);
handled=event.ctrlKey||event.metaKey;
break;case 37:if(event.ctrlKey||event.metaKey)$.datepicker._adjustDate(event.target,(isRTL?+1:-1),'D');
handled=event.ctrlKey||event.metaKey;
if(event.originalEvent.altKey)$.datepicker._adjustDate(event.target,(event.ctrlKey?
-$.datepicker._get(inst,'stepBigMonths'):
-$.datepicker._get(inst,'stepMonths')),'M');
break;
case 38:if(event.ctrlKey||event.metaKey)$.datepicker._adjustDate(event.target,-7,'D');
handled=event.ctrlKey||event.metaKey;
break;case 39:if(event.ctrlKey||event.metaKey)$.datepicker._adjustDate(event.target,(isRTL?-1:+1),'D');
handled=event.ctrlKey||event.metaKey;
if(event.originalEvent.altKey)$.datepicker._adjustDate(event.target,(event.ctrlKey?
+$.datepicker._get(inst,'stepBigMonths'):
+$.datepicker._get(inst,'stepMonths')),'M');
break;
case 40:if(event.ctrlKey||event.metaKey)$.datepicker._adjustDate(event.target,+7,'D');
handled=event.ctrlKey||event.metaKey;
break;default:handled=false}
else if(event.keyCode==36&&event.ctrlKey)$.datepicker._showDatepicker(this);
else{
handled=false}
if(handled){
event.preventDefault();
event.stopPropagation()}
},
_doKeyPress:function(event){
var inst=$.datepicker._getInst(event.target);
if($.datepicker._get(inst,'constrainInput')){
var chars=$.datepicker._possibleChars($.datepicker._get(inst,'dateFormat'));
var chr=String.fromCharCode(event.charCode==undefined?event.keyCode:event.charCode);
return event.ctrlKey||event.metaKey||(chr<' '||!chars||chars.indexOf(chr)>-1)}
},
_doKeyUp:function(event){
var inst=$.datepicker._getInst(event.target);
if(inst.input.val()!=inst.lastVal){
try{
var date=$.datepicker.parseDate($.datepicker._get(inst,'dateFormat'),
(inst.input?inst.input.val():null),
$.datepicker._getFormatConfig(inst));
if(date){$.datepicker._setDateFromField(inst);
$.datepicker._updateAlternate(inst);
$.datepicker._updateDatepicker(inst)}
}
catch(event){
$.datepicker.log(event)}
}
return true},
_showDatepicker:function(input){
input=input.target||input;
if(input.nodeName.toLowerCase()!='input')input=$('input',input.parentNode)[0];
if($.datepicker._isDisabledDatepicker(input)||$.datepicker._lastInput==input)return;
var inst=$.datepicker._getInst(input);
if($.datepicker._curInst&&$.datepicker._curInst!=inst){
if($.datepicker._datepickerShowing){
$.datepicker._triggerOnClose($.datepicker._curInst)}
$.datepicker._curInst.dpDiv.stop(true,true)}
var beforeShow=$.datepicker._get(inst,'beforeShow');
var beforeShowSettings=beforeShow?beforeShow.apply(input,[input,inst]):{};
if(beforeShowSettings===false){
return}
extendRemove(inst.settings,beforeShowSettings);
inst.lastVal=null;
$.datepicker._lastInput=input;
$.datepicker._setDateFromField(inst);
if($.datepicker._inDialog)input.value='';
if(!$.datepicker._pos){$.datepicker._pos=$.datepicker._findPos(input);
$.datepicker._pos[1]+=input.offsetHeight}
var isFixed=false;
$(input).parents().each(function(){
isFixed|=$(this).css('position')=='fixed';
return!isFixed});
if(isFixed&&$.browser.opera){$.datepicker._pos[0]-=document.documentElement.scrollLeft;
$.datepicker._pos[1]-=document.documentElement.scrollTop}
var offset={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};
$.datepicker._pos=null;
inst.dpDiv.empty();
inst.dpDiv.css({position:'absolute',display:'block',top:'-1000px'});
$.datepicker._updateDatepicker(inst);
offset=$.datepicker._checkOffset(inst,offset,isFixed);
inst.dpDiv.css({position:($.datepicker._inDialog&&$.blockUI?
'static':(isFixed?'fixed':'absolute')),display:'none',
left:offset.left+'px',top:offset.top+'px'});
if(!inst.inline){
var showAnim=$.datepicker._get(inst,'showAnim');
var duration=$.datepicker._get(inst,'duration');
var postProcess=function(){
var cover=inst.dpDiv.find('iframe.ui-datepicker-cover');if(!!cover.length){
var borders=$.datepicker._getBorders(inst.dpDiv);
cover.css({left:-borders[0],top:-borders[1],
width:inst.dpDiv.outerWidth(),height:inst.dpDiv.outerHeight()})}
};
inst.dpDiv.zIndex($(input).zIndex()+1);
$.datepicker._datepickerShowing=true;
if($.effects&&$.effects[showAnim])
inst.dpDiv.show(showAnim,$.datepicker._get(inst,'showOptions'),duration,postProcess);
else
inst.dpDiv[showAnim||'show']((showAnim?duration:null),postProcess);
if(!showAnim||!duration)
postProcess();
if(inst.input.is(':visible')&&!inst.input.is(':disabled'))
inst.input.focus();
$.datepicker._curInst=inst}
},
_updateDatepicker:function(inst){
var self=this;
self.maxRows=4;var borders=$.datepicker._getBorders(inst.dpDiv);
instActive=inst;inst.dpDiv.empty().append(this._generateHTML(inst));
var cover=inst.dpDiv.find('iframe.ui-datepicker-cover');if(!!cover.length){cover.css({left:-borders[0],top:-borders[1],width:inst.dpDiv.outerWidth(),height:inst.dpDiv.outerHeight()})
}
inst.dpDiv.find('.'+this._dayOverClass+' a').mouseover();
var numMonths=this._getNumberOfMonths(inst);
var cols=numMonths[1];
var width=17;
inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width('');
if(cols>1)
inst.dpDiv.addClass('ui-datepicker-multi-'+cols).css('width',(width*cols)+'em');
inst.dpDiv[(numMonths[0]!=1||numMonths[1]!=1?'add':'remove')+
'Class']('ui-datepicker-multi');
inst.dpDiv[(this._get(inst,'isRTL')?'add':'remove')+
'Class']('ui-datepicker-rtl');
if(inst==$.datepicker._curInst&&$.datepicker._datepickerShowing&&inst.input&&
inst.input.is(':visible')&&!inst.input.is(':disabled')&&inst.input[0]!=document.activeElement)
inst.input.focus();
if(inst.yearshtml){
var origyearshtml=inst.yearshtml;
setTimeout(function(){
if(origyearshtml===inst.yearshtml&&inst.yearshtml){
inst.dpDiv.find('select.ui-datepicker-year:first').replaceWith(inst.yearshtml)}
origyearshtml=inst.yearshtml=null},0)}
},
_getBorders:function(elem){
var convert=function(value){
return{thin:1,medium:2,thick:3}[value]||value};
return[parseFloat(convert(elem.css('border-left-width'))),
parseFloat(convert(elem.css('border-top-width')))]},
_checkOffset:function(inst,offset,isFixed){
var dpWidth=inst.dpDiv.outerWidth();
var dpHeight=inst.dpDiv.outerHeight();
var inputWidth=inst.input?inst.input.outerWidth():0;
var inputHeight=inst.input?inst.input.outerHeight():0;
var viewWidth=document.documentElement.clientWidth+$(document).scrollLeft();
var viewHeight=document.documentElement.clientHeight+$(document).scrollTop();
offset.left-=(this._get(inst,'isRTL')?(dpWidth-inputWidth):0);
offset.left-=(isFixed&&offset.left==inst.input.offset().left)?$(document).scrollLeft():0;
offset.top-=(isFixed&&offset.top==(inst.input.offset().top+inputHeight))?$(document).scrollTop():0;
offset.left-=Math.min(offset.left,(offset.left+dpWidth>viewWidth&&viewWidth>dpWidth)?
Math.abs(offset.left+dpWidth-viewWidth):0);
offset.top-=Math.min(offset.top,(offset.top+dpHeight>viewHeight&&viewHeight>dpHeight)?
Math.abs(dpHeight+inputHeight):0);
return offset},
_findPos:function(obj){
var inst=this._getInst(obj);
var isRTL=this._get(inst,'isRTL');
while(obj&&(obj.type=='hidden'||obj.nodeType!=1||$.expr.filters.hidden(obj))){
obj=obj[isRTL?'previousSibling':'nextSibling']}
var position=$(obj).offset();
return[position.left,position.top]},
_triggerOnClose:function(inst){
var onClose=this._get(inst,'onClose');
if(onClose)
onClose.apply((inst.input?inst.input[0]:null),
[(inst.input?inst.input.val():''),inst])},
_hideDatepicker:function(input){
var inst=this._curInst;
if(!inst||(input&&inst!=$.data(input,PROP_NAME)))
return;
if(this._datepickerShowing){
var showAnim=this._get(inst,'showAnim');
var duration=this._get(inst,'duration');
var postProcess=function(){
$.datepicker._tidyDialog(inst);
this._curInst=null};
if($.effects&&$.effects[showAnim])
inst.dpDiv.hide(showAnim,$.datepicker._get(inst,'showOptions'),duration,postProcess);
else
inst.dpDiv[(showAnim=='slideDown'?'slideUp':
(showAnim=='fadeIn'?'fadeOut':'hide'))]((showAnim?duration:null),postProcess);
if(!showAnim)
postProcess();
$.datepicker._triggerOnClose(inst);
this._datepickerShowing=false;
this._lastInput=null;
if(this._inDialog){
this._dialogInput.css({position:'absolute',left:'0',top:'-100px'});
if($.blockUI){
$.unblockUI();
$('body').append(this.dpDiv)}
}
this._inDialog=false}
},
_tidyDialog:function(inst){
inst.dpDiv.removeClass(this._dialogClass).unbind('.ui-datepicker-calendar')},
_checkExternalClick:function(event){
if(!$.datepicker._curInst)
return;
var $target=$(event.target);
if($target[0].id!=$.datepicker._mainDivId&&
$target.parents('#'+$.datepicker._mainDivId).length==0&&
!$target.hasClass($.datepicker.markerClassName)&&
!$target.hasClass($.datepicker._triggerClass)&&
$.datepicker._datepickerShowing&&!($.datepicker._inDialog&&$.blockUI))
$.datepicker._hideDatepicker()},
_adjustDate:function(id,offset,period){
var target=$(id);
var inst=this._getInst(target[0]);
if(this._isDisabledDatepicker(target[0])){
return}
this._adjustInstDate(inst,offset+
(period=='M'?this._get(inst,'showCurrentAtPos'):0),period);
this._updateDatepicker(inst)},
_gotoToday:function(id){
var target=$(id);
var inst=this._getInst(target[0]);
if(this._get(inst,'gotoCurrent')&&inst.currentDay){
inst.selectedDay=inst.currentDay;
inst.drawMonth=inst.selectedMonth=inst.currentMonth;
inst.drawYear=inst.selectedYear=inst.currentYear}
else{
var date=new Date();
inst.selectedDay=date.getDate();
inst.drawMonth=inst.selectedMonth=date.getMonth();
inst.drawYear=inst.selectedYear=date.getFullYear()}
this._notifyChange(inst);
this._adjustDate(target)},
_selectMonthYear:function(id,select,period){
var target=$(id);
var inst=this._getInst(target[0]);
inst['selected'+(period=='M'?'Month':'Year')]=
inst['draw'+(period=='M'?'Month':'Year')]=
parseInt(select.options[select.selectedIndex].value,10);
this._notifyChange(inst);
this._adjustDate(target)},
_selectDay:function(id,month,year,td){
var target=$(id);
if($(td).hasClass(this._unselectableClass)||this._isDisabledDatepicker(target[0])){
return}
var inst=this._getInst(target[0]);
inst.selectedDay=inst.currentDay=$('a',td).html();
inst.selectedMonth=inst.currentMonth=month;
inst.selectedYear=inst.currentYear=year;
this._selectDate(id,this._formatDate(inst,
inst.currentDay,inst.currentMonth,inst.currentYear))},
_clearDate:function(id){
var target=$(id);
var inst=this._getInst(target[0]);
this._selectDate(target,'')},
_selectDate:function(id,dateStr){
var target=$(id);
var inst=this._getInst(target[0]);
dateStr=(dateStr!=null?dateStr:this._formatDate(inst));
if(inst.input)
inst.input.val(dateStr);
this._updateAlternate(inst);
var onSelect=this._get(inst,'onSelect');
if(onSelect)
onSelect.apply((inst.input?inst.input[0]:null),[dateStr,inst]);else if(inst.input)
inst.input.trigger('change');if(inst.inline)
this._updateDatepicker(inst);
else{
this._hideDatepicker();
this._lastInput=inst.input[0];
if(typeof(inst.input[0])!='object')
inst.input.focus();this._lastInput=null}
},
_updateAlternate:function(inst){
var altField=this._get(inst,'altField');
if(altField){var altFormat=this._get(inst,'altFormat')||this._get(inst,'dateFormat');
var date=this._getDate(inst);
var dateStr=this.formatDate(altFormat,date,this._getFormatConfig(inst));
$(altField).each(function(){$(this).val(dateStr)})}
},
noWeekends:function(date){
var day=date.getDay();
return[(day>0&&day<6),'']},
iso8601Week:function(date){
var checkDate=new Date(date.getTime());
checkDate.setDate(checkDate.getDate()+4-(checkDate.getDay()||7));
var time=checkDate.getTime();
checkDate.setMonth(0);checkDate.setDate(1);
return Math.floor(Math.round((time-checkDate)/86400000)/7)+1},
parseDate:function(format,value,settings){
if(format==null||value==null)
throw'Invalid arguments';
value=(typeof value=='object'?value.toString():value+'');
if(value=='')
return null;
var shortYearCutoff=(settings?settings.shortYearCutoff:null)||this._defaults.shortYearCutoff;
shortYearCutoff=(typeof shortYearCutoff!='string'?shortYearCutoff:
new Date().getFullYear()%100+parseInt(shortYearCutoff,10));
var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;
var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;
var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;
var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;
var year=-1;
var month=-1;
var day=-1;
var doy=-1;
var literal=false;
var lookAhead=function(match){
var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);
if(matches)
iFormat++;
return matches};
var getNumber=function(match){
var isDoubled=lookAhead(match);
var size=(match=='@'?14:(match=='!'?20:
(match=='y'&&isDoubled?4:(match=='o'?3:2))));
var digits=new RegExp('^\\d{1,'+size+'}');
var num=value.substring(iValue).match(digits);
if(!num)
throw'Missing number at position '+iValue;
iValue+=num[0].length;
return parseInt(num[0],10)};
var getName=function(match,shortNames,longNames){
var names=$.map(lookAhead(match)?longNames:shortNames,function(v,k){
return[[k,v]]}).sort(function(a,b){
return-(a[1].length-b[1].length)});
var index=-1;
$.each(names,function(i,pair){
var name=pair[1];
if(value.substr(iValue,name.length).toLowerCase()==name.toLowerCase()){
index=pair[0];
iValue+=name.length;
return false}
});
if(index!=-1)
return index+1;
else
throw'Unknown name at position '+iValue};
var checkLiteral=function(){
if(value.charAt(iValue)!=format.charAt(iFormat))
throw'Unexpected literal at position '+iValue;
iValue++};
var iValue=0;
for(var iFormat=0;iFormat<format.length;iFormat++){
if(literal)
if(format.charAt(iFormat)=="'"&&!lookAhead("'"))
literal=false;
else
checkLiteral();
else
switch(format.charAt(iFormat)){
case'd':
day=getNumber('d');
break;
case'D':
getName('D',dayNamesShort,dayNames);
break;
case'o':
doy=getNumber('o');
break;
case'm':
month=getNumber('m');
break;
case'M':
month=getName('M',monthNamesShort,monthNames);
break;
case'y':
year=getNumber('y');
break;
case'@':
var date=new Date(getNumber('@'));
year=date.getFullYear();
month=date.getMonth()+1;
day=date.getDate();
break;
case'!':
var date=new Date((getNumber('!')-this._ticksTo1970)/10000);
year=date.getFullYear();
month=date.getMonth()+1;
day=date.getDate();
break;
case"'":
if(lookAhead("'"))
checkLiteral();
else
literal=true;
break;
default:
checkLiteral()}
}
if(iValue<value.length){
throw"Extra/unparsed characters found in date: "+value.substring(iValue)}
if(year==-1)
year=new Date().getFullYear();
else if(year<100)
year+=new Date().getFullYear()-new Date().getFullYear()%100+
(year<=shortYearCutoff?0:-100);
if(doy>-1){
month=1;
day=doy;
do{
var dim=this._getDaysInMonth(year,month-1);
if(day<=dim)
break;
month++;
day-=dim}while(true)}
var date=this._daylightSavingAdjust(new Date(year,month-1,day));
if(date.getFullYear()!=year||date.getMonth()+1!=month||date.getDate()!=day)
throw'Invalid date';return date},
ATOM:'yy-mm-dd',COOKIE:'D, dd M yy',
ISO_8601:'yy-mm-dd',
RFC_822:'D, d M y',
RFC_850:'DD, dd-M-y',
RFC_1036:'D, d M y',
RFC_1123:'D, d M yy',
RFC_2822:'D, d M yy',
RSS:'D, d M y',TICKS:'!',
TIMESTAMP:'@',
W3C:'yy-mm-dd',
_ticksTo1970:(((1970-1)*365+Math.floor(1970/4)-Math.floor(1970/100)+
Math.floor(1970/400))*24*60*60*10000000),
formatDate:function(format,date,settings){
if(!date)
return'';
var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;
var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;
var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;
var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;
var lookAhead=function(match){
var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);
if(matches)
iFormat++;
return matches};
var formatNumber=function(match,value,len){
var num=''+value;
if(lookAhead(match))
while(num.length<len)
num='0'+num;
return num};
var formatName=function(match,value,shortNames,longNames){
return(lookAhead(match)?longNames[value]:shortNames[value])};
var output='';
var literal=false;
if(date)
for(var iFormat=0;iFormat<format.length;iFormat++){
if(literal)
if(format.charAt(iFormat)=="'"&&!lookAhead("'"))
literal=false;
else
output+=format.charAt(iFormat);
else
switch(format.charAt(iFormat)){
case'd':
output+=formatNumber('d',date.getDate(),2);
break;
case'D':
output+=formatName('D',date.getDay(),dayNamesShort,dayNames);
break;
case'o':
output+=formatNumber('o',
Math.round((new Date(date.getFullYear(),date.getMonth(),date.getDate()).getTime()-new Date(date.getFullYear(),0,0).getTime())/86400000),3);
break;
case'm':
output+=formatNumber('m',date.getMonth()+1,2);
break;
case'M':
output+=formatName('M',date.getMonth(),monthNamesShort,monthNames);
break;
case'y':
output+=(lookAhead('y')?date.getFullYear():
(date.getYear()%100<10?'0':'')+date.getYear()%100);
break;
case'@':
output+=date.getTime();
break;
case'!':
output+=date.getTime()*10000+this._ticksTo1970;
break;
case"'":
if(lookAhead("'"))
output+="'";
else
literal=true;
break;
default:
output+=format.charAt(iFormat)}
}
return output},
_possibleChars:function(format){
var chars='';
var literal=false;
var lookAhead=function(match){
var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);
if(matches)
iFormat++;
return matches};
for(var iFormat=0;iFormat<format.length;iFormat++)
if(literal)
if(format.charAt(iFormat)=="'"&&!lookAhead("'"))
literal=false;
else
chars+=format.charAt(iFormat);
else
switch(format.charAt(iFormat)){
case'd':case'm':case'y':case'@':
chars+='0123456789';
break;
case'D':case'M':
return null;case"'":
if(lookAhead("'"))
chars+="'";
else
literal=true;
break;
default:
chars+=format.charAt(iFormat)}
return chars},
_get:function(inst,name){
return inst.settings[name]!==undefined?
inst.settings[name]:this._defaults[name]},
_setDateFromField:function(inst,noDefault){
if(inst.input.val()==inst.lastVal){
return}
var dateFormat=this._get(inst,'dateFormat');
var dates=inst.lastVal=inst.input?inst.input.val():null;
var date,defaultDate;
date=defaultDate=this._getDefaultDate(inst);
var settings=this._getFormatConfig(inst);
try{
date=this.parseDate(dateFormat,dates,settings)||defaultDate}catch(event){
this.log(event);
dates=(noDefault?'':dates)}
inst.selectedDay=date.getDate();
inst.drawMonth=inst.selectedMonth=date.getMonth();
inst.drawYear=inst.selectedYear=date.getFullYear();
inst.currentDay=(dates?date.getDate():0);
inst.currentMonth=(dates?date.getMonth():0);
inst.currentYear=(dates?date.getFullYear():0);
this._adjustInstDate(inst)},
_getDefaultDate:function(inst){
return this._restrictMinMax(inst,
this._determineDate(inst,this._get(inst,'defaultDate'),new Date()))},
_determineDate:function(inst,date,defaultDate){
var offsetNumeric=function(offset){
var date=new Date();
date.setDate(date.getDate()+offset);
return date};
var offsetString=function(offset){
try{
return $.datepicker.parseDate($.datepicker._get(inst,'dateFormat'),
offset,$.datepicker._getFormatConfig(inst))}
catch(e){
}
var date=(offset.toLowerCase().match(/^c/)?
$.datepicker._getDate(inst):null)||new Date();
var year=date.getFullYear();
var month=date.getMonth();
var day=date.getDate();
var pattern=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g;
var matches=pattern.exec(offset);
while(matches){
switch(matches[2]||'d'){
case'd':case'D':
day+=parseInt(matches[1],10);break;
case'w':case'W':
day+=parseInt(matches[1],10)*7;break;
case'm':case'M':
month+=parseInt(matches[1],10);
day=Math.min(day,$.datepicker._getDaysInMonth(year,month));
break;
case'y':case'Y':
year+=parseInt(matches[1],10);
day=Math.min(day,$.datepicker._getDaysInMonth(year,month));
break}
matches=pattern.exec(offset)}
return new Date(year,month,day)};
var newDate=(date==null||date===''?defaultDate:(typeof date=='string'?offsetString(date):
(typeof date=='number'?(isNaN(date)?defaultDate:offsetNumeric(date)):new Date(date.getTime()))));
newDate=(newDate&&newDate.toString()=='Invalid Date'?defaultDate:newDate);
if(newDate){
newDate.setHours(0);
newDate.setMinutes(0);
newDate.setSeconds(0);
newDate.setMilliseconds(0)}
return this._daylightSavingAdjust(newDate)},
_daylightSavingAdjust:function(date){
if(!date)return null;
date.setHours(date.getHours()>12?date.getHours()+2:0);
return date},
_setDate:function(inst,date,noChange){
var clear=!date;
var origMonth=inst.selectedMonth;
var origYear=inst.selectedYear;
var newDate=this._restrictMinMax(inst,this._determineDate(inst,date,new Date()));
inst.selectedDay=inst.currentDay=newDate.getDate();
inst.drawMonth=inst.selectedMonth=inst.currentMonth=newDate.getMonth();
inst.drawYear=inst.selectedYear=inst.currentYear=newDate.getFullYear();
if((origMonth!=inst.selectedMonth||origYear!=inst.selectedYear)&&!noChange)
this._notifyChange(inst);
this._adjustInstDate(inst);
if(inst.input){
inst.input.val(clear?'':this._formatDate(inst))}
},
_getDate:function(inst){
var startDate=(!inst.currentYear||(inst.input&&inst.input.val()=='')?null:
this._daylightSavingAdjust(new Date(
inst.currentYear,inst.currentMonth,inst.currentDay)));
return startDate},
_generateHTML:function(inst){
var today=new Date();
today=this._daylightSavingAdjust(
new Date(today.getFullYear(),today.getMonth(),today.getDate()));var isRTL=this._get(inst,'isRTL');
var showButtonPanel=this._get(inst,'showButtonPanel');
var hideIfNoPrevNext=this._get(inst,'hideIfNoPrevNext');
var navigationAsDateFormat=this._get(inst,'navigationAsDateFormat');
var numMonths=this._getNumberOfMonths(inst);
var showCurrentAtPos=this._get(inst,'showCurrentAtPos');
var stepMonths=this._get(inst,'stepMonths');
var isMultiMonth=(numMonths[0]!=1||numMonths[1]!=1);
var currentDate=this._daylightSavingAdjust((!inst.currentDay?new Date(9999,9,9):
new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));
var minDate=this._getMinMaxDate(inst,'min');
var maxDate=this._getMinMaxDate(inst,'max');
var drawMonth=inst.drawMonth-showCurrentAtPos;
var drawYear=inst.drawYear;
if(drawMonth<0){
drawMonth+=12;
drawYear--}
if(maxDate){
var maxDraw=this._daylightSavingAdjust(new Date(maxDate.getFullYear(),
maxDate.getMonth()-(numMonths[0]*numMonths[1])+1,maxDate.getDate()));
maxDraw=(minDate&&maxDraw<minDate?minDate:maxDraw);
while(this._daylightSavingAdjust(new Date(drawYear,drawMonth,1))>maxDraw){
drawMonth--;
if(drawMonth<0){
drawMonth=11;
drawYear--}
}
}
inst.drawMonth=drawMonth;
inst.drawYear=drawYear;
var prevText=this._get(inst,'prevText');
prevText=(!navigationAsDateFormat?prevText:this.formatDate(prevText,
this._daylightSavingAdjust(new Date(drawYear,drawMonth-stepMonths,1)),
this._getFormatConfig(inst)));
var prev=(this._canAdjustMonth(inst,-1,drawYear,drawMonth)?
'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_'+dpuuid+
'.datepicker._adjustDate(\'#'+inst.id+'\', -'+stepMonths+', \'M\');"'+
' title="'+prevText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?'e':'w')+'">'+prevText+'</span></a>':
(hideIfNoPrevNext?'':'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+prevText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?'e':'w')+'">'+prevText+'</span></a>'));
var nextText=this._get(inst,'nextText');
nextText=(!navigationAsDateFormat?nextText:this.formatDate(nextText,
this._daylightSavingAdjust(new Date(drawYear,drawMonth+stepMonths,1)),
this._getFormatConfig(inst)));
var next=(this._canAdjustMonth(inst,+1,drawYear,drawMonth)?
'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_'+dpuuid+
'.datepicker._adjustDate(\'#'+inst.id+'\', +'+stepMonths+', \'M\');"'+
' title="'+nextText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?'w':'e')+'">'+nextText+'</span></a>':
(hideIfNoPrevNext?'':'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+nextText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?'w':'e')+'">'+nextText+'</span></a>'));
var currentText=this._get(inst,'currentText');
var gotoDate=(this._get(inst,'gotoCurrent')&&inst.currentDay?currentDate:today);
currentText=(!navigationAsDateFormat?currentText:
this.formatDate(currentText,gotoDate,this._getFormatConfig(inst)));
var controls=(!inst.inline?'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_'+dpuuid+
'.datepicker._hideDatepicker();">'+this._get(inst,'closeText')+'</button>':'');
var buttonPanel=(showButtonPanel)?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(isRTL?controls:'')+
(this._isInRange(inst,gotoDate)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_'+dpuuid+
'.datepicker._gotoToday(\'#'+inst.id+'\');"'+
'>'+currentText+'</button>':'')+(isRTL?'':controls)+'</div>':'';
var firstDay=parseInt(this._get(inst,'firstDay'),10);
firstDay=(isNaN(firstDay)?0:firstDay);
var showWeek=this._get(inst,'showWeek');
var dayNames=this._get(inst,'dayNames');
var dayNamesShort=this._get(inst,'dayNamesShort');
var dayNamesMin=this._get(inst,'dayNamesMin');
var monthNames=this._get(inst,'monthNames');
var monthNamesShort=this._get(inst,'monthNamesShort');
var beforeShowDay=this._get(inst,'beforeShowDay');
var showOtherMonths=this._get(inst,'showOtherMonths');
var selectOtherMonths=this._get(inst,'selectOtherMonths');
var calculateWeek=this._get(inst,'calculateWeek')||this.iso8601Week;
var defaultDate=this._getDefaultDate(inst);
var html='';
for(var row=0;row<numMonths[0];row++){
var group='';
this.maxRows=4;
for(var col=0;col<numMonths[1];col++){
var selectedDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,inst.selectedDay));
var cornerClass=' ui-corner-all';
var calender='';
if(isMultiMonth){
calender+='<div class="ui-datepicker-group';
if(numMonths[1]>1)
switch(col){
case 0:calender+=' ui-datepicker-group-first';
cornerClass=' ui-corner-'+(isRTL?'right':'left');break;
case numMonths[1]-1:calender+=' ui-datepicker-group-last';
cornerClass=' ui-corner-'+(isRTL?'left':'right');break;
default:calender+=' ui-datepicker-group-middle';cornerClass='';break}
calender+='">'}
calender+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+cornerClass+'">'+
(/all|left/.test(cornerClass)&&row==0?(isRTL?next:prev):'')+
(/all|right/.test(cornerClass)&&row==0?(isRTL?prev:next):'')+
this._generateMonthYearHeader(inst,drawMonth,drawYear,minDate,maxDate,
row>0||col>0,monthNames,monthNamesShort)+'</div><table class="ui-datepicker-calendar"><thead>'+
'<tr>';
var thead=(showWeek?'<th class="ui-datepicker-week-col">'+this._get(inst,'weekHeader')+'</th>':'');
for(var dow=0;dow<7;dow++){var day=(dow+firstDay)%7;
thead+='<th'+((dow+firstDay+6)%7>=5?' class="ui-datepicker-week-end"':'')+'>'+
'<span title="'+dayNames[day]+'">'+dayNamesMin[day]+'</span></th>'}
calender+=thead+'</tr></thead><tbody>';
var daysInMonth=this._getDaysInMonth(drawYear,drawMonth);
if(drawYear==inst.selectedYear&&drawMonth==inst.selectedMonth)
inst.selectedDay=Math.min(inst.selectedDay,daysInMonth);
var leadDays=(this._getFirstDayOfMonth(drawYear,drawMonth)-firstDay+7)%7;
var curRows=Math.ceil((leadDays+daysInMonth)/7); var numRows=(isMultiMonth?this.maxRows>curRows?this.maxRows:curRows:curRows);this.maxRows=numRows;
var printDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,1-leadDays));
for(var dRow=0;dRow<numRows;dRow++){calender+='<tr>';
var tbody=(!showWeek?'':'<td class="ui-datepicker-week-col">'+
this._get(inst,'calculateWeek')(printDate)+'</td>');
for(var dow=0;dow<7;dow++){var daySettings=(beforeShowDay?
beforeShowDay.apply((inst.input?inst.input[0]:null),[printDate]):[true,'']);
var otherMonth=(printDate.getMonth()!=drawMonth);
var unselectable=(otherMonth&&!selectOtherMonths)||!daySettings[0]||
(minDate&&printDate<minDate)||(maxDate&&printDate>maxDate);
tbody+='<td class="'+
((dow+firstDay+6)%7>=5?' ui-datepicker-week-end':'')+(otherMonth?' ui-datepicker-other-month':'')+((printDate.getTime()==selectedDate.getTime()&&drawMonth==inst.selectedMonth&&inst._keyEvent)||(defaultDate.getTime()==printDate.getTime()&&defaultDate.getTime()==selectedDate.getTime())?
' '+this._dayOverClass:'')+(unselectable?' '+this._unselectableClass+' ui-state-disabled':'')+(otherMonth&&!showOtherMonths?'':' '+daySettings[1]+(printDate.getTime()==currentDate.getTime()?' '+this._currentClass:'')+(printDate.getTime()==today.getTime()?' ui-datepicker-today':''))+'"'+((!otherMonth||showOtherMonths)&&daySettings[2]?' title="'+daySettings[2]+'"':'')+(unselectable?'':' onclick="DP_jQuery_'+dpuuid+'.datepicker._selectDay(\'#'+
inst.id+'\','+printDate.getMonth()+','+printDate.getFullYear()+', this);return false;"')+'>'+(otherMonth&&!showOtherMonths?'&#xa0;':(unselectable?'<span class="ui-state-default">'+printDate.getDate()+'</span>':'<a class="ui-state-default'+
(printDate.getTime()==today.getTime()?' ui-state-highlight':'')+
(printDate.getTime()==currentDate.getTime()?' ui-state-active':'')+(otherMonth?' ui-priority-secondary':'')+'" href="#">'+printDate.getDate()+'</a>'))+'</td>';printDate.setDate(printDate.getDate()+1);
printDate=this._daylightSavingAdjust(printDate)}
calender+=tbody+'</tr>'}
drawMonth++;
if(drawMonth>11){
drawMonth=0;
drawYear++}
calender+='</tbody></table>'+(isMultiMonth?'</div>'+
((numMonths[0]>0&&col==numMonths[1]-1)?'<div class="ui-datepicker-row-break"></div>':''):'');
group+=calender}
html+=group}
html+=buttonPanel+($.browser.msie&&parseInt($.browser.version,10)<7&&!inst.inline?
'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':'');
inst._keyEvent=false;
return html},
_generateMonthYearHeader:function(inst,drawMonth,drawYear,minDate,maxDate,
secondary,monthNames,monthNamesShort){
var changeMonth=this._get(inst,'changeMonth');
var changeYear=this._get(inst,'changeYear');
var showMonthAfterYear=this._get(inst,'showMonthAfterYear');
var html='<div class="ui-datepicker-title">';
var monthHtml='';
if(secondary||!changeMonth)
monthHtml+='<span class="ui-datepicker-month">'+monthNames[drawMonth]+'</span>';
else{
var inMinYear=(minDate&&minDate.getFullYear()==drawYear);
var inMaxYear=(maxDate&&maxDate.getFullYear()==drawYear);
monthHtml+='<select class="ui-datepicker-month" '+
'onchange="DP_jQuery_'+dpuuid+'.datepicker._selectMonthYear(\'#'+inst.id+'\', this, \'M\');" '+
'>';
for(var month=0;month<12;month++){
if((!inMinYear||month>=minDate.getMonth())&&
(!inMaxYear||month<=maxDate.getMonth()))
monthHtml+='<option value="'+month+'"'+
(month==drawMonth?' selected="selected"':'')+
'>'+monthNamesShort[month]+'</option>'}
monthHtml+='</select>'}
if(!showMonthAfterYear)
html+=monthHtml+(secondary||!(changeMonth&&changeYear)?'&#xa0;':'');
if(!inst.yearshtml){
inst.yearshtml='';
if(secondary||!changeYear)
html+='<span class="ui-datepicker-year">'+drawYear+'</span>';
else{
var years=this._get(inst,'yearRange').split(':');
var thisYear=new Date().getFullYear();
var determineYear=function(value){
var year=(value.match(/c[+-].*/)?drawYear+parseInt(value.substring(1),10):
(value.match(/[+-].*/)?thisYear+parseInt(value,10):
parseInt(value,10)));
return(isNaN(year)?thisYear:year)};
var year=determineYear(years[0]);
var endYear=Math.max(year,determineYear(years[1]||''));
year=(minDate?Math.max(year,minDate.getFullYear()):year);
endYear=(maxDate?Math.min(endYear,maxDate.getFullYear()):endYear);
inst.yearshtml+='<select class="ui-datepicker-year" '+
'onchange="DP_jQuery_'+dpuuid+'.datepicker._selectMonthYear(\'#'+inst.id+'\', this, \'Y\');" '+
'>';
for(;year<=endYear;year++){
inst.yearshtml+='<option value="'+year+'"'+
(year==drawYear?' selected="selected"':'')+
'>'+year+'</option>'}
inst.yearshtml+='</select>';
html+=inst.yearshtml;
inst.yearshtml=null}
}
html+=this._get(inst,'yearSuffix');
if(showMonthAfterYear)
html+=(secondary||!(changeMonth&&changeYear)?'&#xa0;':'')+monthHtml;
html+='</div>';return html},
_adjustInstDate:function(inst,offset,period){
var year=inst.drawYear+(period=='Y'?offset:0);
var month=inst.drawMonth+(period=='M'?offset:0);
var day=Math.min(inst.selectedDay,this._getDaysInMonth(year,month))+
(period=='D'?offset:0);
var date=this._restrictMinMax(inst,
this._daylightSavingAdjust(new Date(year,month,day)));
inst.selectedDay=date.getDate();
inst.drawMonth=inst.selectedMonth=date.getMonth();
inst.drawYear=inst.selectedYear=date.getFullYear();
if(period=='M'||period=='Y')
this._notifyChange(inst)},
_restrictMinMax:function(inst,date){
var minDate=this._getMinMaxDate(inst,'min');
var maxDate=this._getMinMaxDate(inst,'max');
var newDate=(minDate&&date<minDate?minDate:date);
newDate=(maxDate&&newDate>maxDate?maxDate:newDate);
return newDate},
_notifyChange:function(inst){
var onChange=this._get(inst,'onChangeMonthYear');
if(onChange)
onChange.apply((inst.input?inst.input[0]:null),
[inst.selectedYear,inst.selectedMonth+1,inst])},
_getNumberOfMonths:function(inst){
var numMonths=this._get(inst,'numberOfMonths');
return(numMonths==null?[1,1]:(typeof numMonths=='number'?[1,numMonths]:numMonths))},
_getMinMaxDate:function(inst,minMax){
return this._determineDate(inst,this._get(inst,minMax+'Date'),null)},
_getDaysInMonth:function(year,month){
return 32-this._daylightSavingAdjust(new Date(year,month,32)).getDate()},
_getFirstDayOfMonth:function(year,month){
return new Date(year,month,1).getDay()},
_canAdjustMonth:function(inst,offset,curYear,curMonth){
var numMonths=this._getNumberOfMonths(inst);
var date=this._daylightSavingAdjust(new Date(curYear,
curMonth+(offset<0?offset:numMonths[0]*numMonths[1]),1));
if(offset<0)
date.setDate(this._getDaysInMonth(date.getFullYear(),date.getMonth()));
return this._isInRange(inst,date)},
_isInRange:function(inst,date){
var minDate=this._getMinMaxDate(inst,'min');
var maxDate=this._getMinMaxDate(inst,'max');
return((!minDate||date.getTime()>=minDate.getTime())&&
(!maxDate||date.getTime()<=maxDate.getTime()))},
_getFormatConfig:function(inst){
var shortYearCutoff=this._get(inst,'shortYearCutoff');
shortYearCutoff=(typeof shortYearCutoff!='string'?shortYearCutoff:
new Date().getFullYear()%100+parseInt(shortYearCutoff,10));
return{shortYearCutoff:shortYearCutoff,
dayNamesShort:this._get(inst,'dayNamesShort'),dayNames:this._get(inst,'dayNames'),
monthNamesShort:this._get(inst,'monthNamesShort'),monthNames:this._get(inst,'monthNames')}},
_formatDate:function(inst,day,month,year){
if(!day){
inst.currentDay=inst.selectedDay;
inst.currentMonth=inst.selectedMonth;
inst.currentYear=inst.selectedYear}
var date=(day?(typeof day=='object'?day:
this._daylightSavingAdjust(new Date(year,month,day))):
this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));
return this.formatDate(this._get(inst,'dateFormat'),date,this._getFormatConfig(inst))}
});
function bindHover(dpDiv){
var selector='button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a';
return dpDiv.bind('mouseout',function(event){
var elem=$(event.target).closest(selector);
if(!elem.length){
return}
elem.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")})
.bind('mouseover',function(event){
var elem=$(event.target).closest(selector);
if($.datepicker._isDisabledDatepicker(instActive.inline?dpDiv.parent()[0]:instActive.input[0])||
!elem.length){
return}
elem.parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover');
elem.addClass('ui-state-hover');
if(elem.hasClass('ui-datepicker-prev'))elem.addClass('ui-datepicker-prev-hover');
if(elem.hasClass('ui-datepicker-next'))elem.addClass('ui-datepicker-next-hover')})}
function extendRemove(target,props){
$.extend(target,props);
for(var name in props)
if(props[name]==null||props[name]==undefined)
target[name]=props[name];
return target};
function isArray(a){
return(a&&(($.browser.safari&&typeof a=='object'&&a.length)||
(a.constructor&&a.constructor.toString().match(/\Array\(\)/))))};
$.fn.datepicker=function(options){
if(!this.length){
return this}
if(!$.datepicker.initialized){
$(document).mousedown($.datepicker._checkExternalClick).
find('body').append($.datepicker.dpDiv);
$.datepicker.initialized=true}
var otherArgs=Array.prototype.slice.call(arguments,1);
if(typeof options=='string'&&(options=='isDisabled'||options=='getDate'||options=='widget'))
return $.datepicker['_'+options+'Datepicker'].
apply($.datepicker,[this[0]].concat(otherArgs));
if(options=='option'&&arguments.length==2&&typeof arguments[1]=='string')
return $.datepicker['_'+options+'Datepicker'].
apply($.datepicker,[this[0]].concat(otherArgs));
return this.each(function(){
typeof options=='string'?
$.datepicker['_'+options+'Datepicker'].
apply($.datepicker,[this].concat(otherArgs)):
$.datepicker._attachDatepicker(this,options)})};
$.datepicker=new Datepicker();$.datepicker.initialized=false;
$.datepicker.uuid=new Date().getTime();
$.datepicker.version="1.8.16";
window['DP_jQuery_'+dpuuid]=$})(jQuery);
(function($,undefined){
var uiDialogClasses=
'ui-dialog '+
'ui-widget '+
'ui-widget-content '+
'ui-corner-all ',
sizeRelatedOptions={
buttons:true,
height:true,
maxHeight:true,
maxWidth:true,
minHeight:true,
minWidth:true,
width:true
},
resizableRelatedOptions={
maxHeight:true,
maxWidth:true,
minHeight:true,
minWidth:true
},
attrFn=$.attrFn||{
val:true,
css:true,
html:true,
text:true,
data:true,
width:true,
height:true,
offset:true,
click:true
};
$.widget("ui.dialog",{
options:{
autoOpen:true,
buttons:{},
closeOnEscape:true,
closeText:'close',
dialogClass:'',
draggable:true,
hide:null,
height:'auto',
maxHeight:false,
maxWidth:false,
minHeight:150,
minWidth:150,
modal:false,
position:{
my:'center',
at:'center',
collision:'fit',
using:function(pos){
var topOffset=$(this).css(pos).offset().top;
if(topOffset<0){
$(this).css('top',pos.top-topOffset)}
}
},
resizable:true,
show:null,
stack:true,
title:'',
width:300,
zIndex:1000
},
_create:function(){
this.originalTitle=this.element.attr('title');
if(typeof this.originalTitle!=="string"){
this.originalTitle=""}
this.options.title=this.options.title||this.originalTitle;
var self=this,
options=self.options,
title=options.title||'&#160;',
titleId=$.ui.dialog.getTitleId(self.element),
uiDialog=(self.uiDialog=$('<div></div>'))
.appendTo(document.body)
.hide()
.addClass(uiDialogClasses+options.dialogClass)
.css({
zIndex:options.zIndex
})
.attr('tabIndex',-1).css('outline',0).keydown(function(event){
if(options.closeOnEscape&&!event.isDefaultPrevented()&&event.keyCode&&
event.keyCode===$.ui.keyCode.ESCAPE){
self.close(event);
event.preventDefault()}
})
.attr({
role:'dialog',
'aria-labelledby':titleId
})
.mousedown(function(event){
self.moveToTop(false,event)}),
uiDialogContent=self.element
.show()
.removeAttr('title')
.addClass(
'ui-dialog-content '+
'ui-widget-content')
.appendTo(uiDialog),
uiDialogTitlebar=(self.uiDialogTitlebar=$('<div></div>'))
.addClass(
'ui-dialog-titlebar '+
'ui-widget-header '+
'ui-corner-all '+
'ui-helper-clearfix'
)
.prependTo(uiDialog),
uiDialogTitlebarClose=$('<a href="#"></a>')
.addClass(
'ui-dialog-titlebar-close '+
'ui-corner-all'
)
.attr('role','button')
.hover(
function(){
uiDialogTitlebarClose.addClass('ui-state-hover')},
function(){
uiDialogTitlebarClose.removeClass('ui-state-hover')}
)
.focus(function(){
uiDialogTitlebarClose.addClass('ui-state-focus')})
.blur(function(){
uiDialogTitlebarClose.removeClass('ui-state-focus')})
.click(function(event){
self.close(event);
return false})
.appendTo(uiDialogTitlebar),
uiDialogTitlebarCloseText=(self.uiDialogTitlebarCloseText=$('<span></span>'))
.addClass(
'ui-icon '+
'ui-icon-closethick'
)
.text(options.closeText)
.appendTo(uiDialogTitlebarClose),
uiDialogTitle=$('<span></span>')
.addClass('ui-dialog-title')
.attr('id',titleId)
.html(title)
.prependTo(uiDialogTitlebar);
if($.isFunction(options.beforeclose)&&!$.isFunction(options.beforeClose)){
options.beforeClose=options.beforeclose}
uiDialogTitlebar.find("*").add(uiDialogTitlebar).disableSelection();
if(options.draggable&&$.fn.draggable){
self._makeDraggable()}
if(options.resizable&&$.fn.resizable){
self._makeResizable()}
self._createButtons(options.buttons);
self._isOpen=false;
if($.fn.bgiframe){
uiDialog.bgiframe()}
},
_init:function(){
if(this.options.autoOpen){
this.open()}
},
destroy:function(){
var self=this;
if(self.overlay){
self.overlay.destroy()}
self.uiDialog.hide();
self.element
.unbind('.dialog')
.removeData('dialog')
.removeClass('ui-dialog-content ui-widget-content')
.hide().appendTo('body');
self.uiDialog.remove();
if(self.originalTitle){
self.element.attr('title',self.originalTitle)}
return self},
widget:function(){
return this.uiDialog},
close:function(event){
var self=this,
maxZ,thisZ;
if(false===self._trigger('beforeClose',event)){
return}
if(self.overlay){
self.overlay.destroy()}
self.uiDialog.unbind('keypress.ui-dialog');
self._isOpen=false;
if(self.options.hide){
self.uiDialog.hide(self.options.hide,function(){
self._trigger('close',event)})}else{
self.uiDialog.hide();
self._trigger('close',event)}
$.ui.dialog.overlay.resize();
if(self.options.modal){
maxZ=0;
$('.ui-dialog').each(function(){
if(this!==self.uiDialog[0]){
thisZ=$(this).css('z-index');
if(!isNaN(thisZ)){
maxZ=Math.max(maxZ,thisZ)}
}
});
$.ui.dialog.maxZ=maxZ}
return self},
isOpen:function(){
return this._isOpen},
moveToTop:function(force,event){
var self=this,
options=self.options,
saveScroll;
if((options.modal&&!force)||
(!options.stack&&!options.modal)){
return self._trigger('focus',event)}
if(options.zIndex>$.ui.dialog.maxZ){
$.ui.dialog.maxZ=options.zIndex}
if(self.overlay){
$.ui.dialog.maxZ+=1;
self.overlay.$el.css('z-index',$.ui.dialog.overlay.maxZ=$.ui.dialog.maxZ)}
saveScroll={scrollTop:self.element.scrollTop(),scrollLeft:self.element.scrollLeft()};
$.ui.dialog.maxZ+=1;
self.uiDialog.css('z-index',$.ui.dialog.maxZ);
self.element.attr(saveScroll);
self._trigger('focus',event);
return self},
open:function(){
if(this._isOpen){return}
var self=this,
options=self.options,
uiDialog=self.uiDialog;
self.overlay=options.modal?new $.ui.dialog.overlay(self):null;
self._size();
self._position(options.position);
uiDialog.show(options.show);
self.moveToTop(true);
if(options.modal){
uiDialog.bind('keypress.ui-dialog',function(event){
if(event.keyCode!==$.ui.keyCode.TAB){
return}
var tabbables=$(':tabbable',this),
first=tabbables.filter(':first'),
last=tabbables.filter(':last');
if(event.target===last[0]&&!event.shiftKey){
first.focus(1);
return false}else if(event.target===first[0]&&event.shiftKey){
last.focus(1);
return false}
})}
$(self.element.find(':tabbable').get().concat(
uiDialog.find('.ui-dialog-buttonpane :tabbable').get().concat(
uiDialog.get()))).eq(0).focus();
self._isOpen=true;
self._trigger('open');
return self},
_createButtons:function(buttons){
var self=this,
hasButtons=false,
uiDialogButtonPane=$('<div></div>')
.addClass(
'ui-dialog-buttonpane '+
'ui-widget-content '+
'ui-helper-clearfix'
),
uiButtonSet=$("<div></div>")
.addClass("ui-dialog-buttonset")
.appendTo(uiDialogButtonPane);
self.uiDialog.find('.ui-dialog-buttonpane').remove();
if(typeof buttons==='object'&&buttons!==null){
$.each(buttons,function(){
return!(hasButtons=true)})}
if(hasButtons){
$.each(buttons,function(name,props){
props=$.isFunction(props)?
{click:props,text:name}:
props;
var button=$('<button type="button"></button>')
.click(function(){
props.click.apply(self.element[0],arguments)})
.appendTo(uiButtonSet);
$.each(props,function(key,value){
if(key==="click"){
return}
if(key in attrFn){
button[key](value)}else{
button.attr(key,value)}
});
if($.fn.button){
button.button()}
});
uiDialogButtonPane.appendTo(self.uiDialog)}
},
_makeDraggable:function(){
var self=this,
options=self.options,
doc=$(document),
heightBeforeDrag;
function filteredUi(ui){
return{
position:ui.position,
offset:ui.offset
}}
self.uiDialog.draggable({
cancel:'.ui-dialog-content, .ui-dialog-titlebar-close',
handle:'.ui-dialog-titlebar',
containment:'document',
start:function(event,ui){
heightBeforeDrag=options.height==="auto"?"auto":$(this).height();
$(this).height($(this).height()).addClass("ui-dialog-dragging");
self._trigger('dragStart',event,filteredUi(ui))},
drag:function(event,ui){
self._trigger('drag',event,filteredUi(ui))},
stop:function(event,ui){
options.position=[ui.position.left-doc.scrollLeft(),
ui.position.top-doc.scrollTop()];
$(this).removeClass("ui-dialog-dragging").height(heightBeforeDrag);
self._trigger('dragStop',event,filteredUi(ui));
$.ui.dialog.overlay.resize()}
})},
_makeResizable:function(handles){
handles=(handles===undefined?this.options.resizable:handles);
var self=this,
options=self.options,
position=self.uiDialog.css('position'),
resizeHandles=(typeof handles==='string'?
handles:
'n,e,s,w,se,sw,ne,nw'
);
function filteredUi(ui){
return{
originalPosition:ui.originalPosition,
originalSize:ui.originalSize,
position:ui.position,
size:ui.size
}}
self.uiDialog.resizable({
cancel:'.ui-dialog-content',
containment:'document',
alsoResize:self.element,
maxWidth:options.maxWidth,
maxHeight:options.maxHeight,
minWidth:options.minWidth,
minHeight:self._minHeight(),
handles:resizeHandles,
start:function(event,ui){
$(this).addClass("ui-dialog-resizing");
self._trigger('resizeStart',event,filteredUi(ui))},
resize:function(event,ui){
self._trigger('resize',event,filteredUi(ui))},
stop:function(event,ui){
$(this).removeClass("ui-dialog-resizing");
options.height=$(this).height();
options.width=$(this).width();
self._trigger('resizeStop',event,filteredUi(ui));
$.ui.dialog.overlay.resize()}
})
.css('position',position)
.find('.ui-resizable-se').addClass('ui-icon ui-icon-grip-diagonal-se')},
_minHeight:function(){
var options=this.options;
if(options.height==='auto'){
return options.minHeight}else{
return Math.min(options.minHeight,options.height)}
},
_position:function(position){
var myAt=[],
offset=[0,0],
isVisible;
if(position){
if(typeof position==='string'||(typeof position==='object'&&'0'in position)){
myAt=position.split?position.split(' '):[position[0],position[1]];
if(myAt.length===1){
myAt[1]=myAt[0]}
$.each(['left','top'],function(i,offsetPosition){
if(+myAt[i]===myAt[i]){
offset[i]=myAt[i];
myAt[i]=offsetPosition}
});
position={
my:myAt.join(" "),
at:myAt.join(" "),
offset:offset.join(" ")
}}
position=$.extend({},$.ui.dialog.prototype.options.position,position)}else{
position=$.ui.dialog.prototype.options.position}
isVisible=this.uiDialog.is(':visible');
if(!isVisible){
this.uiDialog.show()}
this.uiDialog
.css({top:0,left:0})
.position($.extend({of:window},position));
if(!isVisible){
this.uiDialog.hide()}
},
_setOptions:function(options){
var self=this,
resizableOptions={},
resize=false;
$.each(options,function(key,value){
self._setOption(key,value);
if(key in sizeRelatedOptions){
resize=true}
if(key in resizableRelatedOptions){
resizableOptions[key]=value}
});
if(resize){
this._size()}
if(this.uiDialog.is(":data(resizable)")){
this.uiDialog.resizable("option",resizableOptions)}
},
_setOption:function(key,value){
var self=this,
uiDialog=self.uiDialog;
switch(key){
case"beforeclose":
key="beforeClose";
break;
case"buttons":
self._createButtons(value);
break;
case"closeText":
self.uiDialogTitlebarCloseText.text(""+value);
break;
case"dialogClass":
uiDialog
.removeClass(self.options.dialogClass)
.addClass(uiDialogClasses+value);
break;
case"disabled":
if(value){
uiDialog.addClass('ui-dialog-disabled')}else{
uiDialog.removeClass('ui-dialog-disabled')}
break;
case"draggable":
var isDraggable=uiDialog.is(":data(draggable)");
if(isDraggable&&!value){
uiDialog.draggable("destroy")}
if(!isDraggable&&value){
self._makeDraggable()}
break;
case"position":
self._position(value);
break;
case"resizable":
var isResizable=uiDialog.is(":data(resizable)");
if(isResizable&&!value){
uiDialog.resizable('destroy')}
if(isResizable&&typeof value==='string'){
uiDialog.resizable('option','handles',value)}
if(!isResizable&&value!==false){
self._makeResizable(value)}
break;
case"title":
$(".ui-dialog-title",self.uiDialogTitlebar).html(""+(value||'&#160;'));
break}
$.Widget.prototype._setOption.apply(self,arguments)},
_size:function(){
var options=this.options,
nonContentHeight,
minContentHeight,
isVisible=this.uiDialog.is(":visible");
this.element.show().css({
width:'auto',
minHeight:0,
height:0
});
if(options.minWidth>options.width){
options.width=options.minWidth}
nonContentHeight=this.uiDialog.css({
height:'auto',
width:options.width
})
.height();
minContentHeight=Math.max(0,options.minHeight-nonContentHeight);
if(options.height==="auto"){
if($.support.minHeight){
this.element.css({
minHeight:minContentHeight,
height:"auto"
})}else{
this.uiDialog.show();
var autoHeight=this.element.css("height","auto").height();
if(!isVisible){
this.uiDialog.hide()}
this.element.height(Math.max(autoHeight,minContentHeight))}
}else{
this.element.height(Math.max(options.height-nonContentHeight,0))}
if(this.uiDialog.is(':data(resizable)')){
this.uiDialog.resizable('option','minHeight',this._minHeight())}
}
});
$.extend($.ui.dialog,{
version:"1.8.16",
uuid:0,
maxZ:0,
getTitleId:function($el){
var id=$el.attr('id');
if(!id){
this.uuid+=1;
id=this.uuid}
return'ui-dialog-title-'+id},
overlay:function(dialog){
this.$el=$.ui.dialog.overlay.create(dialog)}
});
$.extend($.ui.dialog.overlay,{
instances:[],
oldInstances:[],
maxZ:0,
events:$.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','),
function(event){return event+'.dialog-overlay'}).join(' '),
create:function(dialog){
if(this.instances.length===0){
setTimeout(function(){
if($.ui.dialog.overlay.instances.length){
$(document).bind($.ui.dialog.overlay.events,function(event){
if($(event.target).zIndex()<$.ui.dialog.overlay.maxZ){
return false}
})}
},1);
$(document).bind('keydown.dialog-overlay',function(event){
if(dialog.options.closeOnEscape&&!event.isDefaultPrevented()&&event.keyCode&&
event.keyCode===$.ui.keyCode.ESCAPE){
dialog.close(event);
event.preventDefault()}
});
$(window).bind('resize.dialog-overlay',$.ui.dialog.overlay.resize)}
var $el=(this.oldInstances.pop()||$('<div></div>').addClass('ui-widget-overlay'))
.appendTo(document.body)
.css({
width:this.width(),
height:this.height()
});
if($.fn.bgiframe){
$el.bgiframe()}
this.instances.push($el);
return $el},
destroy:function($el){
var indexOf=$.inArray($el,this.instances);
if(indexOf!=-1){
this.oldInstances.push(this.instances.splice(indexOf,1)[0])}
if(this.instances.length===0){
$([document,window]).unbind('.dialog-overlay')}
$el.remove();
var maxZ=0;
$.each(this.instances,function(){
maxZ=Math.max(maxZ,this.css('z-index'))});
this.maxZ=maxZ},
height:function(){
var scrollHeight,
offsetHeight;
if($.browser.msie&&$.browser.version<7){
scrollHeight=Math.max(
document.documentElement.scrollHeight,
document.body.scrollHeight
);
offsetHeight=Math.max(
document.documentElement.offsetHeight,
document.body.offsetHeight
);
if(scrollHeight<offsetHeight){
return $(window).height()+'px'}else{
return scrollHeight+'px'}
}else{
return $(document).height()+'px'}
},
width:function(){
var scrollWidth,
offsetWidth;
if($.browser.msie){
scrollWidth=Math.max(
document.documentElement.scrollWidth,
document.body.scrollWidth
);
offsetWidth=Math.max(
document.documentElement.offsetWidth,
document.body.offsetWidth
);
if(scrollWidth<offsetWidth){
return $(window).width()+'px'}else{
return scrollWidth+'px'}
}else{
return $(document).width()+'px'}
},
resize:function(){
var $overlays=$([]);
$.each($.ui.dialog.overlay.instances,function(){
$overlays=$overlays.add(this)});
$overlays.css({
width:0,
height:0
}).css({
width:$.ui.dialog.overlay.width(),
height:$.ui.dialog.overlay.height()
})}
});
$.extend($.ui.dialog.overlay.prototype,{
destroy:function(){
$.ui.dialog.overlay.destroy(this.$el)}
})}(jQuery));
(function($,undefined){
$.ui=$.ui||{};
var horizontalPositions=/left|center|right/,
verticalPositions=/top|center|bottom/,
center="center",
_position=$.fn.position,
_offset=$.fn.offset;
$.fn.position=function(options){
if(!options||!options.of){
return _position.apply(this,arguments)}
options=$.extend({},options);
var target=$(options.of),
targetElem=target[0],
collision=(options.collision||"flip").split(" "),
offset=options.offset?options.offset.split(" "):[0,0],
targetWidth,
targetHeight,
basePosition;
if(targetElem.nodeType===9){
targetWidth=target.width();
targetHeight=target.height();
basePosition={top:0,left:0}}else if(targetElem.setTimeout){
targetWidth=target.width();
targetHeight=target.height();
basePosition={top:target.scrollTop(),left:target.scrollLeft()}}else if(targetElem.preventDefault){
options.at="left top";
targetWidth=targetHeight=0;
basePosition={top:options.of.pageY,left:options.of.pageX}}else{
targetWidth=target.outerWidth();
targetHeight=target.outerHeight();
basePosition=target.offset()}
$.each(["my","at"],function(){
var pos=(options[this]||"").split(" ");
if(pos.length===1){
pos=horizontalPositions.test(pos[0])?
pos.concat([center]):
verticalPositions.test(pos[0])?
[center].concat(pos):
[center,center]}
pos[0]=horizontalPositions.test(pos[0])?pos[0]:center;
pos[1]=verticalPositions.test(pos[1])?pos[1]:center;
options[this]=pos});
if(collision.length===1){
collision[1]=collision[0]}
offset[0]=parseInt(offset[0],10)||0;
if(offset.length===1){
offset[1]=offset[0]}
offset[1]=parseInt(offset[1],10)||0;
if(options.at[0]==="right"){
basePosition.left+=targetWidth}else if(options.at[0]===center){
basePosition.left+=targetWidth/2}
if(options.at[1]==="bottom"){
basePosition.top+=targetHeight}else if(options.at[1]===center){
basePosition.top+=targetHeight/2}
basePosition.left+=offset[0];
basePosition.top+=offset[1];
return this.each(function(){
var elem=$(this),
elemWidth=elem.outerWidth(),
elemHeight=elem.outerHeight(),
marginLeft=parseInt($.curCSS(this,"marginLeft",true))||0,
marginTop=parseInt($.curCSS(this,"marginTop",true))||0,
collisionWidth=elemWidth+marginLeft+
(parseInt($.curCSS(this,"marginRight",true))||0),
collisionHeight=elemHeight+marginTop+
(parseInt($.curCSS(this,"marginBottom",true))||0),
position=$.extend({},basePosition),
collisionPosition;
if(options.my[0]==="right"){
position.left-=elemWidth}else if(options.my[0]===center){
position.left-=elemWidth/2}
if(options.my[1]==="bottom"){
position.top-=elemHeight}else if(options.my[1]===center){
position.top-=elemHeight/2}
position.left=Math.round(position.left);
position.top=Math.round(position.top);
collisionPosition={
left:position.left-marginLeft,
top:position.top-marginTop
};
$.each(["left","top"],function(i,dir){
if($.ui.position[collision[i]]){
$.ui.position[collision[i]][dir](position,{
targetWidth:targetWidth,
targetHeight:targetHeight,
elemWidth:elemWidth,
elemHeight:elemHeight,
collisionPosition:collisionPosition,
collisionWidth:collisionWidth,
collisionHeight:collisionHeight,
offset:offset,
my:options.my,
at:options.at
})}
});
if($.fn.bgiframe){
elem.bgiframe()}
elem.offset($.extend(position,{using:options.using}))})};
$.ui.position={
fit:{
left:function(position,data){
var win=$(window),
over=data.collisionPosition.left+data.collisionWidth-win.width()-win.scrollLeft();
position.left=over>0?position.left-over:Math.max(position.left-data.collisionPosition.left,position.left)},
top:function(position,data){
var win=$(window),
over=data.collisionPosition.top+data.collisionHeight-win.height()-win.scrollTop();
position.top=over>0?position.top-over:Math.max(position.top-data.collisionPosition.top,position.top)}
},
flip:{
left:function(position,data){
if(data.at[0]===center){
return}
var win=$(window),
over=data.collisionPosition.left+data.collisionWidth-win.width()-win.scrollLeft(),
myOffset=data.my[0]==="left"?
-data.elemWidth:
data.my[0]==="right"?
data.elemWidth:
0,
atOffset=data.at[0]==="left"?
data.targetWidth:
-data.targetWidth,
offset=-2*data.offset[0];
position.left+=data.collisionPosition.left<0?
myOffset+atOffset+offset:
over>0?
myOffset+atOffset+offset:
0},
top:function(position,data){
if(data.at[1]===center){
return}
var win=$(window),
over=data.collisionPosition.top+data.collisionHeight-win.height()-win.scrollTop(),
myOffset=data.my[1]==="top"?
-data.elemHeight:
data.my[1]==="bottom"?
data.elemHeight:
0,
atOffset=data.at[1]==="top"?
data.targetHeight:
-data.targetHeight,
offset=-2*data.offset[1];
position.top+=data.collisionPosition.top<0?
myOffset+atOffset+offset:
over>0?
myOffset+atOffset+offset:
0}
}
};
if(!$.offset.setOffset){
$.offset.setOffset=function(elem,options){
if(/static/.test($.curCSS(elem,"position"))){
elem.style.position="relative"}
var curElem=$(elem),
curOffset=curElem.offset(),
curTop=parseInt($.curCSS(elem,"top",true),10)||0,
curLeft=parseInt($.curCSS(elem,"left",true),10)||0,
props={
top:(options.top-curOffset.top)+curTop,
left:(options.left-curOffset.left)+curLeft
};
if('using'in options){
options.using.call(elem,props)}else{
curElem.css(props)}
};
$.fn.offset=function(options){
var elem=this[0];
if(!elem||!elem.ownerDocument){return null}
if(options){
return this.each(function(){
$.offset.setOffset(this,options)})}
return _offset.call(this)}}
}(jQuery));
(function($,undefined){
$.widget("ui.progressbar",{
options:{
value:0,
max:100
},
min:0,
_create:function(){
this.element
.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all")
.attr({
role:"progressbar",
"aria-valuemin":this.min,
"aria-valuemax":this.options.max,
"aria-valuenow":this._value()
});
this.valueDiv=$("<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>")
.appendTo(this.element);
this.oldValue=this._value();
this._refreshValue()},
destroy:function(){
this.element
.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all")
.removeAttr("role")
.removeAttr("aria-valuemin")
.removeAttr("aria-valuemax")
.removeAttr("aria-valuenow");
this.valueDiv.remove();
$.Widget.prototype.destroy.apply(this,arguments)},
value:function(newValue){
if(newValue===undefined){
return this._value()}
this._setOption("value",newValue);
return this},
_setOption:function(key,value){
if(key==="value"){
this.options.value=value;
this._refreshValue();
if(this._value()===this.options.max){
this._trigger("complete")}
}
$.Widget.prototype._setOption.apply(this,arguments)},
_value:function(){
var val=this.options.value;
if(typeof val!=="number"){
val=0}
return Math.min(this.options.max,Math.max(this.min,val))},
_percentage:function(){
return 100*this._value()/this.options.max},
_refreshValue:function(){
var value=this.value();
var percentage=this._percentage();
if(this.oldValue!==value){
this.oldValue=value;
this._trigger("change")}
this.valueDiv
.toggle(value>this.min)
.toggleClass("ui-corner-right",value===this.options.max)
.width(percentage.toFixed(0)+"%");
this.element.attr("aria-valuenow",value)}
});
$.extend($.ui.progressbar,{
version:"1.8.16"
})})(jQuery);
(function($,undefined){
var numPages=5;
$.widget("ui.slider",$.ui.mouse,{
widgetEventPrefix:"slide",
options:{
animate:false,
distance:0,
max:100,
min:0,
orientation:"horizontal",
range:false,
step:1,
value:0,
values:null
},
_create:function(){
var self=this,
o=this.options,
existingHandles=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),
handle="<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>",
handleCount=(o.values&&o.values.length)||1,
handles=[];
this._keySliding=false;
this._mouseSliding=false;
this._animateOff=true;
this._handleIndex=null;
this._detectOrientation();
this._mouseInit();
this.element
.addClass("ui-slider"+
" ui-slider-"+this.orientation+
" ui-widget"+
" ui-widget-content"+
" ui-corner-all"+
(o.disabled?" ui-slider-disabled ui-disabled":""));
this.range=$([]);
if(o.range){
if(o.range===true){
if(!o.values){
o.values=[this._valueMin(),this._valueMin()]}
if(o.values.length&&o.values.length!==2){
o.values=[o.values[0],o.values[0]]}
}
this.range=$("<div></div>")
.appendTo(this.element)
.addClass("ui-slider-range"+
" ui-widget-header"+
((o.range==="min"||o.range==="max")?" ui-slider-range-"+o.range:""))}
for(var i=existingHandles.length;i<handleCount;i+=1){
handles.push(handle)}
this.handles=existingHandles.add($(handles.join("")).appendTo(self.element));
this.handle=this.handles.eq(0);
this.handles.add(this.range).filter("a")
.click(function(event){
event.preventDefault()})
.hover(function(){
if(!o.disabled){
$(this).addClass("ui-state-hover")}
},function(){
$(this).removeClass("ui-state-hover")})
.focus(function(){
if(!o.disabled){
$(".ui-slider .ui-state-focus").removeClass("ui-state-focus");
$(this).addClass("ui-state-focus")}else{
$(this).blur()}
})
.blur(function(){
$(this).removeClass("ui-state-focus")});
this.handles.each(function(i){
$(this).data("index.ui-slider-handle",i)});
this.handles
.keydown(function(event){
var ret=true,
index=$(this).data("index.ui-slider-handle"),
allowed,
curVal,
newVal,
step;
if(self.options.disabled){
return}
switch(event.keyCode){
case $.ui.keyCode.HOME:
case $.ui.keyCode.END:
case $.ui.keyCode.PAGE_UP:
case $.ui.keyCode.PAGE_DOWN:
case $.ui.keyCode.UP:
case $.ui.keyCode.RIGHT:
case $.ui.keyCode.DOWN:
case $.ui.keyCode.LEFT:
ret=false;
if(!self._keySliding){
self._keySliding=true;
$(this).addClass("ui-state-active");
allowed=self._start(event,index);
if(allowed===false){
return}
}
break}
step=self.options.step;
if(self.options.values&&self.options.values.length){
curVal=newVal=self.values(index)}else{
curVal=newVal=self.value()}
switch(event.keyCode){
case $.ui.keyCode.HOME:
newVal=self._valueMin();
break;
case $.ui.keyCode.END:
newVal=self._valueMax();
break;
case $.ui.keyCode.PAGE_UP:
newVal=self._trimAlignValue(curVal+((self._valueMax()-self._valueMin())/numPages));
break;
case $.ui.keyCode.PAGE_DOWN:
newVal=self._trimAlignValue(curVal-((self._valueMax()-self._valueMin())/numPages));
break;
case $.ui.keyCode.UP:
case $.ui.keyCode.RIGHT:
if(curVal===self._valueMax()){
return}
newVal=self._trimAlignValue(curVal+step);
break;
case $.ui.keyCode.DOWN:
case $.ui.keyCode.LEFT:
if(curVal===self._valueMin()){
return}
newVal=self._trimAlignValue(curVal-step);
break}
self._slide(event,index,newVal);
return ret})
.keyup(function(event){
var index=$(this).data("index.ui-slider-handle");
if(self._keySliding){
self._keySliding=false;
self._stop(event,index);
self._change(event,index);
$(this).removeClass("ui-state-active")}
});
this._refreshValue();
this._animateOff=false},
destroy:function(){
this.handles.remove();
this.range.remove();
this.element
.removeClass("ui-slider"+
" ui-slider-horizontal"+
" ui-slider-vertical"+
" ui-slider-disabled"+
" ui-widget"+
" ui-widget-content"+
" ui-corner-all")
.removeData("slider")
.unbind(".slider");
this._mouseDestroy();
return this},
_mouseCapture:function(event){
var o=this.options,
position,
normValue,
distance,
closestHandle,
self,
index,
allowed,
offset,
mouseOverHandle;
if(o.disabled){
return false}
this.elementSize={
width:this.element.outerWidth(),
height:this.element.outerHeight()
};
this.elementOffset=this.element.offset();
position={x:event.pageX,y:event.pageY};
normValue=this._normValueFromMouse(position);
distance=this._valueMax()-this._valueMin()+1;
self=this;
this.handles.each(function(i){
var thisDistance=Math.abs(normValue-self.values(i));
if(distance>thisDistance){
distance=thisDistance;
closestHandle=$(this);
index=i}
});
if(o.range===true&&this.values(1)===o.min){
index+=1;
closestHandle=$(this.handles[index])}
allowed=this._start(event,index);
if(allowed===false){
return false}
this._mouseSliding=true;
self._handleIndex=index;
closestHandle
.addClass("ui-state-active")
.focus();
offset=closestHandle.offset();
mouseOverHandle=!$(event.target).parents().andSelf().is(".ui-slider-handle");
this._clickOffset=mouseOverHandle?{left:0,top:0}:{
left:event.pageX-offset.left-(closestHandle.width()/2),
top:event.pageY-offset.top-
(closestHandle.height()/2)-
(parseInt(closestHandle.css("borderTopWidth"),10)||0)-
(parseInt(closestHandle.css("borderBottomWidth"),10)||0)+
(parseInt(closestHandle.css("marginTop"),10)||0)
};
if(!this.handles.hasClass("ui-state-hover")){
this._slide(event,index,normValue)}
this._animateOff=true;
return true},
_mouseStart:function(event){
return true},
_mouseDrag:function(event){
var position={x:event.pageX,y:event.pageY},
normValue=this._normValueFromMouse(position);
this._slide(event,this._handleIndex,normValue);
return false},
_mouseStop:function(event){
this.handles.removeClass("ui-state-active");
this._mouseSliding=false;
this._stop(event,this._handleIndex);
this._change(event,this._handleIndex);
this._handleIndex=null;
this._clickOffset=null;
this._animateOff=false;
return false},
_detectOrientation:function(){
this.orientation=(this.options.orientation==="vertical")?"vertical":"horizontal"},
_normValueFromMouse:function(position){
var pixelTotal,
pixelMouse,
percentMouse,
valueTotal,
valueMouse;
if(this.orientation==="horizontal"){
pixelTotal=this.elementSize.width;
pixelMouse=position.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)}else{
pixelTotal=this.elementSize.height;
pixelMouse=position.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)}
percentMouse=(pixelMouse/pixelTotal);
if(percentMouse>1){
percentMouse=1}
if(percentMouse<0){
percentMouse=0}
if(this.orientation==="vertical"){
percentMouse=1-percentMouse}
valueTotal=this._valueMax()-this._valueMin();
valueMouse=this._valueMin()+percentMouse*valueTotal;
return this._trimAlignValue(valueMouse)},
_start:function(event,index){
var uiHash={
handle:this.handles[index],
value:this.value()
};
if(this.options.values&&this.options.values.length){
uiHash.value=this.values(index);
uiHash.values=this.values()}
return this._trigger("start",event,uiHash)},
_slide:function(event,index,newVal){
var otherVal,
newValues,
allowed;
if(this.options.values&&this.options.values.length){
otherVal=this.values(index?0:1);
if((this.options.values.length===2&&this.options.range===true)&&
((index===0&&newVal>otherVal)||(index===1&&newVal<otherVal))
){
newVal=otherVal}
if(newVal!==this.values(index)){
newValues=this.values();
newValues[index]=newVal;
allowed=this._trigger("slide",event,{
handle:this.handles[index],
value:newVal,
values:newValues
});
otherVal=this.values(index?0:1);
if(allowed!==false){
this.values(index,newVal,true)}
}
}else{
if(newVal!==this.value()){
allowed=this._trigger("slide",event,{
handle:this.handles[index],
value:newVal
});
if(allowed!==false){
this.value(newVal)}
}
}
},
_stop:function(event,index){
var uiHash={
handle:this.handles[index],
value:this.value()
};
if(this.options.values&&this.options.values.length){
uiHash.value=this.values(index);
uiHash.values=this.values()}
this._trigger("stop",event,uiHash)},
_change:function(event,index){
if(!this._keySliding&&!this._mouseSliding){
var uiHash={
handle:this.handles[index],
value:this.value()
};
if(this.options.values&&this.options.values.length){
uiHash.value=this.values(index);
uiHash.values=this.values()}
this._trigger("change",event,uiHash)}
},
value:function(newValue){
if(arguments.length){
this.options.value=this._trimAlignValue(newValue);
this._refreshValue();
this._change(null,0);
return}
return this._value()},
values:function(index,newValue){
var vals,
newValues,
i;
if(arguments.length>1){
this.options.values[index]=this._trimAlignValue(newValue);
this._refreshValue();
this._change(null,index);
return}
if(arguments.length){
if($.isArray(arguments[0])){
vals=this.options.values;
newValues=arguments[0];
for(i=0;i<vals.length;i+=1){
vals[i]=this._trimAlignValue(newValues[i]);
this._change(null,i)}
this._refreshValue()}else{
if(this.options.values&&this.options.values.length){
return this._values(index)}else{
return this.value()}
}
}else{
return this._values()}
},
_setOption:function(key,value){
var i,
valsLength=0;
if($.isArray(this.options.values)){
valsLength=this.options.values.length}
$.Widget.prototype._setOption.apply(this,arguments);
switch(key){
case"disabled":
if(value){
this.handles.filter(".ui-state-focus").blur();
this.handles.removeClass("ui-state-hover");
this.handles.propAttr("disabled",true);
this.element.addClass("ui-disabled")}else{
this.handles.propAttr("disabled",false);
this.element.removeClass("ui-disabled")}
break;
case"orientation":
this._detectOrientation();
this.element
.removeClass("ui-slider-horizontal ui-slider-vertical")
.addClass("ui-slider-"+this.orientation);
this._refreshValue();
break;
case"value":
this._animateOff=true;
this._refreshValue();
this._change(null,0);
this._animateOff=false;
break;
case"values":
this._animateOff=true;
this._refreshValue();
for(i=0;i<valsLength;i+=1){
this._change(null,i)}
this._animateOff=false;
break}
},
_value:function(){
var val=this.options.value;
val=this._trimAlignValue(val);
return val},
_values:function(index){
var val,
vals,
i;
if(arguments.length){
val=this.options.values[index];
val=this._trimAlignValue(val);
return val}else{
vals=this.options.values.slice();
for(i=0;i<vals.length;i+=1){
vals[i]=this._trimAlignValue(vals[i])}
return vals}
},
_trimAlignValue:function(val){
if(val<=this._valueMin()){
return this._valueMin()}
if(val>=this._valueMax()){
return this._valueMax()}
var step=(this.options.step>0)?this.options.step:1,
valModStep=(val-this._valueMin())%step,
alignValue=val-valModStep;
if(Math.abs(valModStep)*2>=step){
alignValue+=(valModStep>0)?step:(-step)}
return parseFloat(alignValue.toFixed(5))},
_valueMin:function(){
return this.options.min},
_valueMax:function(){
return this.options.max},
_refreshValue:function(){
var oRange=this.options.range,
o=this.options,
self=this,
animate=(!this._animateOff)?o.animate:false,
valPercent,
_set={},
lastValPercent,
value,
valueMin,
valueMax;
if(this.options.values&&this.options.values.length){
this.handles.each(function(i,j){
valPercent=(self.values(i)-self._valueMin())/(self._valueMax()-self._valueMin())*100;
_set[self.orientation==="horizontal"?"left":"bottom"]=valPercent+"%";
$(this).stop(1,1)[animate?"animate":"css"](_set,o.animate);
if(self.options.range===true){
if(self.orientation==="horizontal"){
if(i===0){
self.range.stop(1,1)[animate?"animate":"css"]({left:valPercent+"%"},o.animate)}
if(i===1){
self.range[animate?"animate":"css"]({width:(valPercent-lastValPercent)+"%"},{queue:false,duration:o.animate})}
}else{
if(i===0){
self.range.stop(1,1)[animate?"animate":"css"]({bottom:(valPercent)+"%"},o.animate)}
if(i===1){
self.range[animate?"animate":"css"]({height:(valPercent-lastValPercent)+"%"},{queue:false,duration:o.animate})}
}
}
lastValPercent=valPercent})}else{
value=this.value();
valueMin=this._valueMin();
valueMax=this._valueMax();
valPercent=(valueMax!==valueMin)?
(value-valueMin)/(valueMax-valueMin)*100:
0;
_set[self.orientation==="horizontal"?"left":"bottom"]=valPercent+"%";
this.handle.stop(1,1)[animate?"animate":"css"](_set,o.animate);
if(oRange==="min"&&this.orientation==="horizontal"){
this.range.stop(1,1)[animate?"animate":"css"]({width:valPercent+"%"},o.animate)}
if(oRange==="max"&&this.orientation==="horizontal"){
this.range[animate?"animate":"css"]({width:(100-valPercent)+"%"},{queue:false,duration:o.animate})}
if(oRange==="min"&&this.orientation==="vertical"){
this.range.stop(1,1)[animate?"animate":"css"]({height:valPercent+"%"},o.animate)}
if(oRange==="max"&&this.orientation==="vertical"){
this.range[animate?"animate":"css"]({height:(100-valPercent)+"%"},{queue:false,duration:o.animate})}
}
}
});
$.extend($.ui.slider,{
version:"1.8.16"
})}(jQuery));
(function($,undefined){
var tabId=0,
listId=0;
function getNextTabId(){
return++tabId}
function getNextListId(){
return++listId}
$.widget("ui.tabs",{
options:{
add:null,
ajaxOptions:null,
cache:false,
cookie:null,collapsible:false,
disable:null,
disabled:[],
enable:null,
event:"click",
fx:null,idPrefix:"ui-tabs-",
load:null,
panelTemplate:"<div></div>",
remove:null,
select:null,
show:null,
spinner:"<em>Loading&#8230;</em>",
tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"
},
_create:function(){
this._tabify(true)},
_setOption:function(key,value){
if(key=="selected"){
if(this.options.collapsible&&value==this.options.selected){
return}
this.select(value)}else{
this.options[key]=value;
this._tabify()}
},
_tabId:function(a){
return a.title&&a.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||
this.options.idPrefix+getNextTabId()},
_sanitizeSelector:function(hash){
return hash.replace(/:/g,"\\:")},
_cookie:function(){
var cookie=this.cookie||
(this.cookie=this.options.cookie.name||"ui-tabs-"+getNextListId());
return $.cookie.apply(null,[cookie].concat($.makeArray(arguments)))},
_ui:function(tab,panel){
return{
tab:tab,
panel:panel,
index:this.anchors.index(tab)
}},
_cleanup:function(){
this.lis.filter(".ui-state-processing")
.removeClass("ui-state-processing")
.find("span:data(label.tabs)")
.each(function(){
var el=$(this);
el.html(el.data("label.tabs")).removeData("label.tabs")})},
_tabify:function(init){
var self=this,
o=this.options,
fragmentId=/^#.+/;
this.list=this.element.find("ol,ul").eq(0);
this.lis=$(" > li:has(a[href])",this.list);
this.anchors=this.lis.map(function(){
return $("a",this)[0]});
this.panels=$([]);
this.anchors.each(function(i,a){
var href=$(a).attr("href");
var hrefBase=href.split("#")[0],
baseEl;
if(hrefBase&&(hrefBase===location.toString().split("#")[0]||
(baseEl=$("base")[0])&&hrefBase===baseEl.href)){
href=a.hash;
a.href=href}
if(fragmentId.test(href)){
self.panels=self.panels.add(self.element.find(self._sanitizeSelector(href)))}else if(href&&href!=="#"){
$.data(a,"href.tabs",href);
$.data(a,"load.tabs",href.replace(/#.*$/,""));
var id=self._tabId(a);
a.href="#"+id;
var $panel=self.element.find("#"+id);
if(!$panel.length){
$panel=$(o.panelTemplate)
.attr("id",id)
.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom")
.insertAfter(self.panels[i-1]||self.list);
$panel.data("destroy.tabs",true)}
self.panels=self.panels.add($panel)}else{
o.disabled.push(i)}
});
if(init){
this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all");
this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");
this.lis.addClass("ui-state-default ui-corner-top");
this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom");
if(o.selected===undefined){
if(location.hash){
this.anchors.each(function(i,a){
if(a.hash==location.hash){
o.selected=i;
return false}
})}
if(typeof o.selected!=="number"&&o.cookie){
o.selected=parseInt(self._cookie(),10)}
if(typeof o.selected!=="number"&&this.lis.filter(".ui-tabs-selected").length){
o.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))}
o.selected=o.selected||(this.lis.length?0:-1)}else if(o.selected===null){o.selected=-1}
o.selected=((o.selected>=0&&this.anchors[o.selected])||o.selected<0)
?o.selected
:0;
o.disabled=$.unique(o.disabled.concat(
$.map(this.lis.filter(".ui-state-disabled"),function(n,i){
return self.lis.index(n)})
)).sort();
if($.inArray(o.selected,o.disabled)!=-1){
o.disabled.splice($.inArray(o.selected,o.disabled),1)}
this.panels.addClass("ui-tabs-hide");
this.lis.removeClass("ui-tabs-selected ui-state-active");
if(o.selected>=0&&this.anchors.length){
self.element.find(self._sanitizeSelector(self.anchors[o.selected].hash)).removeClass("ui-tabs-hide");
this.lis.eq(o.selected).addClass("ui-tabs-selected ui-state-active");
self.element.queue("tabs",function(){
self._trigger("show",null,
self._ui(self.anchors[o.selected],self.element.find(self._sanitizeSelector(self.anchors[o.selected].hash))[0]))});
this.load(o.selected)}
$(window).bind("unload",function(){
self.lis.add(self.anchors).unbind(".tabs");
self.lis=self.anchors=self.panels=null})}else{
o.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))}
this.element[o.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible");
if(o.cookie){
this._cookie(o.selected,o.cookie)}
for(var i=0,li;(li=this.lis[i]);i++){
$(li)[$.inArray(i,o.disabled)!=-1&&
!$(li).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled")}
if(o.cache===false){
this.anchors.removeData("cache.tabs")}
this.lis.add(this.anchors).unbind(".tabs");
if(o.event!=="mouseover"){
var addState=function(state,el){
if(el.is(":not(.ui-state-disabled)")){
el.addClass("ui-state-"+state)}
};
var removeState=function(state,el){
el.removeClass("ui-state-"+state)};
this.lis.bind("mouseover.tabs",function(){
addState("hover",$(this))});
this.lis.bind("mouseout.tabs",function(){
removeState("hover",$(this))});
this.anchors.bind("focus.tabs",function(){
addState("focus",$(this).closest("li"))});
this.anchors.bind("blur.tabs",function(){
removeState("focus",$(this).closest("li"))})}
var hideFx,showFx;
if(o.fx){
if($.isArray(o.fx)){
hideFx=o.fx[0];
showFx=o.fx[1]}else{
hideFx=showFx=o.fx}
}
function resetStyle($el,fx){
$el.css("display","");
if(!$.support.opacity&&fx.opacity){
$el[0].style.removeAttribute("filter")}
}
var showTab=showFx
?function(clicked,$show){
$(clicked).closest("li").addClass("ui-tabs-selected ui-state-active");
$show.hide().removeClass("ui-tabs-hide").animate(showFx,showFx.duration||"normal",function(){
resetStyle($show,showFx);
self._trigger("show",null,self._ui(clicked,$show[0]))})}
:function(clicked,$show){
$(clicked).closest("li").addClass("ui-tabs-selected ui-state-active");
$show.removeClass("ui-tabs-hide");
self._trigger("show",null,self._ui(clicked,$show[0]))};
var hideTab=hideFx
?function(clicked,$hide){
$hide.animate(hideFx,hideFx.duration||"normal",function(){
self.lis.removeClass("ui-tabs-selected ui-state-active");
$hide.addClass("ui-tabs-hide");
resetStyle($hide,hideFx);
self.element.dequeue("tabs")})}
:function(clicked,$hide,$show){
self.lis.removeClass("ui-tabs-selected ui-state-active");
$hide.addClass("ui-tabs-hide");
self.element.dequeue("tabs")};
this.anchors.bind(o.event+".tabs",function(){
var el=this,
$li=$(el).closest("li"),
$hide=self.panels.filter(":not(.ui-tabs-hide)"),
$show=self.element.find(self._sanitizeSelector(el.hash));
if(($li.hasClass("ui-tabs-selected")&&!o.collapsible)||
$li.hasClass("ui-state-disabled")||
$li.hasClass("ui-state-processing")||
self.panels.filter(":animated").length||
self._trigger("select",null,self._ui(this,$show[0]))===false){
this.blur();
return false}
o.selected=self.anchors.index(this);
self.abort();
if(o.collapsible){
if($li.hasClass("ui-tabs-selected")){
o.selected=-1;
if(o.cookie){
self._cookie(o.selected,o.cookie)}
self.element.queue("tabs",function(){
hideTab(el,$hide)}).dequeue("tabs");
this.blur();
return false}else if(!$hide.length){
if(o.cookie){
self._cookie(o.selected,o.cookie)}
self.element.queue("tabs",function(){
showTab(el,$show)});
self.load(self.anchors.index(this));
this.blur();
return false}
}
if(o.cookie){
self._cookie(o.selected,o.cookie)}
if($show.length){
if($hide.length){
self.element.queue("tabs",function(){
hideTab(el,$hide)})}
self.element.queue("tabs",function(){
showTab(el,$show)});
self.load(self.anchors.index(this))}else{
throw"jQuery UI Tabs: Mismatching fragment identifier."}
if($.browser.msie){
this.blur()}
});
this.anchors.bind("click.tabs",function(){
return false})},
_getIndex:function(index){
if(typeof index=="string"){
index=this.anchors.index(this.anchors.filter("[href$="+index+"]"))}
return index},
destroy:function(){
var o=this.options;
this.abort();
this.element
.unbind(".tabs")
.removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible")
.removeData("tabs");
this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");
this.anchors.each(function(){
var href=$.data(this,"href.tabs");
if(href){
this.href=href}
var $this=$(this).unbind(".tabs");
$.each(["href","load","cache"],function(i,prefix){
$this.removeData(prefix+".tabs")})});
this.lis.unbind(".tabs").add(this.panels).each(function(){
if($.data(this,"destroy.tabs")){
$(this).remove()}else{
$(this).removeClass([
"ui-state-default",
"ui-corner-top",
"ui-tabs-selected",
"ui-state-active",
"ui-state-hover",
"ui-state-focus",
"ui-state-disabled",
"ui-tabs-panel",
"ui-widget-content",
"ui-corner-bottom",
"ui-tabs-hide"
].join(" "))}
});
if(o.cookie){
this._cookie(null,o.cookie)}
return this},
add:function(url,label,index){
if(index===undefined){
index=this.anchors.length}
var self=this,
o=this.options,
$li=$(o.tabTemplate.replace(/#\{href\}/g,url).replace(/#\{label\}/g,label)),
id=!url.indexOf("#")?url.replace("#",""):this._tabId($("a",$li)[0]);
$li.addClass("ui-state-default ui-corner-top").data("destroy.tabs",true);
var $panel=self.element.find("#"+id);
if(!$panel.length){
$panel=$(o.panelTemplate)
.attr("id",id)
.data("destroy.tabs",true)}
$panel.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide");
if(index>=this.lis.length){
$li.appendTo(this.list);
$panel.appendTo(this.list[0].parentNode)}else{
$li.insertBefore(this.lis[index]);
$panel.insertBefore(this.panels[index])}
o.disabled=$.map(o.disabled,function(n,i){
return n>=index?++n:n});
this._tabify();
if(this.anchors.length==1){
o.selected=0;
$li.addClass("ui-tabs-selected ui-state-active");
$panel.removeClass("ui-tabs-hide");
this.element.queue("tabs",function(){
self._trigger("show",null,self._ui(self.anchors[0],self.panels[0]))});
this.load(0)}
this._trigger("add",null,this._ui(this.anchors[index],this.panels[index]));
return this},
remove:function(index){
index=this._getIndex(index);
var o=this.options,
$li=this.lis.eq(index).remove(),
$panel=this.panels.eq(index).remove();
if($li.hasClass("ui-tabs-selected")&&this.anchors.length>1){
this.select(index+(index+1<this.anchors.length?1:-1))}
o.disabled=$.map(
$.grep(o.disabled,function(n,i){
return n!=index}),
function(n,i){
return n>=index?--n:n});
this._tabify();
this._trigger("remove",null,this._ui($li.find("a")[0],$panel[0]));
return this},
enable:function(index){
index=this._getIndex(index);
var o=this.options;
if($.inArray(index,o.disabled)==-1){
return}
this.lis.eq(index).removeClass("ui-state-disabled");
o.disabled=$.grep(o.disabled,function(n,i){
return n!=index});
this._trigger("enable",null,this._ui(this.anchors[index],this.panels[index]));
return this},
disable:function(index){
index=this._getIndex(index);
var self=this,o=this.options;
if(index!=o.selected){
this.lis.eq(index).addClass("ui-state-disabled");
o.disabled.push(index);
o.disabled.sort();
this._trigger("disable",null,this._ui(this.anchors[index],this.panels[index]))}
return this},
select:function(index){
index=this._getIndex(index);
if(index==-1){
if(this.options.collapsible&&this.options.selected!=-1){
index=this.options.selected}else{
return this}
}
this.anchors.eq(index).trigger(this.options.event+".tabs");
return this},
load:function(index){
index=this._getIndex(index);
var self=this,
o=this.options,
a=this.anchors.eq(index)[0],
url=$.data(a,"load.tabs");
this.abort();
if(!url||this.element.queue("tabs").length!==0&&$.data(a,"cache.tabs")){
this.element.dequeue("tabs");
return}
this.lis.eq(index).addClass("ui-state-processing");
if(o.spinner){
var span=$("span",a);
span.data("label.tabs",span.html()).html(o.spinner)}
this.xhr=$.ajax($.extend({},o.ajaxOptions,{
url:url,
success:function(r,s){
self.element.find(self._sanitizeSelector(a.hash)).html(r);
self._cleanup();
if(o.cache){
$.data(a,"cache.tabs",true)}
self._trigger("load",null,self._ui(self.anchors[index],self.panels[index]));
try{
o.ajaxOptions.success(r,s)}
catch(e){}
},
error:function(xhr,s,e){
self._cleanup();
self._trigger("load",null,self._ui(self.anchors[index],self.panels[index]));
try{
o.ajaxOptions.error(xhr,s,index,a)}
catch(e){}
}
}));
self.element.dequeue("tabs");
return this},
abort:function(){
this.element.queue([]);
this.panels.stop(false,true);
this.element.queue("tabs",this.element.queue("tabs").splice(-2,2));
if(this.xhr){
this.xhr.abort();
delete this.xhr}
this._cleanup();
return this},
url:function(index,url){
this.anchors.eq(index).removeData("cache.tabs").data("load.tabs",url);
return this},
length:function(){
return this.anchors.length}
});
$.extend($.ui.tabs,{
version:"1.8.16"
});
$.extend($.ui.tabs.prototype,{
rotation:null,
rotate:function(ms,continuing){
var self=this,
o=this.options;
var rotate=self._rotate||(self._rotate=function(e){
clearTimeout(self.rotation);
self.rotation=setTimeout(function(){
var t=o.selected;
self.select(++t<self.anchors.length?t:0)},ms);
if(e){
e.stopPropagation()}
});
var stop=self._unrotate||(self._unrotate=!continuing
?function(e){
if(e.clientX){self.rotate(null)}
}
:function(e){
t=o.selected;
rotate()});
if(ms){
this.element.bind("tabsshow",rotate);
this.anchors.bind(o.event+".tabs",stop);
rotate()}else{
clearTimeout(self.rotation);
this.element.unbind("tabsshow",rotate);
this.anchors.unbind(o.event+".tabs",stop);
delete this._rotate;
delete this._unrotate}
return this}
})})(jQuery);


/* extensions/porte_plume/javascript/xregexp-min.js */
var XRegExp;if(!XRegExp){(function(){XRegExp=function(r,l){if(XRegExp.isRegExp(r)){if(l!==undefined){throw TypeError("can't supply flags when constructing one RegExp from another")}return r.addFlags("")}if(h){throw Error("can't call the XRegExp constructor within token definition functions")}var l=l||"",k=[],s=0,p=XRegExp.OUTSIDE_CLASS,m={hasNamedCapture:false,captureNames:[],hasFlag:function(u){if(u.length>1){throw SyntaxError("flag can't be more than one character")}return l.indexOf(u)>-1}},n,q,o,t;while(s<r.length){n=j(r,s,p,m);if(n){k.push(n.output);s+=Math.max(n.matchLength,1)}else{o=r.charAt(s);if(q=i.exec.call(f[p],r.slice(s))){k.push(q[0]);s+=q[0].length}else{if(o==="["){p=XRegExp.INSIDE_CLASS}else{if(o==="]"){p=XRegExp.OUTSIDE_CLASS}}k.push(o);s++}}}t=RegExp(k.join(""),i.replace.call(l,e,""));t._xregexp={source:r,captureNames:m.hasNamedCapture?m.captureNames:null};return t};var b=/\$(?:(\d\d?|[$&`'])|{([$\w]+)})/g,e=/[^gimy]+|(.)(?=[\s\S]*\1)/g,a=/()??/.exec("")[1]===undefined,c=function(){var k=/^/g;k.test("");return!k.lastIndex}(),d=function(){var k=/x/g;"x".replace(k,"");return!k.lastIndex}(),i={exec:RegExp.prototype.exec,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split,test:RegExp.prototype.test},j=function(s,n,r,q){var p=g.length,l,o,k;h=true;while(p--){o=g[p];if((r&o.scope)&&(!o.trigger||o.trigger.call(q))){o.pattern.lastIndex=n;k=o.pattern.exec(s);if(k&&k.index===n){l={output:o.handler.call(q,k,r),matchLength:k[0].length};break}}}h=false;return l},h=false,f={},g=[];XRegExp.INSIDE_CLASS=1;XRegExp.OUTSIDE_CLASS=2;f[XRegExp.INSIDE_CLASS]=/^(?:\\(?:[0-3][0-7]{0,2}|[4-7][0-7]?|x[\dA-Fa-f]{2}|u[\dA-Fa-f]{4}|c[A-Za-z]|[\s\S]))/;f[XRegExp.OUTSIDE_CLASS]=/^(?:\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9]\d*|x[\dA-Fa-f]{2}|u[\dA-Fa-f]{4}|c[A-Za-z]|[\s\S])|\(\?[:=!]|[?*+]\?|{\d+(?:,\d*)?}\??)/;XRegExp.addToken=function(n,m,l,k){g.push({pattern:XRegExp(n).addFlags("g"),handler:m,scope:l||XRegExp.OUTSIDE_CLASS,trigger:k||null})};RegExp.prototype.exec=function(o){var m=i.exec.apply(this,arguments),l,k;if(m){if(!a&&m.length>1&&XRegExp._indexOf(m,"")>-1){k=RegExp("^"+this.source+"$(?!\\s)",XRegExp._getNativeFlags(this));i.replace.call(m[0],k,function(){for(var p=1;p<arguments.length-2;p++){if(arguments[p]===undefined){m[p]=undefined}}})}if(this._xregexp&&this._xregexp.captureNames){for(var n=1;n<m.length;n++){l=this._xregexp.captureNames[n-1];if(l){m[l]=m[n]}}}if(!c&&this.global&&this.lastIndex>(m.index+m[0].length)){this.lastIndex--}}return m};if(!c){RegExp.prototype.test=function(l){var k=i.exec.call(this,l);if(k&&this.global&&this.lastIndex>(k.index+k[0].length)){this.lastIndex--}return!!k}}String.prototype.match=function(l){if(!XRegExp.isRegExp(l)){l=RegExp(l)}if(l.global){var k=i.match.apply(this,arguments);l.lastIndex=0;return k}return l.exec(this)};String.prototype.replace=function(m,n){var o=XRegExp.isRegExp(m),l,k,p;if(o&&typeof n.valueOf()==="string"&&n.indexOf("${")===-1&&d){return i.replace.apply(this,arguments)}if(!o){m=m+""}else{if(m._xregexp){l=m._xregexp.captureNames}}if(typeof n==="function"){k=i.replace.call(this,m,function(){if(l){arguments[0]=new String(arguments[0]);for(var q=0;q<l.length;q++){if(l[q]){arguments[0][l[q]]=arguments[q+1]}}}if(o&&m.global){m.lastIndex=arguments[arguments.length-2]+arguments[0].length}return n.apply(null,arguments)})}else{p=this+"";k=i.replace.call(p,m,function(){var q=arguments;return i.replace.call(n,b,function(s,r,v){if(r){switch(r){case"$":return"$";case"&":return q[0];case"`":return q[q.length-1].slice(0,q[q.length-2]);case"'":return q[q.length-1].slice(q[q.length-2]+q[0].length);default:var t="";r=+r;if(!r){return s}while(r>q.length-3){t=String.prototype.slice.call(r,-1)+t;r=Math.floor(r/10)}return(r?q[r]||"":"$")+t}}else{var u=+v;if(u<=q.length-3){return q[u]}u=l?XRegExp._indexOf(l,v):-1;return u>-1?q[u+1]:s}})})}if(o&&m.global){m.lastIndex=0}return k};String.prototype.split=function(o,k){if(!XRegExp.isRegExp(o)){return i.split.apply(this,arguments)}var q=this+"",m=[],p=0,n,l;if(k===undefined||+k<0){k=Infinity}else{k=Math.floor(+k);if(!k){return[]}}o=o.addFlags("g");while(n=o.exec(q)){if(o.lastIndex>p){m.push(q.slice(p,n.index));if(n.length>1&&n.index<q.length){Array.prototype.push.apply(m,n.slice(1))}l=n[0].length;p=o.lastIndex;if(m.length>=k){break}}if(!n[0].length){o.lastIndex++}}if(p===q.length){if(!i.test.call(o,"")||l){m.push("")}}else{m.push(q.slice(p))}return m.length>k?m.slice(0,k):m}})();RegExp.prototype.addFlags=function(b){var c=XRegExp(this.source,(b||"")+XRegExp._getNativeFlags(this)),a=this._xregexp;if(a){c._xregexp={source:a.source,captureNames:a.captureNames?a.captureNames.slice(0):null}}return c};RegExp.prototype.apply=function(b,a){return this.exec(a[0])};RegExp.prototype.call=function(a,b){return this.exec(b)};RegExp.prototype.forEachExec=function(e,f,c){var d=this.addFlags("g"),b=-1,a;while(a=d.exec(e)){f.call(c,a,++b,e,d);if(!a[0].length){d.lastIndex++}}if(this.global){this.lastIndex=0}};RegExp.prototype.validate=function(b){var a=RegExp("^(?:"+this.source+")$(?!\\s)",XRegExp._getNativeFlags(this));if(this.global){this.lastIndex=0}return b.search(a)===0};XRegExp.cache=function(c,a){var b="/"+c+"/"+(a||"");return XRegExp.cache[b]||(XRegExp.cache[b]=XRegExp(c,a))};XRegExp.escape=function(a){return a.replace(/[-[\]{}()*+?.\\^$|,#\s]/g,"\\$&")};XRegExp.freezeTokens=function(){XRegExp.addToken=null};XRegExp.isRegExp=function(a){return Object.prototype.toString.call(a)==="[object RegExp]"};XRegExp.matchWithinChain=function(e,a,b){var c;function d(g,l){var j=a[l].addFlags("g"),f=[],k,h;for(h=0;h<g.length;h++){if(b){k=[];j.forEachExec(g[h][0],function(i){i.index+=g[h].index;k.push(i)})}else{k=g[h].match(j)}if(k){f.push(k)}}f=Array.prototype.concat.apply([],f);if(a[l].global){a[l].lastIndex=0}return l===a.length-1?f:d(f,l+1)}if(b){c={"0":e,index:0}}return d([b?c:e],0)};XRegExp._getNativeFlags=function(a){return(a.global?"g":"")+(a.ignoreCase?"i":"")+(a.multiline?"m":"")+(a.extended?"x":"")+(a.sticky?"y":"")};XRegExp._indexOf=function(d,b,c){for(var a=c||0;a<d.length;a++){if(d[a]===b){return a}}return-1};(function(){var a=/^(?:[?*+]|{\d+(?:,\d*)?})\??/;XRegExp.addToken(/\(\?#[^)]*\)/,function(b){return a.test(b.input.slice(b.index+b[0].length))?"":"(?:)"});XRegExp.addToken(/\((?!\?)/,function(){this.captureNames.push(null);return"("});XRegExp.addToken(/\(\?<([$\w]+)>/,function(b){this.captureNames.push(b[1]);this.hasNamedCapture=true;return"("});XRegExp.addToken(/\\k<([\w$]+)>/,function(c){var b=XRegExp._indexOf(this.captureNames,c[1]);return b>-1?"\\"+(b+1)+(isNaN(c.input.charAt(c.index+c[0].length))?"":"(?:)"):c[0]});XRegExp.addToken(/\[\^?]/,function(b){return b[0]==="[]"?"\\b\\B":"[\\s\\S]"});XRegExp.addToken(/(?:\s+|#.*)+/,function(b){return a.test(b.input.slice(b.index+b[0].length))?"":"(?:)"},XRegExp.OUTSIDE_CLASS,function(){return this.hasFlag("x")});XRegExp.addToken(/\./,function(){return"[\\s\\S]"},XRegExp.OUTSIDE_CLASS,function(){return this.hasFlag("s")})})();XRegExp.version="1.2.0"};


/* extensions/porte_plume/javascript/jquery.markitup_pour_spip.js */

;(function($){
$.fn.markItUp=function(settings,extraSettings){
var options,ctrlKey,shiftKey,altKey;
ctrlKey=shiftKey=altKey=false;
options={id:'',
nameSpace:'',
root:'',
lang:'',
previewInWindow:'',previewAutoRefresh:true,
previewPosition:'after',
previewTemplatePath:'~/templates/preview.html',
previewParserPath:'',
previewParserVar:'data',
resizeHandle:true,
beforeInsert:'',
afterInsert:'',
onEnter:{},
onShiftEnter:{},
onCtrlEnter:{},
onTab:{},
markupSet:[{}]
};
$.extend(options,settings,extraSettings);
if(!options.root){
$('script').each(function(a,tag){
miuScript=$(tag).get(0).src.match(/(.*)jquery\.markitup(\.pack)?\.js$/);
if(miuScript!==null){
options.root=miuScript[1]}
})}
return this.each(function(){
var $$,textarea,levels,scrollPosition,caretPosition,caretEffectivePosition,
clicked,hash,header,footer,previewWindow,template,iFrame,abort,
before,after;
$$=$(this);
textarea=this;
levels=[];
abort=false;
scrollPosition=caretPosition=0;
options.previewParserPath=localize(options.previewParserPath);
options.previewTemplatePath=localize(options.previewTemplatePath);
function localize(data,inText){
if(inText){
return data.replace(/("|')~\//g,"$1"+options.root)}
return data.replace(/^~\//,options.root)}
function init(){
id='';nameSpace='';
if(options.id){
id='id="'+options.id+'"'}else if($$.attr("id")){
id='id="markItUp'+($$.attr("id").substr(0,1).toUpperCase())+($$.attr("id").substr(1))+'"'}
if(options.nameSpace){
nameSpace='class="'+options.nameSpace+'"'}
$$.wrap('<div '+nameSpace+'></div>');
$$.wrap('<div '+id+' class="markItUp"></div>');
$$.wrap('<div class="markItUpContainer"></div>');
$$.addClass("markItUpEditor");
header=$('<div class="markItUpHeader"></div>').insertBefore($$);
$(dropMenus(options.markupSet)).appendTo(header);
$(header).find("li.markItUpDropMenu ul:empty").parent().remove();
footer=$('<div class="markItUpFooter"></div>').insertAfter($$);
if(options.resizeHandle===true&&$.browser.safari!==true){
resizeHandle=$('<div class="markItUpResizeHandle"></div>')
.insertAfter($$)
.bind("mousedown",function(e){
var h=$$.height(),y=e.clientY,mouseMove,mouseUp;
mouseMove=function(e){
$$.css("height",Math.max(20,e.clientY+h-y)+"px");
return false};
mouseUp=function(e){
$("html").unbind("mousemove",mouseMove).unbind("mouseup",mouseUp);
return false};
$("html").bind("mousemove",mouseMove).bind("mouseup",mouseUp)});
footer.append(resizeHandle)}
$$.keydown(keyPressed).keyup(keyPressed);
$$.bind("insertion",function(e,settings){
if(settings.target!==false){
get()}
if(textarea===$.markItUp.focused){
markup(settings)}
});
$$.focus(function(){
$.markItUp.focused=this})}
function dropMenus(markupSet){
var ul=$('<ul></ul>'),i=0;
var lang=($$.attr('lang')||options.lang);
$('li:hover > ul',ul).css('display','block');
$.each(markupSet,function(){
var button=this,t='',title,li,j;
if((!lang||!button.lang||($.inArray(lang,button.lang)!=-1))
&&(!button.lang_not||($.inArray(lang,button.lang_not)==-1))){
title=(button.key)?(button.name||'')+' [Ctrl+'+button.key+']':(button.name||'');
key=(button.key)?'accesskey="'+button.key+'"':'';
if(button.separator){
li=$('<li class="markItUpSeparator">'+(button.separator||'')+'</li>').appendTo(ul)}else{
i++;
for(j=levels.length-1;j>=0;j--){
t+=levels[j]+"-"}
li=$('<li class="markItUpButton markItUpButton'+t+(i)+' '+(button.className||'')+'"><a href="" '+key+' title="'+title+'">'+(button.name||'')+'</a></li>')
.bind("contextmenu",function(){return false}).click(function(){
return false}).mouseup(function(){
if(button.call){
eval(button.call)()}
markup(button);
return false}).hover(function(){
$('> ul',this).show();
$(document).one('click',function(){$('ul ul',header).hide()}
)},function(){
$('> ul',this).hide()}
).appendTo(ul);
if(button.dropMenu){
levels.push(i);
$(li).addClass('markItUpDropMenu').append(dropMenus(button.dropMenu))}
}
}
});
levels.pop();
return ul}
function magicMarkups(string){
if(string){
string=string.toString();
string=string.replace(/\(\!\(([\s\S]*?)\)\!\)/g,
function(x,a){
var b=a.split('|!|');
if(altKey===true){
return(b[1]!==undefined)?b[1]:b[0]}else{
return(b[1]===undefined)?"":b[0]}
}
);
string=string.replace(/\[\!\[([\s\S]*?)\]\!\]/g,
function(x,a){
var b=a.split(':!:');
if(abort===true){
return false}
value=prompt(b[0],(b[1])?b[1]:'');
if(value===null){
abort=true}
return value}
);
return string}
return""}
function prepare(action){
if($.isFunction(action)){
action=action(hash)}
return magicMarkups(action)}
function build(string){
openWith=prepare(clicked.openWith);
placeHolder=prepare(clicked.placeHolder);
replaceWith=prepare(clicked.replaceWith);
closeWith=prepare(clicked.closeWith);
if(replaceWith!==""){
block=openWith+replaceWith+closeWith}else if(selection===''&&placeHolder!==''){
block=openWith+placeHolder+closeWith}else{
block=openWith+(string||selection)+closeWith}
return{block:block,
openWith:openWith,
replaceWith:replaceWith,
placeHolder:placeHolder,
closeWith:closeWith
}}
function selectWord(){
selectionBeforeAfter(/\s|[.,;:!¡?¿()]/);
selectionSave()}
function selectLine(){
selectionBeforeAfter(/\r?\n/);
selectionSave()}
function selectionRemoveLast(pattern){
if(!pattern)pattern=/\s/;
last=selection[selection.length-1];
if(last&&last.match(pattern)){
set(caretPosition,selection.length-1);
get();
$.extend(hash,{caretPosition:caretPosition,scrollPosition:scrollPosition})}
}
function selectionBeforeAfter(pattern){
if(!pattern)pattern=/\s/;
before=$$.val().substring(0,caretEffectivePosition);
after=$$.val().substring(caretEffectivePosition+selection.length-fixOperaBug(selection)-fixIeBug(selection));
before=before.split(pattern);
after=after.split(pattern)}
function selectionSave(){
nb_before=before?before[before.length-1].length:0;
nb_after=after?after[0].length:0;
nb=nb_before+selection.length+nb_after-fixIeBug(selection);
caretPosition=caretPosition-nb_before;
set(caretPosition,nb);
get();
$.extend(hash,{selection:selection,caretPosition:caretPosition,scrollPosition:scrollPosition})}
function markup(button){
var len,j,n,i;
hash=clicked=button;
get();
$.extend(hash,{line:"",
root:options.root,
textarea:textarea,
selection:(selection||''),
caretPosition:caretPosition,
ctrlKey:ctrlKey,
shiftKey:shiftKey,
altKey:altKey
}
);
if(button.selectionType){
if(button.selectionType=="word"){
if(!selection){
selectWord()}else{
selectionRemoveLast(/\s/)}
}
if(button.selectionType=="line"){
selectLine()}
if(button.selectionType=="return"){
selectionBeforeAfter(/\r?\n/);
before_last=before[before.length-1];
after='';
if(r=before_last.match(/^-([*#]+) ?(.*)$/)){
if(r[2]){
button.replaceWith="\n-"+r[1]+' ';
before_last=''}else{
button.replaceWith="\n"}
}else{
before_last='';
button.replaceWith="\n"}
before[before.length-1]=before_last;
selectionSave()}
}
prepare(options.beforeInsert);
prepare(clicked.beforeInsert);
if(ctrlKey===true&&shiftKey===true){
prepare(clicked.beforeMultiInsert)}
$.extend(hash,{line:1});
if((button.forceMultiline===true&&selection.length)
||(ctrlKey===true&&shiftKey===true)){
lines=selection.split(/\r?\n/);
for(j=0,n=lines.length,i=0;i<n;i++){
if($.trim(lines[i])!==''){
$.extend(hash,{line:++j,selection:lines[i]});
lines[i]=build(lines[i]).block}else{
lines[i]=""}
}
string={block:lines.join('\n')};
start=caretPosition;
len=string.block.length+(($.browser.opera)?n:0)}else if(ctrlKey===true){
string=build(selection);
start=caretPosition+string.openWith.length;
len=string.block.length-string.openWith.length-string.closeWith.length;
len-=fixIeBug(string.block)}else if(shiftKey===true){
string=build(selection);
start=caretPosition;
len=string.block.length;
len-=fixIeBug(string.block)}else{
string=build(selection);
start=caretPosition+string.block.length;
len=0;
start-=fixIeBug(string.block)}
if(selection===''){
start+=fixOperaBug(string.replaceWith)}
$.extend(hash,{caretPosition:caretPosition,scrollPosition:scrollPosition});
if(string.block!==selection&&abort===false){
insert(string.block);
set(start,len)}
get();
$.extend(hash,{line:'',selection:selection});
if((button.forceMultiline===true)
||(ctrlKey===true&&shiftKey===true)){
prepare(clicked.afterMultiInsert)}
prepare(clicked.afterInsert);
prepare(options.afterInsert);
if(previewWindow&&options.previewAutoRefresh){
refreshPreview()}
shiftKey=altKey=ctrlKey=abort=false}
function fixOperaBug(string){
if($.browser.opera){
return string.length-string.replace(/\n*/g,'').length}
return 0}
function fixIeBug(string){
if($.browser.msie){
return string.length-string.replace(/\r*/g,'').length}
return 0}
function insert(block){
if(document.selection){
var newSelection=document.selection.createRange();
newSelection.text=block}else{
$$.val($$.val().substring(0,caretEffectivePosition)+block+$$.val().substring(caretEffectivePosition+selection.length))}
}
function set(start,len){
if(textarea.createTextRange){
range=textarea.createTextRange();
range.collapse(true);
range.moveStart('character',start);
range.moveEnd('character',len);
range.select()}else if(textarea.setSelectionRange){
textarea.setSelectionRange(start,start+len)}
textarea.scrollTop=scrollPosition;
textarea.focus()}
function get(){
textarea.focus();
scrollPosition=textarea.scrollTop;
if(document.selection){
selection=document.selection.createRange().text;
if($.browser.msie){var range=document.selection.createRange(),rangeCopy=range.duplicate();
rangeCopy.moveToElementText(textarea);
caretPosition=-1;
while(rangeCopy.inRange(range)){rangeCopy.moveStart('character');
caretPosition++}
caretEffectivePosition=caretPosition}else{caretPosition=textarea.selectionStart;
lenSelection=selection.length;
set(0,caretPosition);
opBefore=document.selection.createRange().text;
caretEffectivePosition=opBefore.length-fixOperaBug(opBefore);
set(caretPosition,lenSelection);
selection=document.selection.createRange().text}
}else{caretPosition=textarea.selectionStart;
caretEffectivePosition=caretPosition;
selection=$$.val().substring(caretPosition,textarea.selectionEnd)}
return selection}
function preview(){
if(!previewWindow||previewWindow.closed){
if(options.previewInWindow){
previewWindow=window.open('','preview',options.previewInWindow)}else{
iFrame=$('<iframe class="markItUpPreviewFrame"></iframe>');
if(options.previewPosition=='after'){
iFrame.insertAfter(footer)}else{
iFrame.insertBefore(header)}
previewWindow=iFrame[iFrame.length-1].contentWindow||frame[iFrame.length-1]}
}else if(altKey===true){
if(iFrame){
iFrame.remove()}else{
previewWindow.close()}
previewWindow=iFrame=false}
if(!options.previewAutoRefresh){
refreshPreview()}
}
function refreshPreview(){
renderPreview()}
function renderPreview(){
var phtml;
if(options.previewParserPath!==''){
$.ajax({
type:'POST',
url:options.previewParserPath,
data:options.previewParserVar+'='+encodeURIComponent($$.val()),
success:function(data){
writeInPreview(localize(data,1))}
})}else{
if(!template){
$.ajax({
url:options.previewTemplatePath,
success:function(data){
writeInPreview(localize(data,1).replace(/<!-- content -->/g,$$.val()))}
})}
}
return false}
function writeInPreview(data){
if(previewWindow.document){
try{
sp=previewWindow.document.documentElement.scrollTop
}catch(e){
sp=0}
var h="test";
previewWindow.document.open();
previewWindow.document.write(data);
previewWindow.document.close();
previewWindow.document.documentElement.scrollTop=sp}
if(options.previewInWindow){
previewWindow.focus()}
}
function keyPressed(e){
if(e.type==='keydown'){
if(e.which===18){e.altKey=true}if(e.which===17){e.ctrlKey=true}if(e.which===16){e.shiftKey=true}}
shiftKey=e.shiftKey;
altKey=e.altKey;
ctrlKey=(!(e.altKey&&e.ctrlKey))?e.ctrlKey:false;
if(e.type==='keydown'){
if(ctrlKey===true){
li=$("a[accesskey="+String.fromCharCode(e.which)+"]",header).parent('li');
if(li.length!==0){
ctrlKey=false;
li.triggerHandler('mouseup');
return false}
}
if(!$.browser.opera){
if(e.which===13||e.which===10){if(ctrlKey===true){ctrlKey=false;
markup(options.onCtrlEnter);
return options.onCtrlEnter.keepDefault}else if(shiftKey===true){shiftKey=false;
markup(options.onShiftEnter);
return options.onShiftEnter.keepDefault}else{markup(options.onEnter);
return options.onEnter.keepDefault}
}
if(e.which===9){if(shiftKey==true||ctrlKey==true||altKey==true){return false}
markup(options.onTab);
return options.onTab.keepDefault}
}
}
}
init()})};
$.fn.markItUpRemove=function(){
return this.each(function(){
$$=$(this).unbind().removeClass('markItUpEditor');
$$.parent('div').parent('div.markItUp').parent('div').replaceWith($$)}
)};
$.markItUp=function(settings){
var options={target:false};
$.extend(options,settings);
if(options.target){
return $(options.target).each(function(){
$(this).focus();
$(this).trigger('insertion',[options])})}else{
$('textarea').trigger('insertion',[options])}
}})(jQuery);


/* extensions/porte_plume/javascript/jquery.previsu_spip.js */
;(function($){
$.fn.previsu_spip=function(settings){
var options;
options={
previewParserPath:'',
previewParserVar:'data',
textEditer:'Editer',
textVoir:'Voir'
};
$.extend(options,settings);
return this.each(function(){
var $$,textarea,tabs,preview;
$$=$(this);
textarea=this;
function init(){
$$.addClass("pp_previsualisation");
tabs=$('<div class="markItUpTabs"></div>').prependTo($$.parent());
$(tabs).append(
'<a href="#previsuVoir" class="previsuVoir">'+options.textVoir+'</a>'+
'<a href="#previsuEditer" class="previsuEditer on">'+options.textEditer+'</a>'
);
preview=$('<div class="markItUpPreview"></div>').insertAfter(tabs);
preview.hide();
$('.previsuVoir').click(function(){
mark=$(this).parent().parent();
objet=mark.parents('.formulaire_spip')[0].className.match(/formulaire_editer_(\w+)/);
champ=mark.parents('li')[0].className.match(/editer_(\w+)/);
$(mark).find('.markItUpPreview').height(
$(mark).find('.markItUpHeader').height()
+$(mark).find('.markItUpEditor').height()
+$(mark).find('.markItUpFooter').height()
);
$(mark).find('.markItUpHeader').hide();
$(mark).find('.markItUpEditor').hide();
$(mark).find('.markItUpFooter').hide();
$(this).addClass('on').next().removeClass('on');
$(mark).find('.markItUpPreview').show()
.addClass('ajaxLoad')
.html(renderPreview(
$(mark).find('textarea.pp_previsualisation').val(),
champ[1].toUpperCase(),
objet[1])
)
.removeClass('ajaxLoad');
return false});
$('.previsuEditer').click(function(){
mark=$(this).parent().parent();
$(mark).find('.markItUpPreview').hide();
$(mark).find('.markItUpHeader').show();
$(mark).find('.markItUpEditor').show();
$(mark).find('.markItUpFooter').show();
$(this).addClass('on').prev().removeClass('on');
return false})}
function renderPreview(val,champ,objet){
var phtml;
if(options.previewParserPath!==''){
$.ajax({
type:'POST',
async:false,
url:options.previewParserPath,
data:'champ='+champ
+'&objet='+objet
+'&'+options.previewParserVar+'='+encodeURIComponent(val),
success:function(data){
phtml=data}
})}
return phtml}
init()})}})(jQuery);


/* page=porte_plume_start.js(lang=fr) */
barre_outils_edition={"nameSpace":"edition","previewAutoRefresh":false,"onEnter":{"keepDefault":false,"selectionType":"return","replaceWith":"\n"}
,"onShiftEnter":{"keepDefault":false,"replaceWith":"\n_ "}
,"onCtrlEnter":{"keepDefault":false,"replaceWith":"\n\n"}
,"onTab":{"keepDefault":false,"replaceWith":"	"}
,"markupSet":[{"name":"Transformer en {{{intertitre}}}","key":"H","className":"outil_header1","openWith":"\n{{{","closeWith":"}}}\n","selectionType":"line"}
,{"name":"Mettre en {{gras}}","key":"B","className":"outil_bold","replaceWith":function(h){return espace_si_accolade(h,'{{','}}')},"selectionType":"word"}
,{"name":"Mettre en {italique}","key":"I","className":"outil_italic","replaceWith":function(h){return espace_si_accolade(h,'{','}')},"selectionType":"word"}
,{"name":"Mettre en liste","className":"outil_liste_ul","replaceWith":function(h){return outil_liste(h,'*')},"selectionType":"line","forceMultiline":true,"dropMenu":[{"id":"liste_ol","name":"Mettre en liste numérotée","className":"outil_liste_ol","replaceWith":function(h){return outil_liste(h,'#')},"display":true,"selectionType":"line","forceMultiline":true}
,{"id":"indenter","name":"Indenter une liste","className":"outil_indenter","replaceWith":function(h){return outil_indenter(h)},"display":true,"selectionType":"line","forceMultiline":true}
,{"id":"desindenter","name":"Désindenter une liste","className":"outil_desindenter","replaceWith":function(h){return outil_desindenter(h)},"display":true,"selectionType":"line","forceMultiline":true}
]
}
,{"separator":"---------------"}
,{"name":"Transformer en [lien hypertexte->http://...]","key":"L","className":"outil_link","openWith":"[","closeWith":"->[![Veuillez indiquer l'adresse de votre lien (vous pouvez indiquer une adresse Internet sous la forme http://www.monsite.com, une adresse courriel, ou simplement indiquer le numéro d'un article de ce site.]!]]"}
,{"name":"Transformer en [[Note de bas de page]]","className":"outil_notes","openWith":"[[","closeWith":"]]","selectionType":"word"}
,{"separator":"---------------"}
,{"name":"<quote>Citer un message</quote>","key":"Q","className":"outil_quote","openWith":"\n<quote>","closeWith":"</quote>\n","selectionType":"word"}
,{"name":"Entourer de « guillemets »","className":"outil_guillemets","openWith":"«","closeWith":"»","lang":["fr","eo","cpf","ar","es"]
,"selectionType":"word"}
,{"name":"Entourer de “guillemets de second niveau”","className":"outil_guillemets_simples","openWith":"“","closeWith":"”","lang":["fr","eo","cpf","ar","es"]
,"selectionType":"word"}
,{"name":"Entourer de « guillemets »","className":"outil_guillemets_de","openWith":"„","closeWith":"“","lang":["bg","de","pl","hr","src"]
,"selectionType":"word"}
,{"name":"Entourer de “guillemets de second niveau”","className":"outil_guillemets_de_simples","openWith":"&sbquo;","closeWith":"‘","lang":["bg","de","pl","hr","src"]
,"selectionType":"word"}
,{"name":"Entourer de « guillemets »","className":"outil_guillemets_simples","openWith":"“","closeWith":"”","lang_not":["fr","eo","cpf","ar","es","bg","de","pl","hr","src"]
,"selectionType":"word"}
,{"name":"Entourer de “guillemets de second niveau”","className":"outil_guillemets_uniques","openWith":"‘","closeWith":"’","lang_not":["fr","eo","cpf","ar","es","bg","de","pl","hr","src"]
,"selectionType":"word"}
,{"separator":"---------------"}
,{"name":"Insérer des caractères spécifiques","className":"outil_caracteres","dropMenu":[{"id":"A_grave","name":"Insérer un A accent grave majuscule","className":"outil_a_maj_grave","replaceWith":"À","display":true,"lang":["fr","eo","cpf"]
}
,{"id":"E_aigu","name":"Insérer un E accent aigu majuscule","className":"outil_e_maj_aigu","replaceWith":"É","display":true,"lang":["fr","eo","cpf"]
}
,{"id":"E_grave","name":"Insérer un E majuscule accent grave","className":"outil_e_maj_grave","replaceWith":"È","display":true,"lang":["fr","eo","cpf"]
}
,{"id":"aelig","name":"Insérer un E dans l'A","className":"outil_aelig","replaceWith":"æ","display":true,"lang":["fr","eo","cpf"]
}
,{"id":"AElig","name":"Insérer un E dans l'A majuscule","className":"outil_aelig_maj","replaceWith":"Æ","display":true,"lang":["fr","eo","cpf"]
}
,{"id":"oe","name":"Insérer un E dans l'O","className":"outil_oe","replaceWith":"œ","display":true,"lang":["fr"]
}
,{"id":"OE","name":"Insérer un E dans l'O majuscule","className":"outil_oe_maj","replaceWith":"Œ","display":true,"lang":["fr"]
}
,{"id":"Ccedil","name":"Insérer un C cédille majuscule","className":"outil_ccedil_maj","replaceWith":"Ç","display":true,"lang":["fr","eo","cpf"]
}
,{"id":"uppercase","name":"Passer en majuscules","className":"outil_uppercase","replaceWith":function(markitup){return markitup.selection.toUpperCase()},"display":true,"lang":["fr","en"]
}
,{"id":"lowercase","name":"Passer en minuscules","className":"outil_lowercase","replaceWith":function(markitup){return markitup.selection.toLowerCase()},"display":true,"lang":["fr","en"]
}
]
}
]
}
function outil_liste(h,c){
if((s=h.selection)&&(r=s.match(/^-([*#]+) (.*)$/))){
r[1]=r[1].replace(/[#*]/g,c);
s='-'+r[1]+' '+r[2]}else{
s='-'+c+' '+s}
return s}
function outil_indenter(h){
if(s=h.selection){
if(s.substr(0,2)=='-*'){
s='-**'+s.substr(2)}else if(s.substr(0,2)=='-#'){
s='-##'+s.substr(2)}else{
s='-* '+s}
}
return s}
function outil_desindenter(h){
if(s=h.selection){
if(s.substr(0,3)=='-**'){
s='-*'+s.substr(3)}else if(s.substr(0,3)=='-* '){
s=s.substr(3)}else if(s.substr(0,3)=='-##'){
s='-#'+s.substr(3)}else if(s.substr(0,3)=='-# '){
s=s.substr(3)}
}
return s}
function espace_si_accolade(h,openWith,closeWith){
if(s=h.selection){
if(s.charAt(0)=='{'){
return openWith+' '+s+' '+closeWith}
else if(c=h.textarea.selectionStart){
if(h.textarea.value.charAt(c-1)=='{'){
return' '+openWith+s+closeWith+' '}
}
}
return openWith+s+closeWith}
barre_outils_forum={"nameSpace":"forum","previewAutoRefresh":false,"onEnter":{"keepDefault":false,"selectionType":"return","replaceWith":"\n"}
,"onShiftEnter":{"keepDefault":false,"replaceWith":"\n_ "}
,"onCtrlEnter":{"keepDefault":false,"replaceWith":"\n\n"}
,"onTab":{"keepDefault":false,"replaceWith":"	"}
,"markupSet":[{"name":"Mettre en {{gras}}","key":"B","className":"outil_bold","replaceWith":function(h){return espace_si_accolade(h,'{{','}}')},"selectionType":"word"}
,{"name":"Mettre en {italique}","key":"I","className":"outil_italic","replaceWith":function(h){return espace_si_accolade(h,'{','}')},"selectionType":"word"}
,{"separator":"---------------"}
,{"name":"Transformer en [lien hypertexte->http://...]","key":"L","className":"outil_link","openWith":"[","closeWith":"->[![Veuillez indiquer l'adresse de votre lien (vous pouvez indiquer une adresse Internet sous la forme http://www.monsite.com, une adresse courriel, ou simplement indiquer le numéro d'un article de ce site.]!]]"}
,{"separator":"---------------"}
,{"name":"<quote>Citer un message</quote>","key":"Q","className":"outil_quote","openWith":"\n<quote>","closeWith":"</quote>\n","selectionType":"word"}
,{"name":"Entourer de « guillemets »","className":"outil_guillemets","openWith":"«","closeWith":"»","lang":["fr","eo","cpf","ar","es"]
,"selectionType":"word"}
,{"name":"Entourer de “guillemets de second niveau”","className":"outil_guillemets_simples","openWith":"“","closeWith":"”","lang":["fr","eo","cpf","ar","es"]
,"selectionType":"word"}
,{"name":"Entourer de « guillemets »","className":"outil_guillemets_de","openWith":"„","closeWith":"“","lang":["bg","de","pl","hr","src"]
,"selectionType":"word"}
,{"name":"Entourer de “guillemets de second niveau”","className":"outil_guillemets_de_simples","openWith":"&sbquo;","closeWith":"‘","lang":["bg","de","pl","hr","src"]
,"selectionType":"word"}
,{"name":"Entourer de « guillemets »","className":"outil_guillemets_simples","openWith":"“","closeWith":"”","lang_not":["fr","eo","cpf","ar","es","bg","de","pl","hr","src"]
,"selectionType":"word"}
,{"name":"Entourer de “guillemets de second niveau”","className":"outil_guillemets_uniques","openWith":"‘","closeWith":"’","lang_not":["fr","eo","cpf","ar","es","bg","de","pl","hr","src"]
,"selectionType":"word"}
,{"separator":"---------------"}
]
}
function outil_liste(h,c){
if((s=h.selection)&&(r=s.match(/^-([*#]+) (.*)$/))){
r[1]=r[1].replace(/[#*]/g,c);
s='-'+r[1]+' '+r[2]}else{
s='-'+c+' '+s}
return s}
function outil_indenter(h){
if(s=h.selection){
if(s.substr(0,2)=='-*'){
s='-**'+s.substr(2)}else if(s.substr(0,2)=='-#'){
s='-##'+s.substr(2)}else{
s='-* '+s}
}
return s}
function outil_desindenter(h){
if(s=h.selection){
if(s.substr(0,3)=='-**'){
s='-*'+s.substr(3)}else if(s.substr(0,3)=='-* '){
s=s.substr(3)}else if(s.substr(0,3)=='-##'){
s='-#'+s.substr(3)}else if(s.substr(0,3)=='-# '){
s=s.substr(3)}
}
return s}
function espace_si_accolade(h,openWith,closeWith){
if(s=h.selection){
if(s.charAt(0)=='{'){
return openWith+' '+s+' '+closeWith}
else if(c=h.textarea.selectionStart){
if(h.textarea.value.charAt(c-1)=='{'){
return' '+openWith+s+closeWith+' '}
}
}
return openWith+s+closeWith}
;(function($){
$.fn.barre_outils=function(nom,settings){
options={
lang:'fr'
};
$.extend(options,settings);
return $(this)
.not('.markItUpEditor, .no_barre')
.markItUp(eval('barre_outils_'+nom),{lang:options.lang})};
$.fn.barre_previsualisation=function(settings){
options={
previewParserPath:"http://www.maiziereslesmetztt.fr/spip.php?page=porte_plume_preview",
textEditer:"&Eacute;diter",
textVoir:"Voir"
};
$.extend(options,settings);
return $(this)
.not('.pp_previsualisation, .no_previsualisation')
.previsu_spip(options)};
$(window).load(function(){
function barrebouilles(){
$('.formulaire_spip textarea.inserer_barre_forum').barre_outils('forum');
$('.formulaire_spip textarea.inserer_barre_edition').barre_outils('edition');
$('.formulaire_spip textarea.inserer_previsualisation').barre_previsualisation();
$('textarea.textarea_forum').barre_outils('forum');
$('.formulaire_forum textarea[name=texte]').barre_outils('forum');
$('.formulaire_spip textarea[name=texte]')
.barre_outils('edition')
.barre_previsualisation()}
barrebouilles();
onAjaxLoad(barrebouilles)})})(jQuery);


/* plugins/splickrbox/splickrbox.js */

function getObjectMethodClosure(object,method){
return function(arg){
return object[method](arg)}
}
$(document).ready(function(){
$(".splickrbox").splicker()});
jQuery.fn.splicker=function(){
return this.each(function(){
var img_cnt=$(this).find('img').size();
if(img_cnt>0){
var size=$(this).find('img').css('width').replace('px',"");
var box=new jQuery.SplickerBox(this,img_cnt,size)}
})}
jQuery.SplickerBox=function(e,m,s){
this.elt=e;
this.max=m;
$(this.elt).append('<div class="changeMe" style="position:absolute;left:0px;top:0px;"></div>');
this.c=$(this.elt).find('.changeMe');
this.rows=$('table',this.elt).get(0).rows.length-1;
this.cols=this.max/this.rows;
this.cptj=0;
this.last=0;
this.left=this.top=0;
if(s==0||s=='auto')
this.cote=100;
else
this.cote=s;
this.init()
}
jQuery.SplickerBox.prototype={
itere:function(){
this.cptj=Math.round(Math.random()*this.max)%this.max;
if(this.cptj==this.last)this.cptj=(this.last+this.cols)%this.max;
this.last=this.cptj;
$("#statusMsg").html("it"+this.cptj+"=?"+this.max)},
init:function(){
$(this.elt).find('img').css({display:'block',width:(this.cote/2)+"px",height:(this.cote/2)+"px",height:(this.cote/2)+"px",border:0});
$(this.c).css({width:this.cote+"px",height:this.cote+"px"});
this.start()},
start:function(){
setTimeout(getObjectMethodClosure(this,'doyourstuff'),(Math.random()*2)*1000)},
postpone:function(){
$(this.c).css('background-color','transparent');
this.itere();
$(this.c).empty();
this.start()},
doyourstuff:function(){
var or=$(this.elt).find('img').get(this.cptj);
var image=or.cloneNode(true);
image.style.width="100%";
image.style.height="100%";
var href=or.parentNode.href;
$(image).css("cursor","pointer").click(function(){
if(typeof imageArray!='undefined'&&href.match(/\.(jpeg|jpg|png|gif)$/i)){
TB_show('',href,'image')}else{
window.document.location=href}
});
$(this.c).append(image);
$(this.c).css({width:this.cote+'px',height:this.cote+'px'});
var colonne=this.cptj%this.cols;
this.left=colonne*this.cote/2;
l=(colonne-(colonne%2));
if((colonne==this.cols-1)&&this.cols%2>0)l=l-1;
l=l*this.cote/2;
$(this.c).css("left",l+"px");
var ligne=(this.cptj-(this.cptj%this.cols))/this.cols;
this.top=ligne*this.cote/2;
t=(ligne-(ligne%2));
if((ligne==this.rows-1)&&(this.rows%2>0))t=t-1;
t=t*this.cote/2
$(this.c).css("top",t+"px");
var back=$(this.elt.parentNode).css('background-color');
$(this.c).fadeIn(2000);
setTimeout(getObjectMethodClosure(this,'resize'),4000);
setTimeout(getObjectMethodClosure(this,'postpone'),7000)},
resize:function(){
var t=new Number(this.top);
var l=new Number(this.left);
jQuery(this.c).animate({top:t,left:l,width:this.cote/2,height:this.cote/2},1500)}
}


/* plugins/thickbox2/javascript/thickbox.js */

var DELAI=7000;var imageArray=[];
var FULL_S=false;
var DIAPO=false;
if(typeof TB_chemin_css=='undefined'){TB_chemin_css='thickbox.css'}
if(typeof TB_chemin_animation=='undefined'){TB_chemin_animation='circle_animation.gif'}
function TB_image(){
var t=this.title||this.name;
var longdesc=jQuery('img[longdesc]',this).attr('longdesc');
if(longdesc)
TB_show(t,longdesc);
else
TB_show(t,this.href,'image');
return false}
function TB_init(root){
jQuery("a.thickbox",root).each(
function(i){
this.onclick=TB_image;
var t=this.alt||this.name||null;
this.alt=t+" - view bigger version";
if(
(this.type&&this.type.match(/^image[\/](jpeg|gif|png)$/i))
||(this.href&&this.href.match(/\.(jpeg|jpg|png|gif)$/i))
){
imageArray.push([
this.href,
this.title||this.name
])}
}
)}
function TB_show(caption,url){try{
if(document.getElementById("TB_HideSelect")==null){
jQuery("body").append("<iframe id='TB_HideSelect'></iframe><div id='TB_overlay' title='Fermer'></div><div id='TB_window'></div>");
jQuery("#TB_overlay").click(TB_remove)}
jQuery(".TB_hide").hide();
if(caption==null){caption=""};
if(!FULL_S){
jQuery(window).scroll(TB_position)}
TB_overlaySize();
jQuery("body").append("<div id='TB_load'><img src='"+TB_chemin_animation+"' alt='loading' /></div>");
TB_load_position();
if(url.indexOf("?")!==-1){var baseURL=url.substr(0,url.indexOf("?"))}else{
var baseURL=url}
var urlString=/\.jpg|\.jpeg|\.png|\.gif|\.bmp/g;
var urlType=baseURL.toLowerCase().match(urlString);
if(urlType=='.jpg'||urlType=='.jpeg'||urlType=='.png'||urlType=='.gif'||urlType=='.bmp'){
TB_PrevCaption="";
TB_PrevURL="";
TB_PrevHTML="";
TB_NextCaption="";
TB_NextURL="";
TB_NextHTML="";
TB_imageCount="";
TB_Full_Size="";
TB_FoundURL=false;
if(imageArray.length>0){
TB_TempArray=imageArray;
for(TB_Counter=0;((TB_Counter<TB_TempArray.length)&&(TB_NextHTML==""));TB_Counter++){
var urlTypeTemp=TB_TempArray[TB_Counter][0].toLowerCase().match(urlString);
if(!(TB_TempArray[TB_Counter][0]==url)){
if(TB_FoundURL){
TB_NextCaption=TB_TempArray[TB_Counter][1];
TB_NextURL=TB_TempArray[TB_Counter][0];
TB_NextHTML="<span id='TB_next'>&nbsp;&nbsp;<a href='#' title='Image suivante'><strong> &gt;</strong></a></span>"}else{
TB_PrevCaption=TB_TempArray[TB_Counter][1];
TB_PrevURL=TB_TempArray[TB_Counter][0];
TB_PrevHTML="<span id='TB_prev'>&nbsp;&nbsp;<a href='#' title='Image precedente'><strong>&lt; </strong></a></span>"}
}else{
TB_FoundURL=true;
TB_imageCount=(TB_Counter+1)+" / "+(TB_TempArray.length)}
}
}
if(!(TB_NextHTML=="")){imageSuivante=new Image();
imageSuivante.src=TB_NextURL}
imgPreloader=new Image();
imgPreloader.onload=function(){
imgPreloader.onload=null;
TB_Big_Image=false;
var pagesize=TB_getPageSize();
var x=pagesize[0]-150;
var y=pagesize[1]-150;
var imageWidth=imgPreloader.width;
var imageHeight=imgPreloader.height;
IMAGE_WIDTH=imageWidth;
IMAGE_HEIGHT=imageHeight;
if(imageWidth>x){
TB_Big_Image=true;
imageHeight=imageHeight*(x/imageWidth);
imageWidth=x;
if(imageHeight>y){
TB_Big_Image=true;
imageWidth=imageWidth*(y/imageHeight);
imageHeight=y}
}else if(imageHeight>y){
TB_Big_Image=true;
imageWidth=imageWidth*(y/imageHeight);
imageHeight=y;
if(imageWidth>x){
TB_Big_Image=true;
imageHeight=imageHeight*(x/imageWidth);
imageWidth=x}
}
if(!DIAPO){
TB_Diapo="<span id='TB_Diapo'>&nbsp;&nbsp;<a href='#'><strong>[Diaporama]</strong></a></span>"}else{
TB_Diapo="<span id='TB_Diapo'>&nbsp;&nbsp;<a href='#' title='Stop'><strong>[Stop]</strong></a></span>"}
if(TB_Big_Image)
TB_Full_Size="<span id='TB_Full'>&nbsp;&nbsp;<a href='#'><strong>[Zoom]</strong></a></span>";
TB_WIDTH=imageWidth+20;
TB_HEIGHT=imageHeight+20;
jQuery("#TB_window").append("<a href='#' id='TB_ImageOff'><img id='TB_Image' src='"+url+"' width='"+imageWidth+"' height='"+imageHeight+"' alt='"+caption+" - next picture'/></a>"+"<div id='TB_legend' style='background-color:#fff'><div id='TB_caption'>"+caption+"</div><div id='TB_secondLine'>"+TB_imageCount+TB_Full_Size+TB_PrevHTML+TB_NextHTML+TB_Diapo+"</div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton'><img src='"+TB_chemin_close+"' alt='Fermer' /></a></div></div>");
jQuery("#TB_closeWindowButton").click(TB_remove);
jQuery("#TB_load").remove();
jQuery("#TB_window").fadeIn("slow");
if(!(TB_NextHTML=="")){
function goNext(){
FULL_S=false;
jQuery("#TB_window").remove();
jQuery("body").append("<div id='TB_window'></div>");
TB_show(TB_NextCaption,TB_NextURL);
return false}
jQuery("#TB_next").click(goNext)}
if(!(TB_PrevHTML=="")){
function goPrev(){
FULL_S=false;
if(jQuery(document).unbind('click',goPrev)){jQuery(document).unbind('click',goPrev)};
jQuery("#TB_window").remove();
jQuery("body").append("<div id='TB_window'></div>");
TB_show(TB_PrevCaption,TB_PrevURL);
return false}
jQuery("#TB_prev").click(goPrev)}
if(!(TB_Full_Size=="")){
function fullSize(){
var arrayPageScroll=TB_getPageScrollTop();
var pagesize=TB_getPageSize();
if(!FULL_S){
FULL_S=true;
TB_TOP=arrayPageScroll[1];
if((arrayPageScroll[0]+(pagesize[0]-IMAGE_WIDTH)/2)>0){
TB_LEFT=arrayPageScroll[0]+(pagesize[0]-IMAGE_WIDTH)/2}else{
TB_LEFT=50}
jQuery("#TB_window").animate({top:TB_TOP,left:TB_LEFT,width:(IMAGE_WIDTH+20),height:(IMAGE_HEIGHT+20)},1500);
jQuery("#TB_Image").animate({top:20,left:20,width:IMAGE_WIDTH,height:IMAGE_HEIGHT},1500,TB_recadre)}
else{
FULL_S=false;
jQuery("#TB_window").animate({top:(arrayPageScroll[1]+(pagesize[1]-TB_HEIGHT)/2),left:(arrayPageScroll[0]+(pagesize[0]-TB_WIDTH)/2),width:TB_WIDTH,height:TB_HEIGHT},1500);
jQuery("#TB_Image").animate({top:20,left:20,width:(TB_WIDTH-20),height:(TB_HEIGHT-20)},1500,TB_recadre)}
return false}
jQuery("#TB_Full").click(fullSize)}
if(!(TB_NextHTML=="")){
jQuery("#TB_ImageOff").click(goNext)}else{
jQuery("#TB_ImageOff").click(TB_remove)}
jQuery("#TB_Diapo").click(diaporama);
document.onkeydown=function(e){
if(e==null){keycode=event.keyCode}else{keycode=e.which}
if(keycode==27|keycode==67|keycode==70){TB_remove()}else if(keycode==190|keycode==39){if(!(TB_NextHTML=="")){
document.onkeydown="";
goNext()}
}else if(keycode==188|keycode==37){if(!(TB_PrevHTML=="")){
document.onkeydown="";
goPrev()}
}
}
TB_position();
jQuery("#TB_load").remove();
jQuery("#TB_window").css({display:"block"});
if(DIAPO)
setTimeout('diapo();',DELAI);
jQuery("#TB_ImageOff")[0].focus()}
imgPreloader.src=url}else{var queryString=url.replace(/^[^\?]+\?+/,'');
queryString=queryString.replace(/^[^\?]+\?+/,'');
var params=TB_parseQuery(queryString);
TB_WIDTH=(params['width']*1)+30;
TB_HEIGHT=(params['height']*1)+40;
ajaxContentW=TB_WIDTH-30;
ajaxContentH=TB_HEIGHT-45;
if(url.indexOf('TB_iframe')!=-1){
urlNoQuery=url.split('TB_');
jQuery("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a></div></div><iframe frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' id='TB_iframeContent' name='TB_iframeContent' style='width:"+(ajaxContentW+29)+"px;height:"+(ajaxContentH+17)+"px;' onload='TB_showIframe()'> </iframe>")}else{
jQuery("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'>close</a></div></div><div id='TB_ajaxContent' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px;'></div>")}
jQuery("#TB_closeWindowButton").click(TB_remove);
if(url.indexOf('TB_inline')!=-1){
jQuery("#TB_ajaxContent").html(jQuery('#'+params['inlineId']).html());
TB_position();
jQuery("#TB_load").remove();
jQuery("#TB_window").css({display:"block"})}else if(url.indexOf('TB_iframe')!=-1){
TB_position();
if(frames['TB_iframeContent']==undefined){jQuery("#TB_load").remove();
jQuery("#TB_window").css({display:"block"});
jQuery(document).keyup(function(e){var key=e.keyCode;if(key==27){TB_remove()}})}
}else{
jQuery("#TB_ajaxContent").load(url,function(){
TB_position();
jQuery("#TB_load").remove();
jQuery("#TB_window").css({display:"block"})})}
}
jQuery(window).resize(TB_position);
document.onkeyup=function(e){
if(e==null){keycode=event.keyCode}else{keycode=e.which}
if(keycode==27){TB_remove()}
}
}catch(e){
alert(e)}
}
function diaporama(){
if(!DIAPO){
DIAPO=true;
diapo()}else{
DIAPO=false}
return false}
function diapo(){
if(DIAPO){
if(TB_NextURL!=""){
jQuery("#TB_window").remove();
jQuery("body").append("<div id='TB_window'></div>");
TB_show(TB_NextCaption,TB_NextURL)}else DIAPO=false}
return false}
function TB_showIframe(){
jQuery("#TB_load").remove();
jQuery("#TB_window").css({display:"block"})}
function TB_remove(){
DIAPO=false;
FULL_S=false;
jQuery("#TB_imageOff").unbind('click');
jQuery("#TB_overlay").unbind('click');
jQuery("#TB_closeWindowButton").unbind('click');
jQuery("#TB_window").fadeOut("fast",function(){jQuery('#TB_window,#TB_overlay,#TB_HideSelect').remove()});
jQuery("#TB_load").remove();
jQuery(".TB_hide").show();
return false}
function TB_position(){
var pagesize=TB_getPageSize();
var arrayPageScroll=TB_getPageScrollTop();
var legendHeight=jQuery("#TB_legend").height();
if(FULL_S&&DIAPO){
FULL_S=false;
jQuery("#TB_window").animate({top:(arrayPageScroll[1]+(pagesize[1]-TB_HEIGHT)/2),left:(arrayPageScroll[0]+(pagesize[0]-TB_WIDTH)/2),width:TB_WIDTH,height:TB_HEIGHT},1500);
jQuery("#TB_Image").animate({top:20,left:20,width:(TB_WIDTH-20),height:(TB_HEIGHT-20)},1500,TB_recadre)}
if(!FULL_S||DIAPO){
jQuery("#TB_window").css({width:TB_WIDTH+"px",left:(arrayPageScroll[0]+(pagesize[0]-TB_WIDTH)/2)+"px",top:(arrayPageScroll[1]+(pagesize[1]-TB_HEIGHT)/2-legendHeight/2)+"px"})}
}
function TB_overlaySize(){
if(window.innerHeight&&window.scrollMaxY||window.innerWidth&&window.scrollMaxX){
yScroll=window.innerHeight+window.scrollMaxY;
xScroll=window.innerWidth+window.scrollMaxX;
var deff=document.documentElement;
var wff=(deff&&deff.clientWidth)||document.body.clientWidth||window.innerWidth||self.innerWidth;
var hff=(deff&&deff.clientHeight)||document.body.clientHeight||window.innerHeight||self.innerHeight;
xScroll-=(window.innerWidth-wff);
yScroll-=(window.innerHeight-hff)}else if(document.body.scrollHeight>document.body.offsetHeight||document.body.scrollWidth>document.body.offsetWidth){yScroll=document.body.scrollHeight;
xScroll=document.body.scrollWidth}else{yScroll=document.body.offsetHeight;
xScroll=document.body.offsetWidth}
jQuery("#TB_overlay").css({"height":yScroll+"px","width":xScroll+"px"});
jQuery("#TB_HideSelect").css({"height":yScroll+"px","width":xScroll+"px"})}
function TB_load_position(){
var pagesize=TB_getPageSize();
var arrayPageScroll=TB_getPageScrollTop();
jQuery("#TB_load")
.css({left:(arrayPageScroll[0]+(pagesize[0]-100)/2)+"px",top:(arrayPageScroll[1]+((pagesize[1]-100)/2))+"px"})
.css({display:"block"})}
function TB_parseQuery(query){
var Params=new Object();
if(!query)return Params;var Pairs=query.split(/[;&]/);
for(var i=0;i<Pairs.length;i++){
var KeyVal=Pairs[i].split('=');
if(!KeyVal||KeyVal.length!=2)continue;
var key=unescape(KeyVal[0]);
var val=unescape(KeyVal[1]);
val=val.replace(/\+/g,' ');
Params[key]=val}
return Params}
function TB_getPageScrollTop(){
var yScrolltop;
var xScrollleft;
if(self.pageYOffset||self.pageXOffset){
yScrolltop=self.pageYOffset;
xScrollleft=self.pageXOffset}else if(document.documentElement&&document.documentElement.scrollTop||document.documentElement.scrollLeft){yScrolltop=document.documentElement.scrollTop;
xScrollleft=document.documentElement.scrollLeft}else if(document.body){yScrolltop=document.body.scrollTop;
xScrollleft=document.body.scrollLeft}
arrayPageScroll=new Array(xScrollleft,yScrolltop)
return arrayPageScroll}
function TB_getPageSize(){
var de=document.documentElement;
var w=window.innerWidth||self.innerWidth||(de&&de.clientWidth)||document.body.clientWidth;
var h=window.innerHeight||self.innerHeight||(de&&de.clientHeight)||document.body.clientHeight
arrayPageSize=new Array(w,h)
return arrayPageSize}
function TB_recadre(){
TB_overlaySize();
TB_position()}


/* plugins/auto/jquery_corner/javascript/jquery.corner.js */

;(function($){
var style=document.createElement('div').style,
moz=style['MozBorderRadius']!==undefined,
webkit=style['WebkitBorderRadius']!==undefined,
radius=style['borderRadius']!==undefined||style['BorderRadius']!==undefined,
mode=document.documentMode||0,
noBottomFold=$.browser.msie&&(($.browser.version<8&&!mode)||mode<8),
expr=$.browser.msie&&(function(){
var div=document.createElement('div');
try{div.style.setExpression('width','0+0');div.style.removeExpression('width')}
catch(e){return false}
return true})();
$.support=$.support||{};
$.support.borderRadius=moz||webkit||radius;
function sz(el,p){
return parseInt($.css(el,p))||0};
function hex2(s){
s=parseInt(s).toString(16);
return(s.length<2)?'0'+s:s};
function gpc(node){
while(node){
var v=$.css(node,'backgroundColor'),rgb;
if(v&&v!='transparent'&&v!='rgba(0, 0, 0, 0)'){
if(v.indexOf('rgb')>=0){
rgb=v.match(/\d+/g);
return'#'+hex2(rgb[0])+hex2(rgb[1])+hex2(rgb[2])}
return v}
if(node.nodeName.toLowerCase()=='html')
break;
node=node.parentNode}
return'#ffffff'};
function getWidth(fx,i,width){
switch(fx){
case'round':return Math.round(width*(1-Math.cos(Math.asin(i/width))));
case'cool':return Math.round(width*(1+Math.cos(Math.asin(i/width))));
case'sharp':return width-i;
case'bite':return Math.round(width*(Math.cos(Math.asin((width-i-1)/width))));
case'slide':return Math.round(width*(Math.atan2(i,width/i)));
case'jut':return Math.round(width*(Math.atan2(width,(width-i-1))));
case'curl':return Math.round(width*(Math.atan(i)));
case'tear':return Math.round(width*(Math.cos(i)));
case'wicked':return Math.round(width*(Math.tan(i)));
case'long':return Math.round(width*(Math.sqrt(i)));
case'sculpt':return Math.round(width*(Math.log((width-i-1),width)));
case'dogfold':
case'dog':return(i&1)?(i+1):width;
case'dog2':return(i&2)?(i+1):width;
case'dog3':return(i&3)?(i+1):width;
case'fray':return(i%2)*width;
case'notch':return width;
case'bevelfold':
case'bevel':return i+1;
case'steep':return i/2+1;
case'invsteep':return(width-i)/2+1}
};
$.fn.corner=function(options){
if(this.length==0){
if(!$.isReady&&this.selector){
var s=this.selector,c=this.context;
$(function(){
$(s,c).corner(options)})}
return this}
return this.each(function(index){
var $this=$(this),
o=[$this.attr($.fn.corner.defaults.metaAttr)||'',options||''].join(' ').toLowerCase(),
keep=/keep/.test(o),cc=((o.match(/cc:(#[0-9a-f]+)/)||[])[1]),sc=((o.match(/sc:(#[0-9a-f]+)/)||[])[1]),width=parseInt((o.match(/(\d+)px/)||[])[1])||10,re=/round|bevelfold|bevel|notch|bite|cool|sharp|slide|jut|curl|tear|fray|wicked|sculpt|long|dog3|dog2|dogfold|dog|invsteep|steep/,
fx=((o.match(re)||['round'])[0]),
fold=/dogfold|bevelfold/.test(o),
edges={T:0,B:1},
opts={
TL:/top|tl|left/.test(o),TR:/top|tr|right/.test(o),
BL:/bottom|bl|left/.test(o),BR:/bottom|br|right/.test(o)
},
strip,pad,cssHeight,j,bot,d,ds,bw,i,w,e,c,common,$horz;
if(!opts.TL&&!opts.TR&&!opts.BL&&!opts.BR)
opts={TL:1,TR:1,BL:1,BR:1};
if($.fn.corner.defaults.useNative&&fx=='round'&&(radius||moz||webkit)&&!cc&&!sc){
if(opts.TL)
$this.css(radius?'border-top-left-radius':moz?'-moz-border-radius-topleft':'-webkit-border-top-left-radius',width+'px');
if(opts.TR)
$this.css(radius?'border-top-right-radius':moz?'-moz-border-radius-topright':'-webkit-border-top-right-radius',width+'px');
if(opts.BL)
$this.css(radius?'border-bottom-left-radius':moz?'-moz-border-radius-bottomleft':'-webkit-border-bottom-left-radius',width+'px');
if(opts.BR)
$this.css(radius?'border-bottom-right-radius':moz?'-moz-border-radius-bottomright':'-webkit-border-bottom-right-radius',width+'px');
return}
strip=document.createElement('div');
$(strip).css({
overflow:'hidden',
height:'1px',
minHeight:'1px',
fontSize:'1px',
backgroundColor:sc||'transparent',
borderStyle:'solid'
});
pad={
T:parseInt($.css(this,'paddingTop'))||0,R:parseInt($.css(this,'paddingRight'))||0,
B:parseInt($.css(this,'paddingBottom'))||0,L:parseInt($.css(this,'paddingLeft'))||0
};
if(typeof this.style.zoom!=undefined)this.style.zoom=1;if(!keep)this.style.border='none';
strip.style.borderColor=cc||gpc(this.parentNode);
cssHeight=$(this).outerHeight();
for(j in edges){
bot=edges[j];
if((bot&&(opts.BL||opts.BR))||(!bot&&(opts.TL||opts.TR))){
strip.style.borderStyle='none '+(opts[j+'R']?'solid':'none')+' none '+(opts[j+'L']?'solid':'none');
d=document.createElement('div');
$(d).addClass('jquery-corner');
ds=d.style;
bot?this.appendChild(d):this.insertBefore(d,this.firstChild);
if(bot&&cssHeight!='auto'){
if($.css(this,'position')=='static')
this.style.position='relative';
ds.position='absolute';
ds.bottom=ds.left=ds.padding=ds.margin='0';
if(expr)
ds.setExpression('width','this.parentNode.offsetWidth');
else
ds.width='100%'}
else if(!bot&&$.browser.msie){
if($.css(this,'position')=='static')
this.style.position='relative';
ds.position='absolute';
ds.top=ds.left=ds.right=ds.padding=ds.margin='0';
if(expr){
bw=sz(this,'borderLeftWidth')+sz(this,'borderRightWidth');
ds.setExpression('width','this.parentNode.offsetWidth - '+bw+'+ "px"')}
else
ds.width='100%'}
else{
ds.position='relative';
ds.margin=!bot?'-'+pad.T+'px -'+pad.R+'px '+(pad.T-width)+'px -'+pad.L+'px':
(pad.B-width)+'px -'+pad.R+'px -'+pad.B+'px -'+pad.L+'px'}
for(i=0;i<width;i++){
w=Math.max(0,getWidth(fx,i,width));
e=strip.cloneNode(false);
e.style.borderWidth='0 '+(opts[j+'R']?w:0)+'px 0 '+(opts[j+'L']?w:0)+'px';
bot?d.appendChild(e):d.insertBefore(e,d.firstChild)}
if(fold&&$.support.boxModel){
if(bot&&noBottomFold)continue;
for(c in opts){
if(!opts[c])continue;
if(bot&&(c=='TL'||c=='TR'))continue;
if(!bot&&(c=='BL'||c=='BR'))continue;
common={position:'absolute',border:'none',margin:0,padding:0,overflow:'hidden',backgroundColor:strip.style.borderColor};
$horz=$('<div/>').css(common).css({width:width+'px',height:'1px'});
switch(c){
case'TL':$horz.css({bottom:0,left:0});break;
case'TR':$horz.css({bottom:0,right:0});break;
case'BL':$horz.css({top:0,left:0});break;
case'BR':$horz.css({top:0,right:0});break}
d.appendChild($horz[0]);
var $vert=$('<div/>').css(common).css({top:0,bottom:0,width:'1px',height:width+'px'});
switch(c){
case'TL':$vert.css({left:width});break;
case'TR':$vert.css({right:width});break;
case'BL':$vert.css({left:width});break;
case'BR':$vert.css({right:width});break}
d.appendChild($vert[0])}
}
}
}
})};
$.fn.uncorner=function(){
if(radius||moz||webkit)
this.css(radius?'border-radius':moz?'-moz-border-radius':'-webkit-border-radius',0);
$('div.jquery-corner',this).remove();
return this};
$.fn.corner.defaults={
useNative:true,metaAttr:'data-corner'}})(jQuery);



