PageSourceSearch

https://www.citizenjazz.com/local/cache-js/aa461f5cdb565615e1baaeee2cad76a0.js?1790240015

js citizenjazz.com collected 2026-09-24 09:48:56 UTC 254,053 bytes, 10,732 lines download raw bytes

vendor: 144,529 bytes, lines 1-6631
1/* compact [
2	prive/javascript/jquery.js?1790239979
3	prive/javascript/jquery.form.js?1790239979
4	prive/javascript/jquery.autosave.js?1790239979
5	prive/javascript/jquery.placeholder-label.js?1790239979
6	prive/javascript/ajaxCallback.js?1790239979
7	prive/javascript/js.cookie.js?1790239979
8	plugins-dist/mediabox/lib/lity/lity.js?1790239979
9	plugins-dist/mediabox/lity/js/lity.mediabox.js?1790239979
10	plugins-dist/mediabox/javascript/spip.mediabox.js?1790239979
11	plugins/auto/saisies/v6.3.8/javascript/saisies.js?1790240014
12	plugins/auto/saisies/v6.3.8/javascript/saisies_textarea_counter.js?1790240014
13	plugins/auto/saisies/v6.3.8/javascript/saisies_afficher_si.js?1790240014
14] 55.8% */
15
16/* prive/javascript/jquery.js?1790239979 */
17
18(function(global,factory){
19"use strict";
20if(typeof module==="object"&&typeof module.exports==="object"){
21module.exports=global.document?
22factory(global,true):
23function(w){
24if(!w.document){
25throw new Error("jQuery requires a window with a document");
26}
27return factory(w);
28};
29}else{
30factory(global);
31}
32})(typeof window!=="undefined"?window:this,function(window,noGlobal){
33"use strict";
34var arr=[];
35var getProto=Object.getPrototypeOf;
36var slice=arr.slice;
37var flat=arr.flat?function(array){
38return arr.flat.call(array);
39}:function(array){
40return arr.concat.apply([],array);
41};
42var push=arr.push;
43var indexOf=arr.indexOf;
44var class2type={};
45var toString=class2type.toString;
46var hasOwn=class2type.hasOwnProperty;
47var fnToString=hasOwn.toString;
48var ObjectFunctionString=fnToString.call(Object);
49var support={};
50var isFunction=function isFunction(obj){
51return typeof obj==="function"&&typeof obj.nodeType!=="number"&&
52typeof obj.item!=="function";
53};
54var isWindow=function isWindow(obj){
55return obj!=null&&obj===obj.window;
56};
57var document=window.document;
58var preservedScriptAttributes={
59type:true,
60src:true,
61nonce:true,
62noModule:true
63};
64function DOMEval(code,node,doc){
65doc=doc||document;
66var i,val,
67script=doc.createElement("script");
68script.text=code;
69if(node){
70for(i in preservedScriptAttributes){
71val=node[i]||node.getAttribute&&node.getAttribute(i);
72if(val){
73script.setAttribute(i,val);
74}
75}
76}
77doc.head.appendChild(script).parentNode.removeChild(script);
78}
79function toType(obj){
80if(obj==null){
81return obj+"";
82}
83return typeof obj==="object"||typeof obj==="function"?
84class2type[toString.call(obj)]||"object":
85typeof obj;
86}
87var version="3.7.1",
88rhtmlSuffix=/HTML$/i,
89jQuery=function(selector,context){
90return new jQuery.fn.init(selector,context);
91};
92jQuery.fn=jQuery.prototype={
93jquery:version,
94constructor:jQuery,
95length:0,
96toArray:function(){
97return slice.call(this);
98},
99get:function(num){
100if(num==null){
101return slice.call(this);
102}
103return num<0?this[num+this.length]:this[num];
104},
105pushStack:function(elems){
106var ret=jQuery.merge(this.constructor(),elems);
107ret.prevObject=this;
108return ret;
109},
110each:function(callback){
111return jQuery.each(this,callback);
112},
113map:function(callback){
114return this.pushStack(jQuery.map(this,function(elem,i){
115return callback.call(elem,i,elem);
116}));
117},
118slice:function(){
119return this.pushStack(slice.apply(this,arguments));
120},
121first:function(){
122return this.eq(0);
123},
124last:function(){
125return this.eq(-1);
126},
127even:function(){
128return this.pushStack(jQuery.grep(this,function(_elem,i){
129return(i+1)%2;
130}));
131},
132odd:function(){
133return this.pushStack(jQuery.grep(this,function(_elem,i){
134return i%2;
135}));
136},
137eq:function(i){
138var len=this.length,
139j=+i+(i<0?len:0);
140return this.pushStack(j>=0&&j<len?[this[j]]:[]);
141},
142end:function(){
143return this.prevObject||this.constructor();
144},
145push:push,
146sort:arr.sort,
147splice:arr.splice
148};
149jQuery.extend=jQuery.fn.extend=function(){
150var options,name,src,copy,copyIsArray,clone,
151target=arguments[0]||{},
152i=1,
153length=arguments.length,
154deep=false;
155if(typeof target==="boolean"){
156deep=target;
157target=arguments[i]||{};
158i++;
159}
160if(typeof target!=="object"&&!isFunction(target)){
161target={};
162}
163if(i===length){
164target=this;
165i--;
166}
167for(;i<length;i++){
168if((options=arguments[i])!=null){
169for(name in options){
170copy=options[name];
171if(name==="__proto__"||target===copy){
172continue;
173}
174if(deep&&copy&&(jQuery.isPlainObject(copy)||
175(copyIsArray=Array.isArray(copy)))){
176src=target[name];
177if(copyIsArray&&!Array.isArray(src)){
178clone=[];
179}else if(!copyIsArray&&!jQuery.isPlainObject(src)){
180clone={};
181}else{
182clone=src;
183}
184copyIsArray=false;
185target[name]=jQuery.extend(deep,clone,copy);
186}else if(copy!==undefined){
187target[name]=copy;
188}
189}
190}
191}
192return target;
193};
194jQuery.extend({
195expando:"jQuery"+(version+Math.random()).replace(/\D/g,""),
196isReady:true,
197error:function(msg){
198throw new Error(msg);
199},
200noop:function(){},
201isPlainObject:function(obj){
202var proto,Ctor;
203if(!obj||toString.call(obj)!=="[object Object]"){
204return false;
205}
206proto=getProto(obj);
207if(!proto){
208return true;
209}
210Ctor=hasOwn.call(proto,"constructor")&&proto.constructor;
211return typeof Ctor==="function"&&fnToString.call(Ctor)===ObjectFunctionString;
212},
213isEmptyObject:function(obj){
214var name;
215for(name in obj){
216return false;
217}
218return true;
219},
220globalEval:function(code,options,doc){
221DOMEval(code,{nonce:options&&options.nonce},doc);
222},
223each:function(obj,callback){
224var length,i=0;
225if(isArrayLike(obj)){
226length=obj.length;
227for(;i<length;i++){
228if(callback.call(obj[i],i,obj[i])===false){
229break;
230}
231}
232}else{
233for(i in obj){
234if(callback.call(obj[i],i,obj[i])===false){
235break;
236}
237}
238}
239return obj;
240},
241text:function(elem){
242var node,
243ret="",
244i=0,
245nodeType=elem.nodeType;
246if(!nodeType){
247while((node=elem[i++])){
248ret+=jQuery.text(node);
249}
250}
251if(nodeType===1||nodeType===11){
252return elem.textContent;
253}
254if(nodeType===9){
255return elem.documentElement.textContent;
256}
257if(nodeType===3||nodeType===4){
258return elem.nodeValue;
259}
260return ret;
261},
262makeArray:function(arr,results){
263var ret=results||[];
264if(arr!=null){
265if(isArrayLike(Object(arr))){
266jQuery.merge(ret,
267typeof arr==="string"?
268[arr]:arr
269);
270}else{
271push.call(ret,arr);
272}
273}
274return ret;
275},
276inArray:function(elem,arr,i){
277return arr==null?-1:indexOf.call(arr,elem,i);
278},
279isXMLDoc:function(elem){
280var namespace=elem&&elem.namespaceURI,
281docElem=elem&&(elem.ownerDocument||elem).documentElement;
282return!rhtmlSuffix.test(namespace||docElem&&docElem.nodeName||"HTML");
283},
284merge:function(first,second){
285var len=+second.length,
286j=0,
287i=first.length;
288for(;j<len;j++){
289first[i++]=second[j];
290}
291first.length=i;
292return first;
293},
294grep:function(elems,callback,invert){
295var callbackInverse,
296matches=[],
297i=0,
298length=elems.length,
299callbackExpect=!invert;
300for(;i<length;i++){
301callbackInverse=!callback(elems[i],i);
302if(callbackInverse!==callbackExpect){
303matches.push(elems[i]);
304}
305}
306return matches;
307},
308map:function(elems,callback,arg){
309var length,value,
310i=0,
311ret=[];
312if(isArrayLike(elems)){
313length=elems.length;
314for(;i<length;i++){
315value=callback(elems[i],i,arg);
316if(value!=null){
317ret.push(value);
318}
319}
320}else{
321for(i in elems){
322value=callback(elems[i],i,arg);
323if(value!=null){
324ret.push(value);
325}
326}
327}
328return flat(ret);
329},
330guid:1,
331support:support
332});
333if(typeof Symbol==="function"){
334jQuery.fn[Symbol.iterator]=arr[Symbol.iterator];
335}
336jQuery.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),
337function(_i,name){
338class2type["[object "+name+"]"]=name.toLowerCase();
339});
340function isArrayLike(obj){
341var length=!!obj&&"length"in obj&&obj.length,
342type=toType(obj);
343if(isFunction(obj)||isWindow(obj)){
344return false;
345}
346return type==="array"||length===0||
347typeof length==="number"&&length>0&&(length-1)in obj;
348}
349function nodeName(elem,name){
350return elem.nodeName&&elem.nodeName.toLowerCase()===name.toLowerCase();
351}
352var pop=arr.pop;
353var sort=arr.sort;
354var splice=arr.splice;
355var whitespace="[\\x20\\t\\r\\n\\f]";
356var rtrimCSS=new RegExp(
357"^"+whitespace+"+|((?:^|[^\\\\])(?:\\\\.)*)"+whitespace+"+$",
358"g"
359);
360jQuery.contains=function(a,b){
361var bup=b&&b.parentNode;
362return a===bup||!!(bup&&bup.nodeType===1&&(
363a.contains?
364a.contains(bup):
365a.compareDocumentPosition&&a.compareDocumentPosition(bup)&16
366));
367};
368var rcssescape=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g;
369function fcssescape(ch,asCodePoint){
370if(asCodePoint){
371if(ch==="\0"){
372return"\uFFFD";
373}
374return ch.slice(0,-1)+"\\"+ch.charCodeAt(ch.length-1).toString(16)+" ";
375}
376return"\\"+ch;
377}
378jQuery.escapeSelector=function(sel){
379return(sel+"").replace(rcssescape,fcssescape);
380};
381var preferredDoc=document,
382pushNative=push;
383(function(){
384var i,
385Expr,
386outermostContext,
387sortInput,
388hasDuplicate,
389push=pushNative,
390document,
391documentElement,
392documentIsHTML,
393rbuggyQSA,
394matches,
395expando=jQuery.expando,
396dirruns=0,
397done=0,
398classCache=createCache(),
399tokenCache=createCache(),
400compilerCache=createCache(),
401nonnativeSelectorCache=createCache(),
402sortOrder=function(a,b){
403if(a===b){
404hasDuplicate=true;
405}
406return 0;
407},
408booleans="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|"+
409"loop|multiple|open|readonly|required|scoped",
410identifier="(?:\\\\[\\da-fA-F]{1,6}"+whitespace+
411"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",
412attributes="\\["+whitespace+"*("+identifier+")(?:"+whitespace+
413"*([*^$|!~]?=)"+whitespace+
414"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+identifier+"))|)"+
415whitespace+"*\\]",
416pseudos=":("+identifier+")(?:\\(("+
417"('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|"+
418"((?:\\\\.|[^\\\\()[\\]]|"+attributes+")*)|"+
419".*"+
420")\\)|)",
421rwhitespace=new RegExp(whitespace+"+","g"),
422rcomma=new RegExp("^"+whitespace+"*,"+whitespace+"*"),
423rleadingCombinator=new RegExp("^"+whitespace+"*([>+~]|"+whitespace+")"+
424whitespace+"*"),
425rdescend=new RegExp(whitespace+"|>"),
426rpseudo=new RegExp(pseudos),
427ridentifier=new RegExp("^"+identifier+"$"),
428matchExpr={
429ID:new RegExp("^#("+identifier+")"),
430CLASS:new RegExp("^\\.("+identifier+")"),
431TAG:new RegExp("^("+identifier+"|[*])"),
432ATTR:new RegExp("^"+attributes),
433PSEUDO:new RegExp("^"+pseudos),
434CHILD:new RegExp(
435"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+
436whitespace+"*(even|odd|(([+-]|)(\\d*)n|)"+whitespace+"*(?:([+-]|)"+
437whitespace+"*(\\d+)|))"+whitespace+"*\\)|)","i"),
438bool:new RegExp("^(?:"+booleans+")$","i"),
439needsContext:new RegExp("^"+whitespace+
440"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+whitespace+
441"*((?:-\\d)?\\d*)"+whitespace+"*\\)|)(?=[^-]|$)","i")
442},
443rinputs=/^(?:input|select|textarea|button)$/i,
444rheader=/^h\d$/i,
445rquickExpr=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
446rsibling=/[+~]/,
447runescape=new RegExp("\\\\[\\da-fA-F]{1,6}"+whitespace+
448"?|\\\\([^\\r\\n\\f])","g"),
449funescape=function(escape,nonHex){
450var high="0x"+escape.slice(1)-0x10000;
451if(nonHex){
452return nonHex;
453}
454return high<0?
455String.fromCharCode(high+0x10000):
456String.fromCharCode(high>>10|0xD800,high&0x3FF|0xDC00);
457},
458unloadHandler=function(){
459setDocument();
460},
461inDisabledFieldset=addCombinator(
462function(elem){
463return elem.disabled===true&&nodeName(elem,"fieldset");
464},
465{dir:"parentNode",next:"legend"}
466);
467function safeActiveElement(){
468try{
469return document.activeElement;
470}catch(err){}
471}
472try{
473push.apply(
474(arr=slice.call(preferredDoc.childNodes)),
475preferredDoc.childNodes
476);
477arr[preferredDoc.childNodes.length].nodeType;
478}catch(e){
479push={
480apply:function(target,els){
481pushNative.apply(target,slice.call(els));
482},
483call:function(target){
484pushNative.apply(target,slice.call(arguments,1));
485}
486};
487}
488function find(selector,context,results,seed){
489var m,i,elem,nid,match,groups,newSelector,
490newContext=context&&context.ownerDocument,
491nodeType=context?context.nodeType:9;
492results=results||[];
493if(typeof selector!=="string"||!selector||
494nodeType!==1&&nodeType!==9&&nodeType!==11){
495return results;
496}
497if(!seed){
498setDocument(context);
499context=context||document;
500if(documentIsHTML){
501if(nodeType!==11&&(match=rquickExpr.exec(selector))){
502if((m=match[1])){
503if(nodeType===9){
504if((elem=context.getElementById(m))){
505if(elem.id===m){
506push.call(results,elem);
507return results;
508}
509}else{
510return results;
511}
512}else{
513if(newContext&&(elem=newContext.getElementById(m))&&
514find.contains(context,elem)&&
515elem.id===m){
516push.call(results,elem);
517return results;
518}
519}
520}else if(match[2]){
521push.apply(results,context.getElementsByTagName(selector));
522return results;
523}else if((m=match[3])&&context.getElementsByClassName){
524push.apply(results,context.getElementsByClassName(m));
525return results;
526}
527}
528if(!nonnativeSelectorCache[selector+" "]&&
529(!rbuggyQSA||!rbuggyQSA.test(selector))){
530newSelector=selector;
531newContext=context;
532if(nodeType===1&&
533(rdescend.test(selector)||rleadingCombinator.test(selector))){
534newContext=rsibling.test(selector)&&testContext(context.parentNode)||
535context;
536if(newContext!=context||!support.scope){
537if((nid=context.getAttribute("id"))){
538nid=jQuery.escapeSelector(nid);
539}else{
540context.setAttribute("id",(nid=expando));
541}
542}
543groups=tokenize(selector);
544i=groups.length;
545while(i--){
546groups[i]=(nid?"#"+nid:":scope")+" "+
547toSelector(groups[i]);
548}
549newSelector=groups.join(",");
550}
551try{
552push.apply(results,
553newContext.querySelectorAll(newSelector)
554);
555return results;
556}catch(qsaError){
557nonnativeSelectorCache(selector,true);
558}finally{
559if(nid===expando){
560context.removeAttribute("id");
561}
562}
563}
564}
565}
566return select(selector.replace(rtrimCSS,"$1"),context,results,seed);
567}
568function createCache(){
569var keys=[];
570function cache(key,value){
571if(keys.push(key+" ")>Expr.cacheLength){
572delete cache[keys.shift()];
573}
574return(cache[key+" "]=value);
575}
576return cache;
577}
578function markFunction(fn){
579fn[expando]=true;
580return fn;
581}
582function assert(fn){
583var el=document.createElement("fieldset");
584try{
585return!!fn(el);
586}catch(e){
587return false;
588}finally{
589if(el.parentNode){
590el.parentNode.removeChild(el);
591}
592el=null;
593}
594}
595function createInputPseudo(type){
596return function(elem){
597return nodeName(elem,"input")&&elem.type===type;
598};
599}
600function createButtonPseudo(type){
601return function(elem){
602return(nodeName(elem,"input")||nodeName(elem,"button"))&&
603elem.type===type;
604};
605}
606function createDisabledPseudo(disabled){
607return function(elem){
608if("form"in elem){
609if(elem.parentNode&&elem.disabled===false){
610if("label"in elem){
611if("label"in elem.parentNode){
612return elem.parentNode.disabled===disabled;
613}else{
614return elem.disabled===disabled;
615}
616}
617return elem.isDisabled===disabled||
618elem.isDisabled!==!disabled&&
619inDisabledFieldset(elem)===disabled;
620}
621return elem.disabled===disabled;
622}else if("label"in elem){
623return elem.disabled===disabled;
624}
625return false;
626};
627}
628function createPositionalPseudo(fn){
629return markFunction(function(argument){
630argument=+argument;
631return markFunction(function(seed,matches){
632var j,
633matchIndexes=fn([],seed.length,argument),
634i=matchIndexes.length;
635while(i--){
636if(seed[(j=matchIndexes[i])]){
637seed[j]=!(matches[j]=seed[j]);
638}
639}
640});
641});
642}
643function testContext(context){
644return context&&typeof context.getElementsByTagName!=="undefined"&&context;
645}
646function setDocument(node){
647var subWindow,
648doc=node?node.ownerDocument||node:preferredDoc;
649if(doc==document||doc.nodeType!==9||!doc.documentElement){
650return document;
651}
652document=doc;
653documentElement=document.documentElement;
654documentIsHTML=!jQuery.isXMLDoc(document);
655matches=documentElement.matches||
656documentElement.webkitMatchesSelector||
657documentElement.msMatchesSelector;
658if(documentElement.msMatchesSelector&&
659preferredDoc!=document&&
660(subWindow=document.defaultView)&&subWindow.top!==subWindow){
661subWindow.addEventListener("unload",unloadHandler);
662}
663support.getById=assert(function(el){
664documentElement.appendChild(el).id=jQuery.expando;
665return!document.getElementsByName||
666!document.getElementsByName(jQuery.expando).length;
667});
668support.disconnectedMatch=assert(function(el){
669return matches.call(el,"*");
670});
671support.scope=assert(function(){
672return document.querySelectorAll(":scope");
673});
674support.cssHas=assert(function(){
675try{
676document.querySelector(":has(*,:jqfake)");
677return false;
678}catch(e){
679return true;
680}
681});
682if(support.getById){
683Expr.filter.ID=function(id){
684var attrId=id.replace(runescape,funescape);
685return function(elem){
686return elem.getAttribute("id")===attrId;
687};
688};
689Expr.find.ID=function(id,context){
690if(typeof context.getElementById!=="undefined"&&documentIsHTML){
691var elem=context.getElementById(id);
692return elem?[elem]:[];
693}
694};
695}else{
696Expr.filter.ID=function(id){
697var attrId=id.replace(runescape,funescape);
698return function(elem){
699var node=typeof elem.getAttributeNode!=="undefined"&&
700elem.getAttributeNode("id");
701return node&&node.value===attrId;
702};
703};
704Expr.find.ID=function(id,context){
705if(typeof context.getElementById!=="undefined"&&documentIsHTML){
706var node,i,elems,
707elem=context.getElementById(id);
708if(elem){
709node=elem.getAttributeNode("id");
710if(node&&node.value===id){
711return[elem];
712}
713elems=context.getElementsByName(id);
714i=0;
715while((elem=elems[i++])){
716node=elem.getAttributeNode("id");
717if(node&&node.value===id){
718return[elem];
719}
720}
721}
722return[];
723}
724};
725}
726Expr.find.TAG=function(tag,context){
727if(typeof context.getElementsByTagName!=="undefined"){
728return context.getElementsByTagName(tag);
729}else{
730return context.querySelectorAll(tag);
731}
732};
733Expr.find.CLASS=function(className,context){
734if(typeof context.getElementsByClassName!=="undefined"&&documentIsHTML){
735return context.getElementsByClassName(className);
736}
737};
738rbuggyQSA=[];
739assert(function(el){
740var input;
741documentElement.appendChild(el).innerHTML=
742"<a id='"+expando+"' href='' disabled='disabled'></a>"+
743"<select id='"+expando+"-\r\\' disabled='disabled'>"+
744"<option selected=''></option></select>";
745if(!el.querySelectorAll("[selected]").length){
746rbuggyQSA.push("\\["+whitespace+"*(?:value|"+booleans+")");
747}
748if(!el.querySelectorAll("[id~="+expando+"-]").length){
749rbuggyQSA.push("~=");
750}
751if(!el.querySelectorAll("a#"+expando+"+*").length){
752rbuggyQSA.push(".#.+[+~]");
753}
754if(!el.querySelectorAll(":checked").length){
755rbuggyQSA.push(":checked");
756}
757input=document.createElement("input");
758input.setAttribute("type","hidden");
759el.appendChild(input).setAttribute("name","D");
760documentElement.appendChild(el).disabled=true;
761if(el.querySelectorAll(":disabled").length!==2){
762rbuggyQSA.push(":enabled",":disabled");
763}
764input=document.createElement("input");
765input.setAttribute("name","");
766el.appendChild(input);
767if(!el.querySelectorAll("[name='']").length){
768rbuggyQSA.push("\\["+whitespace+"*name"+whitespace+"*="+
769whitespace+"*(?:''|\"\")");
770}
771});
772if(!support.cssHas){
773rbuggyQSA.push(":has");
774}
775rbuggyQSA=rbuggyQSA.length&&new RegExp(rbuggyQSA.join("|"));
776sortOrder=function(a,b){
777if(a===b){
778hasDuplicate=true;
779return 0;
780}
781var compare=!a.compareDocumentPosition-!b.compareDocumentPosition;
782if(compare){
783return compare;
784}
785compare=(a.ownerDocument||a)==(b.ownerDocument||b)?
786a.compareDocumentPosition(b):
7871;
788if(compare&1||
789(!support.sortDetached&&b.compareDocumentPosition(a)===compare)){
790if(a===document||a.ownerDocument==preferredDoc&&
791find.contains(preferredDoc,a)){
792return-1;
793}
794if(b===document||b.ownerDocument==preferredDoc&&
795find.contains(preferredDoc,b)){
796return 1;
797}
798return sortInput?
799(indexOf.call(sortInput,a)-indexOf.call(sortInput,b)):
8000;
801}
802return compare&4?-1:1;
803};
804return document;
805}
806find.matches=function(expr,elements){
807return find(expr,null,null,elements);
808};
809find.matchesSelector=function(elem,expr){
810setDocument(elem);
811if(documentIsHTML&&
812!nonnativeSelectorCache[expr+" "]&&
813(!rbuggyQSA||!rbuggyQSA.test(expr))){
814try{
815var ret=matches.call(elem,expr);
816if(ret||support.disconnectedMatch||
817elem.document&&elem.document.nodeType!==11){
818return ret;
819}
820}catch(e){
821nonnativeSelectorCache(expr,true);
822}
823}
824return find(expr,document,null,[elem]).length>0;
825};
826find.contains=function(context,elem){
827if((context.ownerDocument||context)!=document){
828setDocument(context);
829}
830return jQuery.contains(context,elem);
831};
832find.attr=function(elem,name){
833if((elem.ownerDocument||elem)!=document){
834setDocument(elem);
835}
836var fn=Expr.attrHandle[name.toLowerCase()],
837val=fn&&hasOwn.call(Expr.attrHandle,name.toLowerCase())?
838fn(elem,name,!documentIsHTML):
839undefined;
840if(val!==undefined){
841return val;
842}
843return elem.getAttribute(name);
844};
845find.error=function(msg){
846throw new Error("Syntax error, unrecognized expression: "+msg);
847};
848jQuery.uniqueSort=function(results){
849var elem,
850duplicates=[],
851j=0,
852i=0;
853hasDuplicate=!support.sortStable;
854sortInput=!support.sortStable&&slice.call(results,0);
855sort.call(results,sortOrder);
856if(hasDuplicate){
857while((elem=results[i++])){
858if(elem===results[i]){
859j=duplicates.push(i);
860}
861}
862while(j--){
863splice.call(results,duplicates[j],1);
864}
865}
866sortInput=null;
867return results;
868};
869jQuery.fn.uniqueSort=function(){
870return this.pushStack(jQuery.uniqueSort(slice.apply(this)));
871};
872Expr=jQuery.expr={
873cacheLength:50,
874createPseudo:markFunction,
875match:matchExpr,
876attrHandle:{},
877find:{},
878relative:{
879">":{dir:"parentNode",first:true},
880" ":{dir:"parentNode"},
881"+":{dir:"previousSibling",first:true},
882"~":{dir:"previousSibling"}
883},
884preFilter:{
885ATTR:function(match){
886match[1]=match[1].replace(runescape,funescape);
887match[3]=(match[3]||match[4]||match[5]||"")
888.replace(runescape,funescape);
889if(match[2]==="~="){
890match[3]=" "+match[3]+" ";
891}
892return match.slice(0,4);
893},
894CHILD:function(match){
895match[1]=match[1].toLowerCase();
896if(match[1].slice(0,3)==="nth"){
897if(!match[3]){
898find.error(match[0]);
899}
900match[4]=+(match[4]?
901match[5]+(match[6]||1):
9022*(match[3]==="even"||match[3]==="odd")
903);
904match[5]=+((match[7]+match[8])||match[3]==="odd");
905}else if(match[3]){
906find.error(match[0]);
907}
908return match;
909},
910PSEUDO:function(match){
911var excess,
912unquoted=!match[6]&&match[2];
913if(matchExpr.CHILD.test(match[0])){
914return null;
915}
916if(match[3]){
917match[2]=match[4]||match[5]||"";
918}else if(unquoted&&rpseudo.test(unquoted)&&
919(excess=tokenize(unquoted,true))&&
920(excess=unquoted.indexOf(")",unquoted.length-excess)-unquoted.length)){
921match[0]=match[0].slice(0,excess);
922match[2]=unquoted.slice(0,excess);
923}
924return match.slice(0,3);
925}
926},
927filter:{
928TAG:function(nodeNameSelector){
929var expectedNodeName=nodeNameSelector.replace(runescape,funescape).toLowerCase();
930return nodeNameSelector==="*"?
931function(){
932return true;
933}:
934function(elem){
935return nodeName(elem,expectedNodeName);
936};
937},
938CLASS:function(className){
939var pattern=classCache[className+" "];
940return pattern||
941(pattern=new RegExp("(^|"+whitespace+")"+className+
942"("+whitespace+"|$)"))&&
943classCache(className,function(elem){
944return pattern.test(
945typeof elem.className==="string"&&elem.className||
946typeof elem.getAttribute!=="undefined"&&
947elem.getAttribute("class")||
948""
949);
950});
951},
952ATTR:function(name,operator,check){
953return function(elem){
954var result=find.attr(elem,name);
955if(result==null){
956return operator==="!=";
957}
958if(!operator){
959return true;
960}
961result+="";
962if(operator==="="){
963return result===check;
964}
965if(operator==="!="){
966return result!==check;
967}
968if(operator==="^="){
969return check&&result.indexOf(check)===0;
970}
971if(operator==="*="){
972return check&&result.indexOf(check)>-1;
973}
974if(operator==="$="){
975return check&&result.slice(-check.length)===check;
976}
977if(operator==="~="){
978return(" "+result.replace(rwhitespace," ")+" ")
979.indexOf(check)>-1;
980}
981if(operator==="|="){
982return result===check||result.slice(0,check.length+1)===check+"-";
983}
984return false;
985};
986},
987CHILD:function(type,what,_argument,first,last){
988var simple=type.slice(0,3)!=="nth",
989forward=type.slice(-4)!=="last",
990ofType=what==="of-type";
991return first===1&&last===0?
992function(elem){
993return!!elem.parentNode;
994}:
995function(elem,_context,xml){
996var cache,outerCache,node,nodeIndex,start,
997dir=simple!==forward?"nextSibling":"previousSibling",
998parent=elem.parentNode,
999name=ofType&&elem.nodeName.toLowerCase(),
1000useCache=!xml&&!ofType,
1001diff=false;
1002if(parent){
1003if(simple){
1004while(dir){
1005node=elem;
1006while((node=node[dir])){
1007if(ofType?
1008nodeName(node,name):
1009node.nodeType===1){
1010return false;
1011}
1012}
1013start=dir=type==="only"&&!start&&"nextSibling";
1014}
1015return true;
1016}
1017start=[forward?parent.firstChild:parent.lastChild];
1018if(forward&&useCache){
1019outerCache=parent[expando]||(parent[expando]={});
1020cache=outerCache[type]||[];
1021nodeIndex=cache[0]===dirruns&&cache[1];
1022diff=nodeIndex&&cache[2];
1023node=nodeIndex&&parent.childNodes[nodeIndex];
1024while((node=++nodeIndex&&node&&node[dir]||
1025(diff=nodeIndex=0)||start.pop())){
1026if(node.nodeType===1&&++diff&&node===elem){
1027outerCache[type]=[dirruns,nodeIndex,diff];
1028break;
1029}
1030}
1031}else{
1032if(useCache){
1033outerCache=elem[expando]||(elem[expando]={});
1034cache=outerCache[type]||[];
1035nodeIndex=cache[0]===dirruns&&cache[1];
1036diff=nodeIndex;
1037}
1038if(diff===false){
1039while((node=++nodeIndex&&node&&node[dir]||
1040(diff=nodeIndex=0)||start.pop())){
1041if((ofType?
1042nodeName(node,name):
1043node.nodeType===1)&&
1044++diff){
1045if(useCache){
1046outerCache=node[expando]||
1047(node[expando]={});
1048outerCache[type]=[dirruns,diff];
1049}
1050if(node===elem){
1051break;
1052}
1053}
1054}
1055}
1056}
1057diff-=last;
1058return diff===first||(diff%first===0&&diff/first>=0);
1059}
1060};
1061},
1062PSEUDO:function(pseudo,argument){
1063var args,
1064fn=Expr.pseudos[pseudo]||Expr.setFilters[pseudo.toLowerCase()]||
1065find.error("unsupported pseudo: "+pseudo);
1066if(fn[expando]){
1067return fn(argument);
1068}
1069if(fn.length>1){
1070args=[pseudo,pseudo,"",argument];
1071return Expr.setFilters.hasOwnProperty(pseudo.toLowerCase())?
1072markFunction(function(seed,matches){
1073var idx,
1074matched=fn(seed,argument),
1075i=matched.length;
1076while(i--){
1077idx=indexOf.call(seed,matched[i]);
1078seed[idx]=!(matches[idx]=matched[i]);
1079}
1080}):
1081function(elem){
1082return fn(elem,0,args);
1083};
1084}
1085return fn;
1086}
1087},
1088pseudos:{
1089not:markFunction(function(selector){
1090var input=[],
1091results=[],
1092matcher=compile(selector.replace(rtrimCSS,"$1"));
1093return matcher[expando]?
1094markFunction(function(seed,matches,_context,xml){
1095var elem,
1096unmatched=matcher(seed,null,xml,[]),
1097i=seed.length;
1098while(i--){
1099if((elem=unmatched[i])){
1100seed[i]=!(matches[i]=elem);
1101}
1102}
1103}):
1104function(elem,_context,xml){
1105input[0]=elem;
1106matcher(input,null,xml,results);
1107input[0]=null;
1108return!results.pop();
1109};
1110}),
1111has:markFunction(function(selector){
1112return function(elem){
1113return find(selector,elem).length>0;
1114};
1115}),
1116contains:markFunction(function(text){
1117text=text.replace(runescape,funescape);
1118return function(elem){
1119return(elem.textContent||jQuery.text(elem)).indexOf(text)>-1;
1120};
1121}),
1122lang:markFunction(function(lang){
1123if(!ridentifier.test(lang||"")){
1124find.error("unsupported lang: "+lang);
1125}
1126lang=lang.replace(runescape,funescape).toLowerCase();
1127return function(elem){
1128var elemLang;
1129do{
1130if((elemLang=documentIsHTML?
1131elem.lang:
1132elem.getAttribute("xml:lang")||elem.getAttribute("lang"))){
1133elemLang=elemLang.toLowerCase();
1134return elemLang===lang||elemLang.indexOf(lang+"-")===0;
1135}
1136}while((elem=elem.parentNode)&&elem.nodeType===1);
1137return false;
1138};
1139}),
1140target:function(elem){
1141var hash=window.location&&window.location.hash;
1142return hash&&hash.slice(1)===elem.id;
1143},
1144root:function(elem){
1145return elem===documentElement;
1146},
1147focus:function(elem){
1148return elem===safeActiveElement()&&
1149document.hasFocus()&&
1150!!(elem.type||elem.href||~elem.tabIndex);
1151},
1152enabled:createDisabledPseudo(false),
1153disabled:createDisabledPseudo(true),
1154checked:function(elem){
1155return(nodeName(elem,"input")&&!!elem.checked)||
1156(nodeName(elem,"option")&&!!elem.selected);
1157},
1158selected:function(elem){
1159if(elem.parentNode){
1160elem.parentNode.selectedIndex;
1161}
1162return elem.selected===true;
1163},
1164empty:function(elem){
1165for(elem=elem.firstChild;elem;elem=elem.nextSibling){
1166if(elem.nodeType<6){
1167return false;
1168}
1169}
1170return true;
1171},
1172parent:function(elem){
1173return!Expr.pseudos.empty(elem);
1174},
1175header:function(elem){
1176return rheader.test(elem.nodeName);
1177},
1178input:function(elem){
1179return rinputs.test(elem.nodeName);
1180},
1181button:function(elem){
1182return nodeName(elem,"input")&&elem.type==="button"||
1183nodeName(elem,"button");
1184},
1185text:function(elem){
1186var attr;
1187return nodeName(elem,"input")&&elem.type==="text"&&
1188((attr=elem.getAttribute("type"))==null||
1189attr.toLowerCase()==="text");
1190},
1191first:createPositionalPseudo(function(){
1192return[0];
1193}),
1194last:createPositionalPseudo(function(_matchIndexes,length){
1195return[length-1];
1196}),
1197eq:createPositionalPseudo(function(_matchIndexes,length,argument){
1198return[argument<0?argument+length:argument];
1199}),
1200even:createPositionalPseudo(function(matchIndexes,length){
1201var i=0;
1202for(;i<length;i+=2){
1203matchIndexes.push(i);
1204}
1205return matchIndexes;
1206}),
1207odd:createPositionalPseudo(function(matchIndexes,length){
1208var i=1;
1209for(;i<length;i+=2){
1210matchIndexes.push(i);
1211}
1212return matchIndexes;
1213}),
1214lt:createPositionalPseudo(function(matchIndexes,length,argument){
1215var i;
1216if(argument<0){
1217i=argument+length;
1218}else if(argument>length){
1219i=length;
1220}else{
1221i=argument;
1222}
1223for(;--i>=0;){
1224matchIndexes.push(i);
1225}
1226return matchIndexes;
1227}),
1228gt:createPositionalPseudo(function(matchIndexes,length,argument){
1229var i=argument<0?argument+length:argument;
1230for(;++i<length;){
1231matchIndexes.push(i);
1232}
1233return matchIndexes;
1234})
1235}
1236};
1237Expr.pseudos.nth=Expr.pseudos.eq;
1238for(i in{radio:true,checkbox:true,file:true,password:true,image:true}){
1239Expr.pseudos[i]=createInputPseudo(i);
1240}
1241for(i in{submit:true,reset:true}){
1242Expr.pseudos[i]=createButtonPseudo(i);
1243}
1244function setFilters(){}
1245setFilters.prototype=Expr.filters=Expr.pseudos;
1246Expr.setFilters=new setFilters();
1247function tokenize(selector,parseOnly){
1248var matched,match,tokens,type,
1249soFar,groups,preFilters,
1250cached=tokenCache[selector+" "];
1251if(cached){
1252return parseOnly?0:cached.slice(0);
1253}
1254soFar=selector;
1255groups=[];
1256preFilters=Expr.preFilter;
1257while(soFar){
1258if(!matched||(match=rcomma.exec(soFar))){
1259if(match){
1260soFar=soFar.slice(match[0].length)||soFar;
1261}
1262groups.push((tokens=[]));
1263}
1264matched=false;
1265if((match=rleadingCombinator.exec(soFar))){
1266matched=match.shift();
1267tokens.push({
1268value:matched,
1269type:match[0].replace(rtrimCSS," ")
1270});
1271soFar=soFar.slice(matched.length);
1272}
1273for(type in Expr.filter){
1274if((match=matchExpr[type].exec(soFar))&&(!preFilters[type]||
1275(match=preFilters[type](match)))){
1276matched=match.shift();
1277tokens.push({
1278value:matched,
1279type:type,
1280matches:match
1281});
1282soFar=soFar.slice(matched.length);
1283}
1284}
1285if(!matched){
1286break;
1287}
1288}
1289if(parseOnly){
1290return soFar.length;
1291}
1292return soFar?
1293find.error(selector):
1294tokenCache(selector,groups).slice(0);
1295}
1296function toSelector(tokens){
1297var i=0,
1298len=tokens.length,
1299selector="";
1300for(;i<len;i++){
1301selector+=tokens[i].value;
1302}
1303return selector;
1304}
1305function addCombinator(matcher,combinator,base){
1306var dir=combinator.dir,
1307skip=combinator.next,
1308key=skip||dir,
1309checkNonElements=base&&key==="parentNode",
1310doneName=done++;
1311return combinator.first?
1312function(elem,context,xml){
1313while((elem=elem[dir])){
1314if(elem.nodeType===1||checkNonElements){
1315return matcher(elem,context,xml);
1316}
1317}
1318return false;
1319}:
1320function(elem,context,xml){
1321var oldCache,outerCache,
1322newCache=[dirruns,doneName];
1323if(xml){
1324while((elem=elem[dir])){
1325if(elem.nodeType===1||checkNonElements){
1326if(matcher(elem,context,xml)){
1327return true;
1328}
1329}
1330}
1331}else{
1332while((elem=elem[dir])){
1333if(elem.nodeType===1||checkNonElements){
1334outerCache=elem[expando]||(elem[expando]={});
1335if(skip&&nodeName(elem,skip)){
1336elem=elem[dir]||elem;
1337}else if((oldCache=outerCache[key])&&
1338oldCache[0]===dirruns&&oldCache[1]===doneName){
1339return(newCache[2]=oldCache[2]);
1340}else{
1341outerCache[key]=newCache;
1342if((newCache[2]=matcher(elem,context,xml))){
1343return true;
1344}
1345}
1346}
1347}
1348}
1349return false;
1350};
1351}
1352function elementMatcher(matchers){
1353return matchers.length>1?
1354function(elem,context,xml){
1355var i=matchers.length;
1356while(i--){
1357if(!matchers[i](elem,context,xml)){
1358return false;
1359}
1360}
1361return true;
1362}:
1363matchers[0];
1364}
1365function multipleContexts(selector,contexts,results){
1366var i=0,
1367len=contexts.length;
1368for(;i<len;i++){
1369find(selector,contexts[i],results);
1370}
1371return results;
1372}
1373function condense(unmatched,map,filter,context,xml){
1374var elem,
1375newUnmatched=[],
1376i=0,
1377len=unmatched.length,
1378mapped=map!=null;
1379for(;i<len;i++){
1380if((elem=unmatched[i])){
1381if(!filter||filter(elem,context,xml)){
1382newUnmatched.push(elem);
1383if(mapped){
1384map.push(i);
1385}
1386}
1387}
1388}
1389return newUnmatched;
1390}
1391function setMatcher(preFilter,selector,matcher,postFilter,postFinder,postSelector){
1392if(postFilter&&!postFilter[expando]){
1393postFilter=setMatcher(postFilter);
1394}
1395if(postFinder&&!postFinder[expando]){
1396postFinder=setMatcher(postFinder,postSelector);
1397}
1398return markFunction(function(seed,results,context,xml){
1399var temp,i,elem,matcherOut,
1400preMap=[],
1401postMap=[],
1402preexisting=results.length,
1403elems=seed||
1404multipleContexts(selector||"*",
1405context.nodeType?[context]:context,[]),
1406matcherIn=preFilter&&(seed||!selector)?
1407condense(elems,preMap,preFilter,context,xml):
1408elems;
1409if(matcher){
1410matcherOut=postFinder||(seed?preFilter:preexisting||postFilter)?
1411[]:
1412results;
1413matcher(matcherIn,matcherOut,context,xml);
1414}else{
1415matcherOut=matcherIn;
1416}
1417if(postFilter){
1418temp=condense(matcherOut,postMap);
1419postFilter(temp,[],context,xml);
1420i=temp.length;
1421while(i--){
1422if((elem=temp[i])){
1423matcherOut[postMap[i]]=!(matcherIn[postMap[i]]=elem);
1424}
1425}
1426}
1427if(seed){
1428if(postFinder||preFilter){
1429if(postFinder){
1430temp=[];
1431i=matcherOut.length;
1432while(i--){
1433if((elem=matcherOut[i])){
1434temp.push((matcherIn[i]=elem));
1435}
1436}
1437postFinder(null,(matcherOut=[]),temp,xml);
1438}
1439i=matcherOut.length;
1440while(i--){
1441if((elem=matcherOut[i])&&
1442(temp=postFinder?indexOf.call(seed,elem):preMap[i])>-1){
1443seed[temp]=!(results[temp]=elem);
1444}
1445}
1446}
1447}else{
1448matcherOut=condense(
1449matcherOut===results?
1450matcherOut.splice(preexisting,matcherOut.length):
1451matcherOut
1452);
1453if(postFinder){
1454postFinder(null,results,matcherOut,xml);
1455}else{
1456push.apply(results,matcherOut);
1457}
1458}
1459});
1460}
1461function matcherFromTokens(tokens){
1462var checkContext,matcher,j,
1463len=tokens.length,
1464leadingRelative=Expr.relative[tokens[0].type],
1465implicitRelative=leadingRelative||Expr.relative[" "],
1466i=leadingRelative?1:0,
1467matchContext=addCombinator(function(elem){
1468return elem===checkContext;
1469},implicitRelative,true),
1470matchAnyContext=addCombinator(function(elem){
1471return indexOf.call(checkContext,elem)>-1;
1472},implicitRelative,true),
1473matchers=[function(elem,context,xml){
1474var ret=(!leadingRelative&&(xml||context!=outermostContext))||(
1475(checkContext=context).nodeType?
1476matchContext(elem,context,xml):
1477matchAnyContext(elem,context,xml));
1478checkContext=null;
1479return ret;
1480}];
1481for(;i<len;i++){
1482if((matcher=Expr.relative[tokens[i].type])){
1483matchers=[addCombinator(elementMatcher(matchers),matcher)];
1484}else{
1485matcher=Expr.filter[tokens[i].type].apply(null,tokens[i].matches);
1486if(matcher[expando]){
1487j=++i;
1488for(;j<len;j++){
1489if(Expr.relative[tokens[j].type]){
1490break;
1491}
1492}
1493return setMatcher(
1494i>1&&elementMatcher(matchers),
1495i>1&&toSelector(
1496tokens.slice(0,i-1)
1497.concat({value:tokens[i-2].type===" "?"*":""})
1498).replace(rtrimCSS,"$1"),
1499matcher,
1500i<j&&matcherFromTokens(tokens.slice(i,j)),
1501j<len&&matcherFromTokens((tokens=tokens.slice(j))),
1502j<len&&toSelector(tokens)
1503);
1504}
1505matchers.push(matcher);
1506}
1507}
1508return elementMatcher(matchers);
1509}
1510function matcherFromGroupMatchers(elementMatchers,setMatchers){
1511var bySet=setMatchers.length>0,
1512byElement=elementMatchers.length>0,
1513superMatcher=function(seed,context,xml,results,outermost){
1514var elem,j,matcher,
1515matchedCount=0,
1516i="0",
1517unmatched=seed&&[],
1518setMatched=[],
1519contextBackup=outermostContext,
1520elems=seed||byElement&&Expr.find.TAG("*",outermost),
1521dirrunsUnique=(dirruns+=contextBackup==null?1:Math.random()||0.1),
1522len=elems.length;
1523if(outermost){
1524outermostContext=context==document||context||outermost;
1525}
1526for(;i!==len&&(elem=elems[i])!=null;i++){
1527if(byElement&&elem){
1528j=0;
1529if(!context&&elem.ownerDocument!=document){
1530setDocument(elem);
1531xml=!documentIsHTML;
1532}
1533while((matcher=elementMatchers[j++])){
1534if(matcher(elem,context||document,xml)){
1535push.call(results,elem);
1536break;
1537}
1538}
1539if(outermost){
1540dirruns=dirrunsUnique;
1541}
1542}
1543if(bySet){
1544if((elem=!matcher&&elem)){
1545matchedCount--;
1546}
1547if(seed){
1548unmatched.push(elem);
1549}
1550}
1551}
1552matchedCount+=i;
1553if(bySet&&i!==matchedCount){
1554j=0;
1555while((matcher=setMatchers[j++])){
1556matcher(unmatched,setMatched,context,xml);
1557}
1558if(seed){
1559if(matchedCount>0){
1560while(i--){
1561if(!(unmatched[i]||setMatched[i])){
1562setMatched[i]=pop.call(results);
1563}
1564}
1565}
1566setMatched=condense(setMatched);
1567}
1568push.apply(results,setMatched);
1569if(outermost&&!seed&&setMatched.length>0&&
1570(matchedCount+setMatchers.length)>1){
1571jQuery.uniqueSort(results);
1572}
1573}
1574if(outermost){
1575dirruns=dirrunsUnique;
1576outermostContext=contextBackup;
1577}
1578return unmatched;
1579};
1580return bySet?
1581markFunction(superMatcher):
1582superMatcher;
1583}
1584function compile(selector,match){
1585var i,
1586setMatchers=[],
1587elementMatchers=[],
1588cached=compilerCache[selector+" "];
1589if(!cached){
1590if(!match){
1591match=tokenize(selector);
1592}
1593i=match.length;
1594while(i--){
1595cached=matcherFromTokens(match[i]);
1596if(cached[expando]){
1597setMatchers.push(cached);
1598}else{
1599elementMatchers.push(cached);
1600}
1601}
1602cached=compilerCache(selector,
1603matcherFromGroupMatchers(elementMatchers,setMatchers));
1604cached.selector=selector;
1605}
1606return cached;
1607}
1608function select(selector,context,results,seed){
1609var i,tokens,token,type,find,
1610compiled=typeof selector==="function"&&selector,
1611match=!seed&&tokenize((selector=compiled.selector||selector));
1612results=results||[];
1613if(match.length===1){
1614tokens=match[0]=match[0].slice(0);
1615if(tokens.length>2&&(token=tokens[0]).type==="ID"&&
1616context.nodeType===9&&documentIsHTML&&Expr.relative[tokens[1].type]){
1617context=(Expr.find.ID(
1618token.matches[0].replace(runescape,funescape),
1619context
1620)||[])[0];
1621if(!context){
1622return results;
1623}else if(compiled){
1624context=context.parentNode;
1625}
1626selector=selector.slice(tokens.shift().value.length);
1627}
1628i=matchExpr.needsContext.test(selector)?0:tokens.length;
1629while(i--){
1630token=tokens[i];
1631if(Expr.relative[(type=token.type)]){
1632break;
1633}
1634if((find=Expr.find[type])){
1635if((seed=find(
1636token.matches[0].replace(runescape,funescape),
1637rsibling.test(tokens[0].type)&&
1638testContext(context.parentNode)||context
1639))){
1640tokens.splice(i,1);
1641selector=seed.length&&toSelector(tokens);
1642if(!selector){
1643push.apply(results,seed);
1644return results;
1645}
1646break;
1647}
1648}
1649}
1650}
1651(compiled||compile(selector,match))(
1652seed,
1653context,
1654!documentIsHTML,
1655results,
1656!context||rsibling.test(selector)&&testContext(context.parentNode)||context
1657);
1658return results;
1659}
1660support.sortStable=expando.split("").sort(sortOrder).join("")===expando;
1661setDocument();
1662support.sortDetached=assert(function(el){
1663return el.compareDocumentPosition(document.createElement("fieldset"))&1;
1664});
1665jQuery.find=find;
1666jQuery.expr[":"]=jQuery.expr.pseudos;
1667jQuery.unique=jQuery.uniqueSort;
1668find.compile=compile;
1669find.select=select;
1670find.setDocument=setDocument;
1671find.tokenize=tokenize;
1672find.escape=jQuery.escapeSelector;
1673find.getText=jQuery.text;
1674find.isXML=jQuery.isXMLDoc;
1675find.selectors=jQuery.expr;
1676find.support=jQuery.support;
1677find.uniqueSort=jQuery.uniqueSort;
1678})();
1679var dir=function(elem,dir,until){
1680var matched=[],
1681truncate=until!==undefined;
1682while((elem=elem[dir])&&elem.nodeType!==9){
1683if(elem.nodeType===1){
1684if(truncate&&jQuery(elem).is(until)){
1685break;
1686}
1687matched.push(elem);
1688}
1689}
1690return matched;
1691};
1692var siblings=function(n,elem){
1693var matched=[];
1694for(;n;n=n.nextSibling){
1695if(n.nodeType===1&&n!==elem){
1696matched.push(n);
1697}
1698}
1699return matched;
1700};
1701var rneedsContext=jQuery.expr.match.needsContext;
1702var rsingleTag=(/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i);
1703function winnow(elements,qualifier,not){
1704if(isFunction(qualifier)){
1705return jQuery.grep(elements,function(elem,i){
1706return!!qualifier.call(elem,i,elem)!==not;
1707});
1708}
1709if(qualifier.nodeType){
1710return jQuery.grep(elements,function(elem){
1711return(elem===qualifier)!==not;
1712});
1713}
1714if(typeof qualifier!=="string"){
1715return jQuery.grep(elements,function(elem){
1716return(indexOf.call(qualifier,elem)>-1)!==not;
1717});
1718}
1719return jQuery.filter(qualifier,elements,not);
1720}
1721jQuery.filter=function(expr,elems,not){
1722var elem=elems[0];
1723if(not){
1724expr=":not("+expr+")";
1725}
1726if(elems.length===1&&elem.nodeType===1){
1727return jQuery.find.matchesSelector(elem,expr)?[elem]:[];
1728}
1729return jQuery.find.matches(expr,jQuery.grep(elems,function(elem){
1730return elem.nodeType===1;
1731}));
1732};
1733jQuery.fn.extend({
1734find:function(selector){
1735var i,ret,
1736len=this.length,
1737self=this;
1738if(typeof selector!=="string"){
1739return this.pushStack(jQuery(selector).filter(function(){
1740for(i=0;i<len;i++){
1741if(jQuery.contains(self[i],this)){
1742return true;
1743}
1744}
1745}));
1746}
1747ret=this.pushStack([]);
1748for(i=0;i<len;i++){
1749jQuery.find(selector,self[i],ret);
1750}
1751return len>1?jQuery.uniqueSort(ret):ret;
1752},
1753filter:function(selector){
1754return this.pushStack(winnow(this,selector||[],false));
1755},
1756not:function(selector){
1757return this.pushStack(winnow(this,selector||[],true));
1758},
1759is:function(selector){
1760return!!winnow(
1761this,
1762typeof selector==="string"&&rneedsContext.test(selector)?
1763jQuery(selector):
1764selector||[],
1765false
1766).length;
1767}
1768});
1769var rootjQuery,
1770rquickExpr=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,
1771init=jQuery.fn.init=function(selector,context,root){
1772var match,elem;
1773if(!selector){
1774return this;
1775}
1776root=root||rootjQuery;
1777if(typeof selector==="string"){
1778if(selector[0]==="<"&&
1779selector[selector.length-1]===">"&&
1780selector.length>=3){
1781match=[null,selector,null];
1782}else{
1783match=rquickExpr.exec(selector);
1784}
1785if(match&&(match[1]||!context)){
1786if(match[1]){
1787context=context instanceof jQuery?context[0]:context;
1788jQuery.merge(this,jQuery.parseHTML(
1789match[1],
1790context&&context.nodeType?context.ownerDocument||context:document,
1791true
1792));
1793if(rsingleTag.test(match[1])&&jQuery.isPlainObject(context)){
1794for(match in context){
1795if(isFunction(this[match])){
1796this[match](context[match]);
1797}else{
1798this.attr(match,context[match]);
1799}
1800}
1801}
1802return this;
1803}else{
1804elem=document.getElementById(match[2]);
1805if(elem){
1806this[0]=elem;
1807this.length=1;
1808}
1809return this;
1810}
1811}else if(!context||context.jquery){
1812return(context||root).find(selector);
1813}else{
1814return this.constructor(context).find(selector);
1815}
1816}else if(selector.nodeType){
1817this[0]=selector;
1818this.length=1;
1819return this;
1820}else if(isFunction(selector)){
1821return root.ready!==undefined?
1822root.ready(selector):
1823selector(jQuery);
1824}
1825return jQuery.makeArray(selector,this);
1826};
1827init.prototype=jQuery.fn;
1828rootjQuery=jQuery(document);
1829var rparentsprev=/^(?:parents|prev(?:Until|All))/,
1830guaranteedUnique={
1831children:true,
1832contents:true,
1833next:true,
1834prev:true
1835};
1836jQuery.fn.extend({
1837has:function(target){
1838var targets=jQuery(target,this),
1839l=targets.length;
1840return this.filter(function(){
1841var i=0;
1842for(;i<l;i++){
1843if(jQuery.contains(this,targets[i])){
1844return true;
1845}
1846}
1847});
1848},
1849closest:function(selectors,context){
1850var cur,
1851i=0,
1852l=this.length,
1853matched=[],
1854targets=typeof selectors!=="string"&&jQuery(selectors);
1855if(!rneedsContext.test(selectors)){
1856for(;i<l;i++){
1857for(cur=this[i];cur&&cur!==context;cur=cur.parentNode){
1858if(cur.nodeType<11&&(targets?
1859targets.index(cur)>-1:
1860cur.nodeType===1&&
1861jQuery.find.matchesSelector(cur,selectors))){
1862matched.push(cur);
1863break;
1864}
1865}
1866}
1867}
1868return this.pushStack(matched.length>1?jQuery.uniqueSort(matched):matched);
1869},
1870index:function(elem){
1871if(!elem){
1872return(this[0]&&this[0].parentNode)?this.first().prevAll().length:-1;
1873}
1874if(typeof elem==="string"){
1875return indexOf.call(jQuery(elem),this[0]);
1876}
1877return indexOf.call(this,
1878elem.jquery?elem[0]:elem
1879);
1880},
1881add:function(selector,context){
1882return this.pushStack(
1883jQuery.uniqueSort(
1884jQuery.merge(this.get(),jQuery(selector,context))
1885)
1886);
1887},
1888addBack:function(selector){
1889return this.add(selector==null?
1890this.prevObject:this.prevObject.filter(selector)
1891);
1892}
1893});
1894function sibling(cur,dir){
1895while((cur=cur[dir])&&cur.nodeType!==1){}
1896return cur;
1897}
1898jQuery.each({
1899parent:function(elem){
1900var parent=elem.parentNode;
1901return parent&&parent.nodeType!==11?parent:null;
1902},
1903parents:function(elem){
1904return dir(elem,"parentNode");
1905},
1906parentsUntil:function(elem,_i,until){
1907return dir(elem,"parentNode",until);
1908},
1909next:function(elem){
1910return sibling(elem,"nextSibling");
1911},
1912prev:function(elem){
1913return sibling(elem,"previousSibling");
1914},
1915nextAll:function(elem){
1916return dir(elem,"nextSibling");
1917},
1918prevAll:function(elem){
1919return dir(elem,"previousSibling");
1920},
1921nextUntil:function(elem,_i,until){
1922return dir(elem,"nextSibling",until);
1923},
1924prevUntil:function(elem,_i,until){
1925return dir(elem,"previousSibling",until);
1926},
1927siblings:function(elem){
1928return siblings((elem.parentNode||{}).firstChild,elem);
1929},
1930children:function(elem){
1931return siblings(elem.firstChild);
1932},
1933contents:function(elem){
1934if(elem.contentDocument!=null&&
1935getProto(elem.contentDocument)){
1936return elem.contentDocument;
1937}
1938if(nodeName(elem,"template")){
1939elem=elem.content||elem;
1940}
1941return jQuery.merge([],elem.childNodes);
1942}
1943},function(name,fn){
1944jQuery.fn[name]=function(until,selector){
1945var matched=jQuery.map(this,fn,until);
1946if(name.slice(-5)!=="Until"){
1947selector=until;
1948}
1949if(selector&&typeof selector==="string"){
1950matched=jQuery.filter(selector,matched);
1951}
1952if(this.length>1){
1953if(!guaranteedUnique[name]){
1954jQuery.uniqueSort(matched);
1955}
1956if(rparentsprev.test(name)){
1957matched.reverse();
1958}
1959}
1960return this.pushStack(matched);
1961};
1962});
1963var rnothtmlwhite=(/[^\x20\t\r\n\f]+/g);
1964function createOptions(options){
1965var object={};
1966jQuery.each(options.match(rnothtmlwhite)||[],function(_,flag){
1967object[flag]=true;
1968});
1969return object;
1970}
1971jQuery.Callbacks=function(options){
1972options=typeof options==="string"?
1973createOptions(options):
1974jQuery.extend({},options);
1975var
1976firing,
1977memory,
1978fired,
1979locked,
1980list=[],
1981queue=[],
1982firingIndex=-1,
1983fire=function(){
1984locked=locked||options.once;
1985fired=firing=true;
1986for(;queue.length;firingIndex=-1){
1987memory=queue.shift();
1988while(++firingIndex<list.length){
1989if(list[firingIndex].apply(memory[0],memory[1])===false&&
1990options.stopOnFalse){
1991firingIndex=list.length;
1992memory=false;
1993}
1994}
1995}
1996if(!options.memory){
1997memory=false;
1998}
1999firing=false;
2000if(locked){
2001if(memory){
2002list=[];
2003}else{
2004list="";
2005}
2006}
2007},
2008self={
2009add:function(){
2010if(list){
2011if(memory&&!firing){
2012firingIndex=list.length-1;
2013queue.push(memory);
2014}
2015(function add(args){
2016jQuery.each(args,function(_,arg){
2017if(isFunction(arg)){
2018if(!options.unique||!self.has(arg)){
2019list.push(arg);
2020}
2021}else if(arg&&arg.length&&toType(arg)!=="string"){
2022add(arg);
2023}
2024});
2025})(arguments);
2026if(memory&&!firing){
2027fire();
2028}
2029}
2030return this;
2031},
2032remove:function(){
2033jQuery.each(arguments,function(_,arg){
2034var index;
2035while((index=jQuery.inArray(arg,list,index))>-1){
2036list.splice(index,1);
2037if(index<=firingIndex){
2038firingIndex--;
2039}
2040}
2041});
2042return this;
2043},
2044has:function(fn){
2045return fn?
2046jQuery.inArray(fn,list)>-1:
2047list.length>0;
2048},
2049empty:function(){
2050if(list){
2051list=[];
2052}
2053return this;
2054},
2055disable:function(){
2056locked=queue=[];
2057list=memory="";
2058return this;
2059},
2060disabled:function(){
2061return!list;
2062},
2063lock:function(){
2064locked=queue=[];
2065if(!memory&&!firing){
2066list=memory="";
2067}
2068return this;
2069},
2070locked:function(){
2071return!!locked;
2072},
2073fireWith:function(context,args){
2074if(!locked){
2075args=args||[];
2076args=[context,args.slice?args.slice():args];
2077queue.push(args);
2078if(!firing){
2079fire();
2080}
2081}
2082return this;
2083},
2084fire:function(){
2085self.fireWith(this,arguments);
2086return this;
2087},
2088fired:function(){
2089return!!fired;
2090}
2091};
2092return self;
2093};
2094function Identity(v){
2095return v;
2096}
2097function Thrower(ex){
2098throw ex;
2099}
2100function adoptValue(value,resolve,reject,noValue){
2101var method;
2102try{
2103if(value&&isFunction((method=value.promise))){
2104method.call(value).done(resolve).fail(reject);
2105}else if(value&&isFunction((method=value.then))){
2106method.call(value,resolve,reject);
2107}else{
2108resolve.apply(undefined,[value].slice(noValue));
2109}
2110}catch(value){
2111reject.apply(undefined,[value]);
2112}
2113}
2114jQuery.extend({
2115Deferred:function(func){
2116var tuples=[
2117["notify","progress",jQuery.Callbacks("memory"),
2118jQuery.Callbacks("memory"),2],
2119["resolve","done",jQuery.Callbacks("once memory"),
2120jQuery.Callbacks("once memory"),0,"resolved"],
2121["reject","fail",jQuery.Callbacks("once memory"),
2122jQuery.Callbacks("once memory"),1,"rejected"]
2123],
2124state="pending",
2125promise={
2126state:function(){
2127return state;
2128},
2129always:function(){
2130deferred.done(arguments).fail(arguments);
2131return this;
2132},
2133"catch":function(fn){
2134return promise.then(null,fn);
2135},
2136pipe:function(){
2137var fns=arguments;
2138return jQuery.Deferred(function(newDefer){
2139jQuery.each(tuples,function(_i,tuple){
2140var fn=isFunction(fns[tuple[4]])&&fns[tuple[4]];
2141deferred[tuple[1]](function(){
2142var returned=fn&&fn.apply(this,arguments);
2143if(returned&&isFunction(returned.promise)){
2144returned.promise()
2145.progress(newDefer.notify)
2146.done(newDefer.resolve)
2147.fail(newDefer.reject);
2148}else{
2149newDefer[tuple[0]+"With"](
2150this,
2151fn?[returned]:arguments
2152);
2153}
2154});
2155});
2156fns=null;
2157}).promise();
2158},
2159then:function(onFulfilled,onRejected,onProgress){
2160var maxDepth=0;
2161function resolve(depth,deferred,handler,special){
2162return function(){
2163var that=this,
2164args=arguments,
2165mightThrow=function(){
2166var returned,then;
2167if(depth<maxDepth){
2168return;
2169}
2170returned=handler.apply(that,args);
2171if(returned===deferred.promise()){
2172throw new TypeError("Thenable self-resolution");
2173}
2174then=returned&&
2175(typeof returned==="object"||
2176typeof returned==="function")&&
2177returned.then;
2178if(isFunction(then)){
2179if(special){
2180then.call(
2181returned,
2182resolve(maxDepth,deferred,Identity,special),
2183resolve(maxDepth,deferred,Thrower,special)
2184);
2185}else{
2186maxDepth++;
2187then.call(
2188returned,
2189resolve(maxDepth,deferred,Identity,special),
2190resolve(maxDepth,deferred,Thrower,special),
2191resolve(maxDepth,deferred,Identity,
2192deferred.notifyWith)
2193);
2194}
2195}else{
2196if(handler!==Identity){
2197that=undefined;
2198args=[returned];
2199}
2200(special||deferred.resolveWith)(that,args);
2201}
2202},
2203process=special?
2204mightThrow:
2205function(){
2206try{
2207mightThrow();
2208}catch(e){
2209if(jQuery.Deferred.exceptionHook){
2210jQuery.Deferred.exceptionHook(e,
2211process.error);
2212}
2213if(depth+1>=maxDepth){
2214if(handler!==Thrower){
2215that=undefined;
2216args=[e];
2217}
2218deferred.rejectWith(that,args);
2219}
2220}
2221};
2222if(depth){
2223process();
2224}else{
2225if(jQuery.Deferred.getErrorHook){
2226process.error=jQuery.Deferred.getErrorHook();
2227}else if(jQuery.Deferred.getStackHook){
2228process.error=jQuery.Deferred.getStackHook();
2229}
2230window.setTimeout(process);
2231}
2232};
2233}
2234return jQuery.Deferred(function(newDefer){
2235tuples[0][3].add(
2236resolve(
22370,
2238newDefer,
2239isFunction(onProgress)?
2240onProgress:
2241Identity,
2242newDefer.notifyWith
2243)
2244);
2245tuples[1][3].add(
2246resolve(
22470,
2248newDefer,
2249isFunction(onFulfilled)?
2250onFulfilled:
2251Identity
2252)
2253);
2254tuples[2][3].add(
2255resolve(
22560,
2257newDefer,
2258isFunction(onRejected)?
2259onRejected:
2260Thrower
2261)
2262);
2263}).promise();
2264},
2265promise:function(obj){
2266return obj!=null?jQuery.extend(obj,promise):promise;
2267}
2268},
2269deferred={};
2270jQuery.each(tuples,function(i,tuple){
2271var list=tuple[2],
2272stateString=tuple[5];
2273promise[tuple[1]]=list.add;
2274if(stateString){
2275list.add(
2276function(){
2277state=stateString;
2278},
2279tuples[3-i][2].disable,
2280tuples[3-i][3].disable,
2281tuples[0][2].lock,
2282tuples[0][3].lock
2283);
2284}
2285list.add(tuple[3].fire);
2286deferred[tuple[0]]=function(){
2287deferred[tuple[0]+"With"](this===deferred?undefined:this,arguments);
2288return this;
2289};
2290deferred[tuple[0]+"With"]=list.fireWith;
2291});
2292promise.promise(deferred);
2293if(func){
2294func.call(deferred,deferred);
2295}
2296return deferred;
2297},
2298when:function(singleValue){
2299var
2300remaining=arguments.length,
2301i=remaining,
2302resolveContexts=Array(i),
2303resolveValues=slice.call(arguments),
2304primary=jQuery.Deferred(),
2305updateFunc=function(i){
2306return function(value){
2307resolveContexts[i]=this;
2308resolveValues[i]=arguments.length>1?slice.call(arguments):value;
2309if(!(--remaining)){
2310primary.resolveWith(resolveContexts,resolveValues);
2311}
2312};
2313};
2314if(remaining<=1){
2315adoptValue(singleValue,primary.done(updateFunc(i)).resolve,primary.reject,
2316!remaining);
2317if(primary.state()==="pending"||
2318isFunction(resolveValues[i]&&resolveValues[i].then)){
2319return primary.then();
2320}
2321}
2322while(i--){
2323adoptValue(resolveValues[i],updateFunc(i),primary.reject);
2324}
2325return primary.promise();
2326}
2327});
2328var rerrorNames=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
2329jQuery.Deferred.exceptionHook=function(error,asyncError){
2330if(window.console&&window.console.warn&&error&&rerrorNames.test(error.name)){
2331window.console.warn("jQuery.Deferred exception: "+error.message,
2332error.stack,asyncError);
2333}
2334};
2335jQuery.readyException=function(error){
2336window.setTimeout(function(){
2337throw error;
2338});
2339};
2340var readyList=jQuery.Deferred();
2341jQuery.fn.ready=function(fn){
2342readyList
2343.then(fn)
2344.catch(function(error){
2345jQuery.readyException(error);
2346});
2347return this;
2348};
2349jQuery.extend({
2350isReady:false,
2351readyWait:1,
2352ready:function(wait){
2353if(wait===true?--jQuery.readyWait:jQuery.isReady){
2354return;
2355}
2356jQuery.isReady=true;
2357if(wait!==true&&--jQuery.readyWait>0){
2358return;
2359}
2360readyList.resolveWith(document,[jQuery]);
2361}
2362});
2363jQuery.ready.then=readyList.then;
2364function completed(){
2365document.removeEventListener("DOMContentLoaded",completed);
2366window.removeEventListener("load",completed);
2367jQuery.ready();
2368}
2369if(document.readyState==="complete"||
2370(document.readyState!=="loading"&&!document.documentElement.doScroll)){
2371window.setTimeout(jQuery.ready);
2372}else{
2373document.addEventListener("DOMContentLoaded",completed);
2374window.addEventListener("load",completed);
2375}
2376var access=function(elems,fn,key,value,chainable,emptyGet,raw){
2377var i=0,
2378len=elems.length,
2379bulk=key==null;
2380if(toType(key)==="object"){
2381chainable=true;
2382for(i in key){
2383access(elems,fn,i,key[i],true,emptyGet,raw);
2384}
2385}else if(value!==undefined){
2386chainable=true;
2387if(!isFunction(value)){
2388raw=true;
2389}
2390if(bulk){
2391if(raw){
2392fn.call(elems,value);
2393fn=null;
2394}else{
2395bulk=fn;
2396fn=function(elem,_key,value){
2397return bulk.call(jQuery(elem),value);
2398};
2399}
2400}
2401if(fn){
2402for(;i<len;i++){
2403fn(
2404elems[i],key,raw?
2405value:
2406value.call(elems[i],i,fn(elems[i],key))
2407);
2408}
2409}
2410}
2411if(chainable){
2412return elems;
2413}
2414if(bulk){
2415return fn.call(elems);
2416}
2417return len?fn(elems[0],key):emptyGet;
2418};
2419var rmsPrefix=/^-ms-/,
2420rdashAlpha=/-([a-z])/g;
2421function fcamelCase(_all,letter){
2422return letter.toUpperCase();
2423}
2424function camelCase(string){
2425return string.replace(rmsPrefix,"ms-").replace(rdashAlpha,fcamelCase);
2426}
2427var acceptData=function(owner){
2428return owner.nodeType===1||owner.nodeType===9||!(+owner.nodeType);
2429};
2430function Data(){
2431this.expando=jQuery.expando+Data.uid++;
2432}
2433Data.uid=1;
2434Data.prototype={
2435cache:function(owner){
2436var value=owner[this.expando];
2437if(!value){
2438value={};
2439if(acceptData(owner)){
2440if(owner.nodeType){
2441owner[this.expando]=value;
2442}else{
2443Object.defineProperty(owner,this.expando,{
2444value:value,
2445configurable:true
2446});
2447}
2448}
2449}
2450return value;
2451},
2452set:function(owner,data,value){
2453var prop,
2454cache=this.cache(owner);
2455if(typeof data==="string"){
2456cache[camelCase(data)]=value;
2457}else{
2458for(prop in data){
2459cache[camelCase(prop)]=data[prop];
2460}
2461}
2462return cache;
2463},
2464get:function(owner,key){
2465return key===undefined?
2466this.cache(owner):
2467owner[this.expando]&&owner[this.expando][camelCase(key)];
2468},
2469access:function(owner,key,value){
2470if(key===undefined||
2471((key&&typeof key==="string")&&value===undefined)){
2472return this.get(owner,key);
2473}
2474this.set(owner,key,value);
2475return value!==undefined?value:key;
2476},
2477remove:function(owner,key){
2478var i,
2479cache=owner[this.expando];
2480if(cache===undefined){
2481return;
2482}
2483if(key!==undefined){
2484if(Array.isArray(key)){
2485key=key.map(camelCase);
2486}else{
2487key=camelCase(key);
2488key=key in cache?
2489[key]:
2490(key.match(rnothtmlwhite)||[]);
2491}
2492i=key.length;
2493while(i--){
2494delete cache[key[i]];
2495}
2496}
2497if(key===undefined||jQuery.isEmptyObject(cache)){
2498if(owner.nodeType){
2499owner[this.expando]=undefined;
2500}else{
2501delete owner[this.expando];
2502}
2503}
2504},
2505hasData:function(owner){
2506var cache=owner[this.expando];
2507return cache!==undefined&&!jQuery.isEmptyObject(cache);
2508}
2509};
2510var dataPriv=new Data();
2511var dataUser=new Data();
2512var rbrace=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
2513rmultiDash=/[A-Z]/g;
2514function getData(data){
2515if(data==="true"){
2516return true;
2517}
2518if(data==="false"){
2519return false;
2520}
2521if(data==="null"){
2522return null;
2523}
2524if(data===+data+""){
2525return+data;
2526}
2527if(rbrace.test(data)){
2528return JSON.parse(data);
2529}
2530return data;
2531}
2532function dataAttr(elem,key,data){
2533var name;
2534if(data===undefined&&elem.nodeType===1){
2535name="data-"+key.replace(rmultiDash,"-$&").toLowerCase();
2536data=elem.getAttribute(name);
2537if(typeof data==="string"){
2538try{
2539data=getData(data);
2540}catch(e){}
2541dataUser.set(elem,key,data);
2542}else{
2543data=undefined;
2544}
2545}
2546return data;
2547}
2548jQuery.extend({
2549hasData:function(elem){
2550return dataUser.hasData(elem)||dataPriv.hasData(elem);
2551},
2552data:function(elem,name,data){
2553return dataUser.access(elem,name,data);
2554},
2555removeData:function(elem,name){
2556dataUser.remove(elem,name);
2557},
2558_data:function(elem,name,data){
2559return dataPriv.access(elem,name,data);
2560},
2561_removeData:function(elem,name){
2562dataPriv.remove(elem,name);
2563}
2564});
2565jQuery.fn.extend({
2566data:function(key,value){
2567var i,name,data,
2568elem=this[0],
2569attrs=elem&&elem.attributes;
2570if(key===undefined){
2571if(this.length){
2572data=dataUser.get(elem);
2573if(elem.nodeType===1&&!dataPriv.get(elem,"hasDataAttrs")){
2574i=attrs.length;
2575while(i--){
2576if(attrs[i]){
2577name=attrs[i].name;
2578if(name.indexOf("data-")===0){
2579name=camelCase(name.slice(5));
2580dataAttr(elem,name,data[name]);
2581}
2582}
2583}
2584dataPriv.set(elem,"hasDataAttrs",true);
2585}
2586}
2587return data;
2588}
2589if(typeof key==="object"){
2590return this.each(function(){
2591dataUser.set(this,key);
2592});
2593}
2594return access(this,function(value){
2595var data;
2596if(elem&&value===undefined){
2597data=dataUser.get(elem,key);
2598if(data!==undefined){
2599return data;
2600}
2601data=dataAttr(elem,key);
2602if(data!==undefined){
2603return data;
2604}
2605return;
2606}
2607this.each(function(){
2608dataUser.set(this,key,value);
2609});
2610},null,value,arguments.length>1,null,true);
2611},
2612removeData:function(key){
2613return this.each(function(){
2614dataUser.remove(this,key);
2615});
2616}
2617});
2618jQuery.extend({
2619queue:function(elem,type,data){
2620var queue;
2621if(elem){
2622type=(type||"fx")+"queue";
2623queue=dataPriv.get(elem,type);
2624if(data){
2625if(!queue||Array.isArray(data)){
2626queue=dataPriv.access(elem,type,jQuery.makeArray(data));
2627}else{
2628queue.push(data);
2629}
2630}
2631return queue||[];
2632}
2633},
2634dequeue:function(elem,type){
2635type=type||"fx";
2636var queue=jQuery.queue(elem,type),
2637startLength=queue.length,
2638fn=queue.shift(),
2639hooks=jQuery._queueHooks(elem,type),
2640next=function(){
2641jQuery.dequeue(elem,type);
2642};
2643if(fn==="inprogress"){
2644fn=queue.shift();
2645startLength--;
2646}
2647if(fn){
2648if(type==="fx"){
2649queue.unshift("inprogress");
2650}
2651delete hooks.stop;
2652fn.call(elem,next,hooks);
2653}
2654if(!startLength&&hooks){
2655hooks.empty.fire();
2656}
2657},
2658_queueHooks:function(elem,type){
2659var key=type+"queueHooks";
2660return dataPriv.get(elem,key)||dataPriv.access(elem,key,{
2661empty:jQuery.Callbacks("once memory").add(function(){
2662dataPriv.remove(elem,[type+"queue",key]);
2663})
2664});
2665}
2666});
2667jQuery.fn.extend({
2668queue:function(type,data){
2669var setter=2;
2670if(typeof type!=="string"){
2671data=type;
2672type="fx";
2673setter--;
2674}
2675if(arguments.length<setter){
2676return jQuery.queue(this[0],type);
2677}
2678return data===undefined?
2679this:
2680this.each(function(){
2681var queue=jQuery.queue(this,type,data);
2682jQuery._queueHooks(this,type);
2683if(type==="fx"&&queue[0]!=="inprogress"){
2684jQuery.dequeue(this,type);
2685}
2686});
2687},
2688dequeue:function(type){
2689return this.each(function(){
2690jQuery.dequeue(this,type);
2691});
2692},
2693clearQueue:function(type){
2694return this.queue(type||"fx",[]);
2695},
2696promise:function(type,obj){
2697var tmp,
2698count=1,
2699defer=jQuery.Deferred(),
2700elements=this,
2701i=this.length,
2702resolve=function(){
2703if(!(--count)){
2704defer.resolveWith(elements,[elements]);
2705}
2706};
2707if(typeof type!=="string"){
2708obj=type;
2709type=undefined;
2710}
2711type=type||"fx";
2712while(i--){
2713tmp=dataPriv.get(elements[i],type+"queueHooks");
2714if(tmp&&tmp.empty){
2715count++;
2716tmp.empty.add(resolve);
2717}
2718}
2719resolve();
2720return defer.promise(obj);
2721}
2722});
2723var pnum=(/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/).source;
2724var rcssNum=new RegExp("^(?:([+-])=|)("+pnum+")([a-z%]*)$","i");
2725var cssExpand=["Top","Right","Bottom","Left"];
2726var documentElement=document.documentElement;
2727var isAttached=function(elem){
2728return jQuery.contains(elem.ownerDocument,elem);
2729},
2730composed={composed:true};
2731if(documentElement.getRootNode){
2732isAttached=function(elem){
2733return jQuery.contains(elem.ownerDocument,elem)||
2734elem.getRootNode(composed)===elem.ownerDocument;
2735};
2736}
2737var isHiddenWithinTree=function(elem,el){
2738elem=el||elem;
2739return elem.style.display==="none"||
2740elem.style.display===""&&
2741isAttached(elem)&&
2742jQuery.css(elem,"display")==="none";
2743};
2744function adjustCSS(elem,prop,valueParts,tween){
2745var adjusted,scale,
2746maxIterations=20,
2747currentValue=tween?
2748function(){
2749return tween.cur();
2750}:
2751function(){
2752return jQuery.css(elem,prop,"");
2753},
2754initial=currentValue(),
2755unit=valueParts&&valueParts[3]||(jQuery.cssNumber[prop]?"":"px"),
2756initialInUnit=elem.nodeType&&
2757(jQuery.cssNumber[prop]||unit!=="px"&&+initial)&&
2758rcssNum.exec(jQuery.css(elem,prop));
2759if(initialInUnit&&initialInUnit[3]!==unit){
2760initial=initial/2;
2761unit=unit||initialInUnit[3];
2762initialInUnit=+initial||1;
2763while(maxIterations--){
2764jQuery.style(elem,prop,initialInUnit+unit);
2765if((1-scale)*(1-(scale=currentValue()/initial||0.5))<=0){
2766maxIterations=0;
2767}
2768initialInUnit=initialInUnit/scale;
2769}
2770initialInUnit=initialInUnit*2;
2771jQuery.style(elem,prop,initialInUnit+unit);
2772valueParts=valueParts||[];
2773}
2774if(valueParts){
2775initialInUnit=+initialInUnit||+initial||0;
2776adjusted=valueParts[1]?
2777initialInUnit+(valueParts[1]+1)*valueParts[2]:
2778+valueParts[2];
2779if(tween){
2780tween.unit=unit;
2781tween.start=initialInUnit;
2782tween.end=adjusted;
2783}
2784}
2785return adjusted;
2786}
2787var defaultDisplayMap={};
2788function getDefaultDisplay(elem){
2789var temp,
2790doc=elem.ownerDocument,
2791nodeName=elem.nodeName,
2792display=defaultDisplayMap[nodeName];
2793if(display){
2794return display;
2795}
2796temp=doc.body.appendChild(doc.createElement(nodeName));
2797display=jQuery.css(temp,"display");
2798temp.parentNode.removeChild(temp);
2799if(display==="none"){
2800display="block";
2801}
2802defaultDisplayMap[nodeName]=display;
2803return display;
2804}
2805function showHide(elements,show){
2806var display,elem,
2807values=[],
2808index=0,
2809length=elements.length;
2810for(;index<length;index++){
2811elem=elements[index];
2812if(!elem.style){
2813continue;
2814}
2815display=elem.style.display;
2816if(show){
2817if(display==="none"){
2818values[index]=dataPriv.get(elem,"display")||null;
2819if(!values[index]){
2820elem.style.display="";
2821}
2822}
2823if(elem.style.display===""&&isHiddenWithinTree(elem)){
2824values[index]=getDefaultDisplay(elem);
2825}
2826}else{
2827if(display!=="none"){
2828values[index]="none";
2829dataPriv.set(elem,"display",display);
2830}
2831}
2832}
2833for(index=0;index<length;index++){
2834if(values[index]!=null){
2835elements[index].style.display=values[index];
2836}
2837}
2838return elements;
2839}
2840jQuery.fn.extend({
2841show:function(){
2842return showHide(this,true);
2843},
2844hide:function(){
2845return showHide(this);
2846},
2847toggle:function(state){
2848if(typeof state==="boolean"){
2849return state?this.show():this.hide();
2850}
2851return this.each(function(){
2852if(isHiddenWithinTree(this)){
2853jQuery(this).show();
2854}else{
2855jQuery(this).hide();
2856}
2857});
2858}
2859});
2860var rcheckableType=(/^(?:checkbox|radio)$/i);
2861var rtagName=(/<([a-z][^\/\0>\x20\t\r\n\f]*)/i);
2862var rscriptType=(/^$|^module$|\/(?:java|ecma)script/i);
2863(function(){
2864var fragment=document.createDocumentFragment(),
2865div=fragment.appendChild(document.createElement("div")),
2866input=document.createElement("input");
2867input.setAttribute("type","radio");
2868input.setAttribute("checked","checked");
2869input.setAttribute("name","t");
2870div.appendChild(input);
2871support.checkClone=div.cloneNode(true).cloneNode(true).lastChild.checked;
2872div.innerHTML="<textarea>x</textarea>";
2873support.noCloneChecked=!!div.cloneNode(true).lastChild.defaultValue;
2874div.innerHTML="<option></option>";
2875support.option=!!div.lastChild;
2876})();
2877var wrapMap={
2878thead:[1,"<table>","</table>"],
2879col:[2,"<table><colgroup>","</colgroup></table>"],
2880tr:[2,"<table><tbody>","</tbody></table>"],
2881td:[3,"<table><tbody><tr>","</tr></tbody></table>"],
2882_default:[0,"",""]
2883};
2884wrapMap.tbody=wrapMap.tfoot=wrapMap.colgroup=wrapMap.caption=wrapMap.thead;
2885wrapMap.th=wrapMap.td;
2886if(!support.option){
2887wrapMap.optgroup=wrapMap.option=[1,"<select multiple='multiple'>","</select>"];
2888}
2889function getAll(context,tag){
2890var ret;
2891if(typeof context.getElementsByTagName!=="undefined"){
2892ret=context.getElementsByTagName(tag||"*");
2893}else if(typeof context.querySelectorAll!=="undefined"){
2894ret=context.querySelectorAll(tag||"*");
2895}else{
2896ret=[];
2897}
2898if(tag===undefined||tag&&nodeName(context,tag)){
2899return jQuery.merge([context],ret);
2900}
2901return ret;
2902}
2903function setGlobalEval(elems,refElements){
2904var i=0,
2905l=elems.length;
2906for(;i<l;i++){
2907dataPriv.set(
2908elems[i],
2909"globalEval",
2910!refElements||dataPriv.get(refElements[i],"globalEval")
2911);
2912}
2913}
2914var rhtml=/<|&#?\w+;/;
2915function buildFragment(elems,context,scripts,selection,ignored){
2916var elem,tmp,tag,wrap,attached,j,
2917fragment=context.createDocumentFragment(),
2918nodes=[],
2919i=0,
2920l=elems.length;
2921for(;i<l;i++){
2922elem=elems[i];
2923if(elem||elem===0){
2924if(toType(elem)==="object"){
2925jQuery.merge(nodes,elem.nodeType?[elem]:elem);
2926}else if(!rhtml.test(elem)){
2927nodes.push(context.createTextNode(elem));
2928}else{
2929tmp=tmp||fragment.appendChild(context.createElement("div"));
2930tag=(rtagName.exec(elem)||["",""])[1].toLowerCase();
2931wrap=wrapMap[tag]||wrapMap._default;
2932tmp.innerHTML=wrap[1]+jQuery.htmlPrefilter(elem)+wrap[2];
2933j=wrap[0];
2934while(j--){
2935tmp=tmp.lastChild;
2936}
2937jQuery.merge(nodes,tmp.childNodes);
2938tmp=fragment.firstChild;
2939tmp.textContent="";
2940}
2941}
2942}
2943fragment.textContent="";
2944i=0;
2945while((elem=nodes[i++])){
2946if(selection&&jQuery.inArray(elem,selection)>-1){
2947if(ignored){
2948ignored.push(elem);
2949}
2950continue;
2951}
2952attached=isAttached(elem);
2953tmp=getAll(fragment.appendChild(elem),"script");
2954if(attached){
2955setGlobalEval(tmp);
2956}
2957if(scripts){
2958j=0;
2959while((elem=tmp[j++])){
2960if(rscriptType.test(elem.type||"")){
2961scripts.push(elem);
2962}
2963}
2964}
2965}
2966return fragment;
2967}
2968var rtypenamespace=/^([^.]*)(?:\.(.+)|)/;
2969function returnTrue(){
2970return true;
2971}
2972function returnFalse(){
2973return false;
2974}
2975function on(elem,types,selector,data,fn,one){
2976var origFn,type;
2977if(typeof types==="object"){
2978if(typeof selector!=="string"){
2979data=data||selector;
2980selector=undefined;
2981}
2982for(type in types){
2983on(elem,type,selector,data,types[type],one);
2984}
2985return elem;
2986}
2987if(data==null&&fn==null){
2988fn=selector;
2989data=selector=undefined;
2990}else if(fn==null){
2991if(typeof selector==="string"){
2992fn=data;
2993data=undefined;
2994}else{
2995fn=data;
2996data=selector;
2997selector=undefined;
2998}
2999}
3000if(fn===false){
3001fn=returnFalse;
3002}else if(!fn){
3003return elem;
3004}
3005if(one===1){
3006origFn=fn;
3007fn=function(event){
3008jQuery().off(event);
3009return origFn.apply(this,arguments);
3010};
3011fn.guid=origFn.guid||(origFn.guid=jQuery.guid++);
3012}
3013return elem.each(function(){
3014jQuery.event.add(this,types,fn,data,selector);
3015});
3016}
3017jQuery.event={
3018global:{},
3019add:function(elem,types,handler,data,selector){
3020var handleObjIn,eventHandle,tmp,
3021events,t,handleObj,
3022special,handlers,type,namespaces,origType,
3023elemData=dataPriv.get(elem);
3024if(!acceptData(elem)){
3025return;
3026}
3027if(handler.handler){
3028handleObjIn=handler;
3029handler=handleObjIn.handler;
3030selector=handleObjIn.selector;
3031}
3032if(selector){
3033jQuery.find.matchesSelector(documentElement,selector);
3034}
3035if(!handler.guid){
3036handler.guid=jQuery.guid++;
3037}
3038if(!(events=elemData.events)){
3039events=elemData.events=Object.create(null);
3040}
3041if(!(eventHandle=elemData.handle)){
3042eventHandle=elemData.handle=function(e){
3043return typeof jQuery!=="undefined"&&jQuery.event.triggered!==e.type?
3044jQuery.event.dispatch.apply(elem,arguments):undefined;
3045};
3046}
3047types=(types||"").match(rnothtmlwhite)||[""];
3048t=types.length;
3049while(t--){
3050tmp=rtypenamespace.exec(types[t])||[];
3051type=origType=tmp[1];
3052namespaces=(tmp[2]||"").split(".").sort();
3053if(!type){
3054continue;
3055}
3056special=jQuery.event.special[type]||{};
3057type=(selector?special.delegateType:special.bindType)||type;
3058special=jQuery.event.special[type]||{};
3059handleObj=jQuery.extend({
3060type:type,
3061origType:origType,
3062data:data,
3063handler:handler,
3064guid:handler.guid,
3065selector:selector,
3066needsContext:selector&&jQuery.expr.match.needsContext.test(selector),
3067namespace:namespaces.join(".")
3068},handleObjIn);
3069if(!(handlers=events[type])){
3070handlers=events[type]=[];
3071handlers.delegateCount=0;
3072if(!special.setup||
3073special.setup.call(elem,data,namespaces,eventHandle)===false){
3074if(elem.addEventListener){
3075elem.addEventListener(type,eventHandle);
3076}
3077}
3078}
3079if(special.add){
3080special.add.call(elem,handleObj);
3081if(!handleObj.handler.guid){
3082handleObj.handler.guid=handler.guid;
3083}
3084}
3085if(selector){
3086handlers.splice(handlers.delegateCount++,0,handleObj);
3087}else{
3088handlers.push(handleObj);
3089}
3090jQuery.event.global[type]=true;
3091}
3092},
3093remove:function(elem,types,handler,selector,mappedTypes){
3094var j,origCount,tmp,
3095events,t,handleObj,
3096special,handlers,type,namespaces,origType,
3097elemData=dataPriv.hasData(elem)&&dataPriv.get(elem);
3098if(!elemData||!(events=elemData.events)){
3099return;
3100}
3101types=(types||"").match(rnothtmlwhite)||[""];
3102t=types.length;
3103while(t--){
3104tmp=rtypenamespace.exec(types[t])||[];
3105type=origType=tmp[1];
3106namespaces=(tmp[2]||"").split(".").sort();
3107if(!type){
3108for(type in events){
3109jQuery.event.remove(elem,type+types[t],handler,selector,true);
3110}
3111continue;
3112}
3113special=jQuery.event.special[type]||{};
3114type=(selector?special.delegateType:special.bindType)||type;
3115handlers=events[type]||[];
3116tmp=tmp[2]&&
3117new RegExp("(^|\\.)"+namespaces.join("\\.(?:.*\\.|)")+"(\\.|$)");
3118origCount=j=handlers.length;
3119while(j--){
3120handleObj=handlers[j];
3121if((mappedTypes||origType===handleObj.origType)&&
3122(!handler||handler.guid===handleObj.guid)&&
3123(!tmp||tmp.test(handleObj.namespace))&&
3124(!selector||selector===handleObj.selector||
3125selector==="**"&&handleObj.selector)){
3126handlers.splice(j,1);
3127if(handleObj.selector){
3128handlers.delegateCount--;
3129}
3130if(special.remove){
3131special.remove.call(elem,handleObj);
3132}
3133}
3134}
3135if(origCount&&!handlers.length){
3136if(!special.teardown||
3137special.teardown.call(elem,namespaces,elemData.handle)===false){
3138jQuery.removeEvent(elem,type,elemData.handle);
3139}
3140delete events[type];
3141}
3142}
3143if(jQuery.isEmptyObject(events)){
3144dataPriv.remove(elem,"handle events");
3145}
3146},
3147dispatch:function(nativeEvent){
3148var i,j,ret,matched,handleObj,handlerQueue,
3149args=new Array(arguments.length),
3150event=jQuery.event.fix(nativeEvent),
3151handlers=(
3152dataPriv.get(this,"events")||Object.create(null)
3153)[event.type]||[],
3154special=jQuery.event.special[event.type]||{};
3155args[0]=event;
3156for(i=1;i<arguments.length;i++){
3157args[i]=arguments[i];
3158}
3159event.delegateTarget=this;
3160if(special.preDispatch&&special.preDispatch.call(this,event)===false){
3161return;
3162}
3163handlerQueue=jQuery.event.handlers.call(this,event,handlers);
3164i=0;
3165while((matched=handlerQueue[i++])&&!event.isPropagationStopped()){
3166event.currentTarget=matched.elem;
3167j=0;
3168while((handleObj=matched.handlers[j++])&&
3169!event.isImmediatePropagationStopped()){
3170if(!event.rnamespace||handleObj.namespace===false||
3171event.rnamespace.test(handleObj.namespace)){
3172event.handleObj=handleObj;
3173event.data=handleObj.data;
3174ret=((jQuery.event.special[handleObj.origType]||{}).handle||
3175handleObj.handler).apply(matched.elem,args);
3176if(ret!==undefined){
3177if((event.result=ret)===false){
3178event.preventDefault();
3179event.stopPropagation();
3180}
3181}
3182}
3183}
3184}
3185if(special.postDispatch){
3186special.postDispatch.call(this,event);
3187}
3188return event.result;
3189},
3190handlers:function(event,handlers){
3191var i,handleObj,sel,matchedHandlers,matchedSelectors,
3192handlerQueue=[],
3193delegateCount=handlers.delegateCount,
3194cur=event.target;
3195if(delegateCount&&
3196cur.nodeType&&
3197!(event.type==="click"&&event.button>=1)){
3198for(;cur!==this;cur=cur.parentNode||this){
3199if(cur.nodeType===1&&!(event.type==="click"&&cur.disabled===true)){
3200matchedHandlers=[];
3201matchedSelectors={};
3202for(i=0;i<delegateCount;i++){
3203handleObj=handlers[i];
3204sel=handleObj.selector+" ";
3205if(matchedSelectors[sel]===undefined){
3206matchedSelectors[sel]=handleObj.needsContext?
3207jQuery(sel,this).index(cur)>-1:
3208jQuery.find(sel,this,null,[cur]).length;
3209}
3210if(matchedSelectors[sel]){
3211matchedHandlers.push(handleObj);
3212}
3213}
3214if(matchedHandlers.length){
3215handlerQueue.push({elem:cur,handlers:matchedHandlers});
3216}
3217}
3218}
3219}
3220cur=this;
3221if(delegateCount<handlers.length){
3222handlerQueue.push({elem:cur,handlers:handlers.slice(delegateCount)});
3223}
3224return handlerQueue;
3225},
3226addProp:function(name,hook){
3227Object.defineProperty(jQuery.Event.prototype,name,{
3228enumerable:true,
3229configurable:true,
3230get:isFunction(hook)?
3231function(){
3232if(this.originalEvent){
3233return hook(this.originalEvent);
3234}
3235}:
3236function(){
3237if(this.originalEvent){
3238return this.originalEvent[name];
3239}
3240},
3241set:function(value){
3242Object.defineProperty(this,name,{
3243enumerable:true,
3244configurable:true,
3245writable:true,
3246value:value
3247});
3248}
3249});
3250},
3251fix:function(originalEvent){
3252return originalEvent[jQuery.expando]?
3253originalEvent:
3254new jQuery.Event(originalEvent);
3255},
3256special:{
3257load:{
3258noBubble:true
3259},
3260click:{
3261setup:function(data){
3262var el=this||data;
3263if(rcheckableType.test(el.type)&&
3264el.click&&nodeName(el,"input")){
3265leverageNative(el,"click",true);
3266}
3267return false;
3268},
3269trigger:function(data){
3270var el=this||data;
3271if(rcheckableType.test(el.type)&&
3272el.click&&nodeName(el,"input")){
3273leverageNative(el,"click");
3274}
3275return true;
3276},
3277_default:function(event){
3278var target=event.target;
3279return rcheckableType.test(target.type)&&
3280target.click&&nodeName(target,"input")&&
3281dataPriv.get(target,"click")||
3282nodeName(target,"a");
3283}
3284},
3285beforeunload:{
3286postDispatch:function(event){
3287if(event.result!==undefined&&event.originalEvent){
3288event.originalEvent.returnValue=event.result;
3289}
3290}
3291}
3292}
3293};
3294function leverageNative(el,type,isSetup){
3295if(!isSetup){
3296if(dataPriv.get(el,type)===undefined){
3297jQuery.event.add(el,type,returnTrue);
3298}
3299return;
3300}
3301dataPriv.set(el,type,false);
3302jQuery.event.add(el,type,{
3303namespace:false,
3304handler:function(event){
3305var result,
3306saved=dataPriv.get(this,type);
3307if((event.isTrigger&1)&&this[type]){
3308if(!saved){
3309saved=slice.call(arguments);
3310dataPriv.set(this,type,saved);
3311this[type]();
3312result=dataPriv.get(this,type);
3313dataPriv.set(this,type,false);
3314if(saved!==result){
3315event.stopImmediatePropagation();
3316event.preventDefault();
3317return result;
3318}
3319}else if((jQuery.event.special[type]||{}).delegateType){
3320event.stopPropagation();
3321}
3322}else if(saved){
3323dataPriv.set(this,type,jQuery.event.trigger(
3324saved[0],
3325saved.slice(1),
3326this
3327));
3328event.stopPropagation();
3329event.isImmediatePropagationStopped=returnTrue;
3330}
3331}
3332});
3333}
3334jQuery.removeEvent=function(elem,type,handle){
3335if(elem.removeEventListener){
3336elem.removeEventListener(type,handle);
3337}
3338};
3339jQuery.Event=function(src,props){
3340if(!(this instanceof jQuery.Event)){
3341return new jQuery.Event(src,props);
3342}
3343if(src&&src.type){
3344this.originalEvent=src;
3345this.type=src.type;
3346this.isDefaultPrevented=src.defaultPrevented||
3347src.defaultPrevented===undefined&&
3348src.returnValue===false?
3349returnTrue:
3350returnFalse;
3351this.target=(src.target&&src.target.nodeType===3)?
3352src.target.parentNode:
3353src.target;
3354this.currentTarget=src.currentTarget;
3355this.relatedTarget=src.relatedTarget;
3356}else{
3357this.type=src;
3358}
3359if(props){
3360jQuery.extend(this,props);
3361}
3362this.timeStamp=src&&src.timeStamp||Date.now();
3363this[jQuery.expando]=true;
3364};
3365jQuery.Event.prototype={
3366constructor:jQuery.Event,
3367isDefaultPrevented:returnFalse,
3368isPropagationStopped:returnFalse,
3369isImmediatePropagationStopped:returnFalse,
3370isSimulated:false,
3371preventDefault:function(){
3372var e=this.originalEvent;
3373this.isDefaultPrevented=returnTrue;
3374if(e&&!this.isSimulated){
3375e.preventDefault();
3376}
3377},
3378stopPropagation:function(){
3379var e=this.originalEvent;
3380this.isPropagationStopped=returnTrue;
3381if(e&&!this.isSimulated){
3382e.stopPropagation();
3383}
3384},
3385stopImmediatePropagation:function(){
3386var e=this.originalEvent;
3387this.isImmediatePropagationStopped=returnTrue;
3388if(e&&!this.isSimulated){
3389e.stopImmediatePropagation();
3390}
3391this.stopPropagation();
3392}
3393};
3394jQuery.each({
3395altKey:true,
3396bubbles:true,
3397cancelable:true,
3398changedTouches:true,
3399ctrlKey:true,
3400detail:true,
3401eventPhase:true,
3402metaKey:true,
3403pageX:true,
3404pageY:true,
3405shiftKey:true,
3406view:true,
3407"char":true,
3408code:true,
3409charCode:true,
3410key:true,
3411keyCode:true,
3412button:true,
3413buttons:true,
3414clientX:true,
3415clientY:true,
3416offsetX:true,
3417offsetY:true,
3418pointerId:true,
3419pointerType:true,
3420screenX:true,
3421screenY:true,
3422targetTouches:true,
3423toElement:true,
3424touches:true,
3425which:true
3426},jQuery.event.addProp);
3427jQuery.each({focus:"focusin",blur:"focusout"},function(type,delegateType){
3428function focusMappedHandler(nativeEvent){
3429if(document.documentMode){
3430var handle=dataPriv.get(this,"handle"),
3431event=jQuery.event.fix(nativeEvent);
3432event.type=nativeEvent.type==="focusin"?"focus":"blur";
3433event.isSimulated=true;
3434handle(nativeEvent);
3435if(event.target===event.currentTarget){
3436handle(event);
3437}
3438}else{
3439jQuery.event.simulate(delegateType,nativeEvent.target,
3440jQuery.event.fix(nativeEvent));
3441}
3442}
3443jQuery.event.special[type]={
3444setup:function(){
3445var attaches;
3446leverageNative(this,type,true);
3447if(document.documentMode){
3448attaches=dataPriv.get(this,delegateType);
3449if(!attaches){
3450this.addEventListener(delegateType,focusMappedHandler);
3451}
3452dataPriv.set(this,delegateType,(attaches||0)+1);
3453}else{
3454return false;
3455}
3456},
3457trigger:function(){
3458leverageNative(this,type);
3459return true;
3460},
3461teardown:function(){
3462var attaches;
3463if(document.documentMode){
3464attaches=dataPriv.get(this,delegateType)-1;
3465if(!attaches){
3466this.removeEventListener(delegateType,focusMappedHandler);
3467dataPriv.remove(this,delegateType);
3468}else{
3469dataPriv.set(this,delegateType,attaches);
3470}
3471}else{
3472return false;
3473}
3474},
3475_default:function(event){
3476return dataPriv.get(event.target,type);
3477},
3478delegateType:delegateType
3479};
3480jQuery.event.special[delegateType]={
3481setup:function(){
3482var doc=this.ownerDocument||this.document||this,
3483dataHolder=document.documentMode?this:doc,
3484attaches=dataPriv.get(dataHolder,delegateType);
3485if(!attaches){
3486if(document.documentMode){
3487this.addEventListener(delegateType,focusMappedHandler);
3488}else{
3489doc.addEventListener(type,focusMappedHandler,true);
3490}
3491}
3492dataPriv.set(dataHolder,delegateType,(attaches||0)+1);
3493},
3494teardown:function(){
3495var doc=this.ownerDocument||this.document||this,
3496dataHolder=document.documentMode?this:doc,
3497attaches=dataPriv.get(dataHolder,delegateType)-1;
3498if(!attaches){
3499if(document.documentMode){
3500this.removeEventListener(delegateType,focusMappedHandler);
3501}else{
3502doc.removeEventListener(type,focusMappedHandler,true);
3503}
3504dataPriv.remove(dataHolder,delegateType);
3505}else{
3506dataPriv.set(dataHolder,delegateType,attaches);
3507}
3508}
3509};
3510});
3511jQuery.each({
3512mouseenter:"mouseover",
3513mouseleave:"mouseout",
3514pointerenter:"pointerover",
3515pointerleave:"pointerout"
3516},function(orig,fix){
3517jQuery.event.special[orig]={
3518delegateType:fix,
3519bindType:fix,
3520handle:function(event){
3521var ret,
3522target=this,
3523related=event.relatedTarget,
3524handleObj=event.handleObj;
3525if(!related||(related!==target&&!jQuery.contains(target,related))){
3526event.type=handleObj.origType;
3527ret=handleObj.handler.apply(this,arguments);
3528event.type=fix;
3529}
3530return ret;
3531}
3532};
3533});
3534jQuery.fn.extend({
3535on:function(types,selector,data,fn){
3536return on(this,types,selector,data,fn);
3537},
3538one:function(types,selector,data,fn){
3539return on(this,types,selector,data,fn,1);
3540},
3541off:function(types,selector,fn){
3542var handleObj,type;
3543if(types&&types.preventDefault&&types.handleObj){
3544handleObj=types.handleObj;
3545jQuery(types.delegateTarget).off(
3546handleObj.namespace?
3547handleObj.origType+"."+handleObj.namespace:
3548handleObj.origType,
3549handleObj.selector,
3550handleObj.handler
3551);
3552return this;
3553}
3554if(typeof types==="object"){
3555for(type in types){
3556this.off(type,selector,types[type]);
3557}
3558return this;
3559}
3560if(selector===false||typeof selector==="function"){
3561fn=selector;
3562selector=undefined;
3563}
3564if(fn===false){
3565fn=returnFalse;
3566}
3567return this.each(function(){
3568jQuery.event.remove(this,types,fn,selector);
3569});
3570}
3571});
3572var
3573rnoInnerhtml=/<script|<style|<link/i,
3574rchecked=/checked\s*(?:[^=]|=\s*.checked.)/i,
3575rcleanScript=/^\s*<!\[CDATA\[|\]\]>\s*$/g;
3576function manipulationTarget(elem,content){
3577if(nodeName(elem,"table")&&
3578nodeName(content.nodeType!==11?content:content.firstChild,"tr")){
3579return jQuery(elem).children("tbody")[0]||elem;
3580}
3581return elem;
3582}
3583function disableScript(elem){
3584elem.type=(elem.getAttribute("type")!==null)+"/"+elem.type;
3585return elem;
3586}
3587function restoreScript(elem){
3588if((elem.type||"").slice(0,5)==="true/"){
3589elem.type=elem.type.slice(5);
3590}else{
3591elem.removeAttribute("type");
3592}
3593return elem;
3594}
3595function cloneCopyEvent(src,dest){
3596var i,l,type,pdataOld,udataOld,udataCur,events;
3597if(dest.nodeType!==1){
3598return;
3599}
3600if(dataPriv.hasData(src)){
3601pdataOld=dataPriv.get(src);
3602events=pdataOld.events;
3603if(events){
3604dataPriv.remove(dest,"handle events");
3605for(type in events){
3606for(i=0,l=events[type].length;i<l;i++){
3607jQuery.event.add(dest,type,events[type][i]);
3608}
3609}
3610}
3611}
3612if(dataUser.hasData(src)){
3613udataOld=dataUser.access(src);
3614udataCur=jQuery.extend({},udataOld);
3615dataUser.set(dest,udataCur);
3616}
3617}
3618function fixInput(src,dest){
3619var nodeName=dest.nodeName.toLowerCase();
3620if(nodeName==="input"&&rcheckableType.test(src.type)){
3621dest.checked=src.checked;
3622}else if(nodeName==="input"||nodeName==="textarea"){
3623dest.defaultValue=src.defaultValue;
3624}
3625}
3626function domManip(collection,args,callback,ignored){
3627args=flat(args);
3628var fragment,first,scripts,hasScripts,node,doc,
3629i=0,
3630l=collection.length,
3631iNoClone=l-1,
3632value=args[0],
3633valueIsFunction=isFunction(value);
3634if(valueIsFunction||
3635(l>1&&typeof value==="string"&&
3636!support.checkClone&&rchecked.test(value))){
3637return collection.each(function(index){
3638var self=collection.eq(index);
3639if(valueIsFunction){
3640args[0]=value.call(this,index,self.html());
3641}
3642domManip(self,args,callback,ignored);
3643});
3644}
3645if(l){
3646fragment=buildFragment(args,collection[0].ownerDocument,false,collection,ignored);
3647first=fragment.firstChild;
3648if(fragment.childNodes.length===1){
3649fragment=first;
3650}
3651if(first||ignored){
3652scripts=jQuery.map(getAll(fragment,"script"),disableScript);
3653hasScripts=scripts.length;
3654for(;i<l;i++){
3655node=fragment;
3656if(i!==iNoClone){
3657node=jQuery.clone(node,true,true);
3658if(hasScripts){
3659jQuery.merge(scripts,getAll(node,"script"));
3660}
3661}
3662callback.call(collection[i],node,i);
3663}
3664if(hasScripts){
3665doc=scripts[scripts.length-1].ownerDocument;
3666jQuery.map(scripts,restoreScript);
3667for(i=0;i<hasScripts;i++){
3668node=scripts[i];
3669if(rscriptType.test(node.type||"")&&
3670!dataPriv.access(node,"globalEval")&&
3671jQuery.contains(doc,node)){
3672if(node.src&&(node.type||"").toLowerCase()!=="module"){
3673if(jQuery._evalUrl&&!node.noModule){
3674jQuery._evalUrl(node.src,{
3675nonce:node.nonce||node.getAttribute("nonce")
3676},doc);
3677}
3678}else{
3679DOMEval(node.textContent.replace(rcleanScript,""),node,doc);
3680}
3681}
3682}
3683}
3684}
3685}
3686return collection;
3687}
3688function remove(elem,selector,keepData){
3689var node,
3690nodes=selector?jQuery.filter(selector,elem):elem,
3691i=0;
3692for(;(node=nodes[i])!=null;i++){
3693if(!keepData&&node.nodeType===1){
3694jQuery.cleanData(getAll(node));
3695}
3696if(node.parentNode){
3697if(keepData&&isAttached(node)){
3698setGlobalEval(getAll(node,"script"));
3699}
3700node.parentNode.removeChild(node);
3701}
3702}
3703return elem;
3704}
3705jQuery.extend({
3706htmlPrefilter:function(html){
3707return html;
3708},
3709clone:function(elem,dataAndEvents,deepDataAndEvents){
3710var i,l,srcElements,destElements,
3711clone=elem.cloneNode(true),
3712inPage=isAttached(elem);
3713if(!support.noCloneChecked&&(elem.nodeType===1||elem.nodeType===11)&&
3714!jQuery.isXMLDoc(elem)){
3715destElements=getAll(clone);
3716srcElements=getAll(elem);
3717for(i=0,l=srcElements.length;i<l;i++){
3718fixInput(srcElements[i],destElements[i]);
3719}
3720}
3721if(dataAndEvents){
3722if(deepDataAndEvents){
3723srcElements=srcElements||getAll(elem);
3724destElements=destElements||getAll(clone);
3725for(i=0,l=srcElements.length;i<l;i++){
3726cloneCopyEvent(srcElements[i],destElements[i]);
3727}
3728}else{
3729cloneCopyEvent(elem,clone);
3730}
3731}
3732destElements=getAll(clone,"script");
3733if(destElements.length>0){
3734setGlobalEval(destElements,!inPage&&getAll(elem,"script"));
3735}
3736return clone;
3737},
3738cleanData:function(elems){
3739var data,elem,type,
3740special=jQuery.event.special,
3741i=0;
3742for(;(elem=elems[i])!==undefined;i++){
3743if(acceptData(elem)){
3744if((data=elem[dataPriv.expando])){
3745if(data.events){
3746for(type in data.events){
3747if(special[type]){
3748jQuery.event.remove(elem,type);
3749}else{
3750jQuery.removeEvent(elem,type,data.handle);
3751}
3752}
3753}
3754elem[dataPriv.expando]=undefined;
3755}
3756if(elem[dataUser.expando]){
3757elem[dataUser.expando]=undefined;
3758}
3759}
3760}
3761}
3762});
3763jQuery.fn.extend({
3764detach:function(selector){
3765return remove(this,selector,true);
3766},
3767remove:function(selector){
3768return remove(this,selector);
3769},
3770text:function(value){
3771return access(this,function(value){
3772return value===undefined?
3773jQuery.text(this):
3774this.empty().each(function(){
3775if(this.nodeType===1||this.nodeType===11||this.nodeType===9){
3776this.textContent=value;
3777}
3778});
3779},null,value,arguments.length);
3780},
3781append:function(){
3782return domManip(this,arguments,function(elem){
3783if(this.nodeType===1||this.nodeType===11||this.nodeType===9){
3784var target=manipulationTarget(this,elem);
3785target.appendChild(elem);
3786}
3787});
3788},
3789prepend:function(){
3790return domManip(this,arguments,function(elem){
3791if(this.nodeType===1||this.nodeType===11||this.nodeType===9){
3792var target=manipulationTarget(this,elem);
3793target.insertBefore(elem,target.firstChild);
3794}
3795});
3796},
3797before:function(){
3798return domManip(this,arguments,function(elem){
3799if(this.parentNode){
3800this.parentNode.insertBefore(elem,this);
3801}
3802});
3803},
3804after:function(){
3805return domManip(this,arguments,function(elem){
3806if(this.parentNode){
3807this.parentNode.insertBefore(elem,this.nextSibling);
3808}
3809});
3810},
3811empty:function(){
3812var elem,
3813i=0;
3814for(;(elem=this[i])!=null;i++){
3815if(elem.nodeType===1){
3816jQuery.cleanData(getAll(elem,false));
3817elem.textContent="";
3818}
3819}
3820return this;
3821},
3822clone:function(dataAndEvents,deepDataAndEvents){
3823dataAndEvents=dataAndEvents==null?false:dataAndEvents;
3824deepDataAndEvents=deepDataAndEvents==null?dataAndEvents:deepDataAndEvents;
3825return this.map(function(){
3826return jQuery.clone(this,dataAndEvents,deepDataAndEvents);
3827});
3828},
3829html:function(value){
3830return access(this,function(value){
3831var elem=this[0]||{},
3832i=0,
3833l=this.length;
3834if(value===undefined&&elem.nodeType===1){
3835return elem.innerHTML;
3836}
3837if(typeof value==="string"&&!rnoInnerhtml.test(value)&&
3838!wrapMap[(rtagName.exec(value)||["",""])[1].toLowerCase()]){
3839value=jQuery.htmlPrefilter(value);
3840try{
3841for(;i<l;i++){
3842elem=this[i]||{};
3843if(elem.nodeType===1){
3844jQuery.cleanData(getAll(elem,false));
3845elem.innerHTML=value;
3846}
3847}
3848elem=0;
3849}catch(e){}
3850}
3851if(elem){
3852this.empty().append(value);
3853}
3854},null,value,arguments.length);
3855},
3856replaceWith:function(){
3857var ignored=[];
3858return domManip(this,arguments,function(elem){
3859var parent=this.parentNode;
3860if(jQuery.inArray(this,ignored)<0){
3861jQuery.cleanData(getAll(this));
3862if(parent){
3863parent.replaceChild(elem,this);
3864}
3865}
3866},ignored);
3867}
3868});
3869jQuery.each({
3870appendTo:"append",
3871prependTo:"prepend",
3872insertBefore:"before",
3873insertAfter:"after",
3874replaceAll:"replaceWith"
3875},function(name,original){
3876jQuery.fn[name]=function(selector){
3877var elems,
3878ret=[],
3879insert=jQuery(selector),
3880last=insert.length-1,
3881i=0;
3882for(;i<=last;i++){
3883elems=i===last?this:this.clone(true);
3884jQuery(insert[i])[original](elems);
3885push.apply(ret,elems.get());
3886}
3887return this.pushStack(ret);
3888};
3889});
3890var rnumnonpx=new RegExp("^("+pnum+")(?!px)[a-z%]+$","i");
3891var rcustomProp=/^--/;
3892var getStyles=function(elem){
3893var view=elem.ownerDocument.defaultView;
3894if(!view||!view.opener){
3895view=window;
3896}
3897return view.getComputedStyle(elem);
3898};
3899var swap=function(elem,options,callback){
3900var ret,name,
3901old={};
3902for(name in options){
3903old[name]=elem.style[name];
3904elem.style[name]=options[name];
3905}
3906ret=callback.call(elem);
3907for(name in options){
3908elem.style[name]=old[name];
3909}
3910return ret;
3911};
3912var rboxStyle=new RegExp(cssExpand.join("|"),"i");
3913(function(){
3914function computeStyleTests(){
3915if(!div){
3916return;
3917}
3918container.style.cssText="position:absolute;left:-11111px;width:60px;"+
3919"margin-top:1px;padding:0;border:0";
3920div.style.cssText=
3921"position:relative;display:block;box-sizing:border-box;overflow:scroll;"+
3922"margin:auto;border:1px;padding:1px;"+
3923"width:60%;top:1%";
3924documentElement.appendChild(container).appendChild(div);
3925var divStyle=window.getComputedStyle(div);
3926pixelPositionVal=divStyle.top!=="1%";
3927reliableMarginLeftVal=roundPixelMeasures(divStyle.marginLeft)===12;
3928div.style.right="60%";
3929pixelBoxStylesVal=roundPixelMeasures(divStyle.right)===36;
3930boxSizingReliableVal=roundPixelMeasures(divStyle.width)===36;
3931div.style.position="absolute";
3932scrollboxSizeVal=roundPixelMeasures(div.offsetWidth/3)===12;
3933documentElement.removeChild(container);
3934div=null;
3935}
3936function roundPixelMeasures(measure){
3937return Math.round(parseFloat(measure));
3938}
3939var pixelPositionVal,boxSizingReliableVal,scrollboxSizeVal,pixelBoxStylesVal,
3940reliableTrDimensionsVal,reliableMarginLeftVal,
3941container=document.createElement("div"),
3942div=document.createElement("div");
3943if(!div.style){
3944return;
3945}
3946div.style.backgroundClip="content-box";
3947div.cloneNode(true).style.backgroundClip="";
3948support.clearCloneStyle=div.style.backgroundClip==="content-box";
3949jQuery.extend(support,{
3950boxSizingReliable:function(){
3951computeStyleTests();
3952return boxSizingReliableVal;
3953},
3954pixelBoxStyles:function(){
3955computeStyleTests();
3956return pixelBoxStylesVal;
3957},
3958pixelPosition:function(){
3959computeStyleTests();
3960return pixelPositionVal;
3961},
3962reliableMarginLeft:function(){
3963computeStyleTests();
3964return reliableMarginLeftVal;
3965},
3966scrollboxSize:function(){
3967computeStyleTests();
3968return scrollboxSizeVal;
3969},
3970reliableTrDimensions:function(){
3971var table,tr,trChild,trStyle;
3972if(reliableTrDimensionsVal==null){
3973table=document.createElement("table");
3974tr=document.createElement("tr");
3975trChild=document.createElement("div");
3976table.style.cssText="position:absolute;left:-11111px;border-collapse:separate";
3977tr.style.cssText="box-sizing:content-box;border:1px solid";
3978tr.style.height="1px";
3979trChild.style.height="9px";
3980trChild.style.display="block";
3981documentElement
3982.appendChild(table)
3983.appendChild(tr)
3984.appendChild(trChild);
3985trStyle=window.getComputedStyle(tr);
3986reliableTrDimensionsVal=(parseInt(trStyle.height,10)+
3987parseInt(trStyle.borderTopWidth,10)+
3988parseInt(trStyle.borderBottomWidth,10))===tr.offsetHeight;
3989documentElement.removeChild(table);
3990}
3991return reliableTrDimensionsVal;
3992}
3993});
3994})();
3995function curCSS(elem,name,computed){
3996var width,minWidth,maxWidth,ret,
3997isCustomProp=rcustomProp.test(name),
3998style=elem.style;
3999computed=computed||getStyles(elem);
4000if(computed){
4001ret=computed.getPropertyValue(name)||computed[name];
4002if(isCustomProp&&ret){
4003ret=ret.replace(rtrimCSS,"$1")||undefined;
4004}
4005if(ret===""&&!isAttached(elem)){
4006ret=jQuery.style(elem,name);
4007}
4008if(!support.pixelBoxStyles()&&rnumnonpx.test(ret)&&rboxStyle.test(name)){
4009width=style.width;
4010minWidth=style.minWidth;
4011maxWidth=style.maxWidth;
4012style.minWidth=style.maxWidth=style.width=ret;
4013ret=computed.width;
4014style.width=width;
4015style.minWidth=minWidth;
4016style.maxWidth=maxWidth;
4017}
4018}
4019return ret!==undefined?
4020ret+"":
4021ret;
4022}
4023function addGetHookIf(conditionFn,hookFn){
4024return{
4025get:function(){
4026if(conditionFn()){
4027delete this.get;
4028return;
4029}
4030return(this.get=hookFn).apply(this,arguments);
4031}
4032};
4033}
4034var cssPrefixes=["Webkit","Moz","ms"],
4035emptyStyle=document.createElement("div").style,
4036vendorProps={};
4037function vendorPropName(name){
4038var capName=name[0].toUpperCase()+name.slice(1),
4039i=cssPrefixes.length;
4040while(i--){
4041name=cssPrefixes[i]+capName;
4042if(name in emptyStyle){
4043return name;
4044}
4045}
4046}
4047function finalPropName(name){
4048var final=jQuery.cssProps[name]||vendorProps[name];
4049if(final){
4050return final;
4051}
4052if(name in emptyStyle){
4053return name;
4054}
4055return vendorProps[name]=vendorPropName(name)||name;
4056}
4057var
4058rdisplayswap=/^(none|table(?!-c[ea]).+)/,
4059cssShow={position:"absolute",visibility:"hidden",display:"block"},
4060cssNormalTransform={
4061letterSpacing:"0",
4062fontWeight:"400"
4063};
4064function setPositiveNumber(_elem,value,subtract){
4065var matches=rcssNum.exec(value);
4066return matches?
4067Math.max(0,matches[2]-(subtract||0))+(matches[3]||"px"):
4068value;
4069}
4070function boxModelAdjustment(elem,dimension,box,isBorderBox,styles,computedVal){
4071var i=dimension==="width"?1:0,
4072extra=0,
4073delta=0,
4074marginDelta=0;
4075if(box===(isBorderBox?"border":"content")){
4076return 0;
4077}
4078for(;i<4;i+=2){
4079if(box==="margin"){
4080marginDelta+=jQuery.css(elem,box+cssExpand[i],true,styles);
4081}
4082if(!isBorderBox){
4083delta+=jQuery.css(elem,"padding"+cssExpand[i],true,styles);
4084if(box!=="padding"){
4085delta+=jQuery.css(elem,"border"+cssExpand[i]+"Width",true,styles);
4086}else{
4087extra+=jQuery.css(elem,"border"+cssExpand[i]+"Width",true,styles);
4088}
4089}else{
4090if(box==="content"){
4091delta-=jQuery.css(elem,"padding"+cssExpand[i],true,styles);
4092}
4093if(box!=="margin"){
4094delta-=jQuery.css(elem,"border"+cssExpand[i]+"Width",true,styles);
4095}
4096}
4097}
4098if(!isBorderBox&&computedVal>=0){
4099delta+=Math.max(0,Math.ceil(
4100elem["offset"+dimension[0].toUpperCase()+dimension.slice(1)]-
4101computedVal-
4102delta-
4103extra-
41040.5
4105))||0;
4106}
4107return delta+marginDelta;
4108}
4109function getWidthOrHeight(elem,dimension,extra){
4110var styles=getStyles(elem),
4111boxSizingNeeded=!support.boxSizingReliable()||extra,
4112isBorderBox=boxSizingNeeded&&
4113jQuery.css(elem,"boxSizing",false,styles)==="border-box",
4114valueIsBorderBox=isBorderBox,
4115val=curCSS(elem,dimension,styles),
4116offsetProp="offset"+dimension[0].toUpperCase()+dimension.slice(1);
4117if(rnumnonpx.test(val)){
4118if(!extra){
4119return val;
4120}
4121val="auto";
4122}
4123if((!support.boxSizingReliable()&&isBorderBox||
4124!support.reliableTrDimensions()&&nodeName(elem,"tr")||
4125val==="auto"||
4126!parseFloat(val)&&jQuery.css(elem,"display",false,styles)==="inline")&&
4127elem.getClientRects().length){
4128isBorderBox=jQuery.css(elem,"boxSizing",false,styles)==="border-box";
4129valueIsBorderBox=offsetProp in elem;
4130if(valueIsBorderBox){
4131val=elem[offsetProp];
4132}
4133}
4134val=parseFloat(val)||0;
4135return(val+
4136boxModelAdjustment(
4137elem,
4138dimension,
4139extra||(isBorderBox?"border":"content"),
4140valueIsBorderBox,
4141styles,
4142val
4143)
4144)+"px";
4145}
4146jQuery.extend({
4147cssHooks:{
4148opacity:{
4149get:function(elem,computed){
4150if(computed){
4151var ret=curCSS(elem,"opacity");
4152return ret===""?"1":ret;
4153}
4154}
4155}
4156},
4157cssNumber:{
4158animationIterationCount:true,
4159aspectRatio:true,
4160borderImageSlice:true,
4161columnCount:true,
4162flexGrow:true,
4163flexShrink:true,
4164fontWeight:true,
4165gridArea:true,
4166gridColumn:true,
4167gridColumnEnd:true,
4168gridColumnStart:true,
4169gridRow:true,
4170gridRowEnd:true,
4171gridRowStart:true,
4172lineHeight:true,
4173opacity:true,
4174order:true,
4175orphans:true,
4176scale:true,
4177widows:true,
4178zIndex:true,
4179zoom:true,
4180fillOpacity:true,
4181floodOpacity:true,
4182stopOpacity:true,
4183strokeMiterlimit:true,
4184strokeOpacity:true
4185},
4186cssProps:{},
4187style:function(elem,name,value,extra){
4188if(!elem||elem.nodeType===3||elem.nodeType===8||!elem.style){
4189return;
4190}
4191var ret,type,hooks,
4192origName=camelCase(name),
4193isCustomProp=rcustomProp.test(name),
4194style=elem.style;
4195if(!isCustomProp){
4196name=finalPropName(origName);
4197}
4198hooks=jQuery.cssHooks[name]||jQuery.cssHooks[origName];
4199if(value!==undefined){
4200type=typeof value;
4201if(type==="string"&&(ret=rcssNum.exec(value))&&ret[1]){
4202value=adjustCSS(elem,name,ret);
4203type="number";
4204}
4205if(value==null||value!==value){
4206return;
4207}
4208if(type==="number"&&!isCustomProp){
4209value+=ret&&ret[3]||(jQuery.cssNumber[origName]?"":"px");
4210}
4211if(!support.clearCloneStyle&&value===""&&name.indexOf("background")===0){
4212style[name]="inherit";
4213}
4214if(!hooks||!("set"in hooks)||
4215(value=hooks.set(elem,value,extra))!==undefined){
4216if(isCustomProp){
4217style.setProperty(name,value);
4218}else{
4219style[name]=value;
4220}
4221}
4222}else{
4223if(hooks&&"get"in hooks&&
4224(ret=hooks.get(elem,false,extra))!==undefined){
4225return ret;
4226}
4227return style[name];
4228}
4229},
4230css:function(elem,name,extra,styles){
4231var val,num,hooks,
4232origName=camelCase(name),
4233isCustomProp=rcustomProp.test(name);
4234if(!isCustomProp){
4235name=finalPropName(origName);
4236}
4237hooks=jQuery.cssHooks[name]||jQuery.cssHooks[origName];
4238if(hooks&&"get"in hooks){
4239val=hooks.get(elem,true,extra);
4240}
4241if(val===undefined){
4242val=curCSS(elem,name,styles);
4243}
4244if(val==="normal"&&name in cssNormalTransform){
4245val=cssNormalTransform[name];
4246}
4247if(extra===""||extra){
4248num=parseFloat(val);
4249return extra===true||isFinite(num)?num||0:val;
4250}
4251return val;
4252}
4253});
4254jQuery.each(["height","width"],function(_i,dimension){
4255jQuery.cssHooks[dimension]={
4256get:function(elem,computed,extra){
4257if(computed){
4258return rdisplayswap.test(jQuery.css(elem,"display"))&&
4259(!elem.getClientRects().length||!elem.getBoundingClientRect().width)?
4260swap(elem,cssShow,function(){
4261return getWidthOrHeight(elem,dimension,extra);
4262}):
4263getWidthOrHeight(elem,dimension,extra);
4264}
4265},
4266set:function(elem,value,extra){
4267var matches,
4268styles=getStyles(elem),
4269scrollboxSizeBuggy=!support.scrollboxSize()&&
4270styles.position==="absolute",
4271boxSizingNeeded=scrollboxSizeBuggy||extra,
4272isBorderBox=boxSizingNeeded&&
4273jQuery.css(elem,"boxSizing",false,styles)==="border-box",
4274subtract=extra?
4275boxModelAdjustment(
4276elem,
4277dimension,
4278extra,
4279isBorderBox,
4280styles
4281):
42820;
4283if(isBorderBox&&scrollboxSizeBuggy){
4284subtract-=Math.ceil(
4285elem["offset"+dimension[0].toUpperCase()+dimension.slice(1)]-
4286parseFloat(styles[dimension])-
4287boxModelAdjustment(elem,dimension,"border",false,styles)-
42880.5
4289);
4290}
4291if(subtract&&(matches=rcssNum.exec(value))&&
4292(matches[3]||"px")!=="px"){
4293elem.style[dimension]=value;
4294value=jQuery.css(elem,dimension);
4295}
4296return setPositiveNumber(elem,value,subtract);
4297}
4298};
4299});
4300jQuery.cssHooks.marginLeft=addGetHookIf(support.reliableMarginLeft,
4301function(elem,computed){
4302if(computed){
4303return(parseFloat(curCSS(elem,"marginLeft"))||
4304elem.getBoundingClientRect().left-
4305swap(elem,{marginLeft:0},function(){
4306return elem.getBoundingClientRect().left;
4307})
4308)+"px";
4309}
4310}
4311);
4312jQuery.each({
4313margin:"",
4314padding:"",
4315border:"Width"
4316},function(prefix,suffix){
4317jQuery.cssHooks[prefix+suffix]={
4318expand:function(value){
4319var i=0,
4320expanded={},
4321parts=typeof value==="string"?value.split(" "):[value];
4322for(;i<4;i++){
4323expanded[prefix+cssExpand[i]+suffix]=
4324parts[i]||parts[i-2]||parts[0];
4325}
4326return expanded;
4327}
4328};
4329if(prefix!=="margin"){
4330jQuery.cssHooks[prefix+suffix].set=setPositiveNumber;
4331}
4332});
4333jQuery.fn.extend({
4334css:function(name,value){
4335return access(this,function(elem,name,value){
4336var styles,len,
4337map={},
4338i=0;
4339if(Array.isArray(name)){
4340styles=getStyles(elem);
4341len=name.length;
4342for(;i<len;i++){
4343map[name[i]]=jQuery.css(elem,name[i],false,styles);
4344}
4345return map;
4346}
4347return value!==undefined?
4348jQuery.style(elem,name,value):
4349jQuery.css(elem,name);
4350},name,value,arguments.length>1);
4351}
4352});
4353function Tween(elem,options,prop,end,easing){
4354return new Tween.prototype.init(elem,options,prop,end,easing);
4355}
4356jQuery.Tween=Tween;
4357Tween.prototype={
4358constructor:Tween,
4359init:function(elem,options,prop,end,easing,unit){
4360this.elem=elem;
4361this.prop=prop;
4362this.easing=easing||jQuery.easing._default;
4363this.options=options;
4364this.start=this.now=this.cur();
4365this.end=end;
4366this.unit=unit||(jQuery.cssNumber[prop]?"":"px");
4367},
4368cur:function(){
4369var hooks=Tween.propHooks[this.prop];
4370return hooks&&hooks.get?
4371hooks.get(this):
4372Tween.propHooks._default.get(this);
4373},
4374run:function(percent){
4375var eased,
4376hooks=Tween.propHooks[this.prop];
4377if(this.options.duration){
4378this.pos=eased=jQuery.easing[this.easing](
4379percent,this.options.duration*percent,0,1,this.options.duration
4380);
4381}else{
4382this.pos=eased=percent;
4383}
4384this.now=(this.end-this.start)*eased+this.start;
4385if(this.options.step){
4386this.options.step.call(this.elem,this.now,this);
4387}
4388if(hooks&&hooks.set){
4389hooks.set(this);
4390}else{
4391Tween.propHooks._default.set(this);
4392}
4393return this;
4394}
4395};
4396Tween.prototype.init.prototype=Tween.prototype;
4397Tween.propHooks={
4398_default:{
4399get:function(tween){
4400var result;
4401if(tween.elem.nodeType!==1||
4402tween.elem[tween.prop]!=null&&tween.elem.style[tween.prop]==null){
4403return tween.elem[tween.prop];
4404}
4405result=jQuery.css(tween.elem,tween.prop,"");
4406return!result||result==="auto"?0:result;
4407},
4408set:function(tween){
4409if(jQuery.fx.step[tween.prop]){
4410jQuery.fx.step[tween.prop](tween);
4411}else if(tween.elem.nodeType===1&&(
4412jQuery.cssHooks[tween.prop]||
4413tween.elem.style[finalPropName(tween.prop)]!=null)){
4414jQuery.style(tween.elem,tween.prop,tween.now+tween.unit);
4415}else{
4416tween.elem[tween.prop]=tween.now;
4417}
4418}
4419}
4420};
4421Tween.propHooks.scrollTop=Tween.propHooks.scrollLeft={
4422set:function(tween){
4423if(tween.elem.nodeType&&tween.elem.parentNode){
4424tween.elem[tween.prop]=tween.now;
4425}
4426}
4427};
4428jQuery.easing={
4429linear:function(p){
4430return p;
4431},
4432swing:function(p){
4433return 0.5-Math.cos(p*Math.PI)/2;
4434},
4435_default:"swing"
4436};
4437jQuery.fx=Tween.prototype.init;
4438jQuery.fx.step={};
4439var
4440fxNow,inProgress,
4441rfxtypes=/^(?:toggle|show|hide)$/,
4442rrun=/queueHooks$/;
4443function schedule(){
4444if(inProgress){
4445if(document.hidden===false&&window.requestAnimationFrame){
4446window.requestAnimationFrame(schedule);
4447}else{
4448window.setTimeout(schedule,jQuery.fx.interval);
4449}
4450jQuery.fx.tick();
4451}
4452}
4453function createFxNow(){
4454window.setTimeout(function(){
4455fxNow=undefined;
4456});
4457return(fxNow=Date.now());
4458}
4459function genFx(type,includeWidth){
4460var which,
4461i=0,
4462attrs={height:type};
4463includeWidth=includeWidth?1:0;
4464for(;i<4;i+=2-includeWidth){
4465which=cssExpand[i];
4466attrs["margin"+which]=attrs["padding"+which]=type;
4467}
4468if(includeWidth){
4469attrs.opacity=attrs.width=type;
4470}
4471return attrs;
4472}
4473function createTween(value,prop,animation){
4474var tween,
4475collection=(Animation.tweeners[prop]||[]).concat(Animation.tweeners["*"]),
4476index=0,
4477length=collection.length;
4478for(;index<length;index++){
4479if((tween=collection[index].call(animation,prop,value))){
4480return tween;
4481}
4482}
4483}
4484function defaultPrefilter(elem,props,opts){
4485var prop,value,toggle,hooks,oldfire,propTween,restoreDisplay,display,
4486isBox="width"in props||"height"in props,
4487anim=this,
4488orig={},
4489style=elem.style,
4490hidden=elem.nodeType&&isHiddenWithinTree(elem),
4491dataShow=dataPriv.get(elem,"fxshow");
4492if(!opts.queue){
4493hooks=jQuery._queueHooks(elem,"fx");
4494if(hooks.unqueued==null){
4495hooks.unqueued=0;
4496oldfire=hooks.empty.fire;
4497hooks.empty.fire=function(){
4498if(!hooks.unqueued){
4499oldfire();
4500}
4501};
4502}
4503hooks.unqueued++;
4504anim.always(function(){
4505anim.always(function(){
4506hooks.unqueued--;
4507if(!jQuery.queue(elem,"fx").length){
4508hooks.empty.fire();
4509}
4510});
4511});
4512}
4513for(prop in props){
4514value=props[prop];
4515if(rfxtypes.test(value)){
4516delete props[prop];
4517toggle=toggle||value==="toggle";
4518if(value===(hidden?"hide":"show")){
4519if(value==="show"&&dataShow&&dataShow[prop]!==undefined){
4520hidden=true;
4521}else{
4522continue;
4523}
4524}
4525orig[prop]=dataShow&&dataShow[prop]||jQuery.style(elem,prop);
4526}
4527}
4528propTween=!jQuery.isEmptyObject(props);
4529if(!propTween&&jQuery.isEmptyObject(orig)){
4530return;
4531}
4532if(isBox&&elem.nodeType===1){
4533opts.overflow=[style.overflow,style.overflowX,style.overflowY];
4534restoreDisplay=dataShow&&dataShow.display;
4535if(restoreDisplay==null){
4536restoreDisplay=dataPriv.get(elem,"display");
4537}
4538display=jQuery.css(elem,"display");
4539if(display==="none"){
4540if(restoreDisplay){
4541display=restoreDisplay;
4542}else{
4543showHide([elem],true);
4544restoreDisplay=elem.style.display||restoreDisplay;
4545display=jQuery.css(elem,"display");
4546showHide([elem]);
4547}
4548}
4549if(display==="inline"||display==="inline-block"&&restoreDisplay!=null){
4550if(jQuery.css(elem,"float")==="none"){
4551if(!propTween){
4552anim.done(function(){
4553style.display=restoreDisplay;
4554});
4555if(restoreDisplay==null){
4556display=style.display;
4557restoreDisplay=display==="none"?"":display;
4558}
4559}
4560style.display="inline-block";
4561}
4562}
4563}
4564if(opts.overflow){
4565style.overflow="hidden";
4566anim.always(function(){
4567style.overflow=opts.overflow[0];
4568style.overflowX=opts.overflow[1];
4569style.overflowY=opts.overflow[2];
4570});
4571}
4572propTween=false;
4573for(prop in orig){
4574if(!propTween){
4575if(dataShow){
4576if("hidden"in dataShow){
4577hidden=dataShow.hidden;
4578}
4579}else{
4580dataShow=dataPriv.access(elem,"fxshow",{display:restoreDisplay});
4581}
4582if(toggle){
4583dataShow.hidden=!hidden;
4584}
4585if(hidden){
4586showHide([elem],true);
4587}
4588anim.done(function(){
4589if(!hidden){
4590showHide([elem]);
4591}
4592dataPriv.remove(elem,"fxshow");
4593for(prop in orig){
4594jQuery.style(elem,prop,orig[prop]);
4595}
4596});
4597}
4598propTween=createTween(hidden?dataShow[prop]:0,prop,anim);
4599if(!(prop in dataShow)){
4600dataShow[prop]=propTween.start;
4601if(hidden){
4602propTween.end=propTween.start;
4603propTween.start=0;
4604}
4605}
4606}
4607}
4608function propFilter(props,specialEasing){
4609var index,name,easing,value,hooks;
4610for(index in props){
4611name=camelCase(index);
4612easing=specialEasing[name];
4613value=props[index];
4614if(Array.isArray(value)){
4615easing=value[1];
4616value=props[index]=value[0];
4617}
4618if(index!==name){
4619props[name]=value;
4620delete props[index];
4621}
4622hooks=jQuery.cssHooks[name];
4623if(hooks&&"expand"in hooks){
4624value=hooks.expand(value);
4625delete props[name];
4626for(index in value){
4627if(!(index in props)){
4628props[index]=value[index];
4629specialEasing[index]=easing;
4630}
4631}
4632}else{
4633specialEasing[name]=easing;
4634}
4635}
4636}
4637function Animation(elem,properties,options){
4638var result,
4639stopped,
4640index=0,
4641length=Animation.prefilters.length,
4642deferred=jQuery.Deferred().always(function(){
4643delete tick.elem;
4644}),
4645tick=function(){
4646if(stopped){
4647return false;
4648}
4649var currentTime=fxNow||createFxNow(),
4650remaining=Math.max(0,animation.startTime+animation.duration-currentTime),
4651temp=remaining/animation.duration||0,
4652percent=1-temp,
4653index=0,
4654length=animation.tweens.length;
4655for(;index<length;index++){
4656animation.tweens[index].run(percent);
4657}
4658deferred.notifyWith(elem,[animation,percent,remaining]);
4659if(percent<1&&length){
4660return remaining;
4661}
4662if(!length){
4663deferred.notifyWith(elem,[animation,1,0]);
4664}
4665deferred.resolveWith(elem,[animation]);
4666return false;
4667},
4668animation=deferred.promise({
4669elem:elem,
4670props:jQuery.extend({},properties),
4671opts:jQuery.extend(true,{
4672specialEasing:{},
4673easing:jQuery.easing._default
4674},options),
4675originalProperties:properties,
4676originalOptions:options,
4677startTime:fxNow||createFxNow(),
4678duration:options.duration,
4679tweens:[],
4680createTween:function(prop,end){
4681var tween=jQuery.Tween(elem,animation.opts,prop,end,
4682animation.opts.specialEasing[prop]||animation.opts.easing);
4683animation.tweens.push(tween);
4684return tween;
4685},
4686stop:function(gotoEnd){
4687var index=0,
4688length=gotoEnd?animation.tweens.length:0;
4689if(stopped){
4690return this;
4691}
4692stopped=true;
4693for(;index<length;index++){
4694animation.tweens[index].run(1);
4695}
4696if(gotoEnd){
4697deferred.notifyWith(elem,[animation,1,0]);
4698deferred.resolveWith(elem,[animation,gotoEnd]);
4699}else{
4700deferred.rejectWith(elem,[animation,gotoEnd]);
4701}
4702return this;
4703}
4704}),
4705props=animation.props;
4706propFilter(props,animation.opts.specialEasing);
4707for(;index<length;index++){
4708result=Animation.prefilters[index].call(animation,elem,props,animation.opts);
4709if(result){
4710if(isFunction(result.stop)){
4711jQuery._queueHooks(animation.elem,animation.opts.queue).stop=
4712result.stop.bind(result);
4713}
4714return result;
4715}
4716}
4717jQuery.map(props,createTween,animation);
4718if(isFunction(animation.opts.start)){
4719animation.opts.start.call(elem,animation);
4720}
4721animation
4722.progress(animation.opts.progress)
4723.done(animation.opts.done,animation.opts.complete)
4724.fail(animation.opts.fail)
4725.always(animation.opts.always);
4726jQuery.fx.timer(
4727jQuery.extend(tick,{
4728elem:elem,
4729anim:animation,
4730queue:animation.opts.queue
4731})
4732);
4733return animation;
4734}
4735jQuery.Animation=jQuery.extend(Animation,{
4736tweeners:{
4737"*":[function(prop,value){
4738var tween=this.createTween(prop,value);
4739adjustCSS(tween.elem,prop,rcssNum.exec(value),tween);
4740return tween;
4741}]
4742},
4743tweener:function(props,callback){
4744if(isFunction(props)){
4745callback=props;
4746props=["*"];
4747}else{
4748props=props.match(rnothtmlwhite);
4749}
4750var prop,
4751index=0,
4752length=props.length;
4753for(;index<length;index++){
4754prop=props[index];
4755Animation.tweeners[prop]=Animation.tweeners[prop]||[];
4756Animation.tweeners[prop].unshift(callback);
4757}
4758},
4759prefilters:[defaultPrefilter],
4760prefilter:function(callback,prepend){
4761if(prepend){
4762Animation.prefilters.unshift(callback);
4763}else{
4764Animation.prefilters.push(callback);
4765}
4766}
4767});
4768jQuery.speed=function(speed,easing,fn){
4769var opt=speed&&typeof speed==="object"?jQuery.extend({},speed):{
4770complete:fn||!fn&&easing||
4771isFunction(speed)&&speed,
4772duration:speed,
4773easing:fn&&easing||easing&&!isFunction(easing)&&easing
4774};
4775if(jQuery.fx.off){
4776opt.duration=0;
4777}else{
4778if(typeof opt.duration!=="number"){
4779if(opt.duration in jQuery.fx.speeds){
4780opt.duration=jQuery.fx.speeds[opt.duration];
4781}else{
4782opt.duration=jQuery.fx.speeds._default;
4783}
4784}
4785}
4786if(opt.queue==null||opt.queue===true){
4787opt.queue="fx";
4788}
4789opt.old=opt.complete;
4790opt.complete=function(){
4791if(isFunction(opt.old)){
4792opt.old.call(this);
4793}
4794if(opt.queue){
4795jQuery.dequeue(this,opt.queue);
4796}
4797};
4798return opt;
4799};
4800jQuery.fn.extend({
4801fadeTo:function(speed,to,easing,callback){
4802return this.filter(isHiddenWithinTree).css("opacity",0).show()
4803.end().animate({opacity:to},speed,easing,callback);
4804},
4805animate:function(prop,speed,easing,callback){
4806var empty=jQuery.isEmptyObject(prop),
4807optall=jQuery.speed(speed,easing,callback),
4808doAnimation=function(){
4809var anim=Animation(this,jQuery.extend({},prop),optall);
4810if(empty||dataPriv.get(this,"finish")){
4811anim.stop(true);
4812}
4813};
4814doAnimation.finish=doAnimation;
4815return empty||optall.queue===false?
4816this.each(doAnimation):
4817this.queue(optall.queue,doAnimation);
4818},
4819stop:function(type,clearQueue,gotoEnd){
4820var stopQueue=function(hooks){
4821var stop=hooks.stop;
4822delete hooks.stop;
4823stop(gotoEnd);
4824};
4825if(typeof type!=="string"){
4826gotoEnd=clearQueue;
4827clearQueue=type;
4828type=undefined;
4829}
4830if(clearQueue){
4831this.queue(type||"fx",[]);
4832}
4833return this.each(function(){
4834var dequeue=true,
4835index=type!=null&&type+"queueHooks",
4836timers=jQuery.timers,
4837data=dataPriv.get(this);
4838if(index){
4839if(data[index]&&data[index].stop){
4840stopQueue(data[index]);
4841}
4842}else{
4843for(index in data){
4844if(data[index]&&data[index].stop&&rrun.test(index)){
4845stopQueue(data[index]);
4846}
4847}
4848}
4849for(index=timers.length;index--;){
4850if(timers[index].elem===this&&
4851(type==null||timers[index].queue===type)){
4852timers[index].anim.stop(gotoEnd);
4853dequeue=false;
4854timers.splice(index,1);
4855}
4856}
4857if(dequeue||!gotoEnd){
4858jQuery.dequeue(this,type);
4859}
4860});
4861},
4862finish:function(type){
4863if(type!==false){
4864type=type||"fx";
4865}
4866return this.each(function(){
4867var index,
4868data=dataPriv.get(this),
4869queue=data[type+"queue"],
4870hooks=data[type+"queueHooks"],
4871timers=jQuery.timers,
4872length=queue?queue.length:0;
4873data.finish=true;
4874jQuery.queue(this,type,[]);
4875if(hooks&&hooks.stop){
4876hooks.stop.call(this,true);
4877}
4878for(index=timers.length;index--;){
4879if(timers[index].elem===this&&timers[index].queue===type){
4880timers[index].anim.stop(true);
4881timers.splice(index,1);
4882}
4883}
4884for(index=0;index<length;index++){
4885if(queue[index]&&queue[index].finish){
4886queue[index].finish.call(this);
4887}
4888}
4889delete data.finish;
4890});
4891}
4892});
4893jQuery.each(["toggle","show","hide"],function(_i,name){
4894var cssFn=jQuery.fn[name];
4895jQuery.fn[name]=function(speed,easing,callback){
4896return speed==null||typeof speed==="boolean"?
4897cssFn.apply(this,arguments):
4898this.animate(genFx(name,true),speed,easing,callback);
4899};
4900});
4901jQuery.each({
4902slideDown:genFx("show"),
4903slideUp:genFx("hide"),
4904slideToggle:genFx("toggle"),
4905fadeIn:{opacity:"show"},
4906fadeOut:{opacity:"hide"},
4907fadeToggle:{opacity:"toggle"}
4908},function(name,props){
4909jQuery.fn[name]=function(speed,easing,callback){
4910return this.animate(props,speed,easing,callback);
4911};
4912});
4913jQuery.timers=[];
4914jQuery.fx.tick=function(){
4915var timer,
4916i=0,
4917timers=jQuery.timers;
4918fxNow=Date.now();
4919for(;i<timers.length;i++){
4920timer=timers[i];
4921if(!timer()&&timers[i]===timer){
4922timers.splice(i--,1);
4923}
4924}
4925if(!timers.length){
4926jQuery.fx.stop();
4927}
4928fxNow=undefined;
4929};
4930jQuery.fx.timer=function(timer){
4931jQuery.timers.push(timer);
4932jQuery.fx.start();
4933};
4934jQuery.fx.interval=13;
4935jQuery.fx.start=function(){
4936if(inProgress){
4937return;
4938}
4939inProgress=true;
4940schedule();
4941};
4942jQuery.fx.stop=function(){
4943inProgress=null;
4944};
4945jQuery.fx.speeds={
4946slow:600,
4947fast:200,
4948_default:400
4949};
4950jQuery.fn.delay=function(time,type){
4951time=jQuery.fx?jQuery.fx.speeds[time]||time:time;
4952type=type||"fx";
4953return this.queue(type,function(next,hooks){
4954var timeout=window.setTimeout(next,time);
4955hooks.stop=function(){
4956window.clearTimeout(timeout);
4957};
4958});
4959};
4960(function(){
4961var input=document.createElement("input"),
4962select=document.createElement("select"),
4963opt=select.appendChild(document.createElement("option"));
4964input.type="checkbox";
4965support.checkOn=input.value!=="";
4966support.optSelected=opt.selected;
4967input=document.createElement("input");
4968input.value="t";
4969input.type="radio";
4970support.radioValue=input.value==="t";
4971})();
4972var boolHook,
4973attrHandle=jQuery.expr.attrHandle;
4974jQuery.fn.extend({
4975attr:function(name,value){
4976return access(this,jQuery.attr,name,value,arguments.length>1);
4977},
4978removeAttr:function(name){
4979return this.each(function(){
4980jQuery.removeAttr(this,name);
4981});
4982}
4983});
4984jQuery.extend({
4985attr:function(elem,name,value){
4986var ret,hooks,
4987nType=elem.nodeType;
4988if(nType===3||nType===8||nType===2){
4989return;
4990}
4991if(typeof elem.getAttribute==="undefined"){
4992return jQuery.prop(elem,name,value);
4993}
4994if(nType!==1||!jQuery.isXMLDoc(elem)){
4995hooks=jQuery.attrHooks[name.toLowerCase()]||
4996(jQuery.expr.match.bool.test(name)?boolHook:undefined);
4997}
4998if(value!==undefined){
4999if(value===null){
5000jQuery.removeAttr(elem,name);
5001return;
5002}
5003if(hooks&&"set"in hooks&&
5004(ret=hooks.set(elem,value,name))!==undefined){
5005return ret;
5006}
5007elem.setAttribute(name,value+"");
5008return value;
5009}
5010if(hooks&&"get"in hooks&&(ret=hooks.get(elem,name))!==null){
5011return ret;
5012}
5013ret=jQuery.find.attr(elem,name);
5014return ret==null?undefined:ret;
5015},
5016attrHooks:{
5017type:{
5018set:function(elem,value){
5019if(!support.radioValue&&value==="radio"&&
5020nodeName(elem,"input")){
5021var val=elem.value;
5022elem.setAttribute("type",value);
5023if(val){
5024elem.value=val;
5025}
5026return value;
5027}
5028}
5029}
5030},
5031removeAttr:function(elem,value){
5032var name,
5033i=0,
5034attrNames=value&&value.match(rnothtmlwhite);
5035if(attrNames&&elem.nodeType===1){
5036while((name=attrNames[i++])){
5037elem.removeAttribute(name);
5038}
5039}
5040}
5041});
5042boolHook={
5043set:function(elem,value,name){
5044if(value===false){
5045jQuery.removeAttr(elem,name);
5046}else{
5047elem.setAttribute(name,name);
5048}
5049return name;
5050}
5051};
5052jQuery.each(jQuery.expr.match.bool.source.match(/\w+/g),function(_i,name){
5053var getter=attrHandle[name]||jQuery.find.attr;
5054attrHandle[name]=function(elem,name,isXML){
5055var ret,handle,
5056lowercaseName=name.toLowerCase();
5057if(!isXML){
5058handle=attrHandle[lowercaseName];
5059attrHandle[lowercaseName]=ret;
5060ret=getter(elem,name,isXML)!=null?
5061lowercaseName:
5062null;
5063attrHandle[lowercaseName]=handle;
5064}
5065return ret;
5066};
5067});
5068var rfocusable=/^(?:input|select|textarea|button)$/i,
5069rclickable=/^(?:a|area)$/i;
5070jQuery.fn.extend({
5071prop:function(name,value){
5072return access(this,jQuery.prop,name,value,arguments.length>1);
5073},
5074removeProp:function(name){
5075return this.each(function(){
5076delete this[jQuery.propFix[name]||name];
5077});
5078}
5079});
5080jQuery.extend({
5081prop:function(elem,name,value){
5082var ret,hooks,
5083nType=elem.nodeType;
5084if(nType===3||nType===8||nType===2){
5085return;
5086}
5087if(nType!==1||!jQuery.isXMLDoc(elem)){
5088name=jQuery.propFix[name]||name;
5089hooks=jQuery.propHooks[name];
5090}
5091if(value!==undefined){
5092if(hooks&&"set"in hooks&&
5093(ret=hooks.set(elem,value,name))!==undefined){
5094return ret;
5095}
5096return(elem[name]=value);
5097}
5098if(hooks&&"get"in hooks&&(ret=hooks.get(elem,name))!==null){
5099return ret;
5100}
5101return elem[name];
5102},
5103propHooks:{
5104tabIndex:{
5105get:function(elem){
5106var tabindex=jQuery.find.attr(elem,"tabindex");
5107if(tabindex){
5108return parseInt(tabindex,10);
5109}
5110if(
5111rfocusable.test(elem.nodeName)||
5112rclickable.test(elem.nodeName)&&
5113elem.href
5114){
5115return 0;
5116}
5117return-1;
5118}
5119}
5120},
5121propFix:{
5122"for":"htmlFor",
5123"class":"className"
5124}
5125});
5126if(!support.optSelected){
5127jQuery.propHooks.selected={
5128get:function(elem){
5129var parent=elem.parentNode;
5130if(parent&&parent.parentNode){
5131parent.parentNode.selectedIndex;
5132}
5133return null;
5134},
5135set:function(elem){
5136var parent=elem.parentNode;
5137if(parent){
5138parent.selectedIndex;
5139if(parent.parentNode){
5140parent.parentNode.selectedIndex;
5141}
5142}
5143}
5144};
5145}
5146jQuery.each([
5147"tabIndex",
5148"readOnly",
5149"maxLength",
5150"cellSpacing",
5151"cellPadding",
5152"rowSpan",
5153"colSpan",
5154"useMap",
5155"frameBorder",
5156"contentEditable"
5157],function(){
5158jQuery.propFix[this.toLowerCase()]=this;
5159});
5160function stripAndCollapse(value){
5161var tokens=value.match(rnothtmlwhite)||[];
5162return tokens.join(" ");
5163}
5164function getClass(elem){
5165return elem.getAttribute&&elem.getAttribute("class")||"";
5166}
5167function classesToArray(value){
5168if(Array.isArray(value)){
5169return value;
5170}
5171if(typeof value==="string"){
5172return value.match(rnothtmlwhite)||[];
5173}
5174return[];
5175}
5176jQuery.fn.extend({
5177addClass:function(value){
5178var classNames,cur,curValue,className,i,finalValue;
5179if(isFunction(value)){
5180return this.each(function(j){
5181jQuery(this).addClass(value.call(this,j,getClass(this)));
5182});
5183}
5184classNames=classesToArray(value);
5185if(classNames.length){
5186return this.each(function(){
5187curValue=getClass(this);
5188cur=this.nodeType===1&&(" "+stripAndCollapse(curValue)+" ");
5189if(cur){
5190for(i=0;i<classNames.length;i++){
5191className=classNames[i];
5192if(cur.indexOf(" "+className+" ")<0){
5193cur+=className+" ";
5194}
5195}
5196finalValue=stripAndCollapse(cur);
5197if(curValue!==finalValue){
5198this.setAttribute("class",finalValue);
5199}
5200}
5201});
5202}
5203return this;
5204},
5205removeClass:function(value){
5206var classNames,cur,curValue,className,i,finalValue;
5207if(isFunction(value)){
5208return this.each(function(j){
5209jQuery(this).removeClass(value.call(this,j,getClass(this)));
5210});
5211}
5212if(!arguments.length){
5213return this.attr("class","");
5214}
5215classNames=classesToArray(value);
5216if(classNames.length){
5217return this.each(function(){
5218curValue=getClass(this);
5219cur=this.nodeType===1&&(" "+stripAndCollapse(curValue)+" ");
5220if(cur){
5221for(i=0;i<classNames.length;i++){
5222className=classNames[i];
5223while(cur.indexOf(" "+className+" ")>-1){
5224cur=cur.replace(" "+className+" "," ");
5225}
5226}
5227finalValue=stripAndCollapse(cur);
5228if(curValue!==finalValue){
5229this.setAttribute("class",finalValue);
5230}
5231}
5232});
5233}
5234return this;
5235},
5236toggleClass:function(value,stateVal){
5237var classNames,className,i,self,
5238type=typeof value,
5239isValidValue=type==="string"||Array.isArray(value);
5240if(isFunction(value)){
5241return this.each(function(i){
5242jQuery(this).toggleClass(
5243value.call(this,i,getClass(this),stateVal),
5244stateVal
5245);
5246});
5247}
5248if(typeof stateVal==="boolean"&&isValidValue){
5249return stateVal?this.addClass(value):this.removeClass(value);
5250}
5251classNames=classesToArray(value);
5252return this.each(function(){
5253if(isValidValue){
5254self=jQuery(this);
5255for(i=0;i<classNames.length;i++){
5256className=classNames[i];
5257if(self.hasClass(className)){
5258self.removeClass(className);
5259}else{
5260self.addClass(className);
5261}
5262}
5263}else if(value===undefined||type==="boolean"){
5264className=getClass(this);
5265if(className){
5266dataPriv.set(this,"__className__",className);
5267}
5268if(this.setAttribute){
5269this.setAttribute("class",
5270className||value===false?
5271"":
5272dataPriv.get(this,"__className__")||""
5273);
5274}
5275}
5276});
5277},
5278hasClass:function(selector){
5279var className,elem,
5280i=0;
5281className=" "+selector+" ";
5282while((elem=this[i++])){
5283if(elem.nodeType===1&&
5284(" "+stripAndCollapse(getClass(elem))+" ").indexOf(className)>-1){
5285return true;
5286}
5287}
5288return false;
5289}
5290});
5291var rreturn=/\r/g;
5292jQuery.fn.extend({
5293val:function(value){
5294var hooks,ret,valueIsFunction,
5295elem=this[0];
5296if(!arguments.length){
5297if(elem){
5298hooks=jQuery.valHooks[elem.type]||
5299jQuery.valHooks[elem.nodeName.toLowerCase()];
5300if(hooks&&
5301"get"in hooks&&
5302(ret=hooks.get(elem,"value"))!==undefined
5303){
5304return ret;
5305}
5306ret=elem.value;
5307if(typeof ret==="string"){
5308return ret.replace(rreturn,"");
5309}
5310return ret==null?"":ret;
5311}
5312return;
5313}
5314valueIsFunction=isFunction(value);
5315return this.each(function(i){
5316var val;
5317if(this.nodeType!==1){
5318return;
5319}
5320if(valueIsFunction){
5321val=value.call(this,i,jQuery(this).val());
5322}else{
5323val=value;
5324}
5325if(val==null){
5326val="";
5327}else if(typeof val==="number"){
5328val+="";
5329}else if(Array.isArray(val)){
5330val=jQuery.map(val,function(value){
5331return value==null?"":value+"";
5332});
5333}
5334hooks=jQuery.valHooks[this.type]||jQuery.valHooks[this.nodeName.toLowerCase()];
5335if(!hooks||!("set"in hooks)||hooks.set(this,val,"value")===undefined){
5336this.value=val;
5337}
5338});
5339}
5340});
5341jQuery.extend({
5342valHooks:{
5343option:{
5344get:function(elem){
5345var val=jQuery.find.attr(elem,"value");
5346return val!=null?
5347val:
5348stripAndCollapse(jQuery.text(elem));
5349}
5350},
5351select:{
5352get:function(elem){
5353var value,option,i,
5354options=elem.options,
5355index=elem.selectedIndex,
5356one=elem.type==="select-one",
5357values=one?null:[],
5358max=one?index+1:options.length;
5359if(index<0){
5360i=max;
5361}else{
5362i=one?index:0;
5363}
5364for(;i<max;i++){
5365option=options[i];
5366if((option.selected||i===index)&&
5367!option.disabled&&
5368(!option.parentNode.disabled||
5369!nodeName(option.parentNode,"optgroup"))){
5370value=jQuery(option).val();
5371if(one){
5372return value;
5373}
5374values.push(value);
5375}
5376}
5377return values;
5378},
5379set:function(elem,value){
5380var optionSet,option,
5381options=elem.options,
5382values=jQuery.makeArray(value),
5383i=options.length;
5384while(i--){
5385option=options[i];
5386if(option.selected=
5387jQuery.inArray(jQuery.valHooks.option.get(option),values)>-1
5388){
5389optionSet=true;
5390}
5391}
5392if(!optionSet){
5393elem.selectedIndex=-1;
5394}
5395return values;
5396}
5397}
5398}
5399});
5400jQuery.each(["radio","checkbox"],function(){
5401jQuery.valHooks[this]={
5402set:function(elem,value){
5403if(Array.isArray(value)){
5404return(elem.checked=jQuery.inArray(jQuery(elem).val(),value)>-1);
5405}
5406}
5407};
5408if(!support.checkOn){
5409jQuery.valHooks[this].get=function(elem){
5410return elem.getAttribute("value")===null?"on":elem.value;
5411};
5412}
5413});
5414var location=window.location;
5415var nonce={guid:Date.now()};
5416var rquery=(/\?/);
5417jQuery.parseXML=function(data){
5418var xml,parserErrorElem;
5419if(!data||typeof data!=="string"){
5420return null;
5421}
5422try{
5423xml=(new window.DOMParser()).parseFromString(data,"text/xml");
5424}catch(e){}
5425parserErrorElem=xml&&xml.getElementsByTagName("parsererror")[0];
5426if(!xml||parserErrorElem){
5427jQuery.error("Invalid XML: "+(
5428parserErrorElem?
5429jQuery.map(parserErrorElem.childNodes,function(el){
5430return el.textContent;
5431}).join("\n"):
5432data
5433));
5434}
5435return xml;
5436};
5437var rfocusMorph=/^(?:focusinfocus|focusoutblur)$/,
5438stopPropagationCallback=function(e){
5439e.stopPropagation();
5440};
5441jQuery.extend(jQuery.event,{
5442trigger:function(event,data,elem,onlyHandlers){
5443var i,cur,tmp,bubbleType,ontype,handle,special,lastElement,
5444eventPath=[elem||document],
5445type=hasOwn.call(event,"type")?event.type:event,
5446namespaces=hasOwn.call(event,"namespace")?event.namespace.split("."):[];
5447cur=lastElement=tmp=elem=elem||document;
5448if(elem.nodeType===3||elem.nodeType===8){
5449return;
5450}
5451if(rfocusMorph.test(type+jQuery.event.triggered)){
5452return;
5453}
5454if(type.indexOf(".")>-1){
5455namespaces=type.split(".");
5456type=namespaces.shift();
5457namespaces.sort();
5458}
5459ontype=type.indexOf(":")<0&&"on"+type;
5460event=event[jQuery.expando]?
5461event:
5462new jQuery.Event(type,typeof event==="object"&&event);
5463event.isTrigger=onlyHandlers?2:3;
5464event.namespace=namespaces.join(".");
5465event.rnamespace=event.namespace?
5466new RegExp("(^|\\.)"+namespaces.join("\\.(?:.*\\.|)")+"(\\.|$)"):
5467null;
5468event.result=undefined;
5469if(!event.target){
5470event.target=elem;
5471}
5472data=data==null?
5473[event]:
5474jQuery.makeArray(data,[event]);
5475special=jQuery.event.special[type]||{};
5476if(!onlyHandlers&&special.trigger&&special.trigger.apply(elem,data)===false){
5477return;
5478}
5479if(!onlyHandlers&&!special.noBubble&&!isWindow(elem)){
5480bubbleType=special.delegateType||type;
5481if(!rfocusMorph.test(bubbleType+type)){
5482cur=cur.parentNode;
5483}
5484for(;cur;cur=cur.parentNode){
5485eventPath.push(cur);
5486tmp=cur;
5487}
5488if(tmp===(elem.ownerDocument||document)){
5489eventPath.push(tmp.defaultView||tmp.parentWindow||window);
5490}
5491}
5492i=0;
5493while((cur=eventPath[i++])&&!event.isPropagationStopped()){
5494lastElement=cur;
5495event.type=i>1?
5496bubbleType:
5497special.bindType||type;
5498handle=(dataPriv.get(cur,"events")||Object.create(null))[event.type]&&
5499dataPriv.get(cur,"handle");
5500if(handle){
5501handle.apply(cur,data);
5502}
5503handle=ontype&&cur[ontype];
5504if(handle&&handle.apply&&acceptData(cur)){
5505event.result=handle.apply(cur,data);
5506if(event.result===false){
5507event.preventDefault();
5508}
5509}
5510}
5511event.type=type;
5512if(!onlyHandlers&&!event.isDefaultPrevented()){
5513if((!special._default||
5514special._default.apply(eventPath.pop(),data)===false)&&
5515acceptData(elem)){
5516if(ontype&&isFunction(elem[type])&&!isWindow(elem)){
5517tmp=elem[ontype];
5518if(tmp){
5519elem[ontype]=null;
5520}
5521jQuery.event.triggered=type;
5522if(event.isPropagationStopped()){
5523lastElement.addEventListener(type,stopPropagationCallback);
5524}
5525elem[type]();
5526if(event.isPropagationStopped()){
5527lastElement.removeEventListener(type,stopPropagationCallback);
5528}
5529jQuery.event.triggered=undefined;
5530if(tmp){
5531elem[ontype]=tmp;
5532}
5533}
5534}
5535}
5536return event.result;
5537},
5538simulate:function(type,elem,event){
5539var e=jQuery.extend(
5540new jQuery.Event(),
5541event,
5542{
5543type:type,
5544isSimulated:true
5545}
5546);
5547jQuery.event.trigger(e,null,elem);
5548}
5549});
5550jQuery.fn.extend({
5551trigger:function(type,data){
5552return this.each(function(){
5553jQuery.event.trigger(type,data,this);
5554});
5555},
5556triggerHandler:function(type,data){
5557var elem=this[0];
5558if(elem){
5559return jQuery.event.trigger(type,data,elem,true);
5560}
5561}
5562});
5563var
5564rbracket=/\[\]$/,
5565rCRLF=/\r?\n/g,
5566rsubmitterTypes=/^(?:submit|button|image|reset|file)$/i,
5567rsubmittable=/^(?:input|select|textarea|keygen)/i;
5568function buildParams(prefix,obj,traditional,add){
5569var name;
5570if(Array.isArray(obj)){
5571jQuery.each(obj,function(i,v){
5572if(traditional||rbracket.test(prefix)){
5573add(prefix,v);
5574}else{
5575buildParams(
5576prefix+"["+(typeof v==="object"&&v!=null?i:"")+"]",
5577v,
5578traditional,
5579add
5580);
5581}
5582});
5583}else if(!traditional&&toType(obj)==="object"){
5584for(name in obj){
5585buildParams(prefix+"["+name+"]",obj[name],traditional,add);
5586}
5587}else{
5588add(prefix,obj);
5589}
5590}
5591jQuery.param=function(a,traditional){
5592var prefix,
5593s=[],
5594add=function(key,valueOrFunction){
5595var value=isFunction(valueOrFunction)?
5596valueOrFunction():
5597valueOrFunction;
5598s[s.length]=encodeURIComponent(key)+"="+
5599encodeURIComponent(value==null?"":value);
5600};
5601if(a==null){
5602return"";
5603}
5604if(Array.isArray(a)||(a.jquery&&!jQuery.isPlainObject(a))){
5605jQuery.each(a,function(){
5606add(this.name,this.value);
5607});
5608}else{
5609for(prefix in a){
5610buildParams(prefix,a[prefix],traditional,add);
5611}
5612}
5613return s.join("&");
5614};
5615jQuery.fn.extend({
5616serialize:function(){
5617return jQuery.param(this.serializeArray());
5618},
5619serializeArray:function(){
5620return this.map(function(){
5621var elements=jQuery.prop(this,"elements");
5622return elements?jQuery.makeArray(elements):this;
5623}).filter(function(){
5624var type=this.type;
5625return this.name&&!jQuery(this).is(":disabled")&&
5626rsubmittable.test(this.nodeName)&&!rsubmitterTypes.test(type)&&
5627(this.checked||!rcheckableType.test(type));
5628}).map(function(_i,elem){
5629var val=jQuery(this).val();
5630if(val==null){
5631return null;
5632}
5633if(Array.isArray(val)){
5634return jQuery.map(val,function(val){
5635return{name:elem.name,value:val.replace(rCRLF,"\r\n")};
5636});
5637}
5638return{name:elem.name,value:val.replace(rCRLF,"\r\n")};
5639}).get();
5640}
5641});
5642var
5643r20=/%20/g,
5644rhash=/#.*$/,
5645rantiCache=/([?&])_=[^&]*/,
5646rheaders=/^(.*?):[ \t]*([^\r\n]*)$/mg,
5647rlocalProtocol=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
5648rnoContent=/^(?:GET|HEAD)$/,
5649rprotocol=/^\/\//,
5650prefilters={},
5651transports={},
5652allTypes="*/".concat("*"),
5653originAnchor=document.createElement("a");
5654originAnchor.href=location.href;
5655function addToPrefiltersOrTransports(structure){
5656return function(dataTypeExpression,func){
5657if(typeof dataTypeExpression!=="string"){
5658func=dataTypeExpression;
5659dataTypeExpression="*";
5660}
5661var dataType,
5662i=0,
5663dataTypes=dataTypeExpression.toLowerCase().match(rnothtmlwhite)||[];
5664if(isFunction(func)){
5665while((dataType=dataTypes[i++])){
5666if(dataType[0]==="+"){
5667dataType=dataType.slice(1)||"*";
5668(structure[dataType]=structure[dataType]||[]).unshift(func);
5669}else{
5670(structure[dataType]=structure[dataType]||[]).push(func);
5671}
5672}
5673}
5674};
5675}
5676function inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR){
5677var inspected={},
5678seekingTransport=(structure===transports);
5679function inspect(dataType){
5680var selected;
5681inspected[dataType]=true;
5682jQuery.each(structure[dataType]||[],function(_,prefilterOrFactory){
5683var dataTypeOrTransport=prefilterOrFactory(options,originalOptions,jqXHR);
5684if(typeof dataTypeOrTransport==="string"&&
5685!seekingTransport&&!inspected[dataTypeOrTransport]){
5686options.dataTypes.unshift(dataTypeOrTransport);
5687inspect(dataTypeOrTransport);
5688return false;
5689}else if(seekingTransport){
5690return!(selected=dataTypeOrTransport);
5691}
5692});
5693return selected;
5694}
5695return inspect(options.dataTypes[0])||!inspected["*"]&&inspect("*");
5696}
5697function ajaxExtend(target,src){
5698var key,deep,
5699flatOptions=jQuery.ajaxSettings.flatOptions||{};
5700for(key in src){
5701if(src[key]!==undefined){
5702(flatOptions[key]?target:(deep||(deep={})))[key]=src[key];
5703}
5704}
5705if(deep){
5706jQuery.extend(true,target,deep);
5707}
5708return target;
5709}
5710function ajaxHandleResponses(s,jqXHR,responses){
5711var ct,type,finalDataType,firstDataType,
5712contents=s.contents,
5713dataTypes=s.dataTypes;
5714while(dataTypes[0]==="*"){
5715dataTypes.shift();
5716if(ct===undefined){
5717ct=s.mimeType||jqXHR.getResponseHeader("Content-Type");
5718}
5719}
5720if(ct){
5721for(type in contents){
5722if(contents[type]&&contents[type].test(ct)){
5723dataTypes.unshift(type);
5724break;
5725}
5726}
5727}
5728if(dataTypes[0]in responses){
5729finalDataType=dataTypes[0];
5730}else{
5731for(type in responses){
5732if(!dataTypes[0]||s.converters[type+" "+dataTypes[0]]){
5733finalDataType=type;
5734break;
5735}
5736if(!firstDataType){
5737firstDataType=type;
5738}
5739}
5740finalDataType=finalDataType||firstDataType;
5741}
5742if(finalDataType){
5743if(finalDataType!==dataTypes[0]){
5744dataTypes.unshift(finalDataType);
5745}
5746return responses[finalDataType];
5747}
5748}
5749function ajaxConvert(s,response,jqXHR,isSuccess){
5750var conv2,current,conv,tmp,prev,
5751converters={},
5752dataTypes=s.dataTypes.slice();
5753if(dataTypes[1]){
5754for(conv in s.converters){
5755converters[conv.toLowerCase()]=s.converters[conv];
5756}
5757}
5758current=dataTypes.shift();
5759while(current){
5760if(s.responseFields[current]){
5761jqXHR[s.responseFields[current]]=response;
5762}
5763if(!prev&&isSuccess&&s.dataFilter){
5764response=s.dataFilter(response,s.dataType);
5765}
5766prev=current;
5767current=dataTypes.shift();
5768if(current){
5769if(current==="*"){
5770current=prev;
5771}else if(prev!=="*"&&prev!==current){
5772conv=converters[prev+" "+current]||converters["* "+current];
5773if(!conv){
5774for(conv2 in converters){
5775tmp=conv2.split(" ");
5776if(tmp[1]===current){
5777conv=converters[prev+" "+tmp[0]]||
5778converters["* "+tmp[0]];
5779if(conv){
5780if(conv===true){
5781conv=converters[conv2];
5782}else if(converters[conv2]!==true){
5783current=tmp[0];
5784dataTypes.unshift(tmp[1]);
5785}
5786break;
5787}
5788}
5789}
5790}
5791if(conv!==true){
5792if(conv&&s.throws){
5793response=conv(response);
5794}else{
5795try{
5796response=conv(response);
5797}catch(e){
5798return{
5799state:"parsererror",
5800error:conv?e:"No conversion from "+prev+" to "+current
5801};
5802}
5803}
5804}
5805}
5806}
5807}
5808return{state:"success",data:response};
5809}
5810jQuery.extend({
5811active:0,
5812lastModified:{},
5813etag:{},
5814ajaxSettings:{
5815url:location.href,
5816type:"GET",
5817isLocal:rlocalProtocol.test(location.protocol),
5818global:true,
5819processData:true,
5820async:true,
5821contentType:"application/x-www-form-urlencoded; charset=UTF-8",
5822accepts:{
5823"*":allTypes,
5824text:"text/plain",
5825html:"text/html",
5826xml:"application/xml, text/xml",
5827json:"application/json, text/javascript"
5828},
5829contents:{
5830xml:/\bxml\b/,
5831html:/\bhtml/,
5832json:/\bjson\b/
5833},
5834responseFields:{
5835xml:"responseXML",
5836text:"responseText",
5837json:"responseJSON"
5838},
5839converters:{
5840"* text":String,
5841"text html":true,
5842"text json":JSON.parse,
5843"text xml":jQuery.parseXML
5844},
5845flatOptions:{
5846url:true,
5847context:true
5848}
5849},
5850ajaxSetup:function(target,settings){
5851return settings?
5852ajaxExtend(ajaxExtend(target,jQuery.ajaxSettings),settings):
5853ajaxExtend(jQuery.ajaxSettings,target);
5854},
5855ajaxPrefilter:addToPrefiltersOrTransports(prefilters),
5856ajaxTransport:addToPrefiltersOrTransports(transports),
5857ajax:function(url,options){
5858if(typeof url==="object"){
5859options=url;
5860url=undefined;
5861}
5862options=options||{};
5863var transport,
5864cacheURL,
5865responseHeadersString,
5866responseHeaders,
5867timeoutTimer,
5868urlAnchor,
5869completed,
5870fireGlobals,
5871i,
5872uncached,
5873s=jQuery.ajaxSetup({},options),
5874callbackContext=s.context||s,
5875globalEventContext=s.context&&
5876(callbackContext.nodeType||callbackContext.jquery)?
5877jQuery(callbackContext):
5878jQuery.event,
5879deferred=jQuery.Deferred(),
5880completeDeferred=jQuery.Callbacks("once memory"),
5881statusCode=s.statusCode||{},
5882requestHeaders={},
5883requestHeadersNames={},
5884strAbort="canceled",
5885jqXHR={
5886readyState:0,
5887getResponseHeader:function(key){
5888var match;
5889if(completed){
5890if(!responseHeaders){
5891responseHeaders={};
5892while((match=rheaders.exec(responseHeadersString))){
5893responseHeaders[match[1].toLowerCase()+" "]=
5894(responseHeaders[match[1].toLowerCase()+" "]||[])
5895.concat(match[2]);
5896}
5897}
5898match=responseHeaders[key.toLowerCase()+" "];
5899}
5900return match==null?null:match.join(", ");
5901},
5902getAllResponseHeaders:function(){
5903return completed?responseHeadersString:null;
5904},
5905setRequestHeader:function(name,value){
5906if(completed==null){
5907name=requestHeadersNames[name.toLowerCase()]=
5908requestHeadersNames[name.toLowerCase()]||name;
5909requestHeaders[name]=value;
5910}
5911return this;
5912},
5913overrideMimeType:function(type){
5914if(completed==null){
5915s.mimeType=type;
5916}
5917return this;
5918},
5919statusCode:function(map){
5920var code;
5921if(map){
5922if(completed){
5923jqXHR.always(map[jqXHR.status]);
5924}else{
5925for(code in map){
5926statusCode[code]=[statusCode[code],map[code]];
5927}
5928}
5929}
5930return this;
5931},
5932abort:function(statusText){
5933var finalText=statusText||strAbort;
5934if(transport){
5935transport.abort(finalText);
5936}
5937done(0,finalText);
5938return this;
5939}
5940};
5941deferred.promise(jqXHR);
5942s.url=((url||s.url||location.href)+"")
5943.replace(rprotocol,location.protocol+"//");
5944s.type=options.method||options.type||s.method||s.type;
5945s.dataTypes=(s.dataType||"*").toLowerCase().match(rnothtmlwhite)||[""];
5946if(s.crossDomain==null){
5947urlAnchor=document.createElement("a");
5948try{
5949urlAnchor.href=s.url;
5950urlAnchor.href=urlAnchor.href;
5951s.crossDomain=originAnchor.protocol+"//"+originAnchor.host!==
5952urlAnchor.protocol+"//"+urlAnchor.host;
5953}catch(e){
5954s.crossDomain=true;
5955}
5956}
5957if(s.data&&s.processData&&typeof s.data!=="string"){
5958s.data=jQuery.param(s.data,s.traditional);
5959}
5960inspectPrefiltersOrTransports(prefilters,s,options,jqXHR);
5961if(completed){
5962return jqXHR;
5963}
5964fireGlobals=jQuery.event&&s.global;
5965if(fireGlobals&&jQuery.active++===0){
5966jQuery.event.trigger("ajaxStart");
5967}
5968s.type=s.type.toUpperCase();
5969s.hasContent=!rnoContent.test(s.type);
5970cacheURL=s.url.replace(rhash,"");
5971if(!s.hasContent){
5972uncached=s.url.slice(cacheURL.length);
5973if(s.data&&(s.processData||typeof s.data==="string")){
5974cacheURL+=(rquery.test(cacheURL)?"&":"?")+s.data;
5975delete s.data;
5976}
5977if(s.cache===false){
5978cacheURL=cacheURL.replace(rantiCache,"$1");
5979uncached=(rquery.test(cacheURL)?"&":"?")+"_="+(nonce.guid++)+
5980uncached;
5981}
5982s.url=cacheURL+uncached;
5983}else if(s.data&&s.processData&&
5984(s.contentType||"").indexOf("application/x-www-form-urlencoded")===0){
5985s.data=s.data.replace(r20,"+");
5986}
5987if(s.ifModified){
5988if(jQuery.lastModified[cacheURL]){
5989jqXHR.setRequestHeader("If-Modified-Since",jQuery.lastModified[cacheURL]);
5990}
5991if(jQuery.etag[cacheURL]){
5992jqXHR.setRequestHeader("If-None-Match",jQuery.etag[cacheURL]);
5993}
5994}
5995if(s.data&&s.hasContent&&s.contentType!==false||options.contentType){
5996jqXHR.setRequestHeader("Content-Type",s.contentType);
5997}
5998jqXHR.setRequestHeader(
5999"Accept",
6000s.dataTypes[0]&&s.accepts[s.dataTypes[0]]?
6001s.accepts[s.dataTypes[0]]+
6002(s.dataTypes[0]!=="*"?", "+allTypes+"; q=0.01":""):
6003s.accepts["*"]
6004);
6005for(i in s.headers){
6006jqXHR.setRequestHeader(i,s.headers[i]);
6007}
6008if(s.beforeSend&&
6009(s.beforeSend.call(callbackContext,jqXHR,s)===false||completed)){
6010return jqXHR.abort();
6011}
6012strAbort="abort";
6013completeDeferred.add(s.complete);
6014jqXHR.done(s.success);
6015jqXHR.fail(s.error);
6016transport=inspectPrefiltersOrTransports(transports,s,options,jqXHR);
6017if(!transport){
6018done(-1,"No Transport");
6019}else{
6020jqXHR.readyState=1;
6021if(fireGlobals){
6022globalEventContext.trigger("ajaxSend",[jqXHR,s]);
6023}
6024if(completed){
6025return jqXHR;
6026}
6027if(s.async&&s.timeout>0){
6028timeoutTimer=window.setTimeout(function(){
6029jqXHR.abort("timeout");
6030},s.timeout);
6031}
6032try{
6033completed=false;
6034transport.send(requestHeaders,done);
6035}catch(e){
6036if(completed){
6037throw e;
6038}
6039done(-1,e);
6040}
6041}
6042function done(status,nativeStatusText,responses,headers){
6043var isSuccess,success,error,response,modified,
6044statusText=nativeStatusText;
6045if(completed){
6046return;
6047}
6048completed=true;
6049if(timeoutTimer){
6050window.clearTimeout(timeoutTimer);
6051}
6052transport=undefined;
6053responseHeadersString=headers||"";
6054jqXHR.readyState=status>0?4:0;
6055isSuccess=status>=200&&status<300||status===304;
6056if(responses){
6057response=ajaxHandleResponses(s,jqXHR,responses);
6058}
6059if(!isSuccess&&
6060jQuery.inArray("script",s.dataTypes)>-1&&
6061jQuery.inArray("json",s.dataTypes)<0){
6062s.converters["text script"]=function(){};
6063}
6064response=ajaxConvert(s,response,jqXHR,isSuccess);
6065if(isSuccess){
6066if(s.ifModified){
6067modified=jqXHR.getResponseHeader("Last-Modified");
6068if(modified){
6069jQuery.lastModified[cacheURL]=modified;
6070}
6071modified=jqXHR.getResponseHeader("etag");
6072if(modified){
6073jQuery.etag[cacheURL]=modified;
6074}
6075}
6076if(status===204||s.type==="HEAD"){
6077statusText="nocontent";
6078}else if(status===304){
6079statusText="notmodified";
6080}else{
6081statusText=response.state;
6082success=response.data;
6083error=response.error;
6084isSuccess=!error;
6085}
6086}else{
6087error=statusText;
6088if(status||!statusText){
6089statusText="error";
6090if(status<0){
6091status=0;
6092}
6093}
6094}
6095jqXHR.status=status;
6096jqXHR.statusText=(nativeStatusText||statusText)+"";
6097if(isSuccess){
6098deferred.resolveWith(callbackContext,[success,statusText,jqXHR]);
6099}else{
6100deferred.rejectWith(callbackContext,[jqXHR,statusText,error]);
6101}
6102jqXHR.statusCode(statusCode);
6103statusCode=undefined;
6104if(fireGlobals){
6105globalEventContext.trigger(isSuccess?"ajaxSuccess":"ajaxError",
6106[jqXHR,s,isSuccess?success:error]);
6107}
6108completeDeferred.fireWith(callbackContext,[jqXHR,statusText]);
6109if(fireGlobals){
6110globalEventContext.trigger("ajaxComplete",[jqXHR,s]);
6111if(!(--jQuery.active)){
6112jQuery.event.trigger("ajaxStop");
6113}
6114}
6115}
6116return jqXHR;
6117},
6118getJSON:function(url,data,callback){
6119return jQuery.get(url,data,callback,"json");
6120},
6121getScript:function(url,callback){
6122return jQuery.get(url,undefined,callback,"script");
6123}
6124});
6125jQuery.each(["get","post"],function(_i,method){
6126jQuery[method]=function(url,data,callback,type){
6127if(isFunction(data)){
6128type=type||callback;
6129callback=data;
6130data=undefined;
6131}
6132return jQuery.ajax(jQuery.extend({
6133url:url,
6134type:method,
6135dataType:type,
6136data:data,
6137success:callback
6138},jQuery.isPlainObject(url)&&url));
6139};
6140});
6141jQuery.ajaxPrefilter(function(s){
6142var i;
6143for(i in s.headers){
6144if(i.toLowerCase()==="content-type"){
6145s.contentType=s.headers[i]||"";
6146}
6147}
6148});
6149jQuery._evalUrl=function(url,options,doc){
6150return jQuery.ajax({
6151url:url,
6152type:"GET",
6153dataType:"script",
6154cache:true,
6155async:false,
6156global:false,
6157converters:{
6158"text script":function(){}
6159},
6160dataFilter:function(response){
6161jQuery.globalEval(response,options,doc);
6162}
6163});
6164};
6165jQuery.fn.extend({
6166wrapAll:function(html){
6167var wrap;
6168if(this[0]){
6169if(isFunction(html)){
6170html=html.call(this[0]);
6171}
6172wrap=jQuery(html,this[0].ownerDocument).eq(0).clone(true);
6173if(this[0].parentNode){
6174wrap.insertBefore(this[0]);
6175}
6176wrap.map(function(){
6177var elem=this;
6178while(elem.firstElementChild){
6179elem=elem.firstElementChild;
6180}
6181return elem;
6182}).append(this);
6183}
6184return this;
6185},
6186wrapInner:function(html){
6187if(isFunction(html)){
6188return this.each(function(i){
6189jQuery(this).wrapInner(html.call(this,i));
6190});
6191}
6192return this.each(function(){
6193var self=jQuery(this),
6194contents=self.contents();
6195if(contents.length){
6196contents.wrapAll(html);
6197}else{
6198self.append(html);
6199}
6200});
6201},
6202wrap:function(html){
6203var htmlIsFunction=isFunction(html);
6204return this.each(function(i){
6205jQuery(this).wrapAll(htmlIsFunction?html.call(this,i):html);
6206});
6207},
6208unwrap:function(selector){
6209this.parent(selector).not("body").each(function(){
6210jQuery(this).replaceWith(this.childNodes);
6211});
6212return this;
6213}
6214});
6215jQuery.expr.pseudos.hidden=function(elem){
6216return!jQuery.expr.pseudos.visible(elem);
6217};
6218jQuery.expr.pseudos.visible=function(elem){
6219return!!(elem.offsetWidth||elem.offsetHeight||elem.getClientRects().length);
6220};
6221jQuery.ajaxSettings.xhr=function(){
6222try{
6223return new window.XMLHttpRequest();
6224}catch(e){}
6225};
6226var xhrSuccessStatus={
62270:200,
62281223:204
6229},
6230xhrSupported=jQuery.ajaxSettings.xhr();
6231support.cors=!!xhrSupported&&("withCredentials"in xhrSupported);
6232support.ajax=xhrSupported=!!xhrSupported;
6233jQuery.ajaxTransport(function(options){
6234var callback,errorCallback;
6235if(support.cors||xhrSupported&&!options.crossDomain){
6236return{
6237send:function(headers,complete){
6238var i,
6239xhr=options.xhr();
6240xhr.open(
6241options.type,
6242options.url,
6243options.async,
6244options.username,
6245options.password
6246);
6247if(options.xhrFields){
6248for(i in options.xhrFields){
6249xhr[i]=options.xhrFields[i];
6250}
6251}
6252if(options.mimeType&&xhr.overrideMimeType){
6253xhr.overrideMimeType(options.mimeType);
6254}
6255if(!options.crossDomain&&!headers["X-Requested-With"]){
6256headers["X-Requested-With"]="XMLHttpRequest";
6257}
6258for(i in headers){
6259xhr.setRequestHeader(i,headers[i]);
6260}
6261callback=function(type){
6262return function(){
6263if(callback){
6264callback=errorCallback=xhr.onload=
6265xhr.onerror=xhr.onabort=xhr.ontimeout=
6266xhr.onreadystatechange=null;
6267if(type==="abort"){
6268xhr.abort();
6269}else if(type==="error"){
6270if(typeof xhr.status!=="number"){
6271complete(0,"error");
6272}else{
6273complete(
6274xhr.status,
6275xhr.statusText
6276);
6277}
6278}else{
6279complete(
6280xhrSuccessStatus[xhr.status]||xhr.status,
6281xhr.statusText,
6282(xhr.responseType||"text")!=="text"||
6283typeof xhr.responseText!=="string"?
6284{binary:xhr.response}:
6285{text:xhr.responseText},
6286xhr.getAllResponseHeaders()
6287);
6288}
6289}
6290};
6291};
6292xhr.onload=callback();
6293errorCallback=xhr.onerror=xhr.ontimeout=callback("error");
6294if(xhr.onabort!==undefined){
6295xhr.onabort=errorCallback;
6296}else{
6297xhr.onreadystatechange=function(){
6298if(xhr.readyState===4){
6299window.setTimeout(function(){
6300if(callback){
6301errorCallback();
6302}
6303});
6304}
6305};
6306}
6307callback=callback("abort");
6308try{
6309xhr.send(options.hasContent&&options.data||null);
6310}catch(e){
6311if(callback){
6312throw e;
6313}
6314}
6315},
6316abort:function(){
6317if(callback){
6318callback();
6319}
6320}
6321};
6322}
6323});
6324jQuery.ajaxPrefilter(function(s){
6325if(s.crossDomain){
6326s.contents.script=false;
6327}
6328});
6329jQuery.ajaxSetup({
6330accepts:{
6331script:"text/javascript, application/javascript, "+
6332"application/ecmascript, application/x-ecmascript"
6333},
6334contents:{
6335script:/\b(?:java|ecma)script\b/
6336},
6337converters:{
6338"text script":function(text){
6339jQuery.globalEval(text);
6340return text;
6341}
6342}
6343});
6344jQuery.ajaxPrefilter("script",function(s){
6345if(s.cache===undefined){
6346s.cache=false;
6347}
6348if(s.crossDomain){
6349s.type="GET";
6350}
6351});
6352jQuery.ajaxTransport("script",function(s){
6353if(s.crossDomain||s.scriptAttrs){
6354var script,callback;
6355return{
6356send:function(_,complete){
6357script=jQuery("<script>")
6358.attr(s.scriptAttrs||{})
6359.prop({charset:s.scriptCharset,src:s.url})
6360.on("load error",callback=function(evt){
6361script.remove();
6362callback=null;
6363if(evt){
6364complete(evt.type==="error"?404:200,evt.type);
6365}
6366});
6367document.head.appendChild(script[0]);
6368},
6369abort:function(){
6370if(callback){
6371callback();
6372}
6373}
6374};
6375}
6376});
6377var oldCallbacks=[],
6378rjsonp=/(=)\?(?=&|$)|\?\?/;
6379jQuery.ajaxSetup({
6380jsonp:"callback",
6381jsonpCallback:function(){
6382var callback=oldCallbacks.pop()||(jQuery.expando+"_"+(nonce.guid++));
6383this[callback]=true;
6384return callback;
6385}
6386});
6387jQuery.ajaxPrefilter("json jsonp",function(s,originalSettings,jqXHR){
6388var callbackName,overwritten,responseContainer,
6389jsonProp=s.jsonp!==false&&(rjsonp.test(s.url)?
6390"url":
6391typeof s.data==="string"&&
6392(s.contentType||"")
6393.indexOf("application/x-www-form-urlencoded")===0&&
6394rjsonp.test(s.data)&&"data"
6395);
6396if(jsonProp||s.dataTypes[0]==="jsonp"){
6397callbackName=s.jsonpCallback=isFunction(s.jsonpCallback)?
6398s.jsonpCallback():
6399s.jsonpCallback;
6400if(jsonProp){
6401s[jsonProp]=s[jsonProp].replace(rjsonp,"$1"+callbackName);
6402}else if(s.jsonp!==false){
6403s.url+=(rquery.test(s.url)?"&":"?")+s.jsonp+"="+callbackName;
6404}
6405s.converters["script json"]=function(){
6406if(!responseContainer){
6407jQuery.error(callbackName+" was not called");
6408}
6409return responseContainer[0];
6410};
6411s.dataTypes[0]="json";
6412overwritten=window[callbackName];
6413window[callbackName]=function(){
6414responseContainer=arguments;
6415};
6416jqXHR.always(function(){
6417if(overwritten===undefined){
6418jQuery(window).removeProp(callbackName);
6419}else{
6420window[callbackName]=overwritten;
6421}
6422if(s[callbackName]){
6423s.jsonpCallback=originalSettings.jsonpCallback;
6424oldCallbacks.push(callbackName);
6425}
6426if(responseContainer&&isFunction(overwritten)){
6427overwritten(responseContainer[0]);
6428}
6429responseContainer=overwritten=undefined;
6430});
6431return"script";
6432}
6433});
6434support.createHTMLDocument=(function(){
6435var body=document.implementation.createHTMLDocument("").body;
6436body.innerHTML="<form></form><form></form>";
6437return body.childNodes.length===2;
6438})();
6439jQuery.parseHTML=function(data,context,keepScripts){
6440if(typeof data!=="string"){
6441return[];
6442}
6443if(typeof context==="boolean"){
6444keepScripts=context;
6445context=false;
6446}
6447var base,parsed,scripts;
6448if(!context){
6449if(support.createHTMLDocument){
6450context=document.implementation.createHTMLDocument("");
6451base=context.createElement("base");
6452base.href=document.location.href;
6453context.head.appendChild(base);
6454}else{
6455context=document;
6456}
6457}
6458parsed=rsingleTag.exec(data);
6459scripts=!keepScripts&&[];
6460if(parsed){
6461return[context.createElement(parsed[1])];
6462}
6463parsed=buildFragment([data],context,scripts);
6464if(scripts&&scripts.length){
6465jQuery(scripts).remove();
6466}
6467return jQuery.merge([],parsed.childNodes);
6468};
6469jQuery.fn.load=function(url,params,callback){
6470var selector,type,response,
6471self=this,
6472off=url.indexOf(" ");
6473if(off>-1){
6474selector=stripAndCollapse(url.slice(off));
6475url=url.slice(0,off);
6476}
6477if(isFunction(params)){
6478callback=params;
6479params=undefined;
6480}else if(params&&typeof params==="object"){
6481type="POST";
6482}
6483if(self.length>0){
6484jQuery.ajax({
6485url:url,
6486type:type||"GET",
6487dataType:"html",
6488data:params
6489}).done(function(responseText){
6490response=arguments;
6491self.html(selector?
6492jQuery("<div>").append(jQuery.parseHTML(responseText)).find(selector):
6493responseText);
6494}).always(callback&&function(jqXHR,status){
6495self.each(function(){
6496callback.apply(this,response||[jqXHR.responseText,status,jqXHR]);
6497});
6498});
6499}
6500return this;
6501};
6502jQuery.expr.pseudos.animated=function(elem){
6503return jQuery.grep(jQuery.timers,function(fn){
6504return elem===fn.elem;
6505}).length;
6506};
6507jQuery.offset={
6508setOffset:function(elem,options,i){
6509var curPosition,curLeft,curCSSTop,curTop,curOffset,curCSSLeft,calculatePosition,
6510position=jQuery.css(elem,"position"),
6511curElem=jQuery(elem),
6512props={};
6513if(position==="static"){
6514elem.style.position="relative";
6515}
6516curOffset=curElem.offset();
6517curCSSTop=jQuery.css(elem,"top");
6518curCSSLeft=jQuery.css(elem,"left");
6519calculatePosition=(position==="absolute"||position==="fixed")&&
6520(curCSSTop+curCSSLeft).indexOf("auto")>-1;
6521if(calculatePosition){
6522curPosition=curElem.position();
6523curTop=curPosition.top;
6524curLeft=curPosition.left;
6525}else{
6526curTop=parseFloat(curCSSTop)||0;
6527curLeft=parseFloat(curCSSLeft)||0;
6528}
6529if(isFunction(options)){
6530options=options.call(elem,i,jQuery.extend({},curOffset));
6531}
6532if(options.top!=null){
6533props.top=(options.top-curOffset.top)+curTop;
6534}
6535if(options.left!=null){
6536props.left=(options.left-curOffset.left)+curLeft;
6537}
6538if("using"in options){
6539options.using.call(elem,props);
6540}else{
6541curElem.css(props);
6542}
6543}
6544};
6545jQuery.fn.extend({
6546offset:function(options){
6547if(arguments.length){
6548return options===undefined?
6549this:
6550this.each(function(i){
6551jQuery.offset.setOffset(this,options,i);
6552});
6553}
6554var rect,win,
6555elem=this[0];
6556if(!elem){
6557return;
6558}
6559if(!elem.getClientRects().length){
6560return{top:0,left:0};
6561}
6562rect=elem.getBoundingClientRect();
6563win=elem.ownerDocument.defaultView;
6564return{
6565top:rect.top+win.pageYOffset,
6566left:rect.left+win.pageXOffset
6567};
6568},
6569position:function(){
6570if(!this[0]){
6571return;
6572}
6573var offsetParent,offset,doc,
6574elem=this[0],
6575parentOffset={top:0,left:0};
6576if(jQuery.css(elem,"position")==="fixed"){
6577offset=elem.getBoundingClientRect();
6578}else{
6579offset=this.offset();
6580doc=elem.ownerDocument;
6581offsetParent=elem.offsetParent||doc.documentElement;
6582while(offsetParent&&
6583(offsetParent===doc.body||offsetParent===doc.documentElement)&&
6584jQuery.css(offsetParent,"position")==="static"){
6585offsetParent=offsetParent.parentNode;
6586}
6587if(offsetParent&&offsetParent!==elem&&offsetParent.nodeType===1){
6588parentOffset=jQuery(offsetParent).offset();
6589parentOffset.top+=jQuery.css(offsetParent,"borderTopWidth",true);
6590parentOffset.left+=jQuery.css(offsetParent,"borderLeftWidth",true);
6591}
6592}
6593return{
6594top:offset.top-parentOffset.top-jQuery.css(elem,"marginTop",true),
6595left:offset.left-parentOffset.left-jQuery.css(elem,"marginLeft",true)
6596};
6597},
6598offsetParent:function(){
6599return this.map(function(){
6600var offsetParent=this.offsetParent;
6601while(offsetParent&&jQuery.css(offsetParent,"position")==="static"){
6602offsetParent=offsetParent.offsetParent;
6603}
6604return offsetParent||documentElement;
6605});
6606}
6607});
6608jQuery.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(method,prop){
6609var top="pageYOffset"===prop;
6610jQuery.fn[method]=function(val){
6611return access(this,function(elem,method,val){
6612var win;
6613if(isWindow(elem)){
6614win=elem;
6615}else if(elem.nodeType===9){
6616win=elem.defaultView;
6617}
6618if(val===undefined){
6619return win?win[prop]:elem[method];
6620}
6621if(win){
6622win.scrollTo(
6623!top?val:win.pageXOffset,
6624top?val:win.pageYOffset
6625);
6626}else{
6627elem[method]=val;
6628}
6629},method,val,arguments.length);
6630};
6631});
6632jQuery.each(["top","left"],function(_i,prop){
6633jQuery.cssHooks[prop]=addGetHookIf(support.pixelPosition,
6634function(elem,computed){
6635if(computed){
6636computed=curCSS(elem,prop);
6637return rnumnonpx.test(computed)?
6638jQuery(elem).position()[prop]+"px":
6639computed;
6640}
6641}
6642);
6643});
6644jQuery.each({Height:"height",Width:"width"},function(name,type){
6645jQuery.each({
6646padding:"inner"+name,
6647content:type,
6648"":"outer"+name
6649},function(defaultExtra,funcName){
6650jQuery.fn[funcName]=function(margin,value){
6651var chainable=arguments.length&&(defaultExtra||typeof margin!=="boolean"),
6652extra=defaultExtra||(margin===true||value===true?"margin":"border");
6653return access(this,function(elem,type,value){
6654var doc;
6655if(isWindow(elem)){
6656return funcName.indexOf("outer")===0?
6657elem["inner"+name]:
6658elem.document.documentElement["client"+name];
6659}
6660if(elem.nodeType===9){
6661doc=elem.documentElement;
6662return Math.max(
6663elem.body["scroll"+name],doc["scroll"+name],
6664elem.body["offset"+name],doc["offset"+name],
6665doc["client"+name]
6666);
6667}
6668return value===undefined?
6669jQuery.css(elem,type,extra):
6670jQuery.style(elem,type,value,extra);
6671},type,chainable?margin:undefined,chainable);
6672};
6673});
6674});
6675jQuery.each([
6676"ajaxStart",
6677"ajaxStop",
6678"ajaxComplete",
6679"ajaxError",
6680"ajaxSuccess",
6681"ajaxSend"
6682],function(_i,type){
6683jQuery.fn[type]=function(fn){
6684return this.on(type,fn);
6685};
6686});
6687jQuery.fn.extend({
6688bind:function(types,data,fn){
6689return this.on(types,null,data,fn);
6690},
6691unbind:function(types,fn){
6692return this.off(types,null,fn);
6693},
6694delegate:function(selector,types,data,fn){
6695return this.on(types,selector,data,fn);
6696},
6697undelegate:function(selector,types,fn){
6698return arguments.length===1?
6699this.off(selector,"**"):
6700this.off(types,selector||"**",fn);
6701},
6702hover:function(fnOver,fnOut){
6703return this
6704.on("mouseenter",fnOver)
6705.on("mouseleave",fnOut||fnOver);
6706}
6707});
6708jQuery.each(
6709("blur focus focusin focusout resize scroll click dblclick "+
6710"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave "+
6711"change select submit keydown keypress keyup contextmenu").split(" "),
6712function(_i,name){
6713jQuery.fn[name]=function(data,fn){
6714return arguments.length>0?
6715this.on(name,null,data,fn):
6716this.trigger(name);
6717};
6718}
6719);
6720var rtrim=/^[\s\uFEFF\xA0]+|([^\s\uFEFF\xA0])[\s\uFEFF\xA0]+$/g;
6721jQuery.proxy=function(fn,context){
6722var tmp,args,proxy;
6723if(typeof context==="string"){
6724tmp=fn[context];
6725context=fn;
6726fn=tmp;
6727}
6728if(!isFunction(fn)){
6729return undefined;
6730}
6731args=slice.call(arguments,2);
6732proxy=function(){
6733return fn.apply(context||this,args.concat(slice.call(arguments)));
6734};
6735proxy.guid=fn.guid=fn.guid||jQuery.guid++;
6736return proxy;
6737};
6738jQuery.holdReady=function(hold){
6739if(hold){
6740jQuery.readyWait++;
6741}else{
6742jQuery.ready(true);
6743}
6744};
6745jQuery.isArray=Array.isArray;
6746jQuery.parseJSON=JSON.parse;
6747jQuery.nodeName=nodeName;
6748jQuery.isFunction=isFunction;
6749jQuery.isWindow=isWindow;
6750jQuery.camelCase=camelCase;
6751jQuery.type=toType;
6752jQuery.now=Date.now;
6753jQuery.isNumeric=function(obj){
6754var type=jQuery.type(obj);
6755return(type==="number"||type==="string")&&
6756!isNaN(obj-parseFloat(obj));
6757};
6758jQuery.trim=function(text){
6759return text==null?
6760"":
6761(text+"").replace(rtrim,"$1");
6762};
6763if(typeof define==="function"&&define.amd){
6764define("jquery",[],function(){
6765return jQuery;
6766});
6767}
6768var
6769_jQuery=window.jQuery,
6770_$=window.$;
6771jQuery.noConflict=function(deep){
6772if(window.$===jQuery){
6773window.$=_$;
6774}
6775if(deep&&window.jQuery===jQuery){
6776window.jQuery=_jQuery;
6777}
6778return jQuery;
6779};
6780if(typeof noGlobal==="undefined"){
6781window.jQuery=window.$=jQuery;
6782}
6783return jQuery;
6784});
6785
6786
6787/* prive/javascript/jquery.form.js?1790239979 */
6788
6789(function(factory){
6790if(typeof define==='function'&&define.amd){
6791define(['jquery'],factory);
6792}else if(typeof module==='object'&&module.exports){
6793module.exports=function(root,jQuery){
6794if(typeof jQuery==='undefined'){
6795if(typeof window!=='undefined'){
6796jQuery=require('jquery');
6797}
6798else{
6799jQuery=require('jquery')(root);
6800}
6801}
6802factory(jQuery);
6803return jQuery;
6804};
6805}else{
6806factory(jQuery);
6807}
6808}(function($){
6809'use strict';
6810var rCRLF=/\r?\n/g;
6811var feature={};
6812feature.fileapi=$('<input type="file">').get(0).files!==undefined;
6813feature.formdata=(typeof window.FormData!=='undefined');
6814var hasProp=!!$.fn.prop;
6815$.fn.attr2=function(){
6816if(!hasProp){
6817return this.attr.apply(this,arguments);
6818}
6819var val=this.prop.apply(this,arguments);
6820if((val&&val.jquery)||typeof val==='string'){
6821return val;
6822}
6823return this.attr.apply(this,arguments);
6824};
6825$.fn.ajaxSubmit=function(options,data,dataType,onSuccess){
6826if(!this.length){
6827log('ajaxSubmit: skipping submit process - no element selected');
6828return this;
6829}
6830var method,action,url,isMsie,iframeSrc,$form=this;
6831if(typeof options==='function'){
6832options={success:options};
6833}else if(typeof options==='string'||(options===false&&arguments.length>0)){
6834options={
6835'url':options,
6836'data':data,
6837'dataType':dataType
6838};
6839if(typeof onSuccess==='function'){
6840options.success=onSuccess;
6841}
6842}else if(typeof options==='undefined'){
6843options={};
6844}
6845method=options.method||options.type||this.attr2('method');
6846action=options.url||this.attr2('action');
6847url=(typeof action==='string')?$.trim(action):'';
6848url=url||window.location.href||'';
6849if(url){
6850url=(url.match(/^([^#]+)/)||[])[1];
6851}
6852isMsie=/(MSIE|Trident)/.test(navigator.userAgent||'');
6853iframeSrc=(isMsie&&/^https/i.test(window.location.href||''))?'javascript:false':'about:blank';
6854options=$.extend(true,{
6855url:url,
6856success:$.ajaxSettings.success,
6857type:method||$.ajaxSettings.type,
6858iframeSrc:iframeSrc
6859},options);
6860var veto={};
6861this.trigger('form-pre-serialize',[this,options,veto]);
6862if(veto.veto){
6863log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');
6864return this;
6865}
6866if(options.beforeSerialize&&options.beforeSerialize(this,options)===false){
6867log('ajaxSubmit: submit aborted via beforeSerialize callback');
6868return this;
6869}
6870var traditional=options.traditional;
6871if(typeof traditional==='undefined'){
6872traditional=$.ajaxSettings.traditional;
6873}
6874var elements=[];
6875var qx,a=this.formToArray(options.semantic,elements,options.filtering);
6876if(options.data){
6877var optionsData=$.isFunction(options.data)?options.data(a):options.data;
6878options.extraData=optionsData;
6879qx=$.param(optionsData,traditional);
6880}
6881if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){
6882log('ajaxSubmit: submit aborted via beforeSubmit callback');
6883return this;
6884}
6885this.trigger('form-submit-validate',[a,this,options,veto]);
6886if(veto.veto){
6887log('ajaxSubmit: submit vetoed via form-submit-validate trigger');
6888return this;
6889}
6890var q=$.param(a,traditional);
6891if(qx){
6892q=(q?(q+'&'+qx):qx);
6893}
6894if(options.type.toUpperCase()==='GET'){
6895options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;
6896options.data=null;
6897}else{
6898options.data=q;
6899}
6900var callbacks=[];
6901if(options.resetForm){
6902callbacks.push(function(){
6903$form.resetForm();
6904});
6905}
6906if(options.clearForm){
6907callbacks.push(function(){
6908$form.clearForm(options.includeHidden);
6909});
6910}
6911if(!options.dataType&&options.target){
6912var oldSuccess=options.success||function(){};
6913callbacks.push(function(data,textStatus,jqXHR){
6914var successArguments=arguments,
6915fn=options.replaceTarget?'replaceWith':'html';
6916if(fn=='html'){
6917data=$.parseHTML($("<div>").text(data).html())
6918};
6919$(options.target)[fn](data).each(function(){
6920oldSuccess.apply(this,successArguments);
6921});
6922});
6923}else if(options.success){
6924if($.isArray(options.success)){
6925$.merge(callbacks,options.success);
6926}else{
6927callbacks.push(options.success);
6928}
6929}
6930options.success=function(data,status,xhr){
6931var context=options.context||this;
6932for(var i=0,max=callbacks.length;i<max;i++){
6933callbacks[i].apply(context,[data,status,xhr||$form,$form]);
6934}
6935};
6936if(options.error){
6937var oldError=options.error;
6938options.error=function(xhr,status,error){
6939var context=options.context||this;
6940oldError.apply(context,[xhr,status,error,$form]);
6941};
6942}
6943if(options.complete){
6944var oldComplete=options.complete;
6945options.complete=function(xhr,status){
6946var context=options.context||this;
6947oldComplete.apply(context,[xhr,status,$form]);
6948};
6949}
6950var fileInputs=$('input[type=file]:enabled',this).filter(function(){
6951return $(this).val()!=='';
6952});
6953var hasFileInputs=fileInputs.length>0;
6954var mp='multipart/form-data';
6955var multipart=($form.attr('enctype')===mp||$form.attr('encoding')===mp);
6956var fileAPI=feature.fileapi&&feature.formdata;
6957log('fileAPI :'+fileAPI);
6958var shouldUseFrame=(hasFileInputs||multipart)&&!fileAPI;
6959var jqxhr;
6960if(options.iframe!==false&&(options.iframe||shouldUseFrame)){
6961if(options.closeKeepAlive){
6962$.get(options.closeKeepAlive,function(){
6963jqxhr=fileUploadIframe(a);
6964});
6965}else{
6966jqxhr=fileUploadIframe(a);
6967}
6968}else if((hasFileInputs||multipart)&&fileAPI){
6969jqxhr=fileUploadXhr(a);
6970}else{
6971jqxhr=$.ajax(options);
6972}
6973$form.removeData('jqxhr').data('jqxhr',jqxhr);
6974for(var k=0;k<elements.length;k++){
6975elements[k]=null;
6976}
6977this.trigger('form-submit-notify',[this,options]);
6978return this;
6979function deepSerialize(extraData){
6980var serialized=$.param(extraData,options.traditional).split('&');
6981var len=serialized.length;
6982var result=[];
6983var i,part;
6984for(i=0;i<len;i++){
6985serialized[i]=serialized[i].replace(/\+/g,' ');
6986part=serialized[i].split('=');
6987result.push([decodeURIComponent(part[0]),decodeURIComponent(part[1])]);
6988}
6989return result;
6990}
6991function fileUploadXhr(a){
6992var formdata=new FormData();
6993for(var i=0;i<a.length;i++){
6994formdata.append(a[i].name,a[i].value);
6995}
6996if(options.extraData){
6997var serializedData=deepSerialize(options.extraData);
6998for(i=0;i<serializedData.length;i++){
6999if(serializedData[i]){
7000formdata.append(serializedData[i][0],serializedData[i][1]);
7001}
7002}
7003}
7004options.data=null;
7005var s=$.extend(true,{},$.ajaxSettings,options,{
7006contentType:false,
7007processData:false,
7008cache:false,
7009type:method||'POST'
7010});
7011if(options.uploadProgress){
7012s.xhr=function(){
7013var xhr=$.ajaxSettings.xhr();
7014if(xhr.upload){
7015xhr.upload.addEventListener('progress',function(event){
7016var percent=0;
7017var position=event.loaded||event.position;
7018var total=event.total;
7019if(event.lengthComputable){
7020percent=Math.ceil(position/total*100);
7021}
7022options.uploadProgress(event,position,total,percent);
7023},false);
7024}
7025return xhr;
7026};
7027}
7028s.data=null;
7029var beforeSend=s.beforeSend;
7030s.beforeSend=function(xhr,o){
7031if(options.formData){
7032o.data=options.formData;
7033}else{
7034o.data=formdata;
7035}
7036if(beforeSend){
7037beforeSend.call(this,xhr,o);
7038}
7039};
7040return $.ajax(s);
7041}
7042function fileUploadIframe(a){
7043var form=$form[0],el,i,s,g,id,$io,io,xhr,sub,n,timedOut,timeoutHandle;
7044var deferred=$.Deferred();
7045deferred.abort=function(status){
7046xhr.abort(status);
7047};
7048if(a){
7049for(i=0;i<elements.length;i++){
7050el=$(elements[i]);
7051if(hasProp){
7052el.prop('disabled',false);
7053}else{
7054el.removeAttr('disabled');
7055}
7056}
7057}
7058s=$.extend(true,{},$.ajaxSettings,options);
7059s.context=s.context||s;
7060id='jqFormIO'+new Date().getTime();
7061var ownerDocument=form.ownerDocument;
7062var $body=$form.closest('body');
7063if(s.iframeTarget){
7064$io=$(s.iframeTarget,ownerDocument);
7065n=$io.attr2('name');
7066if(!n){
7067$io.attr2('name',id);
7068}else{
7069id=n;
7070}
7071}else{
7072$io=$('<iframe name="'+id+'" src="'+s.iframeSrc+'">',ownerDocument);
7073$io.css({position:'absolute',top:'-1000px',left:'-1000px'});
7074}
7075io=$io[0];
7076xhr={
7077aborted:0,
7078responseText:null,
7079responseXML:null,
7080status:0,
7081statusText:'n/a',
7082getAllResponseHeaders:function(){},
7083getResponseHeader:function(){},
7084setRequestHeader:function(){},
7085abort:function(status){
7086var e=(status==='timeout'?'timeout':'aborted');
7087log('aborting upload... '+e);
7088this.aborted=1;
7089try{
7090if(io.contentWindow.document.execCommand){
7091io.contentWindow.document.execCommand('Stop');
7092}
7093}catch(ignore){}
7094$io.attr('src',s.iframeSrc);
7095xhr.error=e;
7096if(s.error){
7097s.error.call(s.context,xhr,e,status);
7098}
7099if(g){
7100$.event.trigger('ajaxError',[xhr,s,e]);
7101}
7102if(s.complete){
7103s.complete.call(s.context,xhr,e);
7104}
7105}
7106};
7107g=s.global;
7108if(g&&$.active++===0){
7109$.event.trigger('ajaxStart');
7110}
7111if(g){
7112$.event.trigger('ajaxSend',[xhr,s]);
7113}
7114if(s.beforeSend&&s.beforeSend.call(s.context,xhr,s)===false){
7115if(s.global){
7116$.active--;
7117}
7118deferred.reject();
7119return deferred;
7120}
7121if(xhr.aborted){
7122deferred.reject();
7123return deferred;
7124}
7125sub=form.clk;
7126if(sub){
7127n=sub.name;
7128if(n&&!sub.disabled){
7129s.extraData=s.extraData||{};
7130s.extraData[n]=sub.value;
7131if(sub.type==='image'){
7132s.extraData[n+'.x']=form.clk_x;
7133s.extraData[n+'.y']=form.clk_y;
7134}
7135}
7136}
7137var CLIENT_TIMEOUT_ABORT=1;
7138var SERVER_ABORT=2;
7139function getDoc(frame){
7140var doc=null;
7141try{
7142if(frame.contentWindow){
7143doc=frame.contentWindow.document;
7144}
7145}catch(err){
7146log('cannot get iframe.contentWindow document: '+err);
7147}
7148if(doc){
7149return doc;
7150}
7151try{
7152doc=frame.contentDocument?frame.contentDocument:frame.document;
7153}catch(err){
7154log('cannot get iframe.contentDocument: '+err);
7155doc=frame.document;
7156}
7157return doc;
7158}
7159var csrf_token=$('meta[name=csrf-token]').attr('content');
7160var csrf_param=$('meta[name=csrf-param]').attr('content');
7161if(csrf_param&&csrf_token){
7162s.extraData=s.extraData||{};
7163s.extraData[csrf_param]=csrf_token;
7164}
7165function doSubmit(){
7166var t=$form.attr2('target'),
7167a=$form.attr2('action'),
7168mp='multipart/form-data',
7169et=$form.attr('enctype')||$form.attr('encoding')||mp;
7170form.setAttribute('target',id);
7171if(!method||/post/i.test(method)){
7172form.setAttribute('method','POST');
7173}
7174if(a!==s.url){
7175form.setAttribute('action',s.url);
7176}
7177if(!s.skipEncodingOverride&&(!method||/post/i.test(method))){
7178$form.attr({
7179encoding:'multipart/form-data',
7180enctype:'multipart/form-data'
7181});
7182}
7183if(s.timeout){
7184timeoutHandle=setTimeout(function(){
7185timedOut=true;cb(CLIENT_TIMEOUT_ABORT);
7186},s.timeout);
7187}
7188function checkState(){
7189try{
7190var state=getDoc(io).readyState;
7191log('state = '+state);
7192if(state&&state.toLowerCase()==='uninitialized'){
7193setTimeout(checkState,50);
7194}
7195}catch(e){
7196log('Server abort: ',e,' (',e.name,')');
7197cb(SERVER_ABORT);
7198if(timeoutHandle){
7199clearTimeout(timeoutHandle);
7200}
7201timeoutHandle=undefined;
7202}
7203}
7204var extraInputs=[];
7205try{
7206if(s.extraData){
7207for(var n in s.extraData){
7208if(s.extraData.hasOwnProperty(n)){
7209if($.isPlainObject(s.extraData[n])&&s.extraData[n].hasOwnProperty('name')&&s.extraData[n].hasOwnProperty('value')){
7210extraInputs.push(
7211$('<input type="hidden" name="'+s.extraData[n].name+'">',ownerDocument).val(s.extraData[n].value)
7212.appendTo(form)[0]);
7213}else{
7214extraInputs.push(
7215$('<input type="hidden" name="'+n+'">',ownerDocument).val(s.extraData[n])
7216.appendTo(form)[0]);
7217}
7218}
7219}
7220}
7221if(!s.iframeTarget){
7222$io.appendTo($body);
7223}
7224if(io.attachEvent){
7225io.attachEvent('onload',cb);
7226}else{
7227io.addEventListener('load',cb,false);
7228}
7229setTimeout(checkState,15);
7230try{
7231form.submit();
7232}catch(err){
7233var submitFn=document.createElement('form').submit;
7234submitFn.apply(form);
7235}
7236}finally{
7237form.setAttribute('action',a);
7238form.setAttribute('enctype',et);
7239if(t){
7240form.setAttribute('target',t);
7241}else{
7242$form.removeAttr('target');
7243}
7244$(extraInputs).remove();
7245}
7246}
7247if(s.forceSync){
7248doSubmit();
7249}else{
7250setTimeout(doSubmit,10);
7251}
7252var data,doc,domCheckCount=50,callbackProcessed;
7253function cb(e){
7254if(xhr.aborted||callbackProcessed){
7255return;
7256}
7257doc=getDoc(io);
7258if(!doc){
7259log('cannot access response document');
7260e=SERVER_ABORT;
7261}
7262if(e===CLIENT_TIMEOUT_ABORT&&xhr){
7263xhr.abort('timeout');
7264deferred.reject(xhr,'timeout');
7265return;
7266}
7267if(e===SERVER_ABORT&&xhr){
7268xhr.abort('server abort');
7269deferred.reject(xhr,'error','server abort');
7270return;
7271}
7272if(!doc||doc.location.href===s.iframeSrc){
7273if(!timedOut){
7274return;
7275}
7276}
7277if(io.detachEvent){
7278io.detachEvent('onload',cb);
7279}else{
7280io.removeEventListener('load',cb,false);
7281}
7282var status='success',errMsg;
7283try{
7284if(timedOut){
7285throw'timeout';
7286}
7287var isXml=s.dataType==='xml'||doc.XMLDocument||$.isXMLDoc(doc);
7288log('isXml='+isXml);
7289if(!isXml&&window.opera&&(doc.body===null||!doc.body.innerHTML)){
7290if(--domCheckCount){
7291log('requeing onLoad callback, DOM not available');
7292setTimeout(cb,250);
7293return;
7294}
7295}
7296var docRoot=doc.body?doc.body:doc.documentElement;
7297xhr.responseText=docRoot?docRoot.innerHTML:null;
7298xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;
7299if(isXml){
7300s.dataType='xml';
7301}
7302xhr.getResponseHeader=function(header){
7303var headers={'content-type':s.dataType};
7304return headers[header.toLowerCase()];
7305};
7306if(docRoot){
7307xhr.status=Number(docRoot.getAttribute('status'))||xhr.status;
7308xhr.statusText=docRoot.getAttribute('statusText')||xhr.statusText;
7309}
7310var dt=(s.dataType||'').toLowerCase();
7311var scr=/(json|script|text)/.test(dt);
7312if(scr||s.textarea){
7313var ta=doc.getElementsByTagName('textarea')[0];
7314if(ta){
7315xhr.responseText=ta.value;
7316xhr.status=Number(ta.getAttribute('status'))||xhr.status;
7317xhr.statusText=ta.getAttribute('statusText')||xhr.statusText;
7318}else if(scr){
7319var pre=doc.getElementsByTagName('pre')[0];
7320var b=doc.getElementsByTagName('body')[0];
7321if(pre){
7322xhr.responseText=pre.textContent?pre.textContent:pre.innerText;
7323}else if(b){
7324xhr.responseText=b.textContent?b.textContent:b.innerText;
7325}
7326}
7327}else if(dt==='xml'&&!xhr.responseXML&&xhr.responseText){
7328xhr.responseXML=toXml(xhr.responseText);
7329}
7330try{
7331data=httpData(xhr,dt,s);
7332}catch(err){
7333status='parsererror';
7334xhr.error=errMsg=(err||status);
7335}
7336}catch(err){
7337log('error caught: ',err);
7338status='error';
7339xhr.error=errMsg=(err||status);
7340}
7341if(xhr.aborted){
7342log('upload aborted');
7343status=null;
7344}
7345if(xhr.status){
7346status=((xhr.status>=200&&xhr.status<300)||xhr.status===304)?'success':'error';
7347}
7348if(status==='success'){
7349if(s.success){
7350s.success.call(s.context,data,'success',xhr);
7351}
7352deferred.resolve(xhr.responseText,'success',xhr);
7353if(g){
7354$.event.trigger('ajaxSuccess',[xhr,s]);
7355}
7356}else if(status){
7357if(typeof errMsg==='undefined'){
7358errMsg=xhr.statusText;
7359}
7360if(s.error){
7361s.error.call(s.context,xhr,status,errMsg);
7362}
7363deferred.reject(xhr,'error',errMsg);
7364if(g){
7365$.event.trigger('ajaxError',[xhr,s,errMsg]);
7366}
7367}
7368if(g){
7369$.event.trigger('ajaxComplete',[xhr,s]);
7370}
7371if(g&&!--$.active){
7372$.event.trigger('ajaxStop');
7373}
7374if(s.complete){
7375s.complete.call(s.context,xhr,status);
7376}
7377callbackProcessed=true;
7378if(s.timeout){
7379clearTimeout(timeoutHandle);
7380}
7381setTimeout(function(){
7382if(!s.iframeTarget){
7383$io.remove();
7384}else{
7385$io.attr('src',s.iframeSrc);
7386}
7387xhr.responseXML=null;
7388},100);
7389}
7390var toXml=$.parseXML||function(s,doc){
7391if(window.ActiveXObject){
7392doc=new ActiveXObject('Microsoft.XMLDOM');
7393doc.async='false';
7394doc.loadXML(s);
7395}else{
7396doc=(new DOMParser()).parseFromString(s,'text/xml');
7397}
7398return(doc&&doc.documentElement&&doc.documentElement.nodeName!=='parsererror')?doc:null;
7399};
7400var parseJSON=$.parseJSON||function(s){
7401window.console.error('jquery.parseJSON is undefined');
7402return null;
7403};
7404var httpData=function(xhr,type,s){
7405var ct=xhr.getResponseHeader('content-type')||'',
7406xml=((type==='xml'||!type)&&ct.indexOf('xml')>=0),
7407data=xml?xhr.responseXML:xhr.responseText;
7408if(xml&&data.documentElement.nodeName==='parsererror'){
7409if($.error){
7410$.error('parsererror');
7411}
7412}
7413if(s&&s.dataFilter){
7414data=s.dataFilter(data,type);
7415}
7416if(typeof data==='string'){
7417if((type==='json'||!type)&&ct.indexOf('json')>=0){
7418data=parseJSON(data);
7419}else if((type==='script'||!type)&&ct.indexOf('javascript')>=0){
7420$.globalEval(data);
7421}
7422}
7423return data;
7424};
7425return deferred;
7426}
7427};
7428$.fn.ajaxForm=function(options,data,dataType,onSuccess){
7429if(typeof options==='string'||(options===false&&arguments.length>0)){
7430options={
7431'url':options,
7432'data':data,
7433'dataType':dataType
7434};
7435if(typeof onSuccess==='function'){
7436options.success=onSuccess;
7437}
7438}
7439options=options||{};
7440options.delegation=options.delegation&&$.isFunction($.fn.on);
7441if(!options.delegation&&this.length===0){
7442var o={s:this.selector,c:this.context};
7443if(!$.isReady&&o.s){
7444log('DOM not ready, queuing ajaxForm');
7445$(function(){
7446$(o.s,o.c).ajaxForm(options);
7447});
7448return this;
7449}
7450log('terminating; zero elements found by selector'+($.isReady?'':' (DOM not ready)'));
7451return this;
7452}
7453if(options.delegation){
7454$(document)
7455.off('submit.form-plugin',this.selector,doAjaxSubmit)
7456.off('click.form-plugin',this.selector,captureSubmittingElement)
7457.on('submit.form-plugin',this.selector,options,doAjaxSubmit)
7458.on('click.form-plugin',this.selector,options,captureSubmittingElement);
7459return this;
7460}
7461if(options.beforeFormUnbind){
7462options.beforeFormUnbind(this,options);
7463}
7464return this.ajaxFormUnbind()
7465.on('submit.form-plugin',options,doAjaxSubmit)
7466.on('click.form-plugin',options,captureSubmittingElement);
7467};
7468function doAjaxSubmit(e){
7469var options=e.data;
7470if(!e.isDefaultPrevented()){
7471e.preventDefault();
7472$(e.target).closest('form').ajaxSubmit(options);
7473}
7474}
7475function captureSubmittingElement(e){
7476var target=e.target;
7477var $el=$(target);
7478if(!$el.is('[type=submit],[type=image]')){
7479var t=$el.closest('[type=submit]');
7480if(t.length===0){
7481return;
7482}
7483target=t[0];
7484}
7485var form=target.form;
7486form.clk=target;
7487if(target.type==='image'){
7488if(typeof e.offsetX!=='undefined'){
7489form.clk_x=e.offsetX;
7490form.clk_y=e.offsetY;
7491}else if(typeof $.fn.offset==='function'){
7492var offset=$el.offset();
7493form.clk_x=e.pageX-offset.left;
7494form.clk_y=e.pageY-offset.top;
7495}else{
7496form.clk_x=e.pageX-target.offsetLeft;
7497form.clk_y=e.pageY-target.offsetTop;
7498}
7499}
7500setTimeout(function(){
7501form.clk=form.clk_x=form.clk_y=null;
7502},100);
7503}
7504$.fn.ajaxFormUnbind=function(){
7505return this.off('submit.form-plugin click.form-plugin');
7506};
7507$.fn.formToArray=function(semantic,elements,filtering){
7508var a=[];
7509if(this.length===0){
7510return a;
7511}
7512var form=this[0];
7513var formId=this.attr('id');
7514var els=(semantic||typeof form.elements==='undefined')?form.getElementsByTagName('*'):form.elements;
7515var els2;
7516if(els){
7517els=$.makeArray(els);
7518}
7519if(formId&&(semantic||/(Edge|Trident)\//.test(navigator.userAgent))){
7520els2=$(':input[form="'+formId+'"]').get();
7521if(els2.length){
7522els=(els||[]).concat(els2);
7523}
7524}
7525if(!els||!els.length){
7526return a;
7527}
7528if($.isFunction(filtering)){
7529els=$.map(els,filtering);
7530}
7531var i,j,n,v,el,max,jmax;
7532for(i=0,max=els.length;i<max;i++){
7533el=els[i];
7534n=el.name;
7535if(!n||el.disabled){
7536continue;
7537}
7538if(semantic&&form.clk&&el.type==='image'){
7539if(form.clk===el){
7540a.push({name:n,value:$(el).val(),type:el.type});
7541a.push({name:n+'.x',value:form.clk_x},{name:n+'.y',value:form.clk_y});
7542}
7543continue;
7544}
7545v=$.fieldValue(el,true);
7546if(v&&v.constructor===Array){
7547if(elements){
7548elements.push(el);
7549}
7550for(j=0,jmax=v.length;j<jmax;j++){
7551a.push({name:n,value:v[j]});
7552}
7553}else if(feature.fileapi&&el.type==='file'){
7554if(elements){
7555elements.push(el);
7556}
7557var files=el.files;
7558if(files.length){
7559for(j=0;j<files.length;j++){
7560a.push({name:n,value:files[j],type:el.type});
7561}
7562}else{
7563a.push({name:n,value:'',type:el.type});
7564}
7565}else if(v!==null&&typeof v!=='undefined'){
7566if(elements){
7567elements.push(el);
7568}
7569a.push({name:n,value:v,type:el.type,required:el.required});
7570}
7571}
7572if(!semantic&&form.clk){
7573var $input=$(form.clk),input=$input[0];
7574n=input.name;
7575if(n&&!input.disabled&&input.type==='image'){
7576a.push({name:n,value:$input.val()});
7577a.push({name:n+'.x',value:form.clk_x},{name:n+'.y',value:form.clk_y});
7578}
7579}
7580return a;
7581};
7582$.fn.formSerialize=function(semantic){
7583return $.param(this.formToArray(semantic));
7584};
7585$.fn.fieldSerialize=function(successful){
7586var a=[];
7587this.each(function(){
7588var n=this.name;
7589if(!n){
7590return;
7591}
7592var v=$.fieldValue(this,successful);
7593if(v&&v.constructor===Array){
7594for(var i=0,max=v.length;i<max;i++){
7595a.push({name:n,value:v[i]});
7596}
7597}else if(v!==null&&typeof v!=='undefined'){
7598a.push({name:this.name,value:v});
7599}
7600});
7601return $.param(a);
7602};
7603$.fn.fieldValue=function(successful){
7604for(var val=[],i=0,max=this.length;i<max;i++){
7605var el=this[i];
7606var v=$.fieldValue(el,successful);
7607if(v===null||typeof v==='undefined'||(v.constructor===Array&&!v.length)){
7608continue;
7609}
7610if(v.constructor===Array){
7611$.merge(val,v);
7612}else{
7613val.push(v);
7614}
7615}
7616return val;
7617};
7618$.fieldValue=function(el,successful){
7619var n=el.name,t=el.type,tag=el.tagName.toLowerCase();
7620if(typeof successful==='undefined'){
7621successful=true;
7622}
7623if(successful&&(!n||el.disabled||t==='reset'||t==='button'||
7624(t==='checkbox'||t==='radio')&&!el.checked||
7625(t==='submit'||t==='image')&&el.form&&el.form.clk!==el||
7626tag==='select'&&el.selectedIndex===-1)){
7627return null;
7628}
7629if(tag==='select'){
7630var index=el.selectedIndex;
7631if(index<0){
7632return null;
7633}
7634var a=[],ops=el.options;
7635var one=(t==='select-one');
7636var max=(one?index+1:ops.length);
7637for(var i=(one?index:0);i<max;i++){
7638var op=ops[i];
7639if(op.selected&&!op.disabled){
7640var v=op.value;
7641if(!v){
7642v=(op.attributes&&op.attributes.value&&!(op.attributes.value.specified))?op.text:op.value;
7643}
7644if(one){
7645return v;
7646}
7647a.push(v);
7648}
7649}
7650return a;
7651}
7652return $(el).val().replace(rCRLF,'\r\n');
7653};
7654$.fn.clearForm=function(includeHidden){
7655return this.each(function(){
7656$('input,select,textarea',this).clearFields(includeHidden);
7657});
7658};
7659$.fn.clearFields=$.fn.clearInputs=function(includeHidden){
7660var re=/^(?:color|date|datetime|email|month|number|password|range|search|tel|text|time|url|week)$/i;
7661return this.each(function(){
7662var t=this.type,tag=this.tagName.toLowerCase();
7663if(re.test(t)||tag==='textarea'){
7664this.value='';
7665}else if(t==='checkbox'||t==='radio'){
7666this.checked=false;
7667}else if(tag==='select'){
7668this.selectedIndex=-1;
7669}else if(t==='file'){
7670if(/MSIE/.test(navigator.userAgent)){
7671$(this).replaceWith($(this).clone(true));
7672}else{
7673$(this).val('');
7674}
7675}else if(includeHidden){
7676if((includeHidden===true&&/hidden/.test(t))||
7677(typeof includeHidden==='string'&&$(this).is(includeHidden))){
7678this.value='';
7679}
7680}
7681});
7682};
7683$.fn.resetForm=function(){
7684return this.each(function(){
7685var el=$(this);
7686var tag=this.tagName.toLowerCase();
7687switch(tag){
7688case'input':
7689this.checked=this.defaultChecked;
7690case'textarea':
7691this.value=this.defaultValue;
7692return true;
7693case'option':
7694case'optgroup':
7695var select=el.parents('select');
7696if(select.length&&select[0].multiple){
7697if(tag==='option'){
7698this.selected=this.defaultSelected;
7699}else{
7700el.find('option').resetForm();
7701}
7702}else{
7703select.resetForm();
7704}
7705return true;
7706case'select':
7707el.find('option').each(function(i){
7708this.selected=this.defaultSelected;
7709if(this.defaultSelected&&!el[0].multiple){
7710el[0].selectedIndex=i;
7711return false;
7712}
7713});
7714return true;
7715case'label':
7716var forEl=$(el.attr('for'));
7717var list=el.find('input,select,textarea');
7718if(forEl[0]){
7719list.unshift(forEl[0]);
7720}
7721list.resetForm();
7722return true;
7723case'form':
7724if(typeof this.reset==='function'||(typeof this.reset==='object'&&!this.reset.nodeType)){
7725this.reset();
7726}
7727return true;
7728default:
7729el.find('form,input,label,select,textarea').resetForm();
7730return true;
7731}
7732});
7733};
7734$.fn.enable=function(b){
7735if(typeof b==='undefined'){
7736b=true;
7737}
7738return this.each(function(){
7739this.disabled=!b;
7740});
7741};
7742$.fn.selected=function(select){
7743if(typeof select==='undefined'){
7744select=true;
7745}
7746return this.each(function(){
7747var t=this.type;
7748if(t==='checkbox'||t==='radio'){
7749this.checked=select;
7750}else if(this.tagName.toLowerCase()==='option'){
7751var $sel=$(this).parent('select');
7752if(select&&$sel[0]&&$sel[0].type==='select-one'){
7753$sel.find('option').selected(false);
7754}
7755this.selected=select;
7756}
7757});
7758};
7759$.fn.ajaxSubmit.debug=false;
7760function log(){
7761if(!$.fn.ajaxSubmit.debug){
7762return;
7763}
7764var msg='[jquery.form] '+Array.prototype.join.call(arguments,'');
7765if(window.console&&window.console.log){
7766window.console.log(msg);
7767}else if(window.opera&&window.opera.postError){
7768window.opera.postError(msg);
7769}
7770}
7771}));
7772
7773
7774/* prive/javascript/jquery.autosave.js?1790239979 */
7775
7776(function($){
7777$.fn.autosave=function(opt){
7778opt=$.extend({
7779url:window.location,
7780confirm:false,
7781confirmstring:'Sauvegarder ?'
7782},opt);
7783var save_changed=function(){
7784$('form.autosavechanged')
7785.each(function(){
7786if(!opt.confirm||confirm(opt.confirmstring)){
7787var contenu=$(this).serialize();
7788var d=new Date();
7789contenu=contenu+"&__timestamp="+Math.round(d.getTime()/1000);
7790$.post(opt.url,{
7791'action':'session',
7792'var':'autosave_'+$('input[name=autosave]',this).val(),
7793'val':contenu
7794});
7795}
7796}).removeClass('autosavechanged');
7797};
7798$(window).on('unload',save_changed);
7799return this
7800.on('keyup',function(){
7801$(this).addClass('autosavechanged');
7802})
7803.on('change',function(){
7804$(this).addClass('autosavechanged');
7805save_changed();
7806})
7807.on('submit',function(){
7808save_changed();
7809});
7810};
7811})(jQuery);
7812
7813
7814/* prive/javascript/jquery.placeholder-label.js?1790239979 */
7815
7816(function($){
7817$.placeholderLabel={
7818placeholder_class:null,
7819add_placeholder:function(){
7820if($(this).val()==$(this).attr('placeholder')){
7821$(this).val('').removeClass($.placeholderLabel.placeholder_class);
7822}
7823},
7824remove_placeholder:function(){
7825if($(this).val()==''){
7826$(this).val($(this).attr('placeholder')).addClass($.placeholderLabel.placeholder_class);
7827}
7828},
7829disable_placeholder_fields:function(){
7830$(this).find("input[placeholder]").each(function(){
7831if($(this).val()==$(this).attr('placeholder')){
7832$(this).val('');
7833}
7834});
7835return true;
7836}
7837};
7838$.fn.placeholderLabel=function(options){
7839var dummy=document.createElement('input');
7840if(dummy.placeholder!=undefined){
7841return this;
7842}
7843var config={
7844placeholder_class:'placeholder'
7845};
7846if(options)$.extend(config,options);
7847$.placeholderLabel.placeholder_class=config.placeholder_class;
7848this.each(function(){
7849var input=$(this);
7850input.focus($.placeholderLabel.add_placeholder);
7851input.blur($.placeholderLabel.remove_placeholder);
7852input.triggerHandler('focus');
7853input.triggerHandler('blur');
7854$(this.form).submit($.placeholderL
7854abel.disable_placeholder_fields);
7855});
7856return this;
7857}
7858})(jQuery);
7859
7860
7861/* prive/javascript/ajaxCallback.js?1790239979 */
7862jQuery.spip=jQuery.spip||{};
7863jQuery.spip.log=function(){
7864if(jQuery.spip.debug&&window.console&&window.console.log)
7865window.console.log.apply(this,arguments);
7866}
7867jQuery.spip.test_espace_prive=function(){
7868if(typeof spipConfig.core.test_espace_prive!=undefined&&spipConfig.core.test_espace_prive){
7869return true;
7870}
7871return false;
7872}
7873if(!jQuery.spip.load_handlers){
7874jQuery.spip.load_handlers=new Array();
7875function onAjaxLoad(f){
7876jQuery.spip.load_handlers.push(f);
7877};
7878jQuery.spip.triggerAjaxLoad=function(root){
7879jQuery.spip.log('triggerAjaxLoad');
7880jQuery.spip.log(root);
7881for(var i=0;i<jQuery.spip.load_handlers.length;i++)
7882jQuery.spip.load_handlers[i].apply(root);
7883};
7884jQuery.spip.intercepted={};
7885jQuery.spip.intercepted.load=jQuery.fn.load;
7886jQuery.fn.load=function(url,params,callback){
7887if(typeof url!=="string"){
7888return jQuery.spip.intercepted.load.apply(this,arguments);
7889}
7890callback=callback||function(){};
7891if(params){
7892if(params.constructor==Function){
7893callback=params;
7894params=null;
7895}
7896}
7897params=jQuery.extend(params,{triggerAjaxLoad:false});
7898var callback2=function(){jQuery.spip.log('jQuery.load');jQuery.spip.triggerAjaxLoad(this);callback.apply(this,arguments);};
7899return jQuery.spip.intercepted.load.apply(this,[url,params,callback2]);
7900};
7901jQuery.spip.intercepted.ajaxSubmit=jQuery.fn.ajaxSubmit;
7902jQuery.fn.ajaxSubmit=function(options){
7903options=options||{};
7904if(typeof options.onAjaxLoad=="undefined"||options.onAjaxLoad!=false){
7905var me=jQuery(this).parents('div.ajax');
7906if(me.length)
7907me=me.parent();
7908else
7909me=document;
7910if(typeof options=='function')
7911options={success:options};
7912var callback=options.success||function(){};
7913options.success=function(){callback.apply(this,arguments);jQuery.spip.log('jQuery.ajaxSubmit');jQuery.spip.triggerAjaxLoad(me);}
7914}
7915return jQuery.spip.intercepted.ajaxSubmit.apply(this,[options]);
7916}
7917jQuery.spip.intercepted.ajax=jQuery.ajax;
7918jQuery.ajax=function(url,settings){
7919if(typeof settings=='undefined'){
7920settings={};
7921if(typeof url=='object'){
7922settings=url;
7923url=null;
7924}
7925}
7926if(typeof url=='string'){
7927settings['url']=url;
7928}
7929if(settings.data&&settings.data['triggerAjaxLoad']===false){
7930settings.data['triggerAjaxLoad']=null;
7931return jQuery.spip.intercepted.ajax(settings);
7932}
7933var s=jQuery.extend(true,{},jQuery.ajaxSettings,settings);
7934var callbackContext=s.context||s;
7935try{
7936if(jQuery.ajax.caller==jQuery.spip.intercepted.load||jQuery.ajax.caller==jQuery.spip.intercepted.ajaxSubmit)
7937return jQuery.spip.intercepted.ajax(settings);
7938}
7939catch(err){}
7940var orig_complete=s.complete||function(){};
7941settings.complete=function(res,status){
7942var dataType=settings.dataType;
7943var ct=(res&&(typeof res.getResponseHeader=='function'))
7944?res.getResponseHeader("content-type"):'';
7945var xml=!dataType&&ct&&ct.indexOf("xml")>=0;
7946orig_complete.call(callbackContext,res,status);
7947if((!dataType&&!xml)||dataType=="html"){
7948jQuery.spip.log('jQuery.ajax');
7949if(typeof s.onAjaxLoad=="undefined"||s.onAjaxLoad!=false)
7950jQuery.spip.triggerAjaxLoad(s.ajaxTarget?s.ajaxTarget:document);
7951}
7952};
7953return jQuery.spip.intercepted.ajax(settings);
7954};
7955}
7956jQuery.uaMatch=function(ua){
7957ua=ua.toLowerCase();
7958var match=/(chrome)[ \/]([\w.]+)/.exec(ua)||/(webkit)[ \/]([\w.]+)/.exec(ua)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua)||/(msie) ([\w.]+)/.exec(ua)||
7959ua.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua)||
7960[];
7961return{
7962browser:match[1]||"",
7963version:match[2]||"0"
7964};
7965};
7966if(!jQuery.browser){
7967matched=jQuery.uaMatch(navigator.userAgent);
7968browser={};
7969if(matched.browser){
7970browser[matched.browser]=true;
7971browser.version=matched.version;
7972}
7973if(browser.chrome){
7974browser.webkit=true;
7975}else if(browser.webkit){
7976browser.safari=true;
7977}
7978jQuery.browser=browser;
7979}
7980jQuery.getScript=function(url,callback){
7981return $.ajax({
7982url:url,
7983dataType:"script",
7984success:callback,
7985cache:true
7986});
7987}
7988jQuery.fn.positionner=function(force,setfocus){
7989if(!this.length){
7990return this;
7991}
7992var offset=jQuery(this).offset();
7993var hauteur=parseInt(jQuery(this).css('height'));
7994var marge=jQuery.spip.positionner_marge||5;
7995var scrolltop=self['pageYOffset']||
7996jQuery.boxModel&&document.documentElement['scrollTop']||
7997document.body['scrollTop'];
7998var h=jQuery(window).height();
7999var scroll=0;
8000if(force||(offset&&offset['top']-marge<=scrolltop)){
8001scroll=offset['top']-marge;
8002}
8003else if(offset&&offset['top']+hauteur-h+marge>scrolltop){
8004scroll=Math.min(offset['top']-marge-15,offset['top']+hauteur-h+40);
8005}
8006if(scroll)
8007jQuery('html,body')
8008.animate({scrollTop:scroll},300);
8009if(setfocus!==false)
8010jQuery(jQuery('*',this).filter('input[type=text],textarea')[0]).focus();
8011return this;
8012}
8013jQuery.spip.virtualbuffer_id='spip_virtualbufferupdate';
8014jQuery.spip.initReaderBuffer=function(){
8015if(jQuery('#'+jQuery.spip.virtualbuffer_id).length)return;
8016jQuery('body').append('<div style="float:left;width:0;height:0;position:absolute;left:-5000px;top:-5000px;"><input type="hidden" name="'+jQuery.spip.virtualbuffer_id+'" id="'+jQuery.spip.virtualbuffer_id+'" value="0"></div>');
8017}
8018jQuery.spip.updateReaderBuffer=function(){
8019var i=jQuery('#'+jQuery.spip.virtualbuffer_id);
8020if(!i.length)return;
8021i.val(parseInt(i.val())+1);
8022}
8023jQuery.fn.formulaire_setContainer=function(){
8024if(!this.closest('.ajax-form-container').length){
8025this.find('script').remove();
8026var aria=this.data('aria');
8027var $container=jQuery('<div class="ajax-form-container"></div>');
8028if(aria&&typeof aria==='object'){
8029for(var i in aria){
8030$container=$container.attr(i,aria[i]);
8031}
8032}
8033else{
8034aria=false;
8035}
8036this.wrap($container);
8037if(aria){
8038jQuery('form',this).not('[aria-live]').attr('aria-live','off');
8039}
8040}
8041return this;
8042}
8043jQuery.fn.formulaire_dyn_ajax=function(target){
8044if(this.length)
8045jQuery.spip.initReaderBuffer();
8046return this.each(function(){
8047var scrollwhensubmit=!jQuery(this).is('.noscroll');
8048var cible=target||this;
8049jQuery(cible).formulaire_setContainer();
8050jQuery('form:not(.noajax):not(.bouton_action_post)',this).each(function(){
8051var leform=this;
8052var leclk,leclk_x,leclk_y;
8053var onError=function(xhr,status,error,$form){
8054jQuery(leform).ajaxFormUnbind().find('input[name="var_ajax"]').remove();
8055var msg="Erreur";
8056if(typeof(error_on_ajaxform)!=="undefined")msg=error_on_ajaxform;
8057jQuery(leform).prepend("<p class='error ajax-error none'>"+msg+"</p>").find('.ajax-error').show('fast');
8058jQuery(cible).closest('.ajax-form-container').endLoading(true);
8059}
8060jQuery(this).prepend("<input type='hidden' name='var_ajax' value='form'>")
8061.ajaxForm({
8062beforeSubmit:function(){
8063leclk=leform.clk;
8064var scrollwhensubmit_button=true;
8065if(leclk){
8066scrollwhensubmit_button=!jQuery(leclk).is('.noscroll');
8067var n=leclk.name;
8068if(n&&!leclk.disabled&&leclk.type==="image"){
8069leclk_x=leform.clk_x;
8070leclk_y=leform.clk_y;
8071}
8072}
8073jQuery(cible).wrap('<div />');
8074cible=jQuery(cible).parent();
8075jQuery(cible).closest('.ajax-form-container').animateLoading();
8076if(scrollwhensubmit&&scrollwhensubmit_button){
8077jQuery(cible).positionner(false,false);
8078}
8079},
8080error:onError,
8081success:function(c,status,xhr,$form){
8082if(c.match(/^\s*noajax\s*$/)){
8083jQuery("input[name=var_ajax]",leform).remove();
8084if(leclk){
8085var n=leclk.name;
8086if(n&&!leclk.disabled){
8087jQuery(leform).prepend("<input type='hidden' name='"+n+"' value='"+leclk.value+"'>");
8088if(leclk.type==="image"){
8089jQuery(leform).prepend("<input type='hidden' name='"+n+".x' value='"+leform.clk_x+"'>");
8090jQuery(leform).prepend("<input type='hidden' name='"+n+".y' value='"+leform.clk_y+"'>");
8091}
8092}
8093}
8094jQuery(leform).ajaxFormUnbind().closest('.formulaire_spip').addClass('resubmit-noajax');
8095try{
8096leform.submit();
8097}catch(err){
8098var submitFn=document.createElement('form').submit;
8099submitFn.apply(leform);
8100}
8101}
8102else{
8103if(!c.length||c.indexOf("ajax-form-is-ok")==-1)
8104return onError.apply(this,[status,xhr,$form]);
8105var preloaded=jQuery.spip.preloaded_urls;
8106jQuery.spip.preloaded_urls={};
8107jQuery(cible).html(c);
8108var a=jQuery('a:first',cible).eq(0);
8109var d=jQuery('div.ajax',cible);
8110if(!d.length){
8111jQuery(cible).addClass('ajax');
8112if(!scrollwhensubmit)
8113jQuery(cible).addClass('noscroll');
8114}
8115else{
8116d.siblings('br.bugajaxie').remove();
8117cible=jQuery(":first",cible);
8118cible.unwrap();
8119}
8120if(a.length
8121&&a.is('a[name=ajax_ancre]')
8122&&jQuery(a.attr('href'),cible).length){
8123a=a.attr('href');
8124if(jQuery(a,cible).length)
8125setTimeout(function(){
8126jQuery(a,cible).positionner(false);
8127},10);
8128jQuery(cible).closest('.ajax-form-container').endLoading(true);
8129}
8130else{
8131if(a.length&&a.is('a[name=ajax_redirect]')){
8132a=a.get(0).href;
8133setTimeout(function(){
8134var cur=window.location.href.split('#');
8135document.location.replace(a);
8136if(cur[0]==a.split('#')[0]){
8137window.location.reload();
8138}
8139},10);
8140jQuery(cible).closest('.ajax-form-container').animateLoading();
8141}
8142else{
8143jQuery(cible).closest('.ajax-form-container').endLoading(true);
8144}
8145}
8146if(!jQuery('.reponse_formulaire_ok',cible).length)
8147jQuery.spip.preloaded_urls=preloaded;
8148jQuery.spip.updateReaderBuffer();
8149}
8150}
8151})
8152.addClass('noajax hasajax');
8153});
8154});
8155}
8156jQuery.fn.formulaire_verifier=function(callback,champ){
8157var erreurs={'message_erreur':'form non ajax'};
8158var me=this;
8159if(jQuery(me).closest('.ajax-form-container').attr('aria-busy')!='true'){
8160if(jQuery(me).is('form.hasajax')){
8161jQuery(me).ajaxSubmit({
8162dataType:"json",
8163data:{formulaire_action_verifier_json:true},
8164success:function(errs){
8165var args=[errs,champ]
8166if(jQuery(me).closest('.ajax-form-container').attr('aria-busy')!='true')
8167callback.apply(me,args);
8168}
8169});
8170}
8171else
8172callback.apply(me,[erreurs,champ]);
8173}
8174return this;
8175}
8176jQuery.fn.formulaire_activer_verif_auto=function(callback){
8177callback=callback||formulaire_actualiser_erreurs;
8178var me=jQuery(this).closest('.ajax-form-container');
8179var check=function(){
8180var name=jQuery(this).attr('name');
8181setTimeout(function(){me.find('form').formulaire_verifier(callback,name);},50);
8182}
8183var activer=function(){
8184if(me.find('form').attr('data-verifjson')!='on'){
8185me
8186.find('form')
8187.attr('data-verifjson','on')
8188.find('input,select,textarea')
8189.on('change',check);
8190}
8191}
8192jQuery(activer);
8193onAjaxLoad(function(){setTimeout(activer,150);});
8194}
8195function formulaire_actualiser_erreurs(erreurs){
8196var parent=jQuery(this).closest('.formulaire_spip');
8197if(!parent.length)return;
8198parent.find('.reponse_formulaire,.erreur_message').fadeOut().remove();
8199parent.find('.erreur').removeClass('erreur');
8200if(erreurs['message_ok'])
8201parent.find('form').before('<p class="reponse_formulaire reponse_formulaire_ok">'+erreurs['message_ok']+'</p>');
8202if(erreurs['message_erreur'])
8203parent.find('form').before('<p class="reponse_formulaire reponse_formulaire_erreur">'+erreurs['message_erreur']+'</p>');
8204for(var k in erreurs){
8205var saisie=parent.find('.editer_'+k);
8206if(saisie.length){
8207saisie.addClass('erreur');
8208saisie.find('label').after('<span class="erreur_message">'+erreurs[k]+'</span>');
8209}
8210}
8211}
8212var ajax_confirm=true;
8213var ajax_confirm_date=0;
8214var spip_confirm=window.confirm;
8215function _confirm(message){
8216ajax_confirm=spip_confirm(message);
8217if(!ajax_confirm){
8218var d=new Date();
8219ajax_confirm_date=d.getTime();
8220}
8221return ajax_confirm;
8222}
8223window.confirm=_confirm;
8224var ajaxbloc_selecteur;
8225jQuery.spip.preloaded_urls={};
8226jQuery.spip.on_ajax_loaded=function(blocfrag,c,href,history){
8227history=history||(history==null);
8228if(typeof href==undefined||href==null)
8229history=false;
8230if(history)
8231jQuery.spip.setHistoryState(blocfrag);
8232if(jQuery(blocfrag).attr('data-loaded-callback')){
8233var callback=eval(jQuery(blocfrag).attr('data-loaded-callback'));
8234callback.call(blocfrag,c,href,history);
8235}
8236else{
8237jQuery(blocfrag)
8238.html(c)
8239.endLoading();
8240}
8241if(typeof href!=undefined)
8242jQuery(blocfrag).attr('data-url',href);
8243if(history){
8244var href_history=href;
8245if(href_history.indexOf('var_nullify')!==-1){
8246href_history=parametre_url(href_history,'var_nullify','');
8247}
8248jQuery.spip.pushHistoryState(href_history);
8249jQuery.spip.setHistoryState(blocfrag);
8250}
8251var a=jQuery('a:first',jQuery(blocfrag)).eq(0);
8252if(a.length
8253&&a.is('a[name=ajax_ancre]')
8254&&jQuery(a.attr('href'),blocfrag).length){
8255a=a.attr('href');
8256jQuery(a,blocfrag).positionner(false);
8257}
8258jQuery.spip.log('on_ajax_loaded');
8259jQuery.spip.triggerAjaxLoad(blocfrag);
8260a=jQuery(blocfrag).parents('form.hasajax')
8261if(a.length)
8262a.eq(0).removeClass('noajax').parents('div.ajax').formulaire_dyn_ajax();
8263jQuery.spip.updateReaderBuffer();
8264}
8265jQuery.spip.on_ajax_failed=function(blocfrag,statusCode,href,history){
8266jQuery(blocfrag).addClass('invalid');
8267jQuery.spip.log("Echec AJAX statusCode "+statusCode)
8268history=history||(history==null);
8269if(history){
8270if(jQuery.spip.debug){
8271jQuery.spip.log("On redirige sur sur "+href)
8272}
8273else{
8274window.location.href=href;
8275}
8276}
8277}
8278jQuery.spip.stateId=0;
8279jQuery.spip.setHistoryState=function(blocfrag){
8280if(!window.history.replaceState)return;
8281if(!blocfrag.attr('id')){
8282while(jQuery('#ghsid'+jQuery.spip.stateId).length)
8283jQuery.spip.stateId++;
8284blocfrag.attr('id','ghsid'+jQuery.spip.stateId);
8285}
8286var href=blocfrag.attr('data-url')||blocfrag.attr('data-origin');
8287href=jQuery("<"+"a href='"+href+"'></a>").get(0).href;
8288var state={
8289id:blocfrag.attr('id'),
8290href:href
8291};
8292var ajaxid=blocfrag.attr('class').match(/\bajax-id-[\w-]+\b/);
8293if(ajaxid&&ajaxid.length)
8294state["ajaxid"]=ajaxid[0];
8295window.history.replaceState(state,window.document.title,window.document.location);
8296}
8297jQuery.spip.pushHistoryState=function(href,title){
8298if(!window.history.pushState)
8299return false;
8300window.history.pushState({},title,href);
8301}
8302window.onpopstate=function(popState){
8303if(popState.state&&popState.state.href){
8304var blocfrag=false;
8305if(popState.state.id){
8306blocfrag=jQuery('#'+popState.state.id);
8307}
8308if((!blocfrag||!blocfrag.length)&&popState.state.ajaxid){
8309blocfrag=jQuery('.ajaxbloc.'+popState.state.ajaxid);
8310}
8311if(blocfrag&&blocfrag.length==1){
8312jQuery.spip.ajaxClick(blocfrag,popState.state.href,{history:false});
8313return true;
8314}
8315else{
8316window.location.href=popState.state.href;
8317}
8318}
8319}
8320jQuery.spip.loadAjax=function(blocfrag,url,href,options){
8321var force=options.force||false;
8322if(jQuery(blocfrag).attr('data-loading-callback')){
8323var callback=eval(jQuery(blocfrag).attr('data-loading-callback'));
8324callback.call(blocfrag,url,href,options);
8325}
8326else{
8327jQuery(blocfrag).animateLoading();
8328}
8329if(jQuery.spip.preloaded_urls[url]&&!force){
8330if(jQuery.spip.preloaded_urls[url]=="<!--loading-->"){
8331setTimeout(function(){jQuery.spip.loadAjax(blocfrag,url,href,options);},100);
8332return;
8333}
8334jQuery.spip.on_ajax_loaded(blocfrag,jQuery.spip.preloaded_urls[url],href,options.history);
8335}else{
8336var d=new Date();
8337jQuery.spip.preloaded_urls[url]="<!--loading-->";
8338jQuery.ajax({
8339url:parametre_url(url,'var_t',d.getTime()),
8340onAjaxLoad:false,
8341success:function(c){
8342jQuery.spip.on_ajax_loaded(blocfrag,c,href,options.history);
8343jQuery.spip.preloaded_urls[url]=c;
8344if(options.callback&&typeof options.callback=="function")
8345options.callback.apply(blocfrag);
8346},
8347error:function(e){
8348jQuery.spip.preloaded_urls[url]='';
8349jQuery.spip.on_ajax_failed(blocfrag,e.status,href,options.history);
8350}
8351});
8352}
8353}
8354jQuery.spip.makeAjaxUrl=function(href,ajax_env,origin){
8355var url=href.split('#');
8356url[0]=parametre_url(url[0],'var_ajax',1);
8357url[0]=parametre_url(url[0],'var_ajax_env',ajax_env);
8358if(origin){
8359if(origin.indexOf('var_nullify')!==-1){
8360origin=parametre_url(origin,'var_nullify','');
8361}
8362var p=origin.indexOf('?');
8363var nullify=[];
8364if(p!==-1){
8365var args=origin.substring(p+1).split('&');
8366var val;
8367var arg;
8368for(var n=0;n<args.length;n++){
8369arg=args[n].split('=');
8370arg=decodeURIComponent(arg[0]);
8371p=arg.indexOf('[');
8372if(p!==-1)
8373arg=arg.substring(0,p);
8374val=parametre_url(href,arg);
8375if((typeof val=="undefined"||val==null)&&nullify.indexOf(arg)===-1){
8376nullify.push(arg);
8377}
8378}
8379if(nullify.length){
8380url[0]=url[0]+'&'+'var_nullify='+encodeURIComponent(nullify.join('|'));
8381}
8382}
8383}
8384if(url[1])
8385url[0]=parametre_url(url[0],'var_ajax_ancre',url[1]);
8386return url[0];
8387}
8388jQuery.spip.ajaxReload=function(blocfrag,options){
8389var ajax_env=blocfrag.attr('data-ajax-env');
8390if(!ajax_env||ajax_env==undefined)return;
8391var href=options.href||blocfrag.attr('data-url')||blocfrag.attr('data-origin');
8392if(href&&typeof href!=undefined){
8393if(href.indexOf('var_nullify')!==-1){
8394href=parametre_url(href,'var_nullify','');
8395}
8396options=options||{};
8397var callback=options.callback||null;
8398var history=options.history||false;
8399var args=options.args||{};
8400for(var key in args){
8401href=parametre_url(href,key,args[key]==undefined?'':args[key],'&',args[key]==undefined?false:true);
8402}
8403var url=jQuery.spip.makeAjaxUrl(href,ajax_env,blocfrag.attr('data-origin'));
8404jQuery.spip.loadAjax(blocfrag,url,href,{force:true,callback:callback,history:history});
8405return true;
8406}
8407}
8408jQuery.spip.ajaxClick=function(blocfrag,href,options){
8409var ajax_env=blocfrag.attr('data-ajax-env');
8410if(!ajax_env||ajax_env==undefined)return;
8411if(!ajax_confirm){
8412ajax_confirm=true;
8413var d=new Date();
8414if((d.getTime()-ajax_confirm_date)<=2)
8415return false;
8416}
8417var url=jQuery.spip.makeAjaxUrl(href,ajax_env,blocfrag.attr('data-origin'));
8418jQuery.spip.loadAjax(blocfrag,url,href,options);
8419return false;
8420}
8421jQuery.fn.ajaxbloc=function(){
8422if(this.length)
8423jQuery.spip.initReaderBuffer();
8424if(ajaxbloc_selecteur==undefined)
8425ajaxbloc_selecteur='.pagination a,a.ajax';
8426return this.each(function(){
8427jQuery('div.ajaxbloc',this).ajaxbloc();
8428var blocfrag=jQuery(this);
8429var ajax_env=blocfrag.attr('data-ajax-env');
8430if(!ajax_env||ajax_env==undefined)return;
8431blocfrag.not('.bind-ajaxReload').on('ajaxReload',function(event,options){
8432if(jQuery.spip.ajaxReload(blocfrag,options))
8433event.stopPropagation();
8434}).addClass('bind-ajaxReload');
8435jQuery(ajaxbloc_selecteur,this).not('.noajax,.bind-ajax')
8436.click(function(){return jQuery.spip.ajaxClick(blocfrag,this.href,{force:jQuery(this).is('.nocache'),history:!(jQuery(this).is('.nohistory')||jQuery(this).closest('.box_modalbox').length)});})
8437.addClass('bind-ajax')
8438.filter('.preload').each(function(){
8439var href=this.href;
8440var url=jQuery.spip.makeAjaxUrl(href,ajax_env,blocfrag.attr('data-origin'));
8441if(!jQuery.spip.preloaded_urls[url]){
8442jQuery.spip.preloaded_urls[url]='<!--loading-->';
8443jQuery.ajax({url:url,onAjaxLoad:false,success:function(r){jQuery.spip.preloaded_urls[url]=r;},error:function(){jQuery.spip.preloaded_urls[url]='';}});
8444}
8445});
8446jQuery('form.bouton_action_post.ajax',this).not('.noajax,.bind-ajax').each(function(){
8447var leform=this;
8448var url=jQuery(this).attr('action').split('#');
8449var scrollwhensubmit=(!jQuery(this).is('.noscroll')&&!jQuery('.submit',this).is('.noscroll'));
8450jQuery(this)
8451.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]+"'>":""))
8452.ajaxForm({
8453beforeSubmit:function(){
8454jQuery(blocfrag).animateLoading();
8455if(scrollwhensubmit){
8456jQuery(blocfrag).positionner(false);
8457}
8458},
8459onAjaxLoad:false,
8460success:function(c){
8461jQuery.spip.on_ajax_loaded(blocfrag,c);
8462jQuery.spip.preloaded_urls={};
8463},
8464error:function(e){
8465jQuery.spip.preloaded_urls={};
8466var href=parametre_url(url,'redirect');
8467if(!href){
8468href=window.location.href;
8469}
8470jQuery.spip.on_ajax_failed(blocfrag,e.status,href,e.status===400);
8471}
8472})
8473.addClass('bind-ajax');
8474});
8475});
8476};
8477jQuery.fn.followLink=function(){
8478$(this).click();
8479if(!$(this).is('.bind-ajax'))
8480window.location.href=$(this).get(0).href;
8481return this;
8482}
8483function ajaxReload(ajaxid,options){
8484jQuery('div.ajaxbloc.ajax-id-'+ajaxid).ajaxReload(options);
8485}
8486jQuery.fn.ajaxReload=function(options){
8487options=options||{};
8488jQuery(this).trigger('ajaxReload',[options]);
8489return this;
8490}
8491jQuery.fn.animateLoading=function(){
8492this.attr('aria-busy','true').addClass('loading').children().css('opacity',0.5);
8493if(typeof ajax_image_searching!='undefined'){
8494var i=(this).find('.image_loading');
8495if(i.length)i.eq(0).html(ajax_image_searching);
8496else this.prepend('<span class="image_loading">'+ajax_image_searching+'</span>');
8497}
8498return this;
8499}
8500jQuery.fn.animeajax=jQuery.fn.animateLoading;
8501jQuery.fn.endLoading=function(hard){
8502hard=hard||false;
8503this.attr('aria-busy','false').removeClass('loading');
8504if(hard){
8505this.children().css('opacity','');
8506this.find('.image_loading').html('');
8507}
8508return this;
8509}
8510jQuery.fn.animateRemove=function(callback){
8511if(this.length){
8512var me=this;
8513var color=$("<div class='remove'></div>").css('background-color');
8514var sel=$(this);
8515if(sel.is('tr'))
8516sel=sel.add('>td',sel);
8517sel.addClass('remove').css({backgroundColor:color}).animate({opacity:"0.0"},'fast',function(){
8518sel.removeClass('remove').css({backgroundColor:''});
8519if(callback)
8520callback.apply(me);
8521});
8522}
8523return this;
8524}
8525jQuery.fn.animateAppend=function(callback){
8526if(this.length){
8527var me=this;
8528var color=$("<div class='append'></div>").css('background-color');
8529var origin=$(this).css('background-color')||'#ffffff';
8530if(origin=='transparent')origin='#ffffff';
8531var sel=$(this);
8532if(sel.is('tr'))
8533sel=sel.add('>td',sel);
8534sel.css('opacity','0.0').addClass('append').css({backgroundColor:color}).animate({opacity:"1.0"},1000,function(){
8535sel.animate({backgroundColor:origin},3000,function(){
8536sel.removeClass('append').css({backgroundColor:''});
8537if(callback)
8538callback.apply(me);
8539});
8540});
8541}
8542return this;
8543}
8544function parametre_url(url,c,v,sep,force_vide){
8545if(typeof(url)=='undefined'){
8546url='';
8547}
8548var p;
8549var ancre='';
8550var a='./';
8551var args=[];
8552p=url.indexOf('#');
8553if(p!=-1){
8554ancre=url.substring(p);
8555url=url.substring(0,p);
8556}
8557p=url.indexOf('?');
8558if(p!==-1){
8559if(p>0)a=url.substring(0,p);
8560args=url.substring(p+1).split('&');
8561}
8562else
8563a=url;
8564var regexp=new RegExp('^('+c.replace('[]','\\[\\]')+'\\[?\\]?)(=.*)?$');
8565var ajouts=[];
8566var u=(typeof(v)!=='object')?encodeURIComponent(v):v;
8567var na=[];
8568var v_read=null;
8569for(var n=0;n<args.length;n++){
8570var val=args[n];
8571try{
8572val=decodeURIComponent(val);
8573}catch(e){}
8574var r=val.match(regexp);
8575if(r&&r.length){
8576if(v==null){
8577if(r[1].substr(-2)=='[]'){
8578if(!v_read)v_read=[];
8579v_read.push((r.length>2&&typeof r[2]!=='undefined')?r[2].substring(1):'');
8580}
8581else{
8582return(r.length>2&&typeof r[2]!=='undefined')?r[2].substring(1):'';
8583}
8584}
8585else if(!v.length){
8586}
8587else if(r[1].substr(-2)!='[]'){
8588na.push(r[1]+'='+u);
8589ajouts.push(r[1]);
8590}
8591}
8592else
8593na.push(args[n]);
8594}
8595if(v==null)return v_read;
8596if(v||v.length||force_vide){
8597ajouts="="+ajouts.join("=")+"=";
8598var all=c.split('|');
8599for(n=0;n<all.length;n++){
8600if(ajouts.search("="+all[n]+"=")==-1){
8601if(typeof(v)!=='object'){
8602na.push(all[n]+'='+u);
8603}
8604else{
8605var id=((all[n].substring(-2)=='[]')?all[n]:all[n]+"[]");
8606for(p=0;p<v.length;p++)
8607na.push(id+'='+encodeURIComponent(v[p]));
8608}
8609}
8610}
8611}
8612if(na.length){
8613if(!sep)sep='&';
8614a=a+"?"+na.join(sep);
8615}
8616return a+ancre;
8617}
8618function spip_logo_survol_hover(){
8619var me=jQuery(this);
8620if(me.attr('data-src-hover')){
8621me.attr('data-src-original',me.attr('src'));
8622me.attr('src',me.attr('data-src-hover'));
8623}
8624}
8625function spip_logo_survol_out(){
8626var me=jQuery(this);
8627if(me.attr('data-src-original')){
8628me.attr('src',me.attr('data-src-original'));
8629}
8630}
8631function disableClickAfterFormSubmit(){
8632if(jQuery(this).is('.processing-submitted-form')){
8633return false;
8634}
8635jQuery(this)
8636.addClass('processing-submitted-form')
8637.find('button[type="submit"]')
8638.attr('disabled','disabled')
8639.addClass('disabled')
8640}
8641function puce_enable_survol(){
8642jQuery('span.puce_objet_popup a',this).not('.puce-survol-enabled').click(function(){
8643selec_statut(jQuery(this).attr('data-puce-id'),jQuery(this).attr('data-puce-type'),jQuery(this).attr('data-puce-decal'),jQuery('img',this).attr('src'),jQuery(this).attr('data-puce-action'));
8644return false;
8645}).addClass('puce-survol-enabled');
8646jQuery('span.puce_objet',this).not('.puce-survol-enabled').mouseover(function(){
8647if(!this.puce_loaded){
8648this.puce_loaded=true;prepare_selec_statut(this,jQuery(this).attr('data-puce-nom'),jQuery(this).attr('data-puce-type'),jQuery(this).attr('data-puce-id'),jQuery(this).attr('data-puce-action'));
8649}
8650}).addClass('puce-survol-enabled');
8651}
8652if(!window.var_zajax_content)
8653window.var_zajax_content='contenu';
8654jQuery(function(){
8655jQuery('form:not(.bouton_action_post)').parents('div.ajax')
8656.formulaire_dyn_ajax();
8657jQuery('div.ajaxbloc').ajaxbloc();
8658jQuery("input[placeholder]:text").placeholderLabel();
8659jQuery('.spip_logo_survol').hover(spip_logo_survol_hover,spip_logo_survol_out);
8660puce_enable_survol.apply(this);
8661jQuery('body').on('submit','form.bouton_action_post',disableClickAfterFormSubmit);
8662});
8663onAjaxLoad(function(){
8664if(jQuery){
8665jQuery('form:not(.bouton_action_post)',this).parents('div.ajax')
8666.formulaire_dyn_ajax();
8667if(jQuery(this).is('div.ajaxbloc'))
8668jQuery(this).ajaxbloc();
8669else if(jQuery(this).closest('div.ajaxbloc').length)
8670jQuery(this).closest('div.ajaxbloc').ajaxbloc();
8671else
8672jQuery('div.ajaxbloc',this).ajaxbloc();
8673jQuery("input[placeholder]:text",this).placeholderLabel();
8674jQuery('.spip_logo_survol',this).hover(spip_logo_survol_hover,spip_logo_survol_out);
8675puce_enable_survol.apply(this);
8676}
8677});
8678
8679
8680/* prive/javascript/js.cookie.js?1790239979 */
8681
8682;
8683(function(global,factory){
8684typeof exports==='object'&&typeof module!=='undefined'?module.exports=factory():
8685typeof define==='function'&&define.amd?define(factory):
8686(global=typeof globalThis!=='undefined'?globalThis:global||self,(function(){
8687var current=global.Cookies;
8688var exports=global.Cookies=factory();
8689exports.noConflict=function(){global.Cookies=current;return exports;};
8690})());
8691})(this,(function(){'use strict';
8692function assign(target){
8693for(var i=1;i<arguments.length;i++){
8694var source=arguments[i];
8695for(var key in source){
8696target[key]=source[key];
8697}
8698}
8699return target
8700}
8701var defaultConverter={
8702read:function(value){
8703if(value[0]==='"'){
8704value=value.slice(1,-1);
8705}
8706return value.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)
8707},
8708write:function(value){
8709return encodeURIComponent(value).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,
8710decodeURIComponent
8711)
8712}
8713};
8714function init(converter,defaultAttributes){
8715function set(name,value,attributes){
8716if(typeof document==='undefined'){
8717return
8718}
8719attributes=assign({},defaultAttributes,attributes);
8720if(typeof attributes.expires==='number'){
8721attributes.expires=new Date(Date.now()+attributes.expires*864e5);
8722}
8723if(attributes.expires){
8724attributes.expires=attributes.expires.toUTCString();
8725}
8726name=encodeURIComponent(name)
8727.replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent)
8728.replace(/[()]/g,escape);
8729var stringifiedAttributes='';
8730for(var attributeName in attributes){
8731if(!attributes[attributeName]){
8732continue
8733}
8734stringifiedAttributes+='; '+attributeName;
8735if(attributes[attributeName]===true){
8736continue
8737}
8738stringifiedAttributes+='='+attributes[attributeName].split(';')[0];
8739}
8740return(document.cookie=
8741name+'='+converter.write(value,name)+stringifiedAttributes)
8742}
8743function get(name){
8744if(typeof document==='undefined'||(arguments.length&&!name)){
8745return
8746}
8747var cookies=document.cookie?document.cookie.split('; '):[];
8748var jar={};
8749for(var i=0;i<cookies.length;i++){
8750var parts=cookies[i].split('=');
8751var value=parts.slice(1).join('=');
8752try{
8753var found=decodeURIComponent(parts[0]);
8754jar[found]=converter.read(value,found);
8755if(name===found){
8756break
8757}
8758}catch(e){}
8759}
8760return name?jar[name]:jar
8761}
8762return Object.create(
8763{
8764set,
8765get,
8766remove:function(name,attributes){
8767set(
8768name,
8769'',
8770assign({},attributes,{
8771expires:-1
8772})
8773);
8774},
8775withAttributes:function(attributes){
8776return init(this.converter,assign({},this.attributes,attributes))
8777},
8778withConverter:function(converter){
8779return init(assign({},this.converter,converter),this.attributes)
8780}
8781},
8782{
8783attributes:{value:Object.freeze(defaultAttributes)},
8784converter:{value:Object.freeze(converter)}
8785}
8786)
8787}
8788var api=init(defaultConverter,{path:'/'});
8789return api;
8790}));
8791
8792
8793/* plugins-dist/mediabox/lib/lity/lity.js?1790239979 */
8794
8795(function(window,factory){
8796if(typeof define==='function'&&define.amd){
8797define(['jquery'],function($){
8798return factory(window,$);
8799});
8800}else if(typeof module==='object'&&typeof module.exports==='object'){
8801module.exports=factory(window,require('jquery'));
8802}else{
8803window.lity=factory(window,window.jQuery||window.Zepto);
8804}
8805}(typeof window!=="undefined"?window:this,function(window,$){
8806'use strict';
8807var document=window.document;
8808var _win=$(window);
8809var _deferred=$.Deferred;
8810var _html=$('html');
8811var _instances=[];
8812var _attrAriaHidden='aria-hidden';
8813var _dataAriaHidden='lity-'+_attrAriaHidden;
8814var _focusableElementsSelector='a[href],area[href],input:not([disabled]),select:not([disabled]),textarea:not([disabled]),button:not([disabled]),iframe,object,embed,[contenteditable],[tabindex]:not
8814([tabindex^="-"])';
8815var _defaultOptions={
8816esc:true,
8817handler:null,
8818handlers:{
8819image:imageHandler,
8820inline:inlineHandler,
8821iframe:iframeHandler
8822},
8823forceFocusInside:false,
8824template:'<div class="lity" role="dialog" aria-label="Dialog Window (Press escape to close)" tabindex="-1"><div class="lity-wrap" data-lity-close role="document"><div class="lity-loader" aria-hidden="true">Loading...</div><div class="lity-container"><div class="lity-content"></div><button class="lity-close" type="button" aria-label="Close (Press escape to close)" data-lity-close>&times;</button></div></div></div>'
8825};
8826var _imageRegexp=/(^data:image\/)|(\.(png|jpe?g|gif|svg|webp|bmp|ico|tiff?)(\?\S*)?$)/i;
8827var _transitionEndEvent=(function(){
8828var el=document.createElement('div');
8829var transEndEventNames={
8830WebkitTransition:'webkitTransitionEnd',
8831MozTransition:'transitionend',
8832OTransition:'oTransitionEnd otransitionend',
8833transition:'transitionend'
8834};
8835for(var name in transEndEventNames){
8836if(el.style[name]!==undefined){
8837return transEndEventNames[name];
8838}
8839}
8840return false;
8841})();
8842function transitionEnd(element){
8843var deferred=_deferred();
8844if(!_transitionEndEvent||!element.length){
8845deferred.resolve();
8846}else{
8847element.one(_transitionEndEvent,deferred.resolve);
8848setTimeout(deferred.resolve,500);
8849}
8850return deferred.promise();
8851}
8852function settings(currSettings,key,value){
8853if(arguments.length===1){
8854return $.extend({},currSettings);
8855}
8856if(typeof key==='string'){
8857if(typeof value==='undefined'){
8858return typeof currSettings[key]==='undefined'
8859?null
8860:currSettings[key];
8861}
8862currSettings[key]=value;
8863}else{
8864$.extend(currSettings,key);
8865}
8866return this;
8867}
8868function parseQueryParams(params){
8869var pos=params.indexOf('?');
8870if(pos>-1){
8871params=params.substr(pos+1);
8872}
8873var pairs=decodeURI(params.split('#')[0]).split('&');
8874var obj={},p;
8875for(var i=0,n=pairs.length;i<n;i++){
8876if(!pairs[i]){
8877continue;
8878}
8879p=pairs[i].split('=');
8880obj[p[0]]=p[1];
8881}
8882return obj;
8883}
8884function appendQueryParams(url,params){
8885if(!params){
8886return url;
8887}
8888if('string'===$.type(params)){
8889params=parseQueryParams(params);
8890}
8891if(url.indexOf('?')>-1){
8892var split=url.split('?');
8893url=split.shift();
8894params=$.extend(
8895{},
8896parseQueryParams(split[0]),
8897params
8898)
8899}
8900return url+'?'+$.param(params);
8901}
8902function transferHash(originalUrl,newUrl){
8903var pos=originalUrl.indexOf('#');
8904if(-1===pos){
8905return newUrl;
8906}
8907if(pos>0){
8908originalUrl=originalUrl.substr(pos);
8909}
8910return newUrl+originalUrl;
8911}
8912function iframe(iframeUrl,instance,queryParams,hashUrl){
8913instance&&instance.element().addClass('lity-iframe');
8914if(queryParams){
8915iframeUrl=appendQueryParams(iframeUrl,queryParams);
8916}
8917if(hashUrl){
8918iframeUrl=transferHash(hashUrl,iframeUrl);
8919}
8920return'<div class="lity-iframe-container"><iframe frameborder="0" allowfullscreen allow="autoplay; fullscreen" src="'+iframeUrl+'"/></div>';
8921}
8922function error(msg){
8923return $('<span class="lity-error"></span>').append(msg);
8924}
8925function imageHandler(target,instance){
8926var desc=(instance.opener()&&instance.opener().data('lity-desc'))||'Image with no description';
8927var img=$('<img src="'+target+'" alt="'+desc+'"/>');
8928var deferred=_deferred();
8929var failed=function(){
8930deferred.reject(error('Failed loading image'));
8931};
8932img
8933.on('load',function(){
8934if(this.naturalWidth===0){
8935return failed();
8936}
8937deferred.resolve(img);
8938})
8939.on('error',failed)
8940;
8941return deferred.promise();
8942}
8943imageHandler.test=function(target){
8944return _imageRegexp.test(target);
8945};
8946function inlineHandler(target,instance){
8947var el,placeholder,hasHideClass;
8948try{
8949el=$(target);
8950}catch(e){
8951return false;
8952}
8953if(!el.length){
8954return false;
8955}
8956placeholder=$('<i style="display:none !important"></i>');
8957hasHideClass=el.hasClass('lity-hide');
8958instance
8959.element()
8960.one('lity:remove',function(){
8961placeholder
8962.before(el)
8963.remove()
8964;
8965if(hasHideClass&&!el.closest('.lity-content').length){
8966el.addClass('lity-hide');
8967}
8968})
8969;
8970return el
8971.removeClass('lity-hide')
8972.after(placeholder)
8973;
8974}
8975function iframeHandler(target,instance){
8976return iframe(target,instance);
8977}
8978function winHeight(){
8979return document.documentElement.clientHeight
8980?document.documentElement.clientHeight
8981:Math.round(_win.height());
8982}
8983function keydown(e){
8984var current=currentInstance();
8985if(!current){
8986return;
8987}
8988if(e.keyCode===27&&!!current.options('esc')){
8989current.close();
8990}
8991if(e.keyCode===9){
8992handleTabKey(e,current);
8993}
8994}
8995function handleTabKey(e,instance){
8996var focusableElements=instance.element().find(_focusableElementsSelector);
8997var focusedIndex=focusableElements.index(document.activeElement);
8998if(e.shiftKey&&focusedIndex<=0){
8999focusableElements.get(focusableElements.length-1).focus();
9000e.preventDefault();
9001}else if(!e.shiftKey&&focusedIndex===focusableElements.length-1){
9002focusableElements.get(0).focus();
9003e.preventDefault();
9004}
9005if(focusedIndex===-1&&instance.options().forceFocusInside){
9006focusableElements.get(0).focus();
9007e.preventDefault();
9008}
9009}
9010function resize(){
9011$.each(_instances,function(i,instance){
9012instance.resize();
9013});
9014}
9015function registerInstance(instanceToRegister){
9016if(1===_instances.unshift(instanceToRegister)){
9017_html.addClass('lity-active');
9018_win
9019.on({
9020resize:resize,
9021keydown:keydown
9022})
9023;
9024}
9025$('body > *').not(instanceToRegister.element())
9026.addClass('lity-hidden')
9027.each(function(){
9028var el=$(this);
9029if(undefined!==el.data(_dataAriaHidden)){
9030return;
9031}
9032el.data(_dataAriaHidden,el.attr(_attrAriaHidden)||null);
9033})
9034.attr(_attrAriaHidden,'true')
9035;
9036}
9037function removeInstance(instanceToRemove){
9038var show;
9039instanceToRemove
9040.element()
9041.attr(_attrAriaHidden,'true')
9042;
9043if(1===_instances.length){
9044_html.removeClass('lity-active');
9045_win
9046.off({
9047resize:resize,
9048keydown:keydown
9049})
9050;
9051}
9052_instances=$.grep(_instances,function(instance){
9053return instanceToRemove!==instance;
9054});
9055if(!!_instances.length){
9056show=_instances[0].element();
9057}else{
9058show=$('.lity-hidden');
9059}
9060show
9061.removeClass('lity-hidden')
9062.each(function(){
9063var el=$(this),oldAttr=el.data(_dataAriaHidden);
9064if(!oldAttr){
9065el.removeAttr(_attrAriaHidden);
9066}else{
9067el.attr(_attrAriaHidden,oldAttr);
9068}
9069el.removeData(_dataAriaHidden);
9070})
9071;
9072}
9073function currentInstance(){
9074if(0===_instances.length){
9075return null;
9076}
9077return _instances[0];
9078}
9079function factory(target,instance,handlers,preferredHandler){
9080var handler='inline',content;
9081var currentHandlers=$.extend({},handlers);
9082if(preferredHandler&&currentHandlers[preferredHandler]){
9083content=currentHandlers[preferredHandler](target,instance);
9084handler=preferredHandler;
9085}else{
9086$.each(['inline','iframe'],function(i,name){
9087delete currentHandlers[name];
9088currentHandlers[name]=handlers[name];
9089});
9090$.each(currentHandlers,function(name,currentHandler){
9091if(!currentHandler){
9092return true;
9093}
9094if(
9095currentHandler.test&&
9096!currentHandler.test(target,instance)
9097){
9098return true;
9099}
9100content=currentHandler(target,instance);
9101if(false!==content){
9102handler=name;
9103return false;
9104}
9105});
9106}
9107return{handler:handler,content:content||''};
9108}
9109function Lity(target,options,opener,activeElement){
9110var self=this;
9111var result;
9112var isReady=false;
9113var isClosed=false;
9114var element;
9115var content;
9116options=$.extend(
9117{},
9118_defaultOptions,
9119options
9120);
9121element=$(options.template);
9122self.element=function(){
9123return element;
9124};
9125self.opener=function(){
9126return opener;
9127};
9128self.content=function(){
9129return content;
9130};
9131self.options=$.proxy(settings,self,options);
9132self.handlers=$.proxy(settings,self,options.handlers);
9133self.resize=function(){
9134if(!isReady||isClosed){
9135return;
9136}
9137content
9138.css('max-height',winHeight()+'px')
9139.trigger('lity:resize',[self])
9140;
9141};
9142self.close=function(){
9143if(isClosed){
9144return;
9145}
9146isClosed=true;
9147removeInstance(self);
9148var deferred=_deferred();
9149if(
9150activeElement&&
9151(
9152document.activeElement===element[0]||
9153$.contains(element[0],document.activeElement)
9154)
9155){
9156try{
9157activeElement.focus();
9158}catch(e){
9159}
9160}
9161var trigerable=(content?content:element);
9162trigerable.trigger('lity:close',[self]);
9163element
9164.removeClass('lity-opened')
9165.addClass('lity-closed')
9166;
9167transitionEnd(trigerable.add(element))
9168.always(function(){
9169trigerable.trigger('lity:remove',[self]);
9170element.remove();
9171element=undefined;
9172deferred.resolve();
9173})
9174;
9175return deferred.promise();
9176};
9177result=factory(target,self,options.handlers,options.handler);
9178element
9179.attr(_attrAriaHidden,'false')
9180.addClass('lity-loading lity-opened lity-'+result.handler)
9181.appendTo('body')
9182.focus()
9183.on('click','[data-lity-close]',function(e){
9184if($(e.target).is('[data-lity-close]')){
9185self.close();
9186}
9187})
9188.trigger('lity:open',[self])
9189;
9190registerInstance(self);
9191$.when(result.content)
9192.always(ready)
9193;
9194function ready(result){
9195if(isClosed){
9196return;
9197}
9198content=$(result)
9199.css('max-height',winHeight()+'px')
9200;
9201element
9202.find('.lity-loader')
9203.each(function(){
9204var loader=$(this);
9205transitionEnd(loader)
9206.always(function(){
9207loader.remove();
9208})
9209;
9210})
9211;
9212element
9213.removeClass('lity-loading')
9214.find('.lity-content')
9215.empty()
9216.append(content)
9217;
9218isReady=true;
9219content
9220.trigger('lity:ready',[self])
9221;
9222}
9223}
9224function lity(target,options,opener){
9225if(!target.preventDefault){
9226opener=$(opener);
9227}else{
9228target.preventDefault();
9229opener=$(this);
9230target=opener.data('lity-target')||opener.attr('href')||opener.attr('src');
9231}
9232var instance=new Lity(
9233target,
9234$.extend(
9235{},
9236opener.data('lity-options')||opener.data('lity'),
9237options
9238),
9239opener,
9240document.activeElement
9241);
9242if(!target.preventDefault){
9243return instance;
9244}
9245}
9246lity.version='3.0.0-dev';
9247lity.options=$.proxy(settings,lity,_defaultOptions);
9248lity.handlers=$.proxy(settings,lity,_defaultOptions.handlers);
9249lity.current=currentInstance;
9250lity.iframe=iframe;
9251$(document).on('click.lity','[data-lity]',lity);
9252return lity;
9253}));
9254
9255
9256/* plugins-dist/mediabox/lity/js/lity.mediabox.js?1790239979 */
9257;
9258(function($){
9259var litySpip={
9260nameSpace:'mediabox',
9261config:{
9262forceFocusInside:true,
9263},
9264strings:{
9265},
9266callbacks:{
9267onOpen:[],
9268onShow:[],
9269onClose:[]
9270},
9271focusedItem:[],
9272isTransition:false,
9273adjustHeight:function(instance){
9274var $content=instance.content();
9275var $containerHeight=instance.element().find('.lity-container').height();
9276if($containerHeight){
9277var h=Math.round($containerHeight)+'px';
9278$content
9279.css('max-height',h)
9280.find('[data-'+litySpip.nameSpace+'-force-max-height]')
9281.css('max-height',h);
9282}
9283},
9284template:function(cfg,type,groupName,groupPosition,groupLength){
9285var className='';
9286if(!!cfg.className){
9287className=' '+cfg.className;
9288}
9289if(cfg.transitionOnOpen){
9290className+=' lity-transition-on-open-'+cfg.transitionOnOpen;
9291}
9292if(!!cfg.noTransition){
9293className+=' lity-no-transition';
9294}
9295if(!!cfg.slideShow){
9296className+=' lity-slideshow';
9297}
9298var styles=[];
9299var styles_container='';
9300var styles_content='';
9301if(cfg.sideBar){
9302className+=' lity-sidebar lity-sidebar-'+cfg.sideBar;
9303if(cfg.sideBar==='start'||cfg.sideBar==='end'){
9304className+=' lity-sidebar-inline';
9305cfg.height='100vh';
9306cfg.maxHeight='100vh';
9307}
9308if(cfg.sideBar==='top'||cfg.sideBar==='bottom'){
9309className+=' lity-sidebar-block';
9310cfg.width='100vw';
9311cfg.maxWidth='100vw';
9312}
9313}
9314if(cfg.maxWidth){
9315styles.push("max-width:"+cfg.maxWidth.replace("%","vw"));
9316}
9317if(cfg.maxHeight){
9318styles.push("max-height:"+cfg.maxHeight.replace("%","vh"));
9319}
9320if(cfg.width){
9321styles.push("width:"+cfg.width.replace("%","vw"));
9322className+=' lity-width-set';
9323}
9324if(cfg.height){
9325styles.push("height:"+cfg.height.replace("%","vh"));
9326className+=' lity-height-set';
9327if(cfg.minHeight){
9328styles.push("min-height:"+cfg.minHeight.replace("%","vh"));
9329}
9330}
9331if(styles.length){
9332styles_container=' style="'+styles.join(';')+'"';
9333}
9334styles=[];
9335var max;
9336if(cfg.minWidth){
9337max=(cfg.maxWidth?cfg.maxWidth.replace("%","vw"):'95vw');
9338styles.push("min-width:min("+max+","+cfg.minWidth.replace("%","vw")+')');
9339}
9340if(cfg.minHeight&&!cfg.height){
9341max=(cfg.maxHeight?cfg.maxHeight.replace("%","vw"):'95vh');
9342styles.push("min-height:min("+max+","+cfg.minHeight.replace("%","vh")+')');
9343}
9344if(styles.length){
9345styles_content=' style="'+styles.join(';')+'"';
9346}
9347var button_next_prev='',
9348button_start_stop='',
9349group_info_text='',
9350group_info='';
9351if(groupName&&groupLength){
9352if(groupLength>1){
9353var newPosition=(groupPosition<=0?groupLength-1:groupPosition-1);
9354button_next_prev+='<button class="lity-previous" type="button" data-group-name="'+groupName+'" data-group-position="'+newPosition+'" aria-label="'+litySpip.strings.previous+'" data-lity-previous'
9355+'><b title="'+litySpip.strings.previous+'">❮</b></button>';
9356newPosition=(groupPosition>=groupLength-1?0:groupPosition+1);
9357button_next_prev+='<button class="lity-next" type="button" data-group-name="'+groupName+'" data-group-position="'+newPosition+'"  aria-label="'+litySpip.strings.next+'" data-lity-next'
9358+'><b title="'+litySpip.strings.next+'">❯</b></button>';
9359}
9360group_info_text=" "+litySpip.strings.current;
9361group_info_text=group_info_text.replace('{current}',(groupPosition+1)+'');
9362group_info_text=group_info_text.replace('{total}',groupLength+'');
9363button_start_stop+='<button class="lity-start-stop" type="button" data-lity-stop-start>'
9364+'<b class="lity-start" aria-label="'+litySpip.strings.slideshowStart+'" title="'+litySpip.strings.slideshowStart+'">▶</b>'
9365+'<b class="lity-stop" aria-label="'+litySpip.strings.slideshowStop+'" title="'+litySpip.strings.slideshowStop+'">□</b>'
9366+'</button>';
9367group_info='<div class="lity-group-caption">'
9368+'<span class="lity-group-start-stop">'+button_start_stop+'</span>'
9369+'<span class="lity-group-current">'+group_info_text+'</span>'
9370+'<span class="lity-group-next-prev">'+button_next_prev+'</span>'
9371+'<span class="lity-group-progress-bar"><span class="lity-group-progress-bar-status" style="width:0"></span></span>'
9372+'</div>';
9373}
9374var close_button_aria_label=litySpip.strings.close+' ('+litySpip.strings.press_escape+')';
9375var dialog_title=(type==='image'?litySpip.strings.dialog_title_med:litySpip.strings.dialog_title_def);
9376dialog_title+=group_info_text+' ('+litySpip.strings.press_escape+')';
9377var t=
9378'<dialog class="box_mediabox box_modalbox lity'+className+'" role="dialog" aria-label="'+dialog_title+'" tabindex="-1">'
9379+'<div class="lity-wrap"'+(cfg.overlayClose===false?'':' data-lity-close')+' role="document">'
9380+'<div class="lity-loader" aria-hidden="true" aria-label="'+litySpip.strings.loading+'"><span class="box-loading"></span></div>'
9381+'<div class="lity-container"'+styles_container+'>'
9382+'<button class="lity-close" type="button" aria-label="'+close_button_aria_label+'" data-lity-close><b data-lity-close title="'+litySpip.strings.close+'">&times;</b></button>'
9383+'<div class="lity-content"'+styles_content+'></div>'
9384+group_info
9385+'</div>'
9386+'</div>'
9387+'</dialog>';
9388return t;
9389},
9390failHandler:function(target,instance){
9391return'<div class="error lity-error">Failed loading content</div>';
9392},
9393ajaxHandler:function(target,instance){
9394var selector,
9395off=target.indexOf(" ");
9396if(off>-1){
9397selector=target.slice(off);
9398selector=selector.match(/[^\x20\t\r\n\f]+/g)||[];
9399selector=selector.join(" ");
9400target=target.slice(0,off);
9401}
9402if(jQuery.spip.preloaded_urls[target]){
9403var content=jQuery.spip.preloaded_urls[target];
9404if(selector){
9405content=$("<div>").append($.parseHTML(content)).find(selector);
9406}
9407return $('<div class="lity-content-inner"></div>').append(content);
9408}
9409var _deferred=$.Deferred;
9410var deferred=_deferred();
9411var failed=function(){
9412deferred.reject($('<span class="error lity-error"></span>').append('Failed loading ajax'));
9413};
9414$.get(target)
9415.done(function(content){
9416jQuery.spip.preloaded_urls[target]=content;
9417if(selector){
9418content=$("<div>").append($.parseHTML(content)).find(selector);
9419}
9420deferred.resolve($('<div class="lity-content-inner"></div>').append(content));
9421})
9422.fail(failed);
9423return deferred.promise();
9424},
9425imageBuildContent:function(img,desc,longdesc,defaultCaptionClass){
9426img.attr('alt',desc?desc:'');
9427desc=(longdesc?longdesc:desc);
9428if(desc){
9429defaultCaptionClass=(defaultCaptionClass?defaultCaptionClass:'expanded');
9430var id='lity-image-caption-'+Date.now().toString(36)+Math.random().toString(36).substr(2);
9431img.attr('aria-describedby',id);
9432img=$('<figure class="lity-image-figure"></figure>').append(img).append('<figcaption id="'+id+'" class="lity-image-caption '+defaultCaptionClass+'"><div class="lity-image-caption-text">'+desc+'</div></figcaption>');
9433}
9434else{
9435img=$('<figure class="lity-image-figure"></figure>').append(img);
9436}
9437return img;
9438},
9439imageHandler:function(target,instance){
9440var _deferred=$.Deferred;
9441var desc='';
9442var longdesc='';
9443var defaultCaptionClass=(instance.options().defaultCaptionState==='min'?'min':'expanded');
9444var opener=instance.opener();
9445if(opener){
9446desc=opener.attr('title')||$('img[alt]',opener).eq(0).attr('alt')||'';
9447var by=opener.attr('aria-describedby')||$('img[aria-describedby]',opener).eq(0).attr('aria-describedby')||'';
9448if(by){
9449longdesc=$('#'+by).html();
9450longdesc=longdesc.trim();
9451}
9452if(!desc){
9453desc=desc||instance.opener().attr('aria-label')||'';
9454}
9455desc=desc.trim();
9456}
9457var img;
9458var cache=opener.data('lity-image-cache')||{};
9459if(cache[target]){
9460img=cache[target];
9461img=litySpip.imageBuildContent(img,desc,longdesc,defaultCaptionClass);
9462return img;
9463}
9464img=$('<img src="'+target+'" class="lity-image-img" data-'+litySpip.nameSpace+'-force-max-height />');
9465var deferred=_deferred();
9466var failed=function(){
9467deferred.reject($('<span class="error lity-error"></span>').append('Failed loading image'));
9468};
9469img
9470.on('load',function(){
9471if(this.naturalWidth===0){
9472img.attr("style","width:25vw;");
9473}
9474cache[target]=img;
9475opener.data('lity-image-cache',cache);
9476deferred.resolve(litySpip.imageBuildContent(img,desc,longdesc,defaultCaptionClass));
9477})
9478.on('error',failed)
9479;
9480return deferred.promise();
9481},
9482groupElements:function(groupName){
9483return $('.lity-enabled[data-'+litySpip.nameSpace+'-group'+'='+groupName+']');
9484},
9485eventSet:{},
9486setEvents:function(what){
9487if(!litySpip.eventSet[what]){
9488switch(what){
9489case'opener':
9490$(document).on('click','.lity-enabled',litySpip.onClickOpener);
9491break;
9492case'listener':
9493$(document).on('click','.lity-previous,.lity-next',litySpip.onPrevNext);
9494$(document).on('click','.lity-start-stop',litySpip.onSlideShowToggle);
9495$(window).on('keyup',litySpip.onKeyUp);
9496$(document).on('click','.lity-image-caption',litySpip.onCaptionToggle);
9497break;
9498}
9499litySpip.eventSet[what]=true;
9500}
9501},
9502onKeyUp:function(event){
9503var c={37:"previous",39:"next"}[event.keyCode];
9504if(c){
9505var current=lity.current();
9506if(current){
9507jQuery('.lity-'+c,current.element()).trigger('click');
9508}
9509}
9510},
9511onCaptionToggle:function(event){
9512var $caption=$(this);
9513$caption.toggleClass('min expanded');
9514},
9515openerFromPrevNext($button){
9516var groupName=$button.data('group-name');
9517var groupPosition=$button.data('group-position');
9518return litySpip.groupElements(groupName).eq(groupPosition);
9519},
9520onPrevNext:function(event){
9521var $button=$(this);
9522var newEl=litySpip.openerFromPrevNext($button);
9523if(newEl){
9524var element=lity.current().element();
9525litySpip.isTransition={oldClosed:false,newOpened:true};
9526element.addClass('lity-no-transition').css('visibility','hidden');
9527litySpip.slideshowStop(element);
9528var options={transitionOnOpen:$button.is('.lity-next')?'slide-from-right':'slide-from-left'};
9529if(element.is('.lity-slideshow')){
9530options.slideShow=true;
9531}
9532lity.current().close();
9533litySpip.elementOpener(newEl,options);
9534}
9535},
9536slideshowStart:function(element){
9537var $progress=element.find('.lity-group-progress-bar-status');
9538$progress.attr('style','');
9539$progress.css('width','100%');
9540var delay=litySpip.config.slideshowSpeed;
9541setTimeout(function(){
9542$progress.css('transition','width '+((delay-200)/1000)+'s linear');
9543$progress.css('width','0');
9544},200);
9545timer=setTimeout(function(){element.find('.lity-next').trigger('click')},delay);
9546element.data('lity-timer',timer);
9547$('.lity-start',element).attr('aria-hidden','true');
9548$('.lity-stop',element).attr('aria-hidden','false');
9549jQuery('.lity-start-stop',element).focus();
9550},
9551slideshowStop:function(element){
9552timer=element.data('lity-timer');
9553if(timer){
9554clearTimeout(timer);
9555}
9556},
9557onSlideShowToggle:function(event){
9558var $button=$(this);
9559var element=$button.closest('.lity');
9560var slideShowState=(element.is('.lity-slideshow')?true:false);
9561var timer;
9562if(!slideShowState){
9563litySpip.slideshowStart(element);
9564}
9565else{
9566litySpip.slideshowStop(element);
9567$('.lity-start',element).attr('aria-hidden','false');
9568$('.lity-stop',element).attr('aria-hidden','true');
9569}
9570element.toggleClass('lity-slideshow');
9571},
9572onClickOpener:function(event){
9573event.preventDefault();
9574var opener=$(this);
9575litySpip.elementOpener(opener);
9576},
9577elementOpener:function(opener,options){
9578var cfg=opener.data('mediabox-options');
9579if(options){
9580cfg=$.extend({},cfg,options);
9581}
9582var target=opener.data('href-popin')||opener.data('href')||opener.attr('href')||opener.attr('src');
9583litySpip.lityOpener(target,cfg,opener.get(0));
9584},
9585lityOpener:function(target,cfg,opener){
9586litySpip.setEvents('listener');
9587if(!litySpip.isTransition){
9588litySpip.callbacks.onOpen.push(cfg.onOpen||false);
9589litySpip.callbacks.onShow.push(cfg.onShow||false);
9590litySpip.callbacks.onClose.push(cfg.onClose||false);
9591litySpip.focusedItem.push($(document.activeElement));
9592}
9593var type=cfg.type||'';
9594if(!type&&opener){
9595type=$(opener).data(litySpip.nameSpace+'-type')||'';
9596}
9597var handlers=lity.handlers();
9598if(type==='ajax'){
9599handlers.ajax=litySpip.ajaxHandler;
9600}
9601handlers.image=litySpip.imageHandler;
9602if(type==='inline'){
9603var el=[];
9604try{
9605el=$(target);
9606}catch(e){
9607el=[];
9608}
9609if(!el.length){
9610handlers.inline=litySpip.failHandler;
9611}
9612}
9613cfg=$.extend({handlers:handlers},cfg);
9614if(type&&['image','inline','ajax','iframe'].indexOf(type)!==-1){
9615cfg.handler=type;
9616}
9617if(opener&&typeof($.parseMediaboxOptions)!=="undefined"){
9618cfg=$.extend(cfg,$.parseMediaboxOptions(litySpip.nameSpace,opener));
9619}
9620if(!!cfg.preloadOnly){
9621litySpip.lityPreLoader(target,cfg,opener);
9622}
9623else{
9624var groupPosition=0;
9625var groupLength=0;
9626if(opener){
9627var groupName=cfg.rel||(opener?$(opener).data(litySpip.nameSpace+'-group'):'');
9628if(groupName){
9629var elements=litySpip.groupElements(groupName);
9630groupPosition=elements.index($(opener));
9631groupLength=elements.length;
9632}
9633}
9634cfg=$.extend({template:litySpip.template(cfg,type,groupName,groupPosition,groupLength)},cfg);
9635if(cfg.samePopin){
9636var l=lity.current();
9637if(l){
9638l.close();
9639}
9640}
9641lity(target,cfg,opener);
9642}
9643},
9644lityPreLoader:function(target,cfg,opener){
9645if(cfg.handler&&cfg.handlers[cfg.handler]){
9646if(cfg.handler==='image'||cfg.handler==='ajax'){
9647var instance={
9648opener:function(){return $(opener);},
9649options:function(){return cfg}
9650};
9651var content=cfg.handlers[cfg.handler](target,instance);
9652}
9653}
9654},
9655ajaxReloadElements:function(elements){
9656const targets=elements
9657.split(',')
9658.map(s=>s.trim())
9659.filter(Boolean);
9660targets.forEach(function(target){
9661try{
9662if(/^[.#[]/.test(target)){
9663const $element=$(target);
9664if($element.length){
9665$element.ajaxReload();
9666}
9667}else{
9668ajaxReload(target);
9669}
9670}catch(e){
9671console.warn("Mediabox ajaxReloadElements : erreur lors du traitement de '"+target+"'.",e);
9672}
9673});
9674}
9675}
9676jQuery.fn.extend({
9677mediabox:function(options){
9678var cfg=$.extend({},litySpip.config,options);
9679if(this===jQuery.fn){
9680var href=cfg.href||"";
9681litySpip.lityOpener(href,cfg,null);
9682return this;
9683}else{
9684if(cfg.rel){
9685this.attr('data-'+litySpip.nameSpace+'-group',cfg.rel);
9686}
9687else{
9688this.each(function(){
9689var rel=$(this).attr('rel');
9690if(rel){
9691$(this).attr('data-'+litySpip.nameSpace+'-group',rel);
9692}
9693});
9694}
9695litySpip.setEvents('opener');
9696this
9697.data('mediabox-options',cfg)
9698.addClass('lity-enabled');
9699(cfg.preload?this:this.filter('[data-'+litySpip.nameSpace+'-preload]')).each(function(){
9700litySpip.elementOpener($(this),{preloadOnly:true});
9701});
9702return this;
9703}
9704},
9705mediaboxClose:function(){
9706var $current=lity.current();
9707if($current){
9708$current.close();
9709return true;
9710}
9711return false;
9712}
9713});
9714var initConfig=function(){
9715var b=typeof(mediabox_settings)=='object'?mediabox_settings:{};
9716litySpip.nameSpace=b.ns?b.ns:'mediabox';
9717litySpip.strings.slideshowStart=b.str_ssStart;
9718litySpip.strings.slideshowStop=b.str_ssStop;
9719litySpip.strings.current=b.str_cur;
9720litySpip.strings.previous=b.str_prev;
9721litySpip.strings.next=b.str_next;
9722litySpip.strings.close=b.str_close;
9723litySpip.strings.loading=b.str_loading;
9724litySpip.strings.press_escape=b.str_petc;
9725litySpip.strings.dialog_title_def=b.str_dialTitDef;
9726litySpip.strings.dialog_title_med=b.str_dialTitMed;
9727litySpip.config.slideshowSpeed=(b.lity.slideshow_speed?b.lity.slideshow_speed:5000);
9728litySpip.config.defaultCaptionState=(b.lity.defaultCaptionState?b.lity.defaultCaptionState:'expanded');
9729var styles={
9730'container':'',
9731'content':'',
9732};
9733var max;
9734if(b.lity.minWidth){
9735max=(b.lity.maxWidth?b.lity.maxWidth.replace('%','vw'):'95vw');
9736styles.content+="min-width:min("+max+","+b.lity.minWidth.replace('%','vw')+');';
9737}
9738if(b.lity.maxWidth){
9739styles.container+="max-width:"+b.lity.maxWidth.replace('%','vw')+';';
9740}
9741if(b.lity.minHeight){
9742max=(b.lity.maxHeight?b.lity.maxHeight.replace('%','vw'):'95vh');
9743styles.content+="min-height:min("+max+","+b.lity.minHeight.replace('%','vh')+');';
9744}
9745if(b.lity.maxHeight){
9746styles.container+="max-height:"+b.lity.maxHeight.replace('%','vh')+';';
9747}
9748var insert='';
9749for(let key in styles){
9750if(styles[key]){
9751insert+='.box_mediabox .lity-'+key+'{'+styles[key]+'}';
9752}
9753}
9754if(b.lity.opacite){
9755insert+='.box_mediabox:before{opacity:'+b.lity.opacite+'}';
9756}
9757if(insert){
9758$('head').append($('<style type="text/css">'+insert+'</style>'));
9759}
9760$(document).on('lity:open',function(event,instance){
9761if(document.fullscreenElement){
9762document.fullscreenElement.appendChild(instance.element().get(0));
9763}
9764if(!instance.element().is('.lity-slideshow')){
9765jQuery('.lity-close',instance.element()).focus();
9766}
9767if(!litySpip.isTransition){
9768var callback=litySpip.callbacks.onOpen.pop();
9769if(callback){
9770callback(event,instance);
9771}
9772}
9773});
9774$(document).on('lity:ready',function(event,instance){
9775litySpip.adjustHeight(instance);
9776if(jQuery.spip){
9777jQuery.spip.triggerAjaxLoad(instance.element().get(0))
9778}
9779if(instance.element().addClass('lity-ready').is('.lity-slideshow')){
9780litySpip.slideshowStart(instance.element());
9781}
9782if(!litySpip.isTransition){
9783var callback=litySpip.callbacks.onShow.pop();
9784if(callback){
9785callback(event,instance);
9786}
9787}
9788else{
9789litySpip.isTransition.newOpened=true;
9790if(litySpip.isTransition.oldClosed){
9791litySpip.isTransition=false;
9792}
9793instance.content().trigger('lity:resize',[instance]);
9794}
9795var $next=instance.element().find('.lity-next');
9796if($next.length){
9797$next=litySpip.openerFromPrevNext($next);
9798if($next){
9799litySpip.elementOpener($next,{preloadOnly:true});
9800}
9801}
9802});
9803$(document).on('lity:close',function(event,instance){
9804if(!litySpip.isTransition){
9805if(litySpip.callbacks.onShow.length>litySpip.callbacks.onOpen.length){
9806litySpip.callbacks.onShow.pop();
9807}
9808var callback=litySpip.callbacks.onClose.pop();
9809if(callback){
9810callback(event,instance);
9811}
9812let options=instance.options();
9813let ajaxReloadArgs=options.ajaxReloadOnClose;
9814if(ajaxReloadArgs&&typeof(ajaxReloadArgs)==='string'){
9815litySpip.ajaxReloadElements(ajaxReloadArgs);
9816}
9817}
9818});
9819$(document).on('lity:remove',function(event,instance){
9820if(!litySpip.isTransition){
9821var focused=litySpip.focusedItem.pop();
9822if(focused){
9823try{
9824focused.focus();
9825}catch(e){
9826}
9827}
9828}
9829else{
9830litySpip.isTransition.oldClosed=true;
9831if(litySpip.isTransition.newOpened){
9832litySpip.isTransition=false;
9833}
9834}
9835});
9836$(document).on('lity:resize',function(event,instance){
9837litySpip.adjustHeight(instance);
9838});
9839}
9840initConfig();
9841})(jQuery);
9842
9843
9844/* plugins-dist/mediabox/javascript/spip.mediabox.js?1790239979 */
9845(function($){
9846$.mediabox
9847=function(options){
9848if(typeof(mediabox_autodetect_href)=='function'
9849&&options.href
9850&&!options.type){
9851options.type=mediabox_autodetect_href(options.href);
9852}
9853$.fn.mediabox(options);
9854};
9855$.modalboxload=$.modalbox=function(href,options){$.mediabox($.extend({href:href,overlayClose:true},options));};
9856$.modalboxclose=$.mediaboxClose=$.fn.mediaboxClose;
9857$.parseMediaboxOptions=function(nameSpace,opener){
9858var options={};
9859var data2options={
9860"width":"width",
9861"height":"height",
9862"min-width":"minWidth",
9863"min-height":"minHeight",
9864"max-width":"maxWidth",
9865"max-height":"maxHeight",
9866"caption-state":"defaultCaptionState",
9867"sidebar":"sideBar",
9868"class":"className",
9869"ajaxreload-on-close":"ajaxReloadOnClose",
9870};
9871var v;
9872for(var o in data2options){
9873v=($(opener).data(nameSpace+'-'+o)||'');
9874if(v){
9875options[data2options[o]]=v;
9876}
9877}
9878if(!options.length){
9879var eltclass=$(opener).prop('class');
9880if(eltclass){
9881if(eltclass.indexOf("boxWidth-")!==-1){
9882var w=eltclass.match(/boxWidth-([^\s'">]*)/);
9883w=w[1].replace(/pc/,'%');
9884options["width"]=w;
9885}
9886if(eltclass.indexOf("boxHeight-")!==-1){
9887var h=eltclass.match(/boxHeight-([^\s'">]*)/);
9888h=h[1].replace(/pc/,'%');
9889options["height"]=h;
9890}
9891if(eltclass.indexOf("boxIframe")!==-1){
9892options["type"]='iframe';
9893}
9894if(eltclass.indexOf("boxInline")!==-1){
9895options["type"]='inline';
9896}
9897}
9898}
9899data2options={"same-popin":"samePopin","type":"type"};
9900for(var o in data2options){
9901v=($(opener).data(nameSpace+'-'+o)||'');
9902if(v){
9903options[data2options[o]]=v;
9904}
9905}
9906return options;
9907}
9908})(jQuery);
9909var mediaboxInit=function(){
9910var b=$.extend({},mediabox_settings);
9911if(b.ns!=='box'){
9912$('[data-box-type]').each(function(i,e){
9913var $e=$(e);
9914var d=$e.attr('data-box-type');
9915$e.removeAttr('data-box-type').attr('data-'+b.ns+'-type',d);
9916});
9917}
9918if(b.auto_detect){
9919var $popins=$('[data-href-popin],[data-'+b.ns+'-type]'+(window.var_zajax_content?',[data-var_zajax],a.popin':''))
9920.add(b.sel_c)
9921.not(ajaxbloc_selecteur,'.ajaxbloc','.hasbox');
9922$popins.each(function(i,e){
9923var $e=$(e);
9924var url=$e.attr('href')||"./";
9925var popin=$e.attr('data-href-popin');
9926var type=$e.attr('data-'+b.ns+'-type')||'';
9927if(!popin){
9928var env=$e.attr('data-ajax-env');
9929if(env){
9930url=parametre_url(parametre_url(url,'var_ajax',1),'var_ajax_env',env)
9931$e.removeAttr('data-ajax-env');
9932type='ajax';
9933}
9934var za=$e.attr('data-var_zajax');
9935if(za!==undefined||$e.hasClass('popin')){
9936if(za==='content'&&window.var_zajax_content){
9937za=window.var_zajax_content;
9938}
9939url=parametre_url(url,'var_zajax',za||window.var_zajax_content);
9940$e.removeAttr('data-var_zajax');
9941type='ajax';
9942}
9943if((url!==$e.attr('href')||(!popin&&type))&&url!=="./"){
9944$e.attr('data-href-popin',url);
9945}
9946}
9947url=popin||url;
9948if(!type){
9949var attrs=$e.data();
9950var types=['inline','html','iframe','image','ajax'];
9951types.some(function(e){
9952var k=b.ns+e.charAt(0).toUpperCase()+e.slice(1);
9953if(attrs[k]){
9954type=e;
9955return true;
9956}
9957});
9958}
9959if(!type&&typeof(mediabox_autodetect_href)=='function'){
9960type=mediabox_autodetect_href(url);
9961}
9962if(!type||$e.hasClass('boxIframe')){
9963type="iframe";
9964$e.removeClass('boxIframe');
9965}
9966$e.attr('data-'+b.ns+'-type',type);
9967});
9968}
9969if(b.sel_g){
9970var $items=$();
9971$(b.sel_g).each(function(i,e){
9972$items=$items.add(
9973$(this).is('a[type^=\'image\']')
9974?$(this)
9975:$(this).find('a[type^=\'image\']')
9976);
9977});
9978$items
9979.not('.hasbox')
9980.removeAttr('onclick')
9981.mediabox({rel:'galerieauto',slideshow:true,slideshowAuto:false,type:'image'})
9982.addClass('hasbox');
9983}
9984if(b.tt_img){
9985$('a[type^="image"],a[href$=".png"],a[href$=".jpg"],a[href$=".jpeg"],a[href$=".svg"],a[href$=".webp"]')
9986.not('.hasbox')
9987.removeAttr('onclick')
9988.mediabox({type:'image'})
9989.addClass('hasbox')
9990;
9991}
9992$(b.sel_c)
9993.not('.hasbox')
9994.mediabox()
9995.addClass('hasbox')
9996;
9997$('[data-href-popin]',this)
9998.not('.hasbox')
9999.click(function(){if($.modalbox)$.modalbox($(this).attr('data-href-popin'),$.parseMediaboxOptions(b.ns,this));return false;})
10000.addClass('hasbox');
10001};
10002(function($){
10003if(typeof onAjaxLoad=='function')onAjaxLoad(mediaboxInit);
10004$(mediaboxInit);
10005})(jQuery);
10006function mediabox_autodetect_href(href,options){
10007options=$.extend({
10008breakMode:true,
10009tests:{
10010image:/\.(gif|png|jp(e|g|eg)|bmp|ico|webp|jxr|svg)((#|\?).*)?$/i,
10011inline:/^[#.]\w/,
10012html:/^\s*<[\w!][^<]*>/,
10013ajax:/((\?|&(amp;)?)var_z?ajax=|cache-ajaxload\/)/i,
10014iframe:/^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,}))\.?)(?::\d{2,5})?(?:[/?#]\S*)?$/i,
10015},
10016},options);
10017var matched=options.breakMode?false:[];
10018$.each(options.tests,function(type,regex){
10019if(href.match(regex)&&!href.match('/File:[^/]+(\\#|[?]|$)')){
10020if(options.breakMode){
10021matched=type;
10022return false;
10023}else{
10024matched.push(type);
10025}
10026}
10027});
10028return matched;
10029};
10030
10031
10032/* plugins/auto/saisies/v6.3.8/javascript/saisies.js?1790240014 */
10033jQuery(function(){
10034saisies_fieldset_pliable();
10035saisies_fieldset_onglet();
10036saisies_multi_novalidate();
10037SaisiesDateJourMoisAnnee.init();
10038onAjaxLoad(saisies_fieldset_pliable);
10039onAjaxLoad(saisies_fieldset_onglet);
10040onAjaxLoad(saisies_multi_novalidate);
10041onAjaxLoad(saisies_date_jour_mois_annee);
10042});
10043function saisies_fieldset_pliable(){
10044jQuery('.fieldset.pliable')
10045.each(function(){
10046var fieldset=jQuery(this);
10047var groupe=jQuery(this).find('> .editer-groupe');
10048var legend=jQuery(this).find('> legend');
10049if(fieldset.find('.erreur').length>0){
10050fieldset.removeClass('plie');
10051}
10052if(fieldset.is('.plie'))
10053groupe.hide();
10054legend
10055.unbind('click')
10056.click(
10057function(){
10058fieldset.toggleClass('plie');
10059if(groupe.is(':hidden'))
10060groupe.show();
10061else
10062groupe.hide();
10063}
10064);
10065});
10066};
10067function saisies_fieldset_onglet(){
10068var classes={
10069wrapper_horizontal:'saisies-onglets',
10070wrapper_vertical:'saisies-onglets saisies-onglets-verticaux',
10071tablist:'saisies-menu-onglets',
10072tablist_items:'saisies-menu-onglets__items',
10073tablist_item:'saisies-menu-onglets__item',
10074tablist_link:'saisies-menu-onglets__lien',
10075active:'actif',
10076error:'erreur',
10077scrollable:'scrollable',
10078tabscontents:'saisies-contenus-onglets',
10079tabcontent:'saisies-contenu-onglet afficher_si_sans_visuel',
10080}
10081var selecteur_fieldset='.fieldset.fieldset_onglet:not(.pliable)';
10082var storage=window.sessionStorage;
10083var init=function(){
10084$.each(collections_fieldsets(),function(i,$fieldsets){
10085classes.wrapper=classes.wrapper_horizontal;
10086$fieldsets.each(function(){
10087if($(this).hasClass('fieldset_onglet_vertical')){
10088classes.wrapper=classes.wrapper_vertical;
10089return false;
10090}
10091});
10092var
10093$conteneur=$('<div class="'+classes.wrapper+'"></div>'),
10094$menu=$('<nav class="'+classes.tablist+'"><ul class="'+classes.tablist_items+'" role="tablist"></ul></nav>'),
10095$contenus=$('<div class="'+classes.tabscontents+'"></div>'),
10096ids_contenus=[],
10097$first_fieldset=$fieldsets.first(),
10098id_menu=null;
10099$conteneur.append($contenus).insertBefore($first_fieldset);
10100$fieldsets.each(function(){
10101var
10102$contenu=$(this),
10103id_persistant=$contenu.attr('id')||$contenu.attr('data-id'),
10104afficher_si=$contenu.attr('data-afficher_si')||'true',
10105id_contenu=id_persistant||randomId(),
10106id_onglet='onglet-'+id_contenu;
10107$contenu
10108.attr('id',id_contenu)
10109.addClass(classes.tabcontent)
10110.attr('role','tabpanel')
10111.attr('aria-labelledby',id_onglet)
10112.attr('data-saisies-onglet',true)
10113.hide().attr('hidden','')
10114.appendTo($contenus);
10115var titre=$contenu.find('legend').first().hide().text();
10116var $onglet=$('<li class="'+classes.tablist_item+'"><a class="'+classes.tablist_link+'" href="#'+id_contenu+'" id="'+id_onglet+'" aria-controls="'+id_contenu+'" role="tab" aria-selected="false" tabindex="-1">'+titre+'</a></li>');
10117var autoriser_changement=false;
10118$onglet
10119.attr('data-afficher_si',afficher_si)
10120.click(function(){
10121var sibling_active=$(this).siblings().has('.'+classes.active);
10122sibling_active.each(function(){
10123var onglet_reference=$(this).find('a').attr('href');
10124autoriser_changement=container_reportValidity(onglet_reference);
10125});
10126if(!sibling_active.length){
10127autoriser_changement=true;
10128}
10129if(autoriser_changement){
10130activer_onglet($(this).find('.'+classes.tablist_link));
10131}
10132return false;
10133});
10134$onglet.on('afficher_si_masque_pre',function(){
10135$this_onglet=$(this);
10136$lien=$this_onglet.children('a');
10137if($lien.attr('aria-selected')=='true'){
10138$nouvel_onglet=$this_onglet.siblings().not('.afficher_si_masque').first().children('a')
10139desactiver_onglet($lien);
10140activer_onglet($nouvel_onglet);
10141}
10142});
10143$onglet.on('afficher_si_visible_post',function(){
10144$voisins=$(this).siblings().not('.afficher_si_masque');
10145if(!$voisins.length){
10146activer_onglet($onglet.children('a'));
10147}
10148});
10149if(id_persistant){
10150ids_contenus.push(id_persistant);
10151}
10152if($contenu.find('.editer.erreur').length){
10153$onglet.children('a').addClass(classes.error);
10154}
10155$menu.find('.'+classes.tablist_items).append($onglet);
10156});
10157if(ids_contenus.length===$fieldsets.length){
10158id_menu='onglets-'+hashCode(ids_contenus.join(''));
10159$menu.attr('data-id',id_menu);
10160}
10161$menu.prependTo($conteneur);
10162if($menu[0].scrollWidth>$menu[0].clientWidth){
10163$menu.addClass(classes.scrollable);
10164}
10165var $onglet_defaut;
10166if($('.'+classes.tablist_link+'.'+classes.error).length>0){
10167$onglet_defaut=$menu.find('.'+classes.tablist_link+'.'+classes.error).first();
10168}else if(storage.getItem(id_menu)!==null&&$('#'+escapeId(storage.getItem(id_menu))).length>0){
10169$onglet_defaut=$('#'+escapeId(storage.getItem(id_menu)));
10170}else{
10171$onglet_defaut=$menu.find('.'+classes.tablist_link).first();
10172}
10173activer_onglet($onglet_defaut,0,false);
10174});
10175$('.'+classes.tabscontents+' [name]').on('invalid',function(){
10176$(this).parents('form').find('.'+classes.tabscontents).each(function(){
10177var id_fieldset='#'+$(this).find('> fieldset:invalid').first().attr('id');
10178var $onglet=$('a[href="'+id_fieldset+'"]');
10179activer_onglet($onglet);
10180});
10181});
10182}
10183var collections_fieldsets=function(){
10184var collections=[];
10185$(selecteur_fieldset).each(function(){
10186$fieldsets_niveau=$(this).add($(this).nextUntil(':not('+selecteur_fieldset+')')),
10187parsed=$(this).data('saisies-onglet-parsed')||false;
10188if(!parsed){
10189collections.push($fieldsets_niveau);
10190$fieldsets_niveau.each(function(){
10191$(this).data('saisies-onglet-parsed',true);
10192});
10193}
10194});
10195return collections;
10196}
10197var activer_onglet=function($onglet,duree=150,persistant=true){
10198$onglet_actuel=$onglet.parent().siblings().has('.'+classes.active).find('.'+classes.tablist_link);
10199desactiver_onglet($onglet_actuel);
10200if($onglet.length){
10201var $contenu=$(escapeId($onglet.attr('href')));
10202$onglet.addClass(classes.active).attr('aria-selected',true).removeAttr('tabindex');
10203$contenu.fadeIn(duree).removeAttr('hidden');
10204var id_menu=$onglet.parents('.'+classes.tablist).attr('data-id')||null;
10205if(persistant&&id_menu){
10206storage.setItem(id_menu,$onglet.attr('id'));
10207}
10208}
10209}
10210var desactiver_onglet=function($onglet,duree=150){
10211if($onglet.length){
10212var $contenu=$(escapeId($onglet.attr('href')));
10213$onglet.removeClass(classes.active).attr('aria-selected',false).attr('tabindex',-1);
10214$contenu.hide().attr('hidden','');
10215}
10216}
10217var escapeId=function(id){
10218id=(id||'').replace(/[^\d\w_\-\#]/gi,'\\$&');
10219return id;
10220}
10221var randomId=function(taille=8){
10222var random=(Math.random()+1).toString(36);
10223return random.substring(random.length-taille);
10224}
10225var hashCode=function(s){
10226for(var i=0,h=0;i<s.length;i++)
10227h=Math.imul(31,h)+s.charCodeAt(i)|0;
10228return Math.abs(h);
10229}
10230var container_reportValidity=function(selector){
10231var retour=true;
10232$(selector).find('[name]').each(function(){
10233let champ=$(this).get(0);
10234if(typeof champ.reportValidity==='function'){
10235retour=retour&&champ.reportValidity();
10236}
10237});
10238return retour;
10239}
10240init();
10241}
10242function saisies_date_jour_mois_annee_changer_date(me,datetime){
10243var champ=jQuery(me);
10244var li=champ.closest('.editer');
10245var jour=jQuery.trim(li.find('.date_jour').val());
10246var mois=jQuery.trim(li.find('.date_mois').val());
10247var annee=jQuery.trim(li.find('.date_annee').val());
10248var date=jQuery.trim(li.find('.datetime').val());
10249while(jour.length<2){jour='0'+jour;}
10250while(mois.length<2){mois='0'+mois;}
10251while(annee.length<4){annee='0'+annee;}
10252if(datetime=='oui'){
10253heure=date.substring(10);
10254if(!heure||!(heure.length==9)){
10255heure=' 00:00:00';
10256}
10257date=annee+'-'+mois+'-'+jour+heure;
10258}
10259else{
10260date=annee+'-'+mois+'-'+jour;
10261}
10262li.find('.datetime').attr('value',date);
10263}
10264class SaisiesDateJourMoisAnnee{
10265constructor(container){
10266this.container=container;
10267this.dateWrapper=container.querySelector('[data-composant="date"]');
10268this.dateInput=container.querySelector('[data-composant-input="date"]');
10269this.jourInput=container.querySelector('[data-composant-input="jour"]');
10270this.moisInput=container.querySelector('[data-composant-input="mois"]');
10271this.anneeInput=container.querySelector('[data-composant-input="annee"]');
10272this.jourWrapper=container.querySelector('[data-composant="jour"]');
10273this.moisWrapper=container.querySelector('[data-composant="mois"]');
10274this.anneeWrapper=container.querySelector('[data-composant="annee"]');
10275this.resetBtn=container.querySelector('.btn_reset');
10276this.format=this.dateInput.dataset.format||'datetime';
10277}
10278static init(){
10279document.querySelectorAll('.saisie_date_jour_mois_annee .composants-date.mode-jour-mois-annee').forEach(container=>{
10280if(container.hasAttribute('data-saisies-initialized'))return;
10281const instance=new SaisiesDateJourMoisAnnee(container);
10282instance.setup();
10283instance.sync();
10284});
10285}
10286setup(){
10287this.container.setAttribute('data-saisies-initialized','true');
10288this.dateInput.type='hidden';
10289this.dateWrapper.classList.add('saisies-visually-hidden');
10290[this.jourInput,this.moisInput,this.anneeInput].forEach((input)=>{
10291const wrapper=input.closest('[data-composant]');
10292wrapper.removeAttribute('hidden');
10293wrapper.style.removeProperty('display');
10294if(input.dataset.disabled!=='true'){
10295input.removeAttribute('disabled');
10296}
10297});
10298this.resetBtn.style.removeProperty('display');
10299this.resetBtn.removeAttribute('hidden');
10300}
10301sync(){
10302const updateDateValue=()=>{
10303const jour=this.jourInput.hasAttribute('disabled')?'':this.jourInput.value.trim();
10304const mois=this.moisInput.hasAttribute('disabled')?'':this.moisInput.value.trim();
10305const annee=this.anneeInput.hasAttribute('disabled')?'':this.anneeInput.value.trim();
10306const allEmpty=!jour&&!mois&&!annee;
10307if(allEmpty){
10308this.dateInput.value='';
10309return;
10310}
10311const j=jour?jour.padStart(2,'0'):'01';
10312const m=mois?mois.padStart(2,'0'):'01';
10313const a=annee?annee.padStart(4,'0'):'0000';
10314let value=`${a}-${m}-${j}`;
10315if(this.format==='datetime'){
10316value+=' 00:00:00';
10317}
10318this.dateInput.value=value;
10319this.dateInput.dispatchEvent(new Event('change',{bubbles:true}));
10320};
10321[this.jourInput,this.moisInput,this.anneeInput].forEach(input=>{
10322input.addEventListener('input',updateDateValue);
10323});
10324if(this.resetBtn){
10325this.resetBtn.addEventListener('click',(e)=>{
10326e.preventDefault();
10327[this.jourInput,this.moisInput,this.anneeInput].forEach(input=>{
10328if(
10329!input.hasAttribute('readonly')
10330&&!input.hasAttribute('disabled')
10331&&input.dataset.readonly!=='true'
10332&&input.dataset.disabled!=='true'
10333){
10334input.value='';
10335}
10336});
10337updateDateValue();
10338});
10339}
10340updateDateValue();
10341}
10342}
10343function saisies_date_jour_mois_annee(){
10344SaisiesDateJourMoisAnnee.init();
10345}
10346function saisies_multi_novalidate(){
10347$('[name^="_retour_etape"],[name="aller_a_etape"]').click(function(){
10348$(this).parents('form').attr('novalidate','novalidate');
10349});
10350}
10351
10352
10353/* plugins/auto/saisies/v6.3.8/javascript/saisies_textarea_counter.js?1790240014 */
10354
10355var Scampi=Scampi||{};
10356Scampi.textareaCounter=function textareaCounter(){
10357var textAreaFields=document.querySelectorAll("textarea[maxlength]");
10358var stepPolite=100;
10359var stepAssertive=20;
10360Array.prototype.forEach.call(textAreaFields,function(textarea){
10361var idTextarea=textarea.id;
10362if(!document.querySelector("#"+idTextarea+"-counter")){
10363var maxLength=textarea.getAttribute("maxlength");
10364var messageLength=textarea.value.length;
10365var activeValue=countRest(maxLength,messageLength);
10366textarea.setAttribute("aria-describedby",idTextarea+"-counter");
10367textarea.insertAdjacentHTML("afterend","<p class='textarea-counter' id='"+idTextarea+"-counter'><span class='textarea-counter-nb'>"+activeValue+"</span> "+saisies_caracteres_restants+"</p>");
10368textarea.addEventListener("input",handleInput);
10369textarea.addEventListener("keypress",handleInput);
10370}
10371});
10372function handleInput(evt){
10373textarea=evt.target;
10374paragraph=textarea.nextElementSibling;
10375updateValue(textarea,paragraph);
10376}
10377function countRest(maxlength,messageLength){
10378return maxlength-messageLength;
10379}
10380function countStepPolite(maxLengthValue){
10381return maxLengthValue-stepPolite;
10382}
10383function countStepAssertive(maxLengthValue){
10384return maxLengthValue-stepAssertive;
10385}
10386function updateAria(maxLengthValue,messageLength,paragraph){
10387politeFlag=countStepPolite(maxLengthValue);
10388assertiveFlag=countStepAssertive(maxLengthValue);
10389if(messageLength<politeFlag){
10390paragraph.removeAttribute("aria-live");
10391paragraph.removeAttribute("aria-atomic");
10392}
10393else if(messageLength>=politeFlag&&messageLength<assertiveFlag){
10394paragraph.setAttribute("aria-live","polite");
10395paragraph.setAttribute("aria-atomic","true");
10396}
10397else if(messageLength>=assertiveFlag){
10398paragraph.setAttribute("aria-live","assertive");
10399paragraph.setAttribute("aria-atomic","true");
10400}
10401}
10402function updateValue(textarea,paragraph){
10403var maxLength=textarea.getAttribute("maxlength");
10404var messageLength=textarea.value.length;
10405var counter=paragraph.querySelector(".textarea-counter-nb")
10406counter.innerText=countRest(maxLength,messageLength);
10407updateAria(maxLength,messageLength,paragraph);
10408}
10409}
10410jQuery(function(){
10411Scampi.textareaCounter();
10412onAjaxLoad(Scampi.textareaCounter);
10413});
10414
10415
10416/* plugins/auto/saisies/v6.3.8/javascript/saisies_afficher_si.js?1790240014 */
10417$(function(){
10418afficher_si_init();
10419onAjaxLoad(afficher_si_init);
10420});
10421afficher_si_current_data='';
10422function afficher_si_init(){
10423$('form:not([data-afficher_si-init])').each(function(){
10424form=$(this);
10425if(this.hasAttribute('data-resume_etapes_futures')){
10426var resume_etapes_futures=this.getAttribute('data-resume_etapes_futures');
10427}else{
10428var resume_etapes_futures='';
10429}
10430let conteneur_extra='';
10431let react=[form];
10432if(this.hasAttribute('data-afficher_si_conteneur_extra')){
10433conteneur_extra=this.getAttribute('data-afficher_si_conteneur_extra');
10434react.push($(conteneur_extra));
10435}
10436if($(this).find('[data-afficher_si]').length!==0||resume_etapes_futures||conteneur_extra){
10437form.find('.formulaire_spip__etapes').each(function(){
10438$(this).css('min-height',$(this).height());
10439});
10440afficher_si_init_chemin_etapes(form);
10441afficher_si_set_current_data(form);
10442react.forEach(function(r){
10443r.find('[data-afficher_si]').each(function(){
10444condition=verifier_afficher_si($(this),true);
10445animer_afficher_si($(this),condition,true);
10446});
10447});
10448afficher_si_set_etapes_presentation_courante(form);
10449afficher_si_set_etape_suivante(form);
10450$(this).find('textarea, input, select').each(function(){
10451var name=$(this).attr('name');
10452if(name){
10453name=afficher_si_normaliser_name(name);
10454if(
10455form.find('[data-afficher_si*=\''+name+'\']').length
10456||resume_etapes_futures.includes(name)
10457||$(conteneur_extra).find('[data-afficher_si*=\''+name+'\']').length
10458){
10459$(this).on('input change',function(){
10460afficher_si_onchange($(this));
10461});
10462}
10463}
10464}
10465);
10466$(this).attr('data-afficher_si-init',true);
10467}
10468})
10469}
10470function afficher_si_normaliser_name(name){
10471var name=name.replace('[]','');
10472var name=name.replace('_choix_alternatif','');
10473return name;
10474}
10475function afficher_si_onchange($champ){
10476if(name=$champ.attr('name')){
10477var form=$champ.parents('form');
10478let react=[form];
10479if(form.attr('data-afficher_si_conteneur_extra')){
10480conteneur_extra=form.attr('data-afficher_si_conteneur_extra');
10481react.push($(conteneur_extra));
10482}
10483var name=afficher_si_normaliser_name(name);
10484afficher_si_set_current_data(form);
10485react.forEach(function(r){
10486r.find('[data-afficher_si*=\''+name+'\']').each(function(){
10487condition=verifier_afficher_si($(this));
10488animer_afficher_si($(this),condition);
10489})
10490});
10491afficher_si_set_etapes_presentation_courante(form,name);
10492afficher_si_set_etape_suivante(form,name);
10493}
10494}
10495function afficher_si_set_current_data(form){
10496current_data=form.serializeArray();
10497afficher_si_current_data=[];
10498$(current_data).each(function(){
10499if(this.name.includes('[]')){
10500this.name=this.name.replace('[]','');
10501if(Array.isArray(afficher_si_current_data[this.name])){
10502afficher_si_current_data[this.name].push(this.value)
10503}else{
10504afficher_si_current_data[this.name]=[this.value];
10505}
10506}else{
10507afficher_si_current_data[this.name]=this.value;
10508}
10509if(afficher_si_current_data[this.name]==='@choix_alternatif'){
10510afficher_si_current_data[this.name]=form.find('[name = "'+this.name+'_choix_alternatif'+'"]').val();
10511afficher_si_current_data[this.name+':choix_alternatif']=true;
10512}else{
10513afficher_si_current_data[this.name+':choix_alternatif']=false;
10514}
10515});
10516}
10517function verifier_afficher_si(saisie,chargement=false){
10518let condition=saisie.attr('data-afficher_si');
10519condition=eval(condition);
10520if(
10521chargement
10522&&!condition
10523&&(saisie.hasClass('erreur')||$('.erreur',saisie).length)
10524&&!saisie.hasClass('saisies-menu-onglets__item')
10525&&!saisie.hasClass('saisies-contenu-onglet')
10526){
10527console.log('Attention : saisies masquée par afficher_si avec une erreur...'+saisie.attr('data-id'));
10528return true;
10529}
10530return condition
10531}
10532function animer_afficher_si(saisie,condition,chargement){
10533if(condition){
10534if(!saisie.hasClass('afficher_si_visible')){
10535saisie.trigger('afficher_si_visible_pre');
10536saisie.removeClass('afficher_si_masque_chargement').removeClass('afficher_si_masque').addClass('afficher_si_visible').removeAttr('aria-hiden');
10537if(!saisie.hasClass('afficher_si_sans_visuel')){
10538afficher_si_show(saisie);
10539}
10540afficher_si_restaure_validation(saisie);
10541saisie.trigger('afficher_si_visible_post');
10542}
10543}else{
10544if(!saisie.hasClass('afficher_si_masque')){
10545saisie.trigger('afficher_si_masque_pre');
10546if(!saisie.hasClass('afficher_si_sans_visuel')){
10547afficher_si_hide(saisie);
10548}
10549if(chargement){
10550saisie.addClass('afficher_si_masque_chargement');
10551}
10552saisie.addClass('afficher_si_masque').removeClass('afficher_si_visible').attr('aria-hiden',true);
10553afficher_si_disable_validation(saisie);
10554saisie.trigger('afficher_si_masque_post');
10555}
10556}
10557}
10558function afficher_si_disable_validation($saisie){
10559for(attribut of afficher_si_validation_attributs){
10560if(attribut in afficher_si_validation_attributs_valeurs){
10561var selecteur=afficher_si_validation_attributs_valeurs[attribut].map((x)=>'['+attribut+'='+x+']').join(', ');
10562}else{
10563var selecteur='['+attribut+']';
10564}
10565var enfants=$saisie.find(selecteur);
10566enfants.each(function(){
10567$(this).attr('data-afficher_si-'+attribut,$(this).attr(attribut)).attr(attribut,null);
10568});
10569}
10570}
10571function afficher_si_restaure_validation($saisie){
10572for(attribut of afficher_si_validation_attributs){
10573var enfants=$saisie.find('[data-afficher_si-'+attribut+']');
10574enfants.each(function(){
10575if($(this).parents('.afficher_si_masque').length==0){
10576$(this).attr(attribut,$(this).attr('data-afficher_si-'+attribut)).attr('data-afficher_si-'+attribut,null);
10577}
10578});
10579}
10580}
10581var afficher_si_validation_attributs=[
10582'required',
10583'minlength',
10584'maxlength',
10585'min',
10586'max',
10587'type',
10588'step',
10589'pattern'
10590];
10591var afficher_si_validation_attributs_valeurs={'type':['email','url']};
10592function afficher_si(args){
10593if(afficher_si_current_data.hasOwnProperty(args['champ'])){
10594valeur_champ=afficher_si_current_data[args['champ']];
10595}else{
10596valeur_champ='';
10597}
10598valeur=args['valeur'];
10599if(!('modificateur'in args)){
10600args['modificateur']={'fonction':''};
10601}
10602if(
10603Array.isArray(valeur_champ)
10604&&(args['modificateur']['fonction']!=='total')
10605){
10606if(args['operateur']=='=='){
10607args['operateur']='IN';
10608}else if(args['operateur']=='!='){
10609args['operateur']='!IN';
10610}
10611}
10612if(args['modificateur']['fonction']==='total'){
10613if(Array.isArray(valeur_champ)){
10614valeur_champ=valeur_champ.length;
10615}else{
10616valeur_champ=0;
10617}
10618}
10619if(args['modificateur']['fonction']==='substr'){
10620if(args['modificateur']['arguments'][1]){
10621valeur_champ=valeur_champ.substr(args['modificateur']['arguments'][0],args['modificateur']['arguments'][1]);
10622}else{
10623valeur_champ=valeur_champ.substr(args['modificateur']['arguments'][0]);
10624}
10625}
10626if(args['operateur']=='IN'||args['operateur']=='!IN'){
10627valeur=valeur.split(',');
10628if(!Array.isArray(valeur_champ)){
10629if(valeur_champ){
10630valeur_champ=[valeur_champ];
10631}else{
10632valeur_champ=[];
10633}
10634}
10635}
10636if(['<','<=','>=','>'].includes(args['operateur'])){
10637valeur=Number(valeur);
10638valeur_champ=Number(valeur_champ);
10639}
10640switch(args['operateur']){
10641case'==':
10642return valeur_champ==valeur;
10643case'!=':
10644return valeur_champ!=valeur;
10645case'>':
10646return valeur_champ>valeur;
10647case'>=':
10648return valeur_champ>=valeur;
10649case'<':
10650return valeur_champ<valeur;
10651case'<=':
10652return valeur_champ<=valeur;
10653case'MATCH':
10654return RegExp(valeur,args.regexp_modif).test(valeur_champ);
10655case'!MATCH':
10656return!RegExp(valeur,args.regexp_modif).test(valeur_champ);
10657case'IN':
10658return $(valeur).filter(valeur_champ).length?true:false;
10659case'!IN':
10660return $(valeur).filter(valeur_champ).length?false:true;
10661default:
10662return valeur_champ?true:false;
10663}
10664}
10665function afficher_si_set_etapes_presentation_courante(form,name=''){
10666var etapes=afficher_si_parse_data_etapes_futures(form);
10667if(!etapes){
10668return;
10669}
10670form.find('[data-etapes_max]').each(function(){
10671var etape_total=$(this).attr('data-etapes_max');
10672for(etape in etapes){
10673var condition=etapes[etape]['afficher_si']??'true';
10674if(!name||condition.includes(name)){
10675$(this).attr('data-'+etape,eval(condition));
10676}
10677if(condition&&!eval($(this).attr('data-'+etape))){
10678etape_total--;
10679}
10680}
10681$(this).find('.formulaire_spip_etape__total').text(etape_total);
10682});
10683}
10684function afficher_si_set_etape_suivante(form,name){
10685var etapes=afficher_si_parse_data_etapes_futures(form);
10686if(!etapes){
10687return;
10688}
10689var label_enregistrer=form.find('button.submit_suivant').attr('data-label_enregistrer');
10690var titre_retenu=label_enregistrer;
10691for(etape in etapes){
10692var afficher_si_etape=etapes[etape]['afficher_si']??'true';
10693if(eval(afficher_si_etape)){
10694titre_retenu=etapes[etape]['label'];
10695break;
10696}
10697}
10698form.find('button.submit_suivant').each(function(){
10699var $span=$(this).find('.btn__label');
10700if(!$(this).attr('data-modele')){
10701$(this).attr('data-modele',$span.html());
10702}
10703if(titre_retenu==label_enregistrer){
10704$span.html(titre_retenu);
10705}else{
10706$span.html($(this).attr('data-modele'));
10707$span.find('.titre-etape').html(titre_retenu);
10708}
10709});
10710}
10711function afficher_si_init_chemin_etapes(form){
10712var etapes=afficher_si_parse_data_etapes_futures(form);
10713if(!etapes){
10714return;
10715}
10716for(etape in etapes){
10717var afficher_si_etape=etapes[etape]['afficher_si']??'';
10718if(afficher_si_etape){
10719form.find('.etapes__item.'+etape).attr('data-afficher_si',afficher_si_etape).addClass('afficher_si_sans_visuel');
10720}
10721}
10722}
10723function afficher_si_parse_data_etapes_futures(form){
10724var data=form.attr('data-resume_etapes_futures');
10725if(!data){
10726return;
10727}
10728var etapes=JSON.parse(data);
10729return etapes;
10730}
10731
10732

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.