Index: trunk/extensions/AdManager/jquery-1.4.2.min.js |
— | — | @@ -1,471 +0,0 @@ |
2 | | - |
3 | | -(function(window,undefined){var jQuery=function(selector,context){return new jQuery.fn.init(selector,context);},_jQuery=window.jQuery,_$=window.$,document=window.document,rootjQuery,quickExpr=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/,rnotwhite=/\S/,rtrim=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,rsingleTag=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,userAgent=navigator.userAgent,browserMatch,readyBound=false,readyList=[],DOMContentLoaded,toString=Object.prototype.toString,hasOwnProperty=Object.prototype.hasOwnProperty,push=Array.prototype.push,slice=Array.prototype.slice,indexOf=Array.prototype.indexOf;jQuery.fn=jQuery.prototype={init:function(selector,context){var match,elem,ret,doc;if(!selector){return this;} |
4 | | -if(selector.nodeType){this.context=this[0]=selector;this.length=1;return this;} |
5 | | -if(selector==="body"&&!context){this.context=document;this[0]=document.body;this.selector="body";this.length=1;return this;} |
6 | | -if(typeof selector==="string"){match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]){doc=(context?context.ownerDocument||context:document);ret=rsingleTag.exec(selector);if(ret){if(jQuery.isPlainObject(context)){selector=[document.createElement(ret[1])];jQuery.fn.attr.call(selector,context,true);}else{selector=[doc.createElement(ret[1])];}}else{ret=buildFragment([match[1]],[doc]);selector=(ret.cacheable?ret.fragment.cloneNode(true):ret.fragment).childNodes;} |
7 | | -return jQuery.merge(this,selector);}else{elem=document.getElementById(match[2]);if(elem){if(elem.id!==match[2]){return rootjQuery.find(selector);} |
8 | | -this.length=1;this[0]=elem;} |
9 | | -this.context=document;this.selector=selector;return this;}}else if(!context&&/^\w+$/.test(selector)){this.selector=selector;this.context=document;selector=document.getElementsByTagName(selector);return jQuery.merge(this,selector);}else if(!context||context.jquery){return(context||rootjQuery).find(selector);}else{return jQuery(context).find(selector);}}else if(jQuery.isFunction(selector)){return rootjQuery.ready(selector);} |
10 | | -if(selector.selector!==undefined){this.selector=selector.selector;this.context=selector.context;} |
11 | | -return jQuery.makeArray(selector,this);},selector:"",jquery:"1.4.2",length:0,size:function(){return this.length;},toArray:function(){return slice.call(this,0);},get:function(num){return num==null?this.toArray():(num<0?this.slice(num)[0]:this[num]);},pushStack:function(elems,name,selector){var ret=jQuery();if(jQuery.isArray(elems)){push.apply(ret,elems);}else{jQuery.merge(ret,elems);} |
12 | | -ret.prevObject=this;ret.context=this.context;if(name==="find"){ret.selector=this.selector+(this.selector?" ":"")+selector;}else if(name){ret.selector=this.selector+"."+name+"("+selector+")";} |
13 | | -return ret;},each:function(callback,args){return jQuery.each(this,callback,args);},ready:function(fn){jQuery.bindReady();if(jQuery.isReady){fn.call(document,jQuery);}else if(readyList){readyList.push(fn);} |
14 | | -return this;},eq:function(i){return i===-1?this.slice(i):this.slice(i,+i+1);},first:function(){return this.eq(0);},last:function(){return this.eq(-1);},slice:function(){return this.pushStack(slice.apply(this,arguments),"slice",slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},end:function(){return this.prevObject||jQuery(null);},push:push,sort:[].sort,splice:[].splice};jQuery.fn.init.prototype=jQuery.fn;jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options,name,src,copy;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;} |
15 | | -if(typeof target!=="object"&&!jQuery.isFunction(target)){target={};} |
16 | | -if(length===i){target=this;--i;} |
17 | | -for(;i<length;i++){if((options=arguments[i])!=null){for(name in options){src=target[name];copy=options[name];if(target===copy){continue;} |
18 | | -if(deep&©&&(jQuery.isPlainObject(copy)||jQuery.isArray(copy))){var clone=src&&(jQuery.isPlainObject(src)||jQuery.isArray(src))?src:jQuery.isArray(copy)?[]:{};target[name]=jQuery.extend(deep,clone,copy);}else if(copy!==undefined){target[name]=copy;}}}} |
19 | | -return target;};jQuery.extend({noConflict:function(deep){window.$=_$;if(deep){window.jQuery=_jQuery;} |
20 | | -return jQuery;},isReady:false,ready:function(){if(!jQuery.isReady){if(!document.body){return setTimeout(jQuery.ready,13);} |
21 | | -jQuery.isReady=true;if(readyList){var fn,i=0;while((fn=readyList[i++])){fn.call(document,jQuery);} |
22 | | -readyList=null;} |
23 | | -if(jQuery.fn.triggerHandler){jQuery(document).triggerHandler("ready");}}},bindReady:function(){if(readyBound){return;} |
24 | | -readyBound=true;if(document.readyState==="complete"){return jQuery.ready();} |
25 | | -if(document.addEventListener){document.addEventListener("DOMContentLoaded",DOMContentLoaded,false);window.addEventListener("load",jQuery.ready,false);}else if(document.attachEvent){document.attachEvent("onreadystatechange",DOMContentLoaded);window.attachEvent("onload",jQuery.ready);var toplevel=false;try{toplevel=window.frameElement==null;}catch(e){} |
26 | | -if(document.documentElement.doScroll&&toplevel){doScrollCheck();}}},isFunction:function(obj){return toString.call(obj)==="[object Function]";},isArray:function(obj){return toString.call(obj)==="[object Array]";},isPlainObject:function(obj){if(!obj||toString.call(obj)!=="[object Object]"||obj.nodeType||obj.setInterval){return false;} |
27 | | -if(obj.constructor&&!hasOwnProperty.call(obj,"constructor")&&!hasOwnProperty.call(obj.constructor.prototype,"isPrototypeOf")){return false;} |
28 | | -var key;for(key in obj){} |
29 | | -return key===undefined||hasOwnProperty.call(obj,key);},isEmptyObject:function(obj){for(var name in obj){return false;} |
30 | | -return true;},error:function(msg){throw msg;},parseJSON:function(data){if(typeof data!=="string"||!data){return null;} |
31 | | -data=jQuery.trim(data);if(/^[\],:{}\s]*$/.test(data.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){return window.JSON&&window.JSON.parse?window.JSON.parse(data):(new Function("return "+data))();}else{jQuery.error("Invalid JSON: "+data);}},noop:function(){},globalEval:function(data){if(data&&rnotwhite.test(data)){var head=document.getElementsByTagName("head")[0]||document.documentElement,script=document.createElement("script");script.type="text/javascript";if(jQuery.support.scriptEval){script.appendChild(document.createTextNode(data));}else{script.text=data;} |
32 | | -head.insertBefore(script,head.firstChild);head.removeChild(script);}},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()===name.toUpperCase();},each:function(object,callback,args){var name,i=0,length=object.length,isObj=length===undefined||jQuery.isFunction(object);if(args){if(isObj){for(name in object){if(callback.apply(object[name],args)===false){break;}}}else{for(;i<length;){if(callback.apply(object[i++],args)===false){break;}}}}else{if(isObj){for(name in object){if(callback.call(object[name],name,object[name])===false){break;}}}else{for(var value=object[0];i<length&&callback.call(value,i,value)!==false;value=object[++i]){}}} |
33 | | -return object;},trim:function(text){return(text||"").replace(rtrim,"");},makeArray:function(array,results){var ret=results||[];if(array!=null){if(array.length==null||typeof array==="string"||jQuery.isFunction(array)||(typeof array!=="function"&&array.setInterval)){push.call(ret,array);}else{jQuery.merge(ret,array);}} |
34 | | -return ret;},inArray:function(elem,array){if(array.indexOf){return array.indexOf(elem);} |
35 | | -for(var i=0,length=array.length;i<length;i++){if(array[i]===elem){return i;}} |
36 | | -return-1;},merge:function(first,second){var i=first.length,j=0;if(typeof second.length==="number"){for(var l=second.length;j<l;j++){first[i++]=second[j];}}else{while(second[j]!==undefined){first[i++]=second[j++];}} |
37 | | -first.length=i;return first;},grep:function(elems,callback,inv){var ret=[];for(var i=0,length=elems.length;i<length;i++){if(!inv!==!callback(elems[i],i)){ret.push(elems[i]);}} |
38 | | -return ret;},map:function(elems,callback,arg){var ret=[],value;for(var i=0,length=elems.length;i<length;i++){value=callback(elems[i],i,arg);if(value!=null){ret[ret.length]=value;}} |
39 | | -return ret.concat.apply([],ret);},guid:1,proxy:function(fn,proxy,thisObject){if(arguments.length===2){if(typeof proxy==="string"){thisObject=fn;fn=thisObject[proxy];proxy=undefined;}else if(proxy&&!jQuery.isFunction(proxy)){thisObject=proxy;proxy=undefined;}} |
40 | | -if(!proxy&&fn){proxy=function(){return fn.apply(thisObject||this,arguments);};} |
41 | | -if(fn){proxy.guid=fn.guid=fn.guid||proxy.guid||jQuery.guid++;} |
42 | | -return proxy;},uaMatch:function(ua){ua=ua.toLowerCase();var match=/(webkit)[ \/]([\w.]+)/.exec(ua)||/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(ua)||/(msie) ([\w.]+)/.exec(ua)||!/compatible/.test(ua)&&/(mozilla)(?:.*? rv:([\w.]+))?/.exec(ua)||[];return{browser:match[1]||"",version:match[2]||"0"};},browser:{}});browserMatch=jQuery.uaMatch(userAgent);if(browserMatch.browser){jQuery.browser[browserMatch.browser]=true;jQuery.browser.version=browserMatch.version;} |
43 | | -if(jQuery.browser.webkit){jQuery.browser.safari=true;} |
44 | | -if(indexOf){jQuery.inArray=function(elem,array){return indexOf.call(array,elem);};} |
45 | | -rootjQuery=jQuery(document);if(document.addEventListener){DOMContentLoaded=function(){document.removeEventListener("DOMContentLoaded",DOMContentLoaded,false);jQuery.ready();};}else if(document.attachEvent){DOMContentLoaded=function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",DOMContentLoaded);jQuery.ready();}};} |
46 | | -function doScrollCheck(){if(jQuery.isReady){return;} |
47 | | -try{document.documentElement.doScroll("left");}catch(error){setTimeout(doScrollCheck,1);return;} |
48 | | -jQuery.ready();} |
49 | | -function evalScript(i,elem){if(elem.src){jQuery.ajax({url:elem.src,async:false,dataType:"script"});}else{jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");} |
50 | | -if(elem.parentNode){elem.parentNode.removeChild(elem);}} |
51 | | -function access(elems,key,value,exec,fn,pass){var length=elems.length;if(typeof key==="object"){for(var k in key){access(elems,k,key[k],exec,fn,value);} |
52 | | -return elems;} |
53 | | -if(value!==undefined){exec=!pass&&exec&&jQuery.isFunction(value);for(var i=0;i<length;i++){fn(elems[i],key,exec?value.call(elems[i],i,fn(elems[i],key)):value,pass);} |
54 | | -return elems;} |
55 | | -return length?fn(elems[0],key):undefined;} |
56 | | -function now(){return(new Date).getTime();} |
57 | | -(function(){jQuery.support={};var root=document.documentElement,script=document.createElement("script"),div=document.createElement("div"),id="script"+now();div.style.display="none";div.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";var all=div.getElementsByTagName("*"),a=div.getElementsByTagName("a")[0];if(!all||!all.length||!a){return;} |
58 | | -jQuery.support={leadingWhitespace:div.firstChild.nodeType===3,tbody:!div.getElementsByTagName("tbody").length,htmlSerialize:!!div.getElementsByTagName("link").length,style:/red/.test(a.getAttribute("style")),hrefNormalized:a.getAttribute("href")==="/a",opacity:/^0.55$/.test(a.style.opacity),cssFloat:!!a.style.cssFloat,checkOn:div.getElementsByTagName("input")[0].value==="on",optSelected:document.createElement("select").appendChild(document.createElement("option")).selected,parentNode:div.removeChild(div.appendChild(document.createElement("div"))).parentNode===null,deleteExpando:true,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null};script.type="text/javascript";try{script.appendChild(document.createTextNode("window."+id+"=1;"));}catch(e){} |
59 | | -root.insertBefore(script,root.firstChild);if(window[id]){jQuery.support.scriptEval=true;delete window[id];} |
60 | | -try{delete script.test;}catch(e){jQuery.support.deleteExpando=false;} |
61 | | -root.removeChild(script);if(div.attachEvent&&div.fireEvent){div.attachEvent("onclick",function click(){jQuery.support.noCloneEvent=false;div.detachEvent("onclick",click);});div.cloneNode(true).fireEvent("onclick");} |
62 | | -div=document.createElement("div");div.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";var fragment=document.createDocumentFragment();fragment.appendChild(div.firstChild);jQuery.support.checkClone=fragment.cloneNode(true).cloneNode(true).lastChild.checked;jQuery(function(){var div=document.createElement("div");div.style.width=div.style.paddingLeft="1px";document.body.appendChild(div);jQuery.boxModel=jQuery.support.boxModel=div.offsetWidth===2;document.body.removeChild(div).style.display='none';div=null;});var eventSupported=function(eventName){var el=document.createElement("div");eventName="on"+eventName;var isSupported=(eventName in el);if(!isSupported){el.setAttribute(eventName,"return;");isSupported=typeof el[eventName]==="function";} |
63 | | -el=null;return isSupported;};jQuery.support.submitBubbles=eventSupported("submit");jQuery.support.changeBubbles=eventSupported("change");root=script=div=all=a=null;})();jQuery.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},expando:expando,noData:{"embed":true,"object":true,"applet":true},data:function(elem,name,data){if(elem.nodeName&&jQuery.noData[elem.nodeName.toLowerCase()]){return;} |
64 | | -elem=elem==window?windowData:elem;var id=elem[expando],cache=jQuery.cache,thisCache;if(!id&&typeof name==="string"&&data===undefined){return null;} |
65 | | -if(!id){id=++uuid;} |
66 | | -if(typeof name==="object"){elem[expando]=id;thisCache=cache[id]=jQuery.extend(true,{},name);}else if(!cache[id]){elem[expando]=id;cache[id]={};} |
67 | | -thisCache=cache[id];if(data!==undefined){thisCache[name]=data;} |
68 | | -return typeof name==="string"?thisCache[name]:thisCache;},removeData:function(elem,name){if(elem.nodeName&&jQuery.noData[elem.nodeName.toLowerCase()]){return;} |
69 | | -elem=elem==window?windowData:elem;var id=elem[expando],cache=jQuery.cache,thisCache=cache[id];if(name){if(thisCache){delete thisCache[name];if(jQuery.isEmptyObject(thisCache)){jQuery.removeData(elem);}}}else{if(jQuery.support.deleteExpando){delete elem[jQuery.expando];}else if(elem.removeAttribute){elem.removeAttribute(jQuery.expando);} |
70 | | -delete cache[id];}}});jQuery.fn.extend({data:function(key,value){if(typeof key==="undefined"&&this.length){return jQuery.data(this[0]);}else if(typeof key==="object"){return this.each(function(){jQuery.data(this,key);});} |
71 | | -var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length){data=jQuery.data(this[0],key);} |
72 | | -return data===undefined&&parts[1]?this.data(parts[0]):data;}else{return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});}},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});}});jQuery.extend({queue:function(elem,type,data){if(!elem){return;} |
73 | | -type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!data){return q||[];} |
74 | | -if(!q||jQuery.isArray(data)){q=jQuery.data(elem,type,jQuery.makeArray(data));}else{q.push(data);} |
75 | | -return q;},dequeue:function(elem,type){type=type||"fx";var queue=jQuery.queue(elem,type),fn=queue.shift();if(fn==="inprogress"){fn=queue.shift();} |
76 | | -if(fn){if(type==="fx"){queue.unshift("inprogress");} |
77 | | -fn.call(elem,function(){jQuery.dequeue(elem,type);});}}});jQuery.fn.extend({queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";} |
78 | | -if(data===undefined){return jQuery.queue(this[0],type);} |
79 | | -return this.each(function(i,elem){var queue=jQuery.queue(this,type,data);if(type==="fx"&&queue[0]!=="inprogress"){jQuery.dequeue(this,type);}});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});},delay:function(time,type){time=jQuery.fx?jQuery.fx.speeds[time]||time:time;type=type||"fx";return this.queue(type,function(){var elem=this;setTimeout(function(){jQuery.dequeue(elem,type);},time);});},clearQueue:function(type){return this.queue(type||"fx",[]);}});var rclass=/[\n\t]/g,rspace=/\s+/,rreturn=/\r/g,rspecialurl=/href|src|style/,rtype=/(button|input)/i,rfocusable=/(button|input|object|select|textarea)/i,rclickable=/^(a|area)$/i,rradiocheck=/radio|checkbox/;jQuery.fn.extend({attr:function(name,value){return access(this,name,value,true,jQuery.attr);},removeAttr:function(name,fn){return this.each(function(){jQuery.attr(this,name,"");if(this.nodeType===1){this.removeAttribute(name);}});},addClass:function(value){if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this);self.addClass(value.call(this,i,self.attr("class")));});} |
80 | | -if(value&&typeof value==="string"){var classNames=(value||"").split(rspace);for(var i=0,l=this.length;i<l;i++){var elem=this[i];if(elem.nodeType===1){if(!elem.className){elem.className=value;}else{var className=" "+elem.className+" ",setClass=elem.className;for(var c=0,cl=classNames.length;c<cl;c++){if(className.indexOf(" "+classNames[c]+" ")<0){setClass+=" "+classNames[c];}} |
81 | | -elem.className=jQuery.trim(setClass);}}}} |
82 | | -return this;},removeClass:function(value){if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this);self.removeClass(value.call(this,i,self.attr("class")));});} |
83 | | -if((value&&typeof value==="string")||value===undefined){var classNames=(value||"").split(rspace);for(var i=0,l=this.length;i<l;i++){var elem=this[i];if(elem.nodeType===1&&elem.className){if(value){var className=(" "+elem.className+" ").replace(rclass," ");for(var c=0,cl=classNames.length;c<cl;c++){className=className.replace(" "+classNames[c]+" "," ");} |
84 | | -elem.className=jQuery.trim(className);}else{elem.className="";}}}} |
85 | | -return this;},toggleClass:function(value,stateVal){var type=typeof value,isBool=typeof stateVal==="boolean";if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this);self.toggleClass(value.call(this,i,self.attr("class"),stateVal),stateVal);});} |
86 | | -return this.each(function(){if(type==="string"){var className,i=0,self=jQuery(this),state=stateVal,classNames=value.split(rspace);while((className=classNames[i++])){state=isBool?state:!self.hasClass(className);self[state?"addClass":"removeClass"](className);}}else if(type==="undefined"||type==="boolean"){if(this.className){jQuery.data(this,"__className__",this.className);} |
87 | | -this.className=this.className||value===false?"":jQuery.data(this,"__className__")||"";}});},hasClass:function(selector){var className=" "+selector+" ";for(var i=0,l=this.length;i<l;i++){if((" "+this[i].className+" ").replace(rclass," ").indexOf(className)>-1){return true;}} |
88 | | -return false;},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,"option")){return(elem.attributes.value||{}).specified?elem.value:elem.text;} |
89 | | -if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type==="select-one";if(index<0){return null;} |
90 | | -for(var i=one?index:0,max=one?index+1:options.length;i<max;i++){var option=options[i];if(option.selected){value=jQuery(option).val();if(one){return value;} |
91 | | -values.push(value);}} |
92 | | -return values;} |
93 | | -if(rradiocheck.test(elem.type)&&!jQuery.support.checkOn){return elem.getAttribute("value")===null?"on":elem.value;} |
94 | | -return(elem.value||"").replace(rreturn,"");} |
95 | | -return undefined;} |
96 | | -var isFunction=jQuery.isFunction(value);return this.each(function(i){var self=jQuery(this),val=value;if(this.nodeType!==1){return;} |
97 | | -if(isFunction){val=value.call(this,i,self.val());} |
98 | | -if(typeof val==="number"){val+="";} |
99 | | -if(jQuery.isArray(val)&&rradiocheck.test(this.type)){this.checked=jQuery.inArray(self.val(),val)>=0;}else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(val);jQuery("option",this).each(function(){this.selected=jQuery.inArray(jQuery(this).val(),values)>=0;});if(!values.length){this.selectedIndex=-1;}}else{this.value=val;}});}});jQuery.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(elem,name,value,pass){if(!elem||elem.nodeType===3||elem.nodeType===8){return undefined;} |
100 | | -if(pass&&name in jQuery.attrFn){return jQuery(elem)[name](value);} |
101 | | -var notxml=elem.nodeType!==1||!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.nodeType===1){var special=rspecialurl.test(name);if(name==="selected"&&!jQuery.support.optSelected){var parent=elem.parentNode;if(parent){parent.selectedIndex;if(parent.parentNode){parent.parentNode.selectedIndex;}}} |
102 | | -if(name in elem&¬xml&&!special){if(set){if(name==="type"&&rtype.test(elem.nodeName)&&elem.parentNode){jQuery.error("type property can't be changed");} |
103 | | -elem[name]=value;} |
104 | | -if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)){return elem.getAttributeNode(name).nodeValue;} |
105 | | -if(name==="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:rfocusable.test(elem.nodeName)||rclickable.test(elem.nodeName)&&elem.href?0:undefined;} |
106 | | -return elem[name];} |
107 | | -if(!jQuery.support.style&¬xml&&name==="style"){if(set){elem.style.cssText=""+value;} |
108 | | -return elem.style.cssText;} |
109 | | -if(set){elem.setAttribute(name,""+value);} |
110 | | -var attr=!jQuery.support.hrefNormalized&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} |
111 | | -return jQuery.style(elem,name,value);}});var rnamespaces=/\.(.*)$/,fcleanup=function(nm){return nm.replace(/[^\w\s\.\|`]/g,function(ch){return"\\"+ch;});};jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType===3||elem.nodeType===8){return;} |
112 | | -if(elem.setInterval&&(elem!==window&&!elem.frameElement)){elem=window;} |
113 | | -var handleObjIn,handleObj;if(handler.handler){handleObjIn=handler;handler=handleObjIn.handler;} |
114 | | -if(!handler.guid){handler.guid=jQuery.guid++;} |
115 | | -var elemData=jQuery.data(elem);if(!elemData){return;} |
116 | | -var events=elemData.events=elemData.events||{},eventHandle=elemData.handle,eventHandle;if(!eventHandle){elemData.handle=eventHandle=function(){return typeof jQuery!=="undefined"&&!jQuery.event.triggered?jQuery.event.handle.apply(eventHandle.elem,arguments):undefined;};} |
117 | | -eventHandle.elem=elem;types=types.split(" ");var type,i=0,namespaces;while((type=types[i++])){handleObj=handleObjIn?jQuery.extend({},handleObjIn):{handler:handler,data:data};if(type.indexOf(".")>-1){namespaces=type.split(".");type=namespaces.shift();handleObj.namespace=namespaces.slice(0).sort().join(".");}else{namespaces=[];handleObj.namespace="";} |
118 | | -handleObj.type=type;handleObj.guid=handler.guid;var handlers=events[type],special=jQuery.event.special[type]||{};if(!handlers){handlers=events[type]=[];if(!special.setup||special.setup.call(elem,data,namespaces,eventHandle)===false){if(elem.addEventListener){elem.addEventListener(type,eventHandle,false);}else if(elem.attachEvent){elem.attachEvent("on"+type,eventHandle);}}} |
119 | | -if(special.add){special.add.call(elem,handleObj);if(!handleObj.handler.guid){handleObj.handler.guid=handler.guid;}} |
120 | | -handlers.push(handleObj);jQuery.event.global[type]=true;} |
121 | | -elem=null;},global:{},remove:function(elem,types,handler,pos){if(elem.nodeType===3||elem.nodeType===8){return;} |
122 | | -var ret,type,fn,i=0,all,namespaces,namespace,special,eventType,handleObj,origType,elemData=jQuery.data(elem),events=elemData&&elemData.events;if(!elemData||!events){return;} |
123 | | -if(types&&types.type){handler=types.handler;types=types.type;} |
124 | | -if(!types||typeof types==="string"&&types.charAt(0)==="."){types=types||"";for(type in events){jQuery.event.remove(elem,type+types);} |
125 | | -return;} |
126 | | -types=types.split(" ");while((type=types[i++])){origType=type;handleObj=null;all=type.indexOf(".")<0;namespaces=[];if(!all){namespaces=type.split(".");type=namespaces.shift();namespace=new RegExp("(^|\\.)"+ |
127 | | -jQuery.map(namespaces.slice(0).sort(),fcleanup).join("\\.(?:.*\\.)?")+"(\\.|$)")} |
128 | | -eventType=events[type];if(!eventType){continue;} |
129 | | -if(!handler){for(var j=0;j<eventType.length;j++){handleObj=eventType[j];if(all||namespace.test(handleObj.namespace)){jQuery.event.remove(elem,origType,handleObj.handler,j);eventType.splice(j--,1);}} |
130 | | -continue;} |
131 | | -special=jQuery.event.special[type]||{};for(var j=pos||0;j<eventType.length;j++){handleObj=eventType[j];if(handler.guid===handleObj.guid){if(all||namespace.test(handleObj.namespace)){if(pos==null){eventType.splice(j--,1);} |
132 | | -if(special.remove){special.remove.call(elem,handleObj);}} |
133 | | -if(pos!=null){break;}}} |
134 | | -if(eventType.length===0||pos!=null&&eventType.length===1){if(!special.teardown||special.teardown.call(elem,namespaces)===false){removeEvent(elem,type,elemData.handle);} |
135 | | -ret=null;delete events[type];}} |
136 | | -if(jQuery.isEmptyObject(events)){var handle=elemData.handle;if(handle){handle.elem=null;} |
137 | | -delete elemData.events;delete elemData.handle;if(jQuery.isEmptyObject(elemData)){jQuery.removeData(elem);}}},trigger:function(event,data,elem){var type=event.type||event,bubbling=arguments[3];if(!bubbling){event=typeof event==="object"?event[expando]?event:jQuery.extend(jQuery.Event(type),event):jQuery.Event(type);if(type.indexOf("!")>=0){event.type=type=type.slice(0,-1);event.exclusive=true;} |
138 | | -if(!elem){event.stopPropagation();if(jQuery.event.global[type]){jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type]){jQuery.event.trigger(event,data,this.handle.elem);}});}} |
139 | | -if(!elem||elem.nodeType===3||elem.nodeType===8){return undefined;} |
140 | | -event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);} |
141 | | -event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle){handle.apply(elem,data);} |
142 | | -var parent=elem.parentNode||elem.ownerDocument;try{if(!(elem&&elem.nodeName&&jQuery.noData[elem.nodeName.toLowerCase()])){if(elem["on"+type]&&elem["on"+type].apply(elem,data)===false){event.result=false;}}}catch(e){} |
143 | | -if(!event.isPropagationStopped()&&parent){jQuery.event.trigger(event,data,parent,true);}else if(!event.isDefaultPrevented()){var target=event.target,old,isClick=jQuery.nodeName(target,"a")&&type==="click",special=jQuery.event.special[type]||{};if((!special._default||special._default.call(elem,event)===false)&&!isClick&&!(target&&target.nodeName&&jQuery.noData[target.nodeName.toLowerCase()])){try{if(target[type]){old=target["on"+type];if(old){target["on"+type]=null;} |
144 | | -jQuery.event.triggered=true;target[type]();}}catch(e){} |
145 | | -if(old){target["on"+type]=old;} |
146 | | -jQuery.event.triggered=false;}}},handle:function(event){var all,handlers,namespaces,namespace,events;event=arguments[0]=jQuery.event.fix(event||window.event);event.currentTarget=this;all=event.type.indexOf(".")<0&&!event.exclusive;if(!all){namespaces=event.type.split(".");event.type=namespaces.shift();namespace=new RegExp("(^|\\.)"+namespaces.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)");} |
147 | | -var events=jQuery.data(this,"events"),handlers=events[event.type];if(events&&handlers){handlers=handlers.slice(0);for(var j=0,l=handlers.length;j<l;j++){var handleObj=handlers[j];if(all||namespace.test(handleObj.namespace)){event.handler=handleObj.handler;event.data=handleObj.data;event.handleObj=handleObj;var ret=handleObj.handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}} |
148 | | -if(event.isImmediatePropagationStopped()){break;}}}} |
149 | | -return event.result;},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando]){return event;} |
150 | | -var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];} |
151 | | -if(!event.target){event.target=event.srcElement||document;} |
152 | | -if(event.target.nodeType===3){event.target=event.target.parentNode;} |
153 | | -if(!event.relatedTarget&&event.fromElement){event.relatedTarget=event.fromElement===event.target?event.toElement:event.fromElement;} |
154 | | -if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc&&doc.clientLeft||body&&body.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc&&doc.clientTop||body&&body.clientTop||0);} |
155 | | -if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)){event.which=event.charCode||event.keyCode;} |
156 | | -if(!event.metaKey&&event.ctrlKey){event.metaKey=event.ctrlKey;} |
157 | | -if(!event.which&&event.button!==undefined){event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));} |
158 | | -return event;},guid:1E8,proxy:jQuery.proxy,special:{ready:{setup:jQuery.bindReady,teardown:jQuery.noop},live:{add:function(handleObj){jQuery.event.add(this,handleObj.origType,jQuery.extend({},handleObj,{handler:liveHandler}));},remove:function(handleObj){var remove=true,type=handleObj.origType.replace(rnamespaces,"");jQuery.each(jQuery.data(this,"events").live||[],function(){if(type===this.origType.replace(rnamespaces,"")){remove=false;return false;}});if(remove){jQuery.event.remove(this,handleObj.origType,liveHandler);}}},beforeunload:{setup:function(data,namespaces,eventHandle){if(this.setInterval){this.onbeforeunload=eventHandle;} |
159 | | -return false;},teardown:function(namespaces,eventHandle){if(this.onbeforeunload===eventHandle){this.onbeforeunload=null;}}}}};var removeEvent=document.removeEventListener?function(elem,type,handle){elem.removeEventListener(type,handle,false);}:function(elem,type,handle){elem.detachEvent("on"+type,handle);};jQuery.Event=function(src){if(!this.preventDefault){return new jQuery.Event(src);} |
160 | | -if(src&&src.type){this.originalEvent=src;this.type=src.type;}else{this.type=src;} |
161 | | -this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;} |
162 | | -function returnTrue(){return true;} |
163 | | -jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e){return;} |
164 | | -if(e.preventDefault){e.preventDefault();} |
165 | | -e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e){return;} |
166 | | -if(e.stopPropagation){e.stopPropagation();} |
167 | | -e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;try{while(parent&&parent!==this){parent=parent.parentNode;} |
168 | | -if(parent!==this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}}catch(e){}},delegate=function(event){event.type=event.data;jQuery.event.handle.apply(this,arguments);};jQuery.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(orig,fix){jQuery.event.special[orig]={setup:function(data){jQuery.event.add(this,fix,data&&data.selector?delegate:withinElement,orig);},teardown:function(data){jQuery.event.remove(this,fix,data&&data.selector?delegate:withinElement);}};});if(!jQuery.support.submitBubbles){jQuery.event.special.submit={setup:function(data,namespaces){if(this.nodeName.toLowerCase()!=="form"){jQuery.event.add(this,"click.specialSubmit",function(e){var elem=e.target,type=elem.type;if((type==="submit"||type==="image")&&jQuery(elem).closest("form").length){return trigger("submit",this,arguments);}});jQuery.event.add(this,"keypress.specialSubmit",function(e){var elem=e.target,type=elem.type;if((type==="text"||type==="password")&&jQuery(elem).closest("form").length&&e.keyCode===13){return trigger("submit",this,arguments);}});}else{return false;}},teardown:function(namespaces){jQuery.event.remove(this,".specialSubmit");}};} |
169 | | -if(!jQuery.support.changeBubbles){var formElems=/textarea|input|select/i,changeFilters,getVal=function(elem){var type=elem.type,val=elem.value;if(type==="radio"||type==="checkbox"){val=elem.checked;}else if(type==="select-multiple"){val=elem.selectedIndex>-1?jQuery.map(elem.options,function(elem){return elem.selected;}).join("-"):"";}else if(elem.nodeName.toLowerCase()==="select"){val=elem.selectedIndex;} |
170 | | -return val;},testChange=function testChange(e){var elem=e.target,data,val;if(!formElems.test(elem.nodeName)||elem.readOnly){return;} |
171 | | -data=jQuery.data(elem,"_change_data");val=getVal(elem);if(e.type!=="focusout"||elem.type!=="radio"){jQuery.data(elem,"_change_data",val);} |
172 | | -if(data===undefined||val===data){return;} |
173 | | -if(data!=null||val){e.type="change";return jQuery.event.trigger(e,arguments[1],elem);}};jQuery.event.special.change={filters:{focusout:testChange,click:function(e){var elem=e.target,type=elem.type;if(type==="radio"||type==="checkbox"||elem.nodeName.toLowerCase()==="select"){return testChange.call(this,e);}},keydown:function(e){var elem=e.target,type=elem.type;if((e.keyCode===13&&elem.nodeName.toLowerCase()!=="textarea")||(e.keyCode===32&&(type==="checkbox"||type==="radio"))||type==="select-multiple"){return testChange.call(this,e);}},beforeactivate:function(e){var elem=e.target;jQuery.data(elem,"_change_data",getVal(elem));}},setup:function(data,namespaces){if(this.type==="file"){return false;} |
174 | | -for(var type in changeFilters){jQuery.event.add(this,type+".specialChange",changeFilters[type]);} |
175 | | -return formElems.test(this.nodeName);},teardown:function(namespaces){jQuery.event.remove(this,".specialChange");return formElems.test(this.nodeName);}};changeFilters=jQuery.event.special.change.filters;} |
176 | | -function trigger(type,elem,args){args[0].type=type;return jQuery.event.handle.apply(elem,args);} |
177 | | -if(document.addEventListener){jQuery.each({focus:"focusin",blur:"focusout"},function(orig,fix){jQuery.event.special[fix]={setup:function(){this.addEventListener(orig,handler,true);},teardown:function(){this.removeEventListener(orig,handler,true);}};function handler(e){e=jQuery.event.fix(e);e.type=fix;return jQuery.event.handle.call(this,e);}});} |
178 | | -jQuery.each(["bind","one"],function(i,name){jQuery.fn[name]=function(type,data,fn){if(typeof type==="object"){for(var key in type){this[name](key,data,type[key],fn);} |
179 | | -return this;} |
180 | | -if(jQuery.isFunction(data)){fn=data;data=undefined;} |
181 | | -var handler=name==="one"?jQuery.proxy(fn,function(event){jQuery(this).unbind(event,handler);return fn.apply(this,arguments);}):fn;if(type==="unload"&&name!=="one"){this.one(type,data,fn);}else{for(var i=0,l=this.length;i<l;i++){jQuery.event.add(this[i],type,handler,data);}} |
182 | | -return this;};});jQuery.fn.extend({unbind:function(type,fn){if(typeof type==="object"&&!type.preventDefault){for(var key in type){this.unbind(key,type[key]);}}else{for(var i=0,l=this.length;i<l;i++){jQuery.event.remove(this[i],type,fn);}} |
183 | | -return this;},delegate:function(selector,types,data,fn){return this.live(types,data,fn,selector);},undelegate:function(selector,types,fn){if(arguments.length===0){return this.unbind("live");}else{return this.die(types,null,fn,selector);}},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i<args.length){jQuery.proxy(fn,args[i++]);} |
184 | | -return this.click(jQuery.proxy(fn,function(event){var lastToggle=(jQuery.data(this,"lastToggle"+fn.guid)||0)%i;jQuery.data(this,"lastToggle"+fn.guid,lastToggle+1);event.preventDefault();return args[lastToggle].apply(this,arguments)||false;}));},hover:function(fnOver,fnOut){return this.mouseenter(fnOver).mouseleave(fnOut||fnOver);}});var liveMap={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};jQuery.each(["live","die"],function(i,name){jQuery.fn[name]=function(types,data,fn,origSelector){var type,i=0,match,namespaces,preType,selector=origSelector||this.selector,context=origSelector?this:jQuery(this.context);if(jQuery.isFunction(data)){fn=data;data=undefined;} |
185 | | -types=(types||"").split(" ");while((type=types[i++])!=null){match=rnamespaces.exec(type);namespaces="";if(match){namespaces=match[0];type=type.replace(rnamespaces,"");} |
186 | | -if(type==="hover"){types.push("mouseenter"+namespaces,"mouseleave"+namespaces);continue;} |
187 | | -preType=type;if(type==="focus"||type==="blur"){types.push(liveMap[type]+namespaces);type=type+namespaces;}else{type=(liveMap[type]||type)+namespaces;} |
188 | | -if(name==="live"){context.each(function(){jQuery.event.add(this,liveConvert(type,selector),{data:data,selector:selector,handler:fn,origType:type,origHandler:fn,preType:preType});});}else{context.unbind(liveConvert(type,selector),fn);}} |
189 | | -return this;}});function liveHandler(event){var stop,elems=[],selectors=[],args=arguments,related,match,handleObj,elem,j,i,l,data,events=jQuery.data(this,"events");if(event.liveFired===this||!events||!events.live||event.button&&event.type==="click"){return;} |
190 | | -event.liveFired=this;var live=events.live.slice(0);for(j=0;j<live.length;j++){handleObj=live[j];if(handleObj.origType.replace(rnamespaces,"")===event.type){selectors.push(handleObj.selector);}else{live.splice(j--,1);}} |
191 | | -match=jQuery(event.target).closest(selectors,event.currentTarget);for(i=0,l=match.length;i<l;i++){for(j=0;j<live.length;j++){handleObj=live[j];if(match[i].selector===handleObj.selector){elem=match[i].elem;related=null;if(handleObj.preType==="mouseenter"||handleObj.preType==="mouseleave"){related=jQuery(event.relatedTarget).closest(handleObj.selector)[0];} |
192 | | -if(!related||related!==elem){elems.push({elem:elem,handleObj:handleObj});}}}} |
193 | | -for(i=0,l=elems.length;i<l;i++){match=elems[i];event.currentTarget=match.elem;event.data=match.handleObj.data;event.handleObj=match.handleObj;if(match.handleObj.origHandler.apply(match.elem,args)===false){stop=false;break;}} |
194 | | -return stop;} |
195 | | -function liveConvert(type,selector){return"live."+(type&&type!=="*"?type+".":"")+selector.replace(/\./g,"`").replace(/ /g,"&");} |
196 | | -jQuery.each(("blur focus focusin focusout load resize scroll unload click dblclick "+"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave "+"change select submit keydown keypress keyup error").split(" "),function(i,name){jQuery.fn[name]=function(fn){return fn?this.bind(name,fn):this.trigger(name);};if(jQuery.attrFn){jQuery.attrFn[name]=true;}});if(window.attachEvent&&!window.addEventListener){window.attachEvent("onunload",function(){for(var id in jQuery.cache){if(jQuery.cache[id].handle){try{jQuery.event.remove(jQuery.cache[id].handle.elem);}catch(e){}}}});} |
197 | | -(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,done=0,toString=Object.prototype.toString,hasDuplicate=false,baseHasDuplicate=true;[0,0].sort(function(){baseHasDuplicate=false;return 0;});var Sizzle=function(selector,context,results,seed){results=results||[];var origContext=context=context||document;if(context.nodeType!==1&&context.nodeType!==9){return[];} |
198 | | -if(!selector||typeof selector!=="string"){return results;} |
199 | | -var parts=[],m,set,checkSet,extra,prune=true,contextXML=isXML(context),soFar=selector;while((chunker.exec(""),m=chunker.exec(soFar))!==null){soFar=m[3];parts.push(m[1]);if(m[2]){extra=m[3];break;}} |
200 | | -if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]){selector+=parts.shift();} |
201 | | -set=posProcess(selector,set);}}}else{if(!seed&&parts.length>1&&context.nodeType===9&&!contextXML&&Expr.match.ID.test(parts[0])&&!Expr.match.ID.test(parts[parts.length-1])){var ret=Sizzle.find(parts.shift(),context,contextXML);context=ret.expr?Sizzle.filter(ret.expr,ret.set)[0]:ret.set[0];} |
202 | | -if(context){var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&(parts[0]==="~"||parts[0]==="+")&&context.parentNode?context.parentNode:context,contextXML);set=ret.expr?Sizzle.filter(ret.expr,ret.set):ret.set;if(parts.length>0){checkSet=makeArray(set);}else{prune=false;} |
203 | | -while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();} |
204 | | -if(pop==null){pop=context;} |
205 | | -Expr.relative[cur](checkSet,pop,contextXML);}}else{checkSet=parts=[];}} |
206 | | -if(!checkSet){checkSet=set;} |
207 | | -if(!checkSet){Sizzle.error(cur||selector);} |
208 | | -if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context&&context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);} |
209 | | -if(extra){Sizzle(extra,origContext,results,seed);Sizzle.uniqueSort(results);} |
210 | | -return results;};Sizzle.uniqueSort=function(results){if(sortOrder){hasDuplicate=baseHasDuplicate;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i<results.length;i++){if(results[i]===results[i-1]){results.splice(i--,1);}}}} |
211 | | -return results;};Sizzle.matches=function(expr,set){return Sizzle(expr,null,null,set);};Sizzle.find=function(expr,context,isXML){var set,match;if(!expr){return[];} |
212 | | -for(var i=0,l=Expr.order.length;i<l;i++){var type=Expr.order[i],match;if((match=Expr.leftMatch[type].exec(expr))){var left=match[1];match.splice(1,1);if(left.substr(left.length-1)!=="\\"){match[1]=(match[1]||"").replace(/\\/g,"");set=Expr.find[type](match,context,isXML);if(set!=null){expr=expr.replace(Expr.match[type],"");break;}}}} |
213 | | -if(!set){set=context.getElementsByTagName("*");} |
214 | | -return{set:set,expr:expr};};Sizzle.filter=function(expr,set,inplace,not){var old=expr,result=[],curLoop=set,match,anyFound,isXMLFilter=set&&set[0]&&isXML(set[0]);while(expr&&set.length){for(var type in Expr.filter){if((match=Expr.leftMatch[type].exec(expr))!=null&&match[2]){var filter=Expr.filter[type],found,item,left=match[1];anyFound=false;match.splice(1,1);if(left.substr(left.length-1)==="\\"){continue;} |
215 | | -if(curLoop===result){result=[];} |
216 | | -if(Expr.preFilter[type]){match=Expr.preFilter[type](match,curLoop,inplace,result,not,isXMLFilter);if(!match){anyFound=found=true;}else if(match===true){continue;}} |
217 | | -if(match){for(var i=0;(item=curLoop[i])!=null;i++){if(item){found=filter(item,match,i,curLoop);var pass=not^!!found;if(inplace&&found!=null){if(pass){anyFound=true;}else{curLoop[i]=false;}}else if(pass){result.push(item);anyFound=true;}}}} |
218 | | -if(found!==undefined){if(!inplace){curLoop=result;} |
219 | | -expr=expr.replace(Expr.match[type],"");if(!anyFound){return[];} |
220 | | -break;}}} |
221 | | -if(expr===old){if(anyFound==null){Sizzle.error(expr);}else{break;}} |
222 | | -old=expr;} |
223 | | -return curLoop;};Sizzle.error=function(msg){throw"Syntax error, unrecognized expression: "+msg;};var Expr=Sizzle.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(elem){return elem.getAttribute("href");}},relative:{"+":function(checkSet,part){var isPartStr=typeof part==="string",isTag=isPartStr&&!/\W/.test(part),isPartStrNotTag=isPartStr&&!isTag;if(isTag){part=part.toLowerCase();} |
224 | | -for(var i=0,l=checkSet.length,elem;i<l;i++){if((elem=checkSet[i])){while((elem=elem.previousSibling)&&elem.nodeType!==1){} |
225 | | -checkSet[i]=isPartStrNotTag||elem&&elem.nodeName.toLowerCase()===part?elem||false:elem===part;}} |
226 | | -if(isPartStrNotTag){Sizzle.filter(part,checkSet,true);}},">":function(checkSet,part){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=part.toLowerCase();for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){var parent=elem.parentNode;checkSet[i]=parent.nodeName.toLowerCase()===part?parent:false;}}}else{for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){checkSet[i]=isPartStr?elem.parentNode:elem.parentNode===part;}} |
227 | | -if(isPartStr){Sizzle.filter(part,checkSet,true);}}},"":function(checkSet,part,isXML){var doneName=done++,checkFn=dirCheck;if(typeof part==="string"&&!/\W/.test(part)){var nodeCheck=part=part.toLowerCase();checkFn=dirNodeCheck;} |
228 | | -checkFn("parentNode",part,doneName,checkSet,nodeCheck,isXML);},"~":function(checkSet,part,isXML){var doneName=done++,checkFn=dirCheck;if(typeof part==="string"&&!/\W/.test(part)){var nodeCheck=part=part.toLowerCase();checkFn=dirNodeCheck;} |
229 | | -checkFn("previousSibling",part,doneName,checkSet,nodeCheck,isXML);}},find:{ID:function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?[m]:[];}},NAME:function(match,context){if(typeof context.getElementsByName!=="undefined"){var ret=[],results=context.getElementsByName(match[1]);for(var i=0,l=results.length;i<l;i++){if(results[i].getAttribute("name")===match[1]){ret.push(results[i]);}} |
230 | | -return ret.length===0?null:ret;}},TAG:function(match,context){return context.getElementsByTagName(match[1]);}},preFilter:{CLASS:function(match,curLoop,inplace,result,not,isXML){match=" "+match[1].replace(/\\/g,"")+" ";if(isXML){return match;} |
231 | | -for(var i=0,elem;(elem=curLoop[i])!=null;i++){if(elem){if(not^(elem.className&&(" "+elem.className+" ").replace(/[\t\n]/g," ").indexOf(match)>=0)){if(!inplace){result.push(elem);}}else if(inplace){curLoop[i]=false;}}} |
232 | | -return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){return match[1].toLowerCase();},CHILD:function(match){if(match[1]==="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]==="even"&&"2n"||match[2]==="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;} |
233 | | -match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];} |
234 | | -if(match[2]==="~="){match[4]=" "+match[4]+" ";} |
235 | | -return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if((chunker.exec(match[3])||"").length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);} |
236 | | -return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;} |
237 | | -return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toLowerCase()==="button";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return i<match[3]-0;},gt:function(elem,i,match){return i>match[3]-0;},nth:function(elem,i,match){return match[3]-0===i;},eq:function(elem,i,match){return match[3]-0===i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||getText([elem])||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i<l;i++){if(not[i]===elem){return false;}} |
238 | | -return true;}else{Sizzle.error("Syntax error, unrecognized expression: "+name);}},CHILD:function(elem,match){var type=match[1],node=elem;switch(type){case'only':case'first':while((node=node.previousSibling)){if(node.nodeType===1){return false;}} |
239 | | -if(type==="first"){return true;} |
240 | | -node=elem;case'last':while((node=node.nextSibling)){if(node.nodeType===1){return false;}} |
241 | | -return true;case'nth':var first=match[2],last=match[3];if(first===1&&last===0){return true;} |
242 | | -var doneName=match[0],parent=elem.parentNode;if(parent&&(parent.sizcache!==doneName||!elem.nodeIndex)){var count=0;for(node=parent.firstChild;node;node=node.nextSibling){if(node.nodeType===1){node.nodeIndex=++count;}} |
243 | | -parent.sizcache=doneName;} |
244 | | -var diff=elem.nodeIndex-last;if(first===0){return diff===0;}else{return(diff%first===0&&diff/first>=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName.toLowerCase()===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!==check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=new RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);Expr.leftMatch[type]=new RegExp(/(^(?:.|\r|\n)*?)/.source+Expr.match[type].source.replace(/\\(\d+)/g,function(all,num){return"\\"+(num-0+1);}));} |
245 | | -var makeArray=function(array,results){array=Array.prototype.slice.call(array,0);if(results){results.push.apply(results,array);return results;} |
246 | | -return array;};try{Array.prototype.slice.call(document.documentElement.childNodes,0)[0].nodeType;}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i<l;i++){ret.push(array[i]);}}else{for(var i=0;array[i];i++){ret.push(array[i]);}}} |
247 | | -return ret;};} |
248 | | -var sortOrder;if(document.documentElement.compareDocumentPosition){sortOrder=function(a,b){if(!a.compareDocumentPosition||!b.compareDocumentPosition){if(a==b){hasDuplicate=true;} |
249 | | -return a.compareDocumentPosition?-1:1;} |
250 | | -var ret=a.compareDocumentPosition(b)&4?-1:a===b?0:1;if(ret===0){hasDuplicate=true;} |
251 | | -return ret;};}else if("sourceIndex"in document.documentElement){sortOrder=function(a,b){if(!a.sourceIndex||!b.sourceIndex){if(a==b){hasDuplicate=true;} |
252 | | -return a.sourceIndex?-1:1;} |
253 | | -var ret=a.sourceIndex-b.sourceIndex;if(ret===0){hasDuplicate=true;} |
254 | | -return ret;};}else if(document.createRange){sortOrder=function(a,b){if(!a.ownerDocument||!b.ownerDocument){if(a==b){hasDuplicate=true;} |
255 | | -return a.ownerDocument?-1:1;} |
256 | | -var aRange=a.ownerDocument.createRange(),bRange=b.ownerDocument.createRange();aRange.setStart(a,0);aRange.setEnd(a,0);bRange.setStart(b,0);bRange.setEnd(b,0);var ret=aRange.compareBoundaryPoints(Range.START_TO_END,bRange);if(ret===0){hasDuplicate=true;} |
257 | | -return ret;};} |
258 | | -function getText(elems){var ret="",elem;for(var i=0;elems[i];i++){elem=elems[i];if(elem.nodeType===3||elem.nodeType===4){ret+=elem.nodeValue;}else if(elem.nodeType!==8){ret+=getText(elem.childNodes);}} |
259 | | -return ret;} |
260 | | -(function(){var form=document.createElement("div"),id="script"+(new Date).getTime();form.innerHTML="<a name='"+id+"'/>";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};} |
261 | | -root.removeChild(form);root=form=null;})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}} |
262 | | -results=tmp;} |
263 | | -return results;};} |
264 | | -div.innerHTML="<a href='#'></a>";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};} |
265 | | -div=null;})();if(document.querySelectorAll){(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="<p class='TEST'></p>";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;} |
266 | | -Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}} |
267 | | -return oldSizzle(query,context,extra,seed);};for(var prop in oldSizzle){Sizzle[prop]=oldSizzle[prop];} |
268 | | -div=null;})();} |
269 | | -(function(){var div=document.createElement("div");div.innerHTML="<div class='test e'></div><div class='test'></div>";if(!div.getElementsByClassName||div.getElementsByClassName("e").length===0){return;} |
270 | | -div.lastChild.className="e";if(div.getElementsByClassName("e").length===1){return;} |
271 | | -Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};div=null;})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){elem=elem[dir];var match=false;while(elem){if(elem.sizcache===doneName){match=checkSet[elem.sizset];break;} |
272 | | -if(elem.nodeType===1&&!isXML){elem.sizcache=doneName;elem.sizset=i;} |
273 | | -if(elem.nodeName.toLowerCase()===cur){match=elem;break;} |
274 | | -elem=elem[dir];} |
275 | | -checkSet[i]=match;}}} |
276 | | -function dirCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){elem=elem[dir];var match=false;while(elem){if(elem.sizcache===doneName){match=checkSet[elem.sizset];break;} |
277 | | -if(elem.nodeType===1){if(!isXML){elem.sizcache=doneName;elem.sizset=i;} |
278 | | -if(typeof cur!=="string"){if(elem===cur){match=true;break;}}else if(Sizzle.filter(cur,[elem]).length>0){match=elem;break;}} |
279 | | -elem=elem[dir];} |
280 | | -checkSet[i]=match;}}} |
281 | | -var contains=document.compareDocumentPosition?function(a,b){return!!(a.compareDocumentPosition(b)&16);}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){var documentElement=(elem?elem.ownerDocument||elem:0).documentElement;return documentElement?documentElement.nodeName!=="HTML":false;};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");} |
282 | | -selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i<l;i++){Sizzle(selector,root[i],tmpSet);} |
283 | | -return Sizzle.filter(later,tmpSet);};jQuery.find=Sizzle;jQuery.expr=Sizzle.selectors;jQuery.expr[":"]=jQuery.expr.filters;jQuery.unique=Sizzle.uniqueSort;jQuery.text=getText;jQuery.isXMLDoc=isXML;jQuery.contains=contains;return;window.Sizzle=Sizzle;})();var runtil=/Until$/,rparentsprev=/^(?:parents|prevUntil|prevAll)/,rmultiselector=/,/,slice=Array.prototype.slice;var winnow=function(elements,qualifier,keep){if(jQuery.isFunction(qualifier)){return jQuery.grep(elements,function(elem,i){return!!qualifier.call(elem,i,elem)===keep;});}else if(qualifier.nodeType){return jQuery.grep(elements,function(elem,i){return(elem===qualifier)===keep;});}else if(typeof qualifier==="string"){var filtered=jQuery.grep(elements,function(elem){return elem.nodeType===1;});if(isSimple.test(qualifier)){return jQuery.filter(qualifier,filtered,!keep);}else{qualifier=jQuery.filter(qualifier,filtered);}} |
284 | | -return jQuery.grep(elements,function(elem,i){return(jQuery.inArray(elem,qualifier)>=0)===keep;});};jQuery.fn.extend({find:function(selector){var ret=this.pushStack("","find",selector),length=0;for(var i=0,l=this.length;i<l;i++){length=ret.length;jQuery.find(selector,this[i],ret);if(i>0){for(var n=length;n<ret.length;n++){for(var r=0;r<length;r++){if(ret[r]===ret[n]){ret.splice(n--,1);break;}}}}} |
285 | | -return ret;},has:function(target){var targets=jQuery(target);return this.filter(function(){for(var i=0,l=targets.length;i<l;i++){if(jQuery.contains(this,targets[i])){return true;}}});},not:function(selector){return this.pushStack(winnow(this,selector,false),"not",selector);},filter:function(selector){return this.pushStack(winnow(this,selector,true),"filter",selector);},is:function(selector){return!!selector&&jQuery.filter(selector,this).length>0;},closest:function(selectors,context){if(jQuery.isArray(selectors)){var ret=[],cur=this[0],match,matches={},selector;if(cur&&selectors.length){for(var i=0,l=selectors.length;i<l;i++){selector=selectors[i];if(!matches[selector]){matches[selector]=jQuery.expr.match.POS.test(selector)?jQuery(selector,context||this.context):selector;}} |
286 | | -while(cur&&cur.ownerDocument&&cur!==context){for(selector in matches){match=matches[selector];if(match.jquery?match.index(cur)>-1:jQuery(cur).is(match)){ret.push({selector:selector,elem:cur});delete matches[selector];}} |
287 | | -cur=cur.parentNode;}} |
288 | | -return ret;} |
289 | | -var pos=jQuery.expr.match.POS.test(selectors)?jQuery(selectors,context||this.context):null;return this.map(function(i,cur){while(cur&&cur.ownerDocument&&cur!==context){if(pos?pos.index(cur)>-1:jQuery(cur).is(selectors)){return cur;} |
290 | | -cur=cur.parentNode;} |
291 | | -return null;});},index:function(elem){if(!elem||typeof elem==="string"){return jQuery.inArray(this[0],elem?jQuery(elem):this.parent().children());} |
292 | | -return jQuery.inArray(elem.jquery?elem[0]:elem,this);},add:function(selector,context){var set=typeof selector==="string"?jQuery(selector,context||this.context):jQuery.makeArray(selector),all=jQuery.merge(this.get(),set);return this.pushStack(isDisconnected(set[0])||isDisconnected(all[0])?all:jQuery.unique(all));},andSelf:function(){return this.add(this.prevObject);}});function isDisconnected(node){return!node||!node.parentNode||node.parentNode.nodeType===11;} |
293 | | -jQuery.each({parent:function(elem){var parent=elem.parentNode;return parent&&parent.nodeType!==11?parent:null;},parents:function(elem){return jQuery.dir(elem,"parentNode");},parentsUntil:function(elem,i,until){return jQuery.dir(elem,"parentNode",until);},next:function(elem){return jQuery.nth(elem,2,"nextSibling");},prev:function(elem){return jQuery.nth(elem,2,"previousSibling");},nextAll:function(elem){return jQuery.dir(elem,"nextSibling");},prevAll:function(elem){return jQuery.dir(elem,"previousSibling");},nextUntil:function(elem,i,until){return jQuery.dir(elem,"nextSibling",until);},prevUntil:function(elem,i,until){return jQuery.dir(elem,"previousSibling",until);},siblings:function(elem){return jQuery.sibling(elem.parentNode.firstChild,elem);},children:function(elem){return jQuery.sibling(elem.firstChild);},contents:function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes);}},function(name,fn){jQuery.fn[name]=function(until,selector){var ret=jQuery.map(this,fn,until);if(!runtil.test(name)){selector=until;} |
294 | | -if(selector&&typeof selector==="string"){ret=jQuery.filter(selector,ret);} |
295 | | -ret=this.length>1?jQuery.unique(ret):ret;if((this.length>1||rmultiselector.test(selector))&&rparentsprev.test(name)){ret=ret.reverse();} |
296 | | -return this.pushStack(ret,name,slice.call(arguments).join(","));};});jQuery.extend({filter:function(expr,elems,not){if(not){expr=":not("+expr+")";} |
297 | | -return jQuery.find.matches(expr,elems);},dir:function(elem,dir,until){var matched=[],cur=elem[dir];while(cur&&cur.nodeType!==9&&(until===undefined||cur.nodeType!==1||!jQuery(cur).is(until))){if(cur.nodeType===1){matched.push(cur);} |
298 | | -cur=cur[dir];} |
299 | | -return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]){if(cur.nodeType===1&&++num===result){break;}} |
300 | | -return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType===1&&n!==elem){r.push(n);}} |
301 | | -return r;}});var rinlinejQuery=/ jQuery\d+="(?:\d+|null)"/g,rleadingWhitespace=/^\s+/,rxhtmlTag=/(<([\w:]+)[^>]*?)\/>/g,rselfClosing=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,rtagName=/<([\w:]+)/,rtbody=/<tbody/i,rhtml=/<|&#?\w+;/,rnocache=/<script|<object|<embed|<option|<style/i,rchecked=/checked\s*(?:[^=]|=\s*.checked.)/i,fcloseTag=function(all,front,tag){return rselfClosing.test(tag)?all:front+"></"+tag+">";},wrapMap={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};wrapMap.optgroup=wrapMap.option;wrapMap.tbody=wrapMap.tfoot=wrapMap.colgroup=wrapMap.caption=wrapMap.thead;wrapMap.th=wrapMap.td;if(!jQuery.support.htmlSerialize){wrapMap._default=[1,"div<div>","</div>"];} |
302 | | -jQuery.fn.extend({text:function(text){if(jQuery.isFunction(text)){return this.each(function(i){var self=jQuery(this);self.text(text.call(this,i,self.text()));});} |
303 | | -if(typeof text!=="object"&&text!==undefined){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));} |
304 | | -return jQuery.text(this);},wrapAll:function(html){if(jQuery.isFunction(html)){return this.each(function(i){jQuery(this).wrapAll(html.call(this,i));});} |
305 | | -if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){wrap.insertBefore(this[0]);} |
306 | | -wrap.map(function(){var elem=this;while(elem.firstChild&&elem.firstChild.nodeType===1){elem=elem.firstChild;} |
307 | | -return elem;}).append(this);} |
308 | | -return this;},wrapInner:function(html){if(jQuery.isFunction(html)){return this.each(function(i){jQuery(this).wrapInner(html.call(this,i));});} |
309 | | -return this.each(function(){var self=jQuery(this),contents=self.contents();if(contents.length){contents.wrapAll(html);}else{self.append(html);}});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},unwrap:function(){return this.parent().each(function(){if(!jQuery.nodeName(this,"body")){jQuery(this).replaceWith(this.childNodes);}}).end();},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType===1){this.appendChild(elem);}});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType===1){this.insertBefore(elem,this.firstChild);}});},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});}else if(arguments.length){var set=jQuery(arguments[0]);set.push.apply(set,this.toArray());return this.pushStack(set,"before",arguments);}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});}else if(arguments.length){var set=this.pushStack(this,"after",arguments);set.push.apply(set,jQuery(arguments[0]).toArray());return set;}},remove:function(selector,keepData){for(var i=0,elem;(elem=this[i])!=null;i++){if(!selector||jQuery.filter(selector,[elem]).length){if(!keepData&&elem.nodeType===1){jQuery.cleanData(elem.getElementsByTagName("*"));jQuery.cleanData([elem]);} |
310 | | -if(elem.parentNode){elem.parentNode.removeChild(elem);}}} |
311 | | -return this;},empty:function(){for(var i=0,elem;(elem=this[i])!=null;i++){if(elem.nodeType===1){jQuery.cleanData(elem.getElementsByTagName("*"));} |
312 | | -while(elem.firstChild){elem.removeChild(elem.firstChild);}} |
313 | | -return this;},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var html=this.outerHTML,ownerDocument=this.ownerDocument;if(!html){var div=ownerDocument.createElement("div");div.appendChild(this.cloneNode(true));html=div.innerHTML;} |
314 | | -return jQuery.clean([html.replace(rinlinejQuery,"").replace(/=([^="'>\s]+\/)>/g,'="$1">').replace(rleadingWhitespace,"")],ownerDocument)[0];}else{return this.cloneNode(true);}});if(events===true){cloneCopyEvent(this,ret);cloneCopyEvent(this.find("*"),ret.find("*"));} |
315 | | -return ret;},html:function(value){if(value===undefined){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(rinlinejQuery,""):null;}else if(typeof value==="string"&&!rnocache.test(value)&&(jQuery.support.leadingWhitespace||!rleadingWhitespace.test(value))&&!wrapMap[(rtagName.exec(value)||["",""])[1].toLowerCase()]){value=value.replace(rxhtmlTag,fcloseTag);try{for(var i=0,l=this.length;i<l;i++){if(this[i].nodeType===1){jQuery.cleanData(this[i].getElementsByTagName("*"));this[i].innerHTML=value;}}}catch(e){this.empty().append(value);}}else if(jQuery.isFunction(value)){this.each(function(i){var self=jQuery(this),old=self.html();self.empty().append(function(){return value.call(this,i,old);});});}else{this.empty().append(value);} |
316 | | -return this;},replaceWith:function(value){if(this[0]&&this[0].parentNode){if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this),old=self.html();self.replaceWith(value.call(this,i,old));});} |
317 | | -if(typeof value!=="string"){value=jQuery(value).detach();} |
318 | | -return this.each(function(){var next=this.nextSibling,parent=this.parentNode;jQuery(this).remove();if(next){jQuery(next).before(value);}else{jQuery(parent).append(value);}});}else{return this.pushStack(jQuery(jQuery.isFunction(value)?value():value),"replaceWith",value);}},detach:function(selector){return this.remove(selector,true);},domManip:function(args,table,callback){var results,first,value=args[0],scripts=[],fragment,parent;if(!jQuery.support.checkClone&&arguments.length===3&&typeof value==="string"&&rchecked.test(value)){return this.each(function(){jQuery(this).domManip(args,table,callback,true);});} |
319 | | -if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this);args[0]=value.call(this,i,table?self.html():undefined);self.domManip(args,table,callback);});} |
320 | | -if(this[0]){parent=value&&value.parentNode;if(jQuery.support.parentNode&&parent&&parent.nodeType===11&&parent.childNodes.length===this.length){results={fragment:parent};}else{results=buildFragment(args,this,scripts);} |
321 | | -fragment=results.fragment;if(fragment.childNodes.length===1){first=fragment=fragment.firstChild;}else{first=fragment.firstChild;} |
322 | | -if(first){table=table&&jQuery.nodeName(first,"tr");for(var i=0,l=this.length;i<l;i++){callback.call(table?root(this[i],first):this[i],i>0||results.cacheable||this.length>1?fragment.cloneNode(true):fragment);}} |
323 | | -if(scripts.length){jQuery.each(scripts,evalScript);}} |
324 | | -return this;function root(elem,cur){return jQuery.nodeName(elem,"table")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}});function cloneCopyEvent(orig,ret){var i=0;ret.each(function(){if(this.nodeName!==(orig[i]&&orig[i].nodeName)){return;} |
325 | | -var oldData=jQuery.data(orig[i++]),curData=jQuery.data(this,oldData),events=oldData&&oldData.events;if(events){delete curData.handle;curData.events={};for(var type in events){for(var handler in events[type]){jQuery.event.add(this,type,events[type][handler],events[type][handler].data);}}}});} |
326 | | -function buildFragment(args,nodes,scripts){var fragment,cacheable,cacheresults,doc=(nodes&&nodes[0]?nodes[0].ownerDocument||nodes[0]:document);if(args.length===1&&typeof args[0]==="string"&&args[0].length<512&&doc===document&&!rnocache.test(args[0])&&(jQuery.support.checkClone||!rchecked.test(args[0]))){cacheable=true;cacheresults=jQuery.fragments[args[0]];if(cacheresults){if(cacheresults!==1){fragment=cacheresults;}}} |
327 | | -if(!fragment){fragment=doc.createDocumentFragment();jQuery.clean(args,doc,fragment,scripts);} |
328 | | -if(cacheable){jQuery.fragments[args[0]]=cacheresults?fragment:1;} |
329 | | -return{fragment:fragment,cacheable:cacheable};} |
330 | | -jQuery.fragments={};jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(selector){var ret=[],insert=jQuery(selector),parent=this.length===1&&this[0].parentNode;if(parent&&parent.nodeType===11&&parent.childNodes.length===1&&insert.length===1){insert[original](this[0]);return this;}else{for(var i=0,l=insert.length;i<l;i++){var elems=(i>0?this.clone(true):this).get();jQuery.fn[original].apply(jQuery(insert[i]),elems);ret=ret.concat(elems);} |
331 | | -return this.pushStack(ret,name,insert.selector);}};});jQuery.extend({clean:function(elems,context,fragment,scripts){context=context||document;if(typeof context.createElement==="undefined"){context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;} |
332 | | -var ret=[];for(var i=0,elem;(elem=elems[i])!=null;i++){if(typeof elem==="number"){elem+="";} |
333 | | -if(!elem){continue;} |
334 | | -if(typeof elem==="string"&&!rhtml.test(elem)){elem=context.createTextNode(elem);}else if(typeof elem==="string"){elem=elem.replace(rxhtmlTag,fcloseTag);var tag=(rtagName.exec(elem)||["",""])[1].toLowerCase(),wrap=wrapMap[tag]||wrapMap._default,depth=wrap[0],div=context.createElement("div");div.innerHTML=wrap[1]+elem+wrap[2];while(depth--){div=div.lastChild;} |
335 | | -if(!jQuery.support.tbody){var hasBody=rtbody.test(elem),tbody=tag==="table"&&!hasBody?div.firstChild&&div.firstChild.childNodes:wrap[1]==="<table>"&&!hasBody?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j){if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length){tbody[j].parentNode.removeChild(tbody[j]);}}} |
336 | | -if(!jQuery.support.leadingWhitespace&&rleadingWhitespace.test(elem)){div.insertBefore(context.createTextNode(rleadingWhitespace.exec(elem)[0]),div.firstChild);} |
337 | | -elem=div.childNodes;} |
338 | | -if(elem.nodeType){ret.push(elem);}else{ret=jQuery.merge(ret,elem);}} |
339 | | -if(fragment){for(var i=0;ret[i];i++){if(scripts&&jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1){ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));} |
340 | | -fragment.appendChild(ret[i]);}}} |
341 | | -return ret;},cleanData:function(elems){var data,id,cache=jQuery.cache,special=jQuery.event.special,deleteExpando=jQuery.support.deleteExpando;for(var i=0,elem;(elem=elems[i])!=null;i++){id=elem[jQuery.expando];if(id){data=cache[id];if(data.events){for(var type in data.events){if(special[type]){jQuery.event.remove(elem,type);}else{removeEvent(elem,type,data.handle);}}} |
342 | | -if(deleteExpando){delete elem[jQuery.expando];}else if(elem.removeAttribute){elem.removeAttribute(jQuery.expando);} |
343 | | -delete cache[id];}}}});var rexclude=/z-?index|font-?weight|opacity|zoom|line-?height/i,ralpha=/alpha\([^)]*\)/,ropacity=/opacity=([^)]*)/,rfloat=/float/i,rdashAlpha=/-([a-z])/ig,rupper=/([A-Z])/g,rnumpx=/^-?\d+(?:px)?$/i,rnum=/^-?\d/,cssShow={position:"absolute",visibility:"hidden",display:"block"},cssWidth=["Left","Right"],cssHeight=["Top","Bottom"],getComputedStyle=document.defaultView&&document.defaultView.getComputedStyle,styleFloat=jQuery.support.cssFloat?"cssFloat":"styleFloat",fcamelCase=function(all,letter){return letter.toUpperCase();};jQuery.fn.css=function(name,value){return access(this,name,value,true,function(elem,name,value){if(value===undefined){return jQuery.curCSS(elem,name);} |
344 | | -if(typeof value==="number"&&!rexclude.test(name)){value+="px";} |
345 | | -jQuery.style(elem,name,value);});};jQuery.extend({style:function(elem,name,value){if(!elem||elem.nodeType===3||elem.nodeType===8){return undefined;} |
346 | | -if((name==="width"||name==="height")&&parseFloat(value)<0){value=undefined;} |
347 | | -var style=elem.style||elem,set=value!==undefined;if(!jQuery.support.opacity&&name==="opacity"){if(set){style.zoom=1;var opacity=parseInt(value,10)+""==="NaN"?"":"alpha(opacity="+value*100+")";var filter=style.filter||jQuery.curCSS(elem,"filter")||"";style.filter=ralpha.test(filter)?filter.replace(ralpha,opacity):opacity;} |
348 | | -return style.filter&&style.filter.indexOf("opacity=")>=0?(parseFloat(ropacity.exec(style.filter)[1])/100)+"":"";} |
349 | | -if(rfloat.test(name)){name=styleFloat;} |
350 | | -name=name.replace(rdashAlpha,fcamelCase);if(set&&value!=='NaNpx'&&value!=='nullpx'){style[name]=value;} |
351 | | -return style[name];},css:function(elem,name,force,extra){if(name==="width"||name==="height"){var val,props=cssShow,which=name==="width"?cssWidth:cssHeight;function getWH(){val=name==="width"?elem.offsetWidth:elem.offsetHeight;if(extra==="border"){return;} |
352 | | -jQuery.each(which,function(){if(!extra){val-=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;} |
353 | | -if(extra==="margin"){val+=parseFloat(jQuery.curCSS(elem,"margin"+this,true))||0;}else{val-=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;}});} |
354 | | -if(elem.offsetWidth!==0){getWH();}else{jQuery.swap(elem,props,getWH);} |
355 | | -return Math.max(0,Math.round(val));} |
356 | | -return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style,filter;if(!jQuery.support.opacity&&name==="opacity"&&elem.currentStyle){ret=ropacity.test(elem.currentStyle.filter||"")?(parseFloat(RegExp.$1)/100)+"":"";return ret===""?"1":ret;} |
357 | | -if(rfloat.test(name)){name=styleFloat;} |
358 | | -if(!force&&style&&style[name]){ret=style[name];}else if(getComputedStyle){if(rfloat.test(name)){name="float";} |
359 | | -name=name.replace(rupper,"-$1").toLowerCase();var defaultView=elem.ownerDocument.defaultView;if(!defaultView){return null;} |
360 | | -var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle){ret=computedStyle.getPropertyValue(name);} |
361 | | -if(name==="opacity"&&ret===""){ret="1";}}else if(elem.currentStyle){var camelCase=name.replace(rdashAlpha,fcamelCase);ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!rnumpx.test(ret)&&rnum.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=camelCase==="fontSize"?"1em":(ret||0);ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}} |
362 | | -return ret;},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} |
363 | | -callback.call(elem);for(var name in options){elem.style[name]=old[name];}}});if(jQuery.expr&&jQuery.expr.filters){jQuery.expr.filters.hidden=function(elem){var width=elem.offsetWidth,height=elem.offsetHeight,skip=elem.nodeName.toLowerCase()==="tr";return width===0&&height===0&&!skip?true:width>0&&height>0&&!skip?false:jQuery.curCSS(elem,"display")==="none";};jQuery.expr.filters.visible=function(elem){return!jQuery.expr.filters.hidden(elem);};} |
364 | | -var jsc=now(),rscript=/<script(.|\s)*?\/script>/gi,rselectTextarea=/select|textarea/i,rinput=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,jsre=/=\?(&|$)/,rquery=/\?/,rts=/(\?|&)_=.*?(&|$)/,rurl=/^(\w+:)?\/\/([^\/?#]+)/,r20=/%20/g,_load=jQuery.fn.load;jQuery.fn.extend({load:function(url,params,callback){if(typeof url!=="string"){return _load.call(this,url);}else if(!this.length){return this;} |
365 | | -var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} |
366 | | -var type="GET";if(params){if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params,jQuery.ajaxSettings.traditional);type="POST";}} |
367 | | -var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status==="success"||status==="notmodified"){self.html(selector?jQuery("<div />").append(res.responseText.replace(rscript,"")).find(selector):res.responseText);} |
368 | | -if(callback){self.each(callback,[res.responseText,status,res]);}}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||rselectTextarea.test(this.nodeName)||rinput.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){type=type||callback;callback=data;data=null;} |
369 | | -return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){type=type||callback;callback=data;data={};} |
370 | | -return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:window.XMLHttpRequest&&(window.location.protocol!=="file:"||!window.ActiveXObject)?function(){return new window.XMLHttpRequest();}:function(){try{return new window.ActiveXObject("Microsoft.XMLHTTP");}catch(e){}},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},etag:{},ajax:function(origSettings){var s=jQuery.extend(true,{},jQuery.ajaxSettings,origSettings);var jsonp,status,data,callbackContext=origSettings&&origSettings.context||s,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string"){s.data=jQuery.param(s.data,s.traditional);} |
371 | | -if(s.dataType==="jsonp"){if(type==="GET"){if(!jsre.test(s.url)){s.url+=(rquery.test(s.url)?"&":"?")+(s.jsonp||"callback")+"=?";}}else if(!s.data||!jsre.test(s.data)){s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";} |
372 | | -s.dataType="json";} |
373 | | -if(s.dataType==="json"&&(s.data&&jsre.test(s.data)||jsre.test(s.url))){jsonp=s.jsonpCallback||("jsonp"+jsc++);if(s.data){s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");} |
374 | | -s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=window[jsonp]||function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} |
375 | | -if(head){head.removeChild(script);}};} |
376 | | -if(s.dataType==="script"&&s.cache===null){s.cache=false;} |
377 | | -if(s.cache===false&&type==="GET"){var ts=now();var ret=s.url.replace(rts,"$1_="+ts+"$2");s.url=ret+((ret===s.url)?(rquery.test(s.url)?"&":"?")+"_="+ts:"");} |
378 | | -if(s.data&&type==="GET"){s.url+=(rquery.test(s.url)?"&":"?")+s.data;} |
379 | | -if(s.global&&!jQuery.active++){jQuery.event.trigger("ajaxStart");} |
380 | | -var parts=rurl.exec(s.url),remote=parts&&(parts[1]&&parts[1]!==location.protocol||parts[2]!==location.host);if(s.dataType==="script"&&type==="GET"&&remote){var head=document.getElementsByTagName("head")[0]||document.documentElement;var script=document.createElement("script");script.src=s.url;if(s.scriptCharset){script.charset=s.scriptCharset;} |
381 | | -if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){done=true;success();complete();script.onload=script.onreadystatechange=null;if(head&&script.parentNode){head.removeChild(script);}}};} |
382 | | -head.insertBefore(script,head.firstChild);return undefined;} |
383 | | -var requestDone=false;var xhr=s.xhr();if(!xhr){return;} |
384 | | -if(s.username){xhr.open(type,s.url,s.async,s.username,s.password);}else{xhr.open(type,s.url,s.async);} |
385 | | -try{if(s.data||origSettings&&origSettings.contentType){xhr.setRequestHeader("Content-Type",s.contentType);} |
386 | | -if(s.ifModified){if(jQuery.lastModified[s.url]){xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]);} |
387 | | -if(jQuery.etag[s.url]){xhr.setRequestHeader("If-None-Match",jQuery.etag[s.url]);}} |
388 | | -if(!remote){xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");} |
389 | | -xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} |
390 | | -if(s.beforeSend&&s.beforeSend.call(callbackContext,xhr,s)===false){if(s.global&&!--jQuery.active){jQuery.event.trigger("ajaxStop");} |
391 | | -xhr.abort();return false;} |
392 | | -if(s.global){trigger("ajaxSend",[xhr,s]);} |
393 | | -var onreadystatechange=xhr.onreadystatechange=function(isTimeout){if(!xhr||xhr.readyState===0||isTimeout==="abort"){if(!requestDone){complete();} |
394 | | -requestDone=true;if(xhr){xhr.onreadystatechange=jQuery.noop;}}else if(!requestDone&&xhr&&(xhr.readyState===4||isTimeout==="timeout")){requestDone=true;xhr.onreadystatechange=jQuery.noop;status=isTimeout==="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";var errMsg;if(status==="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(err){status="parsererror";errMsg=err;}} |
395 | | -if(status==="success"||status==="notmodified"){if(!jsonp){success();}}else{jQuery.handleError(s,xhr,status,errMsg);} |
396 | | -complete();if(isTimeout==="timeout"){xhr.abort();} |
397 | | -if(s.async){xhr=null;}}};try{var oldAbort=xhr.abort;xhr.abort=function(){if(xhr){oldAbort.call(xhr);} |
398 | | -onreadystatechange("abort");};}catch(e){} |
399 | | -if(s.async&&s.timeout>0){setTimeout(function(){if(xhr&&!requestDone){onreadystatechange("timeout");}},s.timeout);} |
400 | | -try{xhr.send(type==="POST"||type==="PUT"||type==="DELETE"?s.data:null);}catch(e){jQuery.handleError(s,xhr,null,e);complete();} |
401 | | -if(!s.async){onreadystatechange();} |
402 | | -function success(){if(s.success){s.success.call(callbackContext,data,status,xhr);} |
403 | | -if(s.global){trigger("ajaxSuccess",[xhr,s]);}} |
404 | | -function complete(){if(s.complete){s.complete.call(callbackContext,xhr,status);} |
405 | | -if(s.global){trigger("ajaxComplete",[xhr,s]);} |
406 | | -if(s.global&&!--jQuery.active){jQuery.event.trigger("ajaxStop");}} |
407 | | -function trigger(type,args){(s.context?jQuery(s.context):jQuery.event).trigger(type,args);} |
408 | | -return xhr;},handleError:function(s,xhr,status,e){if(s.error){s.error.call(s.context||s,xhr,status,e);} |
409 | | -if(s.global){(s.context?jQuery(s.context):jQuery.event).trigger("ajaxError",[xhr,s,e]);}},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol==="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status===304||xhr.status===1223||xhr.status===0;}catch(e){} |
410 | | -return false;},httpNotModified:function(xhr,url){var lastModified=xhr.getResponseHeader("Last-Modified"),etag=xhr.getResponseHeader("Etag");if(lastModified){jQuery.lastModified[url]=lastModified;} |
411 | | -if(etag){jQuery.etag[url]=etag;} |
412 | | -return xhr.status===304||xhr.status===0;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type")||"",xml=type==="xml"||!type&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.nodeName==="parsererror"){jQuery.error("parsererror");} |
413 | | -if(s&&s.dataFilter){data=s.dataFilter(data,type);} |
414 | | -if(typeof data==="string"){if(type==="json"||!type&&ct.indexOf("json")>=0){data=jQuery.parseJSON(data);}else if(type==="script"||!type&&ct.indexOf("javascript")>=0){jQuery.globalEval(data);}} |
415 | | -return data;},param:function(a,traditional){var s=[];if(traditional===undefined){traditional=jQuery.ajaxSettings.traditional;} |
416 | | -if(jQuery.isArray(a)||a.jquery){jQuery.each(a,function(){add(this.name,this.value);});}else{for(var prefix in a){buildParams(prefix,a[prefix]);}} |
417 | | -return s.join("&").replace(r20,"+");function buildParams(prefix,obj){if(jQuery.isArray(obj)){jQuery.each(obj,function(i,v){if(traditional||/\[\]$/.test(prefix)){add(prefix,v);}else{buildParams(prefix+"["+(typeof v==="object"||jQuery.isArray(v)?i:"")+"]",v);}});}else if(!traditional&&obj!=null&&typeof obj==="object"){jQuery.each(obj,function(k,v){buildParams(prefix+"["+k+"]",v);});}else{add(prefix,obj);}} |
418 | | -function add(key,value){value=jQuery.isFunction(value)?value():value;s[s.length]=encodeURIComponent(key)+"="+encodeURIComponent(value);}}});var elemdisplay={},rfxtypes=/toggle|show|hide/,rfxnum=/^([+-]=)?([\d+-.]+)(.*)$/,timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];jQuery.fn.extend({show:function(speed,callback){if(speed||speed===0){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i<l;i++){var old=jQuery.data(this[i],"olddisplay");this[i].style.display=old||"";if(jQuery.css(this[i],"display")==="none"){var nodeName=this[i].nodeName,display;if(elemdisplay[nodeName]){display=elemdisplay[nodeName];}else{var elem=jQuery("<"+nodeName+" />").appendTo("body");display=elem.css("display");if(display==="none"){display="block";} |
419 | | -elem.remove();elemdisplay[nodeName]=display;} |
420 | | -jQuery.data(this[i],"olddisplay",display);}} |
421 | | -for(var j=0,k=this.length;j<k;j++){this[j].style.display=jQuery.data(this[j],"olddisplay")||"";} |
422 | | -return this;}},hide:function(speed,callback){if(speed||speed===0){return this.animate(genFx("hide",3),speed,callback);}else{for(var i=0,l=this.length;i<l;i++){var old=jQuery.data(this[i],"olddisplay");if(!old&&old!=="none"){jQuery.data(this[i],"olddisplay",jQuery.css(this[i],"display"));}} |
423 | | -for(var j=0,k=this.length;j<k;j++){this[j].style.display="none";} |
424 | | -return this;}},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){var bool=typeof fn==="boolean";if(jQuery.isFunction(fn)&&jQuery.isFunction(fn2)){this._toggle.apply(this,arguments);}else if(fn==null||bool){this.each(function(){var state=bool?fn:jQuery(this).is(":hidden");jQuery(this)[state?"show":"hide"]();});}else{this.animate(genFx("toggle",3),fn,fn2);} |
425 | | -return this;},fadeTo:function(speed,to,callback){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);if(jQuery.isEmptyObject(prop)){return this.each(optall.complete);} |
426 | | -return this[optall.queue===false?"each":"queue"](function(){var opt=jQuery.extend({},optall),p,hidden=this.nodeType===1&&jQuery(this).is(":hidden"),self=this;for(p in prop){var name=p.replace(rdashAlpha,fcamelCase);if(p!==name){prop[name]=prop[p];delete prop[p];p=name;} |
427 | | -if(prop[p]==="hide"&&hidden||prop[p]==="show"&&!hidden){return opt.complete.call(this);} |
428 | | -if((p==="height"||p==="width")&&this.style){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;} |
429 | | -if(jQuery.isArray(prop[p])){(opt.specialEasing=opt.specialEasing||{})[p]=prop[p][1];prop[p]=prop[p][0];}} |
430 | | -if(opt.overflow!=null){this.style.overflow="hidden";} |
431 | | -opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(rfxtypes.test(val)){e[val==="toggle"?hidden?"show":"hide":val](prop);}else{var parts=rfxnum.exec(val),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!=="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;} |
432 | | -if(parts[1]){end=((parts[1]==="-="?-1:1)*end)+start;} |
433 | | -e.custom(start,end,unit);}else{e.custom(start,val,"");}}});return true;});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue){this.queue([]);} |
434 | | -this.each(function(){for(var i=timers.length-1;i>=0;i--){if(timers[i].elem===this){if(gotoEnd){timers[i](true);} |
435 | | -timers.splice(i,1);}}});if(!gotoEnd){this.dequeue();} |
436 | | -return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false){jQuery(this).dequeue();} |
437 | | -if(jQuery.isFunction(opt.old)){opt.old.call(this);}};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig){options.orig={};}}});jQuery.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this);} |
438 | | -(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop==="height"||this.prop==="width")&&this.elem.style){this.elem.style.display="block";}},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop];} |
439 | | -var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);} |
440 | | -t.elem=this.elem;if(t()&&jQuery.timers.push(t)&&!timerId){timerId=setInterval(jQuery.fx.tick,13);}},show:function(){this.options.orig[this.prop]=jQuery.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());jQuery(this.elem).show();},hide:function(){this.options.orig[this.prop]=jQuery.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0);},step:function(gotoEnd){var t=now(),done=true;if(gotoEnd||t>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var i in this.options.curAnim){if(this.options.curAnim[i]!==true){done=false;}} |
441 | | -if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;var old=jQuery.data(this.elem,"olddisplay");this.elem.style.display=old?old:this.options.display;if(jQuery.css(this.elem,"display")==="none"){this.elem.style.display="block";}} |
442 | | -if(this.options.hide){jQuery(this.elem).hide();} |
443 | | -if(this.options.hide||this.options.show){for(var p in this.options.curAnim){jQuery.style(this.elem,p,this.options.orig[p]);}} |
444 | | -this.options.complete.call(this.elem);} |
445 | | -return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;var specialEasing=this.options.specialEasing&&this.options.specialEasing[this.prop];var defaultEasing=this.options.easing||(jQuery.easing.swing?"swing":"linear");this.pos=jQuery.easing[specialEasing||defaultEasing](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} |
446 | | -return true;}};jQuery.extend(jQuery.fx,{tick:function(){var timers=jQuery.timers;for(var i=0;i<timers.length;i++){if(!timers[i]()){timers.splice(i--,1);}} |
447 | | -if(!timers.length){jQuery.fx.stop();}},stop:function(){clearInterval(timerId);timerId=null;},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.style(fx.elem,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null){fx.elem.style[fx.prop]=(fx.prop==="width"||fx.prop==="height"?Math.max(0,fx.now):fx.now)+fx.unit;}else{fx.elem[fx.prop]=fx.now;}}}});if(jQuery.expr&&jQuery.expr.filters){jQuery.expr.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};} |
448 | | -function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;} |
449 | | -if("getBoundingClientRect"in document.documentElement){jQuery.fn.offset=function(options){var elem=this[0];if(options){return this.each(function(i){jQuery.offset.setOffset(this,options,i);});} |
450 | | -if(!elem||!elem.ownerDocument){return null;} |
451 | | -if(elem===elem.ownerDocument.body){return jQuery.offset.bodyOffset(elem);} |
452 | | -var box=elem.getBoundingClientRect(),doc=elem.ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.support.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.support.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};}else{jQuery.fn.offset=function(options){var elem=this[0];if(options){return this.each(function(i){jQuery.offset.setOffset(this,options,i);});} |
453 | | -if(!elem||!elem.ownerDocument){return null;} |
454 | | -if(elem===elem.ownerDocument.body){return jQuery.offset.bodyOffset(elem);} |
455 | | -jQuery.offset.initialize();var offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView?defaultView.getComputedStyle(elem,null):elem.currentStyle,top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){if(jQuery.offset.supportsFixedPosition&&prevComputedStyle.position==="fixed"){break;} |
456 | | -computedStyle=defaultView?defaultView.getComputedStyle(elem,null):elem.currentStyle;top-=elem.scrollTop;left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop;left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.nodeName))){top+=parseFloat(computedStyle.borderTopWidth)||0;left+=parseFloat(computedStyle.borderLeftWidth)||0;} |
457 | | -prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;} |
458 | | -if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible"){top+=parseFloat(computedStyle.borderTopWidth)||0;left+=parseFloat(computedStyle.borderLeftWidth)||0;} |
459 | | -prevComputedStyle=computedStyle;} |
460 | | -if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static"){top+=body.offsetTop;left+=body.offsetLeft;} |
461 | | -if(jQuery.offset.supportsFixedPosition&&prevComputedStyle.position==="fixed"){top+=Math.max(docElem.scrollTop,body.scrollTop);left+=Math.max(docElem.scrollLeft,body.scrollLeft);} |
462 | | -return{top:top,left:left};};} |
463 | | -jQuery.offset={initialize:function(){var body=document.body,container=document.createElement("div"),innerDiv,checkDiv,table,td,bodyMarginTop=parseFloat(jQuery.curCSS(body,"marginTop",true))||0,html="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";jQuery.extend(container.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"});container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild;checkDiv=innerDiv.firstChild;td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);checkDiv.style.position="fixed",checkDiv.style.top="20px";this.supportsFixedPosition=(checkDiv.offsetTop===20||checkDiv.offsetTop===15);checkDiv.style.position=checkDiv.style.top="";innerDiv.style.overflow="hidden",innerDiv.style.position="relative";this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);this.doesNotIncludeMarginInBodyOffset=(body.offsetTop!==bodyMarginTop);body.removeChild(container);body=container=innerDiv=checkDiv=table=td=null;jQuery.offset.initialize=jQuery.noop;},bodyOffset:function(body){var top=body.offsetTop,left=body.offsetLeft;jQuery.offset.initialize();if(jQuery.offset.doesNotIncludeMarginInBodyOffset){top+=parseFloat(jQuery.curCSS(body,"marginTop",true))||0;left+=parseFloat(jQuery.curCSS(body,"marginLeft",true))||0;} |
464 | | -return{top:top,left:left};},setOffset:function(elem,options,i){if(/static/.test(jQuery.curCSS(elem,"position"))){elem.style.position="relative";} |
465 | | -var curElem=jQuery(elem),curOffset=curElem.offset(),curTop=parseInt(jQuery.curCSS(elem,"top",true),10)||0,curLeft=parseInt(jQuery.curCSS(elem,"left",true),10)||0;if(jQuery.isFunction(options)){options=options.call(elem,i,curOffset);} |
466 | | -var props={top:(options.top-curOffset.top)+curTop,left:(options.left-curOffset.left)+curLeft};if("using"in options){options.using.call(elem,props);}else{curElem.css(props);}}};jQuery.fn.extend({position:function(){if(!this[0]){return null;} |
467 | | -var elem=this[0],offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].nodeName)?{top:0,left:0}:offsetParent.offset();offset.top-=parseFloat(jQuery.curCSS(elem,"marginTop",true))||0;offset.left-=parseFloat(jQuery.curCSS(elem,"marginLeft",true))||0;parentOffset.top+=parseFloat(jQuery.curCSS(offsetParent[0],"borderTopWidth",true))||0;parentOffset.left+=parseFloat(jQuery.curCSS(offsetParent[0],"borderLeftWidth",true))||0;return{top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};},offsetParent:function(){return this.map(function(){var offsetParent=this.offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.nodeName)&&jQuery.css(offsetParent,"position")==="static")){offsetParent=offsetParent.offsetParent;} |
468 | | -return offsetParent;});}});jQuery.each(["Left","Top"],function(i,name){var method="scroll"+name;jQuery.fn[method]=function(val){var elem=this[0],win;if(!elem){return null;} |
469 | | -if(val!==undefined){return this.each(function(){win=getWindow(this);if(win){win.scrollTo(!i?val:jQuery(win).scrollLeft(),i?val:jQuery(win).scrollTop());}else{this[method]=val;}});}else{win=getWindow(elem);return win?("pageXOffset"in win)?win[i?"pageYOffset":"pageXOffset"]:jQuery.support.boxModel&&win.document.documentElement[method]||win.document.body[method]:elem[method];}};});function getWindow(elem){return("scrollTo"in elem&&elem.document)?elem:elem.nodeType===9?elem.defaultView||elem.parentWindow:false;} |
470 | | -jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn["inner"+name]=function(){return this[0]?jQuery.css(this[0],type,false,"padding"):null;};jQuery.fn["outer"+name]=function(margin){return this[0]?jQuery.css(this[0],type,false,margin?"margin":"border"):null;};jQuery.fn[type]=function(size){var elem=this[0];if(!elem){return size==null?null:this;} |
471 | | -if(jQuery.isFunction(size)){return this.each(function(i){var self=jQuery(this);self[type](size.call(this,i,self[type]()));});} |
472 | | -return("scrollTo"in elem&&elem.document)?elem.document.compatMode==="CSS1Compat"&&elem.document.documentElement["client"+name]||elem.document.body["client"+name]:(elem.nodeType===9)?Math.max(elem.documentElement["client"+name],elem.body["scroll"+name],elem.documentElement["scroll"+name],elem.body["offset"+name],elem.documentElement["offset"+name]):size===undefined?jQuery.css(elem,type):this.css(type,typeof size==="string"?size:size+"px");};});window.jQuery=window.$=jQuery;})(window);$j=jQuery.noConflict(); |
\ No newline at end of file |
Index: trunk/extensions/AdManager/AdManager.i18n.php |
— | — | @@ -1,15 +1,24 @@ |
2 | 2 | <?php |
| 3 | +/** |
| 4 | + * Internationalization file for the AdManager extension. |
| 5 | + * |
| 6 | + * @file |
| 7 | + * @ingroup Extensions |
| 8 | + */ |
3 | 9 | $messages = array(); |
4 | | - |
| 10 | + |
| 11 | +/** English |
| 12 | + * @author Ike Hecht |
| 13 | + */ |
5 | 14 | $messages['en'] = array( |
6 | | - 'admanager' => 'Ad Manager', |
7 | | - 'admanagerzones' => 'Ad Manager Zones', |
| 15 | + 'admanager' => 'Ad Manager', |
| 16 | + 'admanagerzones' => 'Ad Manager Zones', |
8 | 17 | 'admanager-desc' => 'Provides a [[Special:AdManager|special page]] which allows sysops to set the zone for pages or categories', |
9 | 18 | 'admanager_docu' => 'To add or remove the ad zone of a page or entire category, add or remove its title below.', |
10 | 19 | 'admanagerzones_docu' => 'Enter each ad zone number on its own line.', |
11 | 20 | 'admanager_invalidtargetpage' => 'No page found with title "$1".', |
12 | 21 | 'admanager_invalidtargetcategory' => 'No category found with title "$1".', |
13 | | - 'admanager_notable' => 'Error! A required database table was not found! Run update.php first.', |
| 22 | + 'admanager_notable' => 'Error! A required database table was not found! Run update.php first.', |
14 | 23 | 'admanager_noAdManagerZones' => 'Error! You must add some ad zones. Enter them at [[Special:AdManagerZones]].', |
15 | 24 | 'admanager_labelPage' => 'Page titles', |
16 | 25 | 'admanager_labelCategory' => 'Category names', |
— | — | @@ -20,10 +29,10 @@ |
21 | 30 | 'admanager_added' => 'Your changes have been saved', |
22 | 31 | 'admanager_noadsset' => '$1 has been set to show no ads', |
23 | 32 | 'admanager_addedzone' => 'Added zone', |
24 | | - 'admanager_zonenum' => 'Zone #:', |
| 33 | + 'admanager_zonenum' => 'Zone #: $1', |
25 | 34 | 'admanager_zonenotnumber' => 'Error! $1 is not a number.', |
26 | 35 | 'admanager_return' => 'Return to [[Special:AdManager]]', |
27 | 36 | 'admanager_gotoads' => '[[Special:AdManager|Edit ad placement]]', |
28 | | - 'admanager_gotozones' => '[[Special:AdManagerZones|Edit ad zones]]' |
29 | | - |
30 | | -); |
| 37 | + 'admanager_gotozones' => '[[Special:AdManagerZones|Edit ad zones]]', |
| 38 | + 'right-admanager' => '[[Special:AdManager|Manage advertising configuration]]', |
| 39 | +); |
\ No newline at end of file |
Index: trunk/extensions/AdManager/AdManager.utils.php |
— | — | @@ -5,19 +5,25 @@ |
6 | 6 | |
7 | 7 | class AdManagerUtils { |
8 | 8 | |
9 | | - #Displays an error box message. Returns true if error found |
10 | | - public static function checkForAndDisplayError( $condition, $wikiMsg = 'admanager_error') { |
| 9 | + /** |
| 10 | + * Displays an error box message. |
| 11 | + * |
| 12 | + * @param $condition Boolean |
| 13 | + * @param $wikiMsg String: name of a system message to output as wikitext |
| 14 | + * @return Boolean: true if error found |
| 15 | + */ |
| 16 | + public static function checkForAndDisplayError( $condition, $wikiMsg = 'admanager_error' ) { |
11 | 17 | global $wgOut; |
12 | | - |
13 | | - if (!$condition) { |
14 | | - $wgOut->addHtml('<div class="errorbox">'); |
| 18 | + |
| 19 | + if ( !$condition ) { |
| 20 | + $wgOut->addHTML( '<div class="errorbox">' ); |
15 | 21 | $wgOut->addWikiMsg( $wikiMsg ); |
16 | | - $wgOut->addHtml('</div>'); |
| 22 | + $wgOut->addHTML( '</div>' ); |
17 | 23 | return true; |
18 | 24 | } |
19 | 25 | return false; |
20 | 26 | } |
21 | | - |
| 27 | + |
22 | 28 | /** |
23 | 29 | * Helper function to display a hidden field for different versions |
24 | 30 | * of MediaWiki. |
Index: trunk/extensions/AdManager/AdManager.php |
— | — | @@ -1,26 +1,43 @@ |
2 | 2 | <?php |
3 | 3 | /** |
4 | | - * AdManager - a Mediawiki extension that allows setting an ad zone for indiviual pages or categories |
| 4 | + * AdManager - a MediaWiki extension that allows setting an ad zone for |
| 5 | + * individual pages or categories |
5 | 6 | * |
6 | | - * The special page created is 'Special:AdManager', which allows sysops to set the zone for the |
7 | | - * pages or categories. The correct ad code for adding the zone is automatically added to the correct page. |
| 7 | + * The special page created is 'Special:AdManager', which allows sysops to set |
| 8 | + * the zone for the pages or categories. |
| 9 | + * The correct ad code for adding the zone is automatically added to the |
| 10 | + * correct page. |
| 11 | + * |
| 12 | + * @file |
| 13 | + * @ingroup Extensions |
| 14 | + * @version 0.2 |
| 15 | + * @author Ike Hecht |
| 16 | + * @link http://www.mediawiki.org/wiki/Extension:AdManager Documentation |
8 | 17 | */ |
9 | 18 | |
10 | | -if ( !defined( 'MEDIAWIKI' ) ) die( 'Not an entry point.' ); |
| 19 | +if ( !defined( 'MEDIAWIKI' ) ) { |
| 20 | + die( 'Not an entry point.' ); |
| 21 | +} |
11 | 22 | |
12 | 23 | define( 'AD_TABLE', 'ad' ); |
13 | 24 | define( 'AD_ZONES_TABLE', 'adzones' ); |
14 | 25 | |
15 | | -// credits |
| 26 | +// Extension credits that will show up on Special:Version |
16 | 27 | $wgExtensionCredits['specialpage'][] = array( |
17 | 28 | 'path' => __FILE__, |
18 | 29 | 'name' => 'AdManager', |
19 | | - 'version' => '0.1', |
| 30 | + 'version' => '0.2', |
20 | 31 | 'author' => 'Ike Hecht for WikiWorks', |
21 | 32 | 'url' => 'http://www.mediawiki.org/wiki/Extension:AdManager', |
22 | | - 'descriptionmsg' => 'admanager-desc', |
| 33 | + 'descriptionmsg' => 'admanager-desc', |
23 | 34 | ); |
24 | 35 | |
| 36 | +// Lowercase name of the advertising service. Currently supported values are: |
| 37 | +// openx and banman |
| 38 | +$wgAdManagerService = null; |
| 39 | + |
| 40 | +$wgAdManagerCode = null; |
| 41 | + |
25 | 42 | $dir = dirname( __FILE__ ) . '/'; |
26 | 43 | $wgExtensionMessagesFiles['AdManager'] = $dir . 'AdManager.i18n.php'; |
27 | 44 | |
— | — | @@ -30,13 +47,11 @@ |
31 | 48 | |
32 | 49 | $wgSpecialPages['AdManagerZones'] = 'SpecialAdManagerZones'; |
33 | 50 | $wgSpecialPages['AdManager'] = 'SpecialAdManager'; |
34 | | -$wgSpecialPageGroups['AdManagerZones'] = 'other'; |
35 | | -$wgSpecialPageGroups['AdManager'] = 'other'; |
36 | 51 | $wgAutoloadClasses['SpecialAdManagerZones'] = $dir . 'SpecialAdManagerZones.php'; |
37 | 52 | $wgAutoloadClasses['SpecialAdManager'] = $dir . 'SpecialAdManager.php'; |
38 | 53 | |
39 | | -$wgAutoloadClasses['AdManagerHooks'] = $dir . '/AdManager.hooks.php'; |
| 54 | +$wgAutoloadClasses['AdManagerHooks'] = $dir . 'AdManager.hooks.php'; |
40 | 55 | $wgHooks['LoadExtensionSchemaUpdates'][] = 'AdManagerHooks::onSchemaUpdate'; |
41 | 56 | $wgHooks['SkinBuildSidebar'][] = 'AdManagerHooks::SkinBuildSidebar'; |
42 | 57 | |
43 | | -$wgAutoloadClasses['AdManagerUtils'] = $dir . '/AdManager.utils.php'; |
\ No newline at end of file |
| 58 | +$wgAutoloadClasses['AdManagerUtils'] = $dir . 'AdManager.utils.php'; |
\ No newline at end of file |
Index: trunk/extensions/AdManager/SpecialAdManagerZones.php |
— | — | @@ -1,43 +1,65 @@ |
2 | 2 | <?php |
| 3 | + |
3 | 4 | class SpecialAdManagerZones extends SpecialPage { |
4 | | - |
5 | | - function __construct() { |
6 | | - global $wgVersion; |
7 | | - parent::__construct( 'AdManagerZones' ); |
8 | | - if ( version_compare( $wgVersion, '1.16', '<' ) ) { |
9 | | - wfLoadExtensionMessages( 'AdManager' ); |
10 | | - } |
| 5 | + |
| 6 | + /** |
| 7 | + * Constructor -- set up the new special page |
| 8 | + */ |
| 9 | + public function __construct() { |
| 10 | + parent::__construct( 'AdManagerZones', 'admanager' ); |
11 | 11 | } |
12 | 12 | |
13 | | - function execute( $query ) { |
14 | | - global $wgUser, $wgOut, $wgDBprefix; |
15 | | - if ( ! $wgUser->isAllowed( 'admanager' ) ) { |
| 13 | + /** |
| 14 | + * Show the special page |
| 15 | + * |
| 16 | + * @param $query Mixed: parameter passed to the special page or null |
| 17 | + */ |
| 18 | + public function execute( $query ) { |
| 19 | + global $wgUser, $wgOut; |
| 20 | + |
| 21 | + // Check that the user is allowed to access this special page |
| 22 | + if ( !$wgUser->isAllowed( 'admanager' ) ) { |
16 | 23 | $wgOut->permissionRequired( 'admanager' ); |
17 | 24 | return; |
18 | | - } |
| 25 | + } |
19 | 26 | |
| 27 | + // Show a message if the database is in read-only mode |
| 28 | + if ( wfReadOnly() ) { |
| 29 | + $wgOut->readOnlyPage(); |
| 30 | + return; |
| 31 | + } |
| 32 | + |
| 33 | + // If user is blocked, s/he doesn't need to access this page |
| 34 | + if( $wgUser->isBlocked() ) { |
| 35 | + $wgOut->blockedPage( false ); |
| 36 | + return false; |
| 37 | + } |
| 38 | + |
| 39 | + // Set the page title, robot policies, etc. |
20 | 40 | $this->setHeaders(); |
21 | | - if ( method_exists( $wgOut, 'addModuleStyles' ) && |
22 | | - !is_null( $wgOut->getResourceLoader()->getModule( 'mediawiki.special' ) ) ) { |
| 41 | + |
| 42 | + // Add CSS via ResourceLoader |
| 43 | + if ( defined( 'MW_SUPPORTS_RESOURCE_MODULES' ) ) { |
23 | 44 | $wgOut->addModuleStyles( 'mediawiki.special' ); |
24 | 45 | } |
25 | | - |
26 | | - $fullTableName = $wgDBprefix . AD_ZONES_TABLE; |
| 46 | + |
| 47 | + $fullTableName = AD_ZONES_TABLE; |
27 | 48 | $dbr = wfGetDB( DB_SLAVE ); |
28 | 49 | if ( AdManagerUtils::checkForAndDisplayError( $dbr->tableExists( $fullTableName ), 'admanager_notable' ) ) { |
29 | 50 | return; |
30 | 51 | } |
31 | | - |
| 52 | + |
32 | 53 | $this->doSpecialAdManagerZones(); |
33 | 54 | } |
34 | | - |
| 55 | + |
35 | 56 | function doSpecialAdManagerZones() { |
36 | 57 | global $wgRequest; |
| 58 | + |
37 | 59 | $errors = array(); |
38 | | - |
| 60 | + |
39 | 61 | if ( $wgRequest->getCheck( 'submitted' ) ) { |
40 | 62 | $this->zones = explode( "\n", trim( $wgRequest->getVal( 'zones' ) ) ); |
41 | | - foreach ($this->zones as $zone) { |
| 63 | + foreach ( $this->zones as $zone ) { |
42 | 64 | $zone = trim( $zone ); |
43 | 65 | if ( !is_numeric( $zone ) ) { |
44 | 66 | $errors['admanager_zonenotnumber'][] = $zone; |
— | — | @@ -47,76 +69,81 @@ |
48 | 70 | $this->addZones(); |
49 | 71 | } |
50 | 72 | } |
51 | | - |
52 | | - $this->showForm( $errors ); |
| 73 | + |
| 74 | + $this->showForm( $errors ); |
53 | 75 | } |
| 76 | + |
54 | 77 | function addZones() { |
55 | | - global $wgOut, $wgRequest, $wgDBprefix; |
56 | | - |
| 78 | + global $wgOut; |
| 79 | + |
57 | 80 | $zones = $this->zones; |
58 | 81 | |
59 | | - $dbw = wfGetDB( DB_MASTER ); |
60 | | - $fullTableName = $wgDBprefix . AD_ZONES_TABLE; |
61 | | - |
62 | | - $dbw->delete( $fullTableName, '*'); |
| 82 | + $dbw = wfGetDB( DB_MASTER ); |
| 83 | + $fullTableName = AD_ZONES_TABLE; |
| 84 | + |
| 85 | + $dbw->delete( $fullTableName, '*', __METHOD__ ); |
63 | 86 | $text = "<div class=\"successbox\">\n"; |
64 | 87 | foreach ( $zones as $zone ) { |
65 | 88 | if ( $zone ) { |
66 | | - $dbw->insert( |
67 | | - $fullTableName, array( 'ad_zone_id' => $zone ) |
| 89 | + $dbw->insert( |
| 90 | + $fullTableName, |
| 91 | + array( 'ad_zone_id' => $zone ), |
| 92 | + __METHOD__ |
68 | 93 | ); |
69 | | - $text .= "* " . wfmsg('admanager_addedzone') . " $zone"; |
| 94 | + $text .= '* ' . wfMsg( 'admanager_addedzone' ) . " $zone"; |
70 | 95 | } |
71 | 96 | } |
72 | 97 | $text .= "</div><br clear=\"both\" />"; |
73 | 98 | $wgOut->addWikiText( $text ); |
74 | 99 | } |
75 | | - |
| 100 | + |
76 | 101 | function showForm( array $errors ) { |
77 | | - global $wgOut, $wgDBprefix; |
| 102 | + global $wgOut; |
78 | 103 | |
79 | 104 | if ( empty( $errors ) ) { |
80 | 105 | $wgOut->addWikiMsg( 'admanagerzones_docu' ); |
81 | 106 | } else { |
82 | 107 | $text = "<div class=\"errorbox\">\n"; |
83 | 108 | foreach ( $errors as $message => $pageTitles ) { |
84 | | - foreach ( $pageTitles as $pageTitle) { |
85 | | - $text .= wfMsg( $message, $pageTitle ) . "<br />"; |
| 109 | + foreach ( $pageTitles as $pageTitle ) { |
| 110 | + $text .= wfMsg( $message, $pageTitle ) . '<br />'; |
86 | 111 | } |
87 | 112 | } |
88 | 113 | $text .= "</div><br clear=\"both\" />"; |
89 | 114 | $wgOut->addWikiText( $text ); |
90 | 115 | } |
91 | | - |
92 | | - $fullTableName = $wgDBprefix . AD_ZONES_TABLE; |
| 116 | + |
| 117 | + $fullTableName = AD_ZONES_TABLE; |
93 | 118 | $dbr = wfGetDB( DB_SLAVE ); |
94 | 119 | $current = $dbr->select( |
95 | | - $fullTableName, |
96 | | - array( '*' ) |
| 120 | + $fullTableName, |
| 121 | + array( '*' ), |
| 122 | + array(), |
| 123 | + __METHOD__ |
97 | 124 | ); |
98 | | - |
99 | | - //Fetch current table into array |
100 | | - $currentArray = Array(); |
| 125 | + |
| 126 | + // Fetch current table into array |
| 127 | + $currentArray = array(); |
101 | 128 | while ( $currentRow = $current->fetchObject() ) { |
102 | 129 | $currentArray[] = $currentRow->ad_zone_id; |
103 | 130 | } |
104 | | - |
105 | | - $display = ''; |
106 | | - foreach ($currentArray as $zone) { |
| 131 | + |
| 132 | + $display = ''; |
| 133 | + foreach ( $currentArray as $zone ) { |
107 | 134 | $display .= "$zone\n"; |
108 | 135 | } |
109 | | - |
110 | | - $text = Xml::openElement( 'form', array( 'id' => 'admanagerzones', 'action' => $this->getTitle()->getFullUrl(), 'method' => 'post' ) ) . "\n" . |
| 136 | + |
| 137 | + $text = Xml::openElement( 'form', array( 'id' => 'admanagerzones', 'action' => $this->getTitle()->getFullURL(), 'method' => 'post' ) ) . "\n" . |
111 | 138 | AdManagerUtils::hiddenField( 'title', $this->getTitle()->getPrefixedText() ) . |
112 | 139 | AdManagerUtils::hiddenField( 'submitted', 1 ); |
113 | 140 | $text .= Xml::textarea( 'zones' , $display, 25, 20, array( 'style' => 'width: auto; margin-bottom: 1em;' ) ); |
114 | | - $text .= Xml::element('br'); |
| 141 | + $text .= Xml::element( 'br' ); |
115 | 142 | $text .= Xml::submitButton( wfMsg( 'admanager_submit' ) ); |
116 | 143 | $text .= Xml::closeElement( 'form' ); |
117 | | - $text .= Xml::element('br'); |
118 | | - |
| 144 | + $text .= Xml::element( 'br' ); |
| 145 | + |
119 | 146 | $wgOut->addHTML( $text ); |
120 | | - |
| 147 | + |
121 | 148 | $wgOut->addWikiMsg( 'admanager_gotoads' ); |
122 | 149 | } |
123 | 150 | } |
\ No newline at end of file |
Index: trunk/extensions/AdManager/SpecialAdManager.php |
— | — | @@ -1,133 +1,177 @@ |
2 | 2 | <?php |
| 3 | + |
3 | 4 | class SpecialAdManager extends SpecialPage { |
4 | 5 | const NUM_BLANK_ROWS = 5; |
5 | 6 | const BLANK = '----'; |
6 | | - |
7 | | - function __construct() { |
8 | | - global $wgVersion; |
9 | | - parent::__construct( 'AdManager' ); |
10 | | - if ( version_compare( $wgVersion, '1.16', '<' ) ) { |
11 | | - wfLoadExtensionMessages( 'AdManager' ); |
12 | | - } |
| 7 | + |
| 8 | + /** |
| 9 | + * Constructor -- set up the new special page |
| 10 | + */ |
| 11 | + public function __construct() { |
| 12 | + parent::__construct( 'AdManager', 'admanager' ); |
13 | 13 | } |
14 | 14 | |
15 | | - function execute( $query ) { |
16 | | - global $wgUser, $wgOut, $wgDBprefix; |
17 | | - |
18 | | - if ( ! $wgUser->isAllowed( 'admanager' ) ) { |
| 15 | + /** |
| 16 | + * Show the special page |
| 17 | + * |
| 18 | + * @param $query Mixed: parameter passed to the special page or null |
| 19 | + */ |
| 20 | + public function execute( $query ) { |
| 21 | + global $wgUser, $wgOut; |
| 22 | + |
| 23 | + // Check that the user is allowed to access this special page |
| 24 | + if ( !$wgUser->isAllowed( 'admanager' ) ) { |
19 | 25 | $wgOut->permissionRequired( 'admanager' ); |
20 | 26 | return; |
21 | | - } |
| 27 | + } |
22 | 28 | |
| 29 | + // Show a message if the database is in read-only mode |
| 30 | + if ( wfReadOnly() ) { |
| 31 | + $wgOut->readOnlyPage(); |
| 32 | + return; |
| 33 | + } |
| 34 | + |
| 35 | + // If user is blocked, s/he doesn't need to access this page |
| 36 | + if( $wgUser->isBlocked() ) { |
| 37 | + $wgOut->blockedPage( false ); |
| 38 | + return false; |
| 39 | + } |
| 40 | + |
| 41 | + // Set the page title, robot policies, etc. |
23 | 42 | $this->setHeaders(); |
24 | | - if ( method_exists( $wgOut, 'addModuleStyles' ) && |
25 | | - !is_null( $wgOut->getResourceLoader()->getModule( 'mediawiki.special' ) ) ) { |
| 43 | + |
| 44 | + // Add CSS via ResourceLoader |
| 45 | + if ( defined( 'MW_SUPPORTS_RESOURCE_MODULES' ) ) { |
26 | 46 | $wgOut->addModuleStyles( 'mediawiki.special' ); |
27 | 47 | } |
28 | | - |
| 48 | + |
29 | 49 | $dbr = wfGetDB( DB_SLAVE ); |
30 | | - $fullTableName = $wgDBprefix . AD_TABLE; |
31 | | - $fullTableNameZones = $wgDBprefix . AD_ZONES_TABLE; |
32 | | - if ( AdManagerUtils::checkForAndDisplayError( $dbr->tableExists( $fullTableName ) && $dbr->tableExists( $fullTableNameZones ), 'admanager_notable' ) ) { |
| 50 | + $fullTableName = AD_TABLE; |
| 51 | + $fullTableNameZones = AD_ZONES_TABLE; |
| 52 | + if ( |
| 53 | + AdManagerUtils::checkForAndDisplayError( |
| 54 | + $dbr->tableExists( $fullTableName ) && |
| 55 | + $dbr->tableExists( $fullTableNameZones ), |
| 56 | + 'admanager_notable' |
| 57 | + ) |
| 58 | + ) |
| 59 | + { |
33 | 60 | return; |
34 | 61 | } |
35 | | - |
36 | | - |
| 62 | + |
37 | 63 | $currentZones = $dbr->select( |
38 | | - $fullTableNameZones, |
39 | | - array( '*' ) |
| 64 | + $fullTableNameZones, |
| 65 | + array( '*' ), |
| 66 | + array(), |
| 67 | + __METHOD__ |
40 | 68 | ); |
41 | | - if ( AdManagerUtils::checkForAndDisplayError( $currentZones->numRows() > 0 , 'admanager_noAdManagerZones' ) ) { |
| 69 | + if ( AdManagerUtils::checkForAndDisplayError( $currentZones->numRows() > 0, 'admanager_noAdManagerZones' ) ) { |
42 | 70 | return; |
43 | 71 | } |
44 | | - //Fetch current zones table into array |
45 | | - $this->adManagerZones = Array(); |
| 72 | + |
| 73 | + // Fetch current zones table into array |
| 74 | + $this->adManagerZones = array(); |
46 | 75 | while ( $currentRow = $currentZones->fetchObject() ) { |
47 | 76 | $this->adManagerZones[] = $currentRow->ad_zone_id; |
48 | 77 | } |
49 | | - |
50 | | - $this->adManagerZones[] = wfmsg('admanager_noads'); |
51 | | - |
| 78 | + |
| 79 | + $this->adManagerZones[] = wfMsg( 'admanager_noads' ); |
| 80 | + |
52 | 81 | $this->doSpecialAdManager(); |
53 | 82 | } |
54 | | - |
| 83 | + |
55 | 84 | function doSpecialAdManager() { |
56 | 85 | global $wgRequest; |
| 86 | + |
57 | 87 | $errors = array(); |
58 | | - |
| 88 | + |
59 | 89 | $this->target['Page'] = array(); |
60 | 90 | $this->target['Category'] = array(); |
| 91 | + |
61 | 92 | if ( $wgRequest->getCheck( 'submitted' ) ) { |
62 | | - //Load user input and do error checking |
63 | | - $tableTypes = array ('Page', 'Category'); |
| 93 | + // Load user input and do error checking |
| 94 | + $tableTypes = array( 'Page', 'Category' ); |
64 | 95 | foreach ( $this->adManagerZones as $zone ) { |
65 | 96 | foreach ( $tableTypes as $tableType ) { |
66 | 97 | $titles = explode( "\n", trim( $wgRequest->getVal( "textarea_{$zone}_{$tableType}" ) ) ); |
67 | | - |
68 | | - foreach ($titles as $title) { |
| 98 | + |
| 99 | + foreach ( $titles as $title ) { |
69 | 100 | $title = trim( $title ); |
70 | | - if ( !$title ) continue; |
71 | | - |
72 | | - /*if ( $zone == wfmsg('admanager_noads') ) { |
73 | | - continue; |
| 101 | + if ( !$title ) { |
| 102 | + continue; |
| 103 | + } |
| 104 | + |
| 105 | + /*if ( $zone == wfMsg( 'admanager_noads' ) ) { |
| 106 | + continue; |
74 | 107 | }*/ |
75 | | - |
| 108 | + |
76 | 109 | if ( $tableType == 'Page' ) { |
77 | | - $pageObject = Title::newFromText( trim($title) ); |
| 110 | + $pageObject = Title::newFromText( trim( $title ) ); |
78 | 111 | if ( !$pageObject->exists() ) { |
79 | 112 | $errors['admanager_invalidtargetpage'][] = $title; |
80 | | - } |
81 | | - else { |
| 113 | + } else { |
82 | 114 | $this->target['Page'][$zone][] = $title; |
83 | 115 | } |
84 | | - } |
85 | | - else { |
| 116 | + } else { |
86 | 117 | $categoryObject = Category::newFromName( $title ); |
87 | 118 | if ( !$categoryObject->getID() ) { |
88 | 119 | $errors['admanager_invalidtargetcategory'][] = $title; |
89 | | - } |
90 | | - else { |
| 120 | + } else { |
91 | 121 | $this->target['Category'][$zone][] = $title; |
92 | 122 | } |
93 | 123 | } |
94 | 124 | } |
95 | 125 | } |
96 | 126 | } |
| 127 | + |
97 | 128 | if ( empty( $errors ) ) { |
98 | 129 | $this->addZoneToTitle(); |
99 | 130 | return; |
100 | | - } |
| 131 | + } |
101 | 132 | } |
102 | | - $this->showForm( $errors ); |
| 133 | + |
| 134 | + $this->showForm( $errors ); |
103 | 135 | } |
104 | | - |
| 136 | + |
105 | 137 | function addZoneToTitle() { |
106 | | - global $wgOut, $wgDBprefix; |
107 | | - |
108 | | - $dbw = wfGetDB( DB_MASTER ); |
109 | | - $fullTableName = $wgDBprefix . AD_TABLE; |
110 | | - |
111 | | - $dbw->delete( $fullTableName, '*'); |
112 | | - |
113 | | - $tableTypes = array ('Page', 'Category'); |
| 138 | + global $wgOut; |
| 139 | + |
| 140 | + $dbw = wfGetDB( DB_MASTER ); |
| 141 | + $fullTableName = AD_TABLE; |
| 142 | + |
| 143 | + $dbw->delete( $fullTableName, '*', __METHOD__ ); |
| 144 | + |
| 145 | + $tableTypes = array( 'Page', 'Category' ); |
114 | 146 | foreach ( $tableTypes as $tableType ) { |
115 | 147 | foreach ( $this->target[$tableType] as $targetZoneID => $titlesArray ) { |
116 | | - if ( $targetZoneID == wfmsg('admanager_noads') ) { |
117 | | - $targetZoneID = "NULL"; |
| 148 | + if ( $targetZoneID == wfMsg( 'admanager_noads' ) ) { |
| 149 | + $targetZoneID = 'NULL'; |
118 | 150 | } |
119 | 151 | foreach ( $titlesArray as $title ) { |
120 | | - //Depending on fields being processed, lookup either the text's Page ID or Category ID |
121 | | - $targetPageID = ( $tableType == 'Page' ? Title::newFromText( $title )->getArticleID() : Category::newFromName( $title )->getID() ); |
122 | | - $dbw->insert( |
123 | | - $fullTableName, array( 'ad_page_id' => $targetPageID, 'ad_zone' => $targetZoneID, 'ad_page_is_category' => ( $tableType == 'Category' ? TRUE : FALSE ) ) |
| 152 | + // Depending on fields being processed, lookup either the |
| 153 | + // text's Page ID or Category ID |
| 154 | + if ( $tableType == 'Page' ) { |
| 155 | + $targetPageID = Title::newFromText( $title )->getArticleID(); |
| 156 | + } else { |
| 157 | + $targetPageID = Category::newFromName( $title )->getID(); |
| 158 | + } |
| 159 | + $dbw->insert( |
| 160 | + $fullTableName, |
| 161 | + array( |
| 162 | + 'ad_page_id' => $targetPageID, |
| 163 | + 'ad_zone' => $targetZoneID, |
| 164 | + 'ad_page_is_category' => ( $tableType == 'Category' ? true : false ) |
| 165 | + ), |
| 166 | + __METHOD__ |
124 | 167 | ); |
125 | 168 | } |
126 | | - } |
| 169 | + } |
127 | 170 | } |
| 171 | + |
128 | 172 | $wgOut->wrapWikiMsg( "<div class=\"successbox\" style=\"margin-right:3em;\">$1</div>", 'admanager_added' ); |
129 | | - $wgOut->addWikiText( "<br clear=\"both\" />" . wfmsg('admanager_return') ); |
| 173 | + $wgOut->addWikiText( '<br clear="both" />' . wfMsg( 'admanager_return' ) ); |
130 | 174 | } |
131 | | - |
| 175 | + |
132 | 176 | function showForm( array $errors ) { |
133 | 177 | global $wgOut, $wgRequest; |
134 | 178 | |
— | — | @@ -144,60 +188,61 @@ |
145 | 189 | $wgOut->addWikiText( $text ); |
146 | 190 | } |
147 | 191 | |
148 | | - $text = Xml::openElement( 'form', array( 'id' => 'admanager', 'action' => $this->getTitle()->getFullUrl(), 'method' => 'post' ) ) . "\n" . |
| 192 | + $text = Xml::openElement( 'form', array( 'id' => 'admanager', 'action' => $this->getTitle()->getFullURL(), 'method' => 'post' ) ) . "\n" . |
149 | 193 | AdManagerUtils::hiddenField( 'title', $this->getTitle()->getPrefixedText() ) . |
150 | 194 | AdManagerUtils::hiddenField( 'submitted', 1 ); |
151 | | - |
152 | | - $this->currentData['Page'] = $this->getCurrentData('Page'); |
153 | | - $this->currentData['Category'] = $this->getCurrentData('Category'); |
154 | | - |
| 195 | + |
| 196 | + $this->currentData['Page'] = $this->getCurrentData( 'Page' ); |
| 197 | + $this->currentData['Category'] = $this->getCurrentData( 'Category' ); |
| 198 | + |
155 | 199 | foreach ( $this->adManagerZones as $zone ) { |
156 | | - $text .= '<h2> ' . wfMsg( 'admanager_zonenum' ) . " $zone" . " </h2>"; |
157 | | - $text .= '<div style = "float:left; margin-right: 6em;">'; |
158 | | - $text .= $this->drawTable('Page', $zone); |
159 | | - $text .= '</div><div style="float: left;">'; |
160 | | - $text .= $this->drawTable('Category', $zone); |
| 200 | + $text .= '<h2> ' . wfMsg( 'admanager_zonenum', $zone ) . ' </h2>'; |
| 201 | + $text .= '<div style="float:left; margin-right: 6em;">'; |
| 202 | + $text .= $this->drawTable( 'Page', $zone ); |
| 203 | + $text .= '</div><div style="float: left;">'; |
| 204 | + $text .= $this->drawTable( 'Category', $zone ); |
161 | 205 | $text .= '</div> <br clear="all">'; |
162 | 206 | } |
163 | | - $text .= Xml::element('br'); |
| 207 | + $text .= Xml::element( 'br' ); |
164 | 208 | $text .= Xml::submitButton( wfMsg( 'admanager_submit' ) ); |
165 | 209 | $text .= Xml::closeElement( 'form' ); |
166 | | - $text .= Xml::element('br'); |
| 210 | + $text .= Xml::element( 'br' ); |
167 | 211 | $wgOut->addHTML( $text ); |
168 | | - |
169 | | - |
| 212 | + |
| 213 | + |
170 | 214 | $wgOut->addWikiMsg( 'admanager_gotozones' ); |
171 | 215 | } |
172 | | - |
173 | | - function getCurrentData ( $tableType ) { |
174 | | - global $wgDBprefix; |
175 | 216 | |
176 | | - $fullTableName = $wgDBprefix . AD_TABLE; |
| 217 | + function getCurrentData( $tableType ) { |
| 218 | + $fullTableName = AD_TABLE; |
177 | 219 | $dbr = wfGetDB( DB_SLAVE ); |
178 | 220 | $current = $dbr->select( |
179 | | - $fullTableName, |
180 | | - array( 'ad_id', 'ad_page_id', 'ad_zone', 'ad_page_is_category' ), |
181 | | - 'ad_page_is_category IS '. ( $tableType == 'Page' ? 'NOT ' : '' ) . 'TRUE' |
| 221 | + $fullTableName, |
| 222 | + array( |
| 223 | + 'ad_id', 'ad_page_id', 'ad_zone', 'ad_page_is_category' |
| 224 | + ), |
| 225 | + 'ad_page_is_category IS '. ( $tableType == 'Page' ? 'NOT ' : '' ) . 'TRUE', |
| 226 | + __METHOD__ |
182 | 227 | ); |
183 | | - |
184 | | - //Fetch current table into array |
185 | | - $currentArray = Array(); |
| 228 | + |
| 229 | + // Fetch current table into array |
| 230 | + $currentArray = array(); |
186 | 231 | while ( $currentRow = $current->fetchObject() ) { |
187 | | - $currentArray[] = array( |
188 | | - //Depending on if we're fetching pages or categories, match the ID to the appropriate Title |
189 | | - 'ad_page_name' => ( $tableType == 'Page' ? Title::newFromID($currentRow->ad_page_id)->getFullText() : Category::newFromID( $currentRow->ad_page_id )->getName() ), |
| 232 | + $currentArray[] = array( |
| 233 | + // Depending on if we're fetching pages or categories, match the ID to the appropriate Title |
| 234 | + 'ad_page_name' => ( $tableType == 'Page' ? Title::newFromID( $currentRow->ad_page_id )->getFullText() : Category::newFromID( $currentRow->ad_page_id )->getName() ), |
190 | 235 | 'ad_zone' => $currentRow->ad_zone |
191 | 236 | ); |
192 | 237 | } |
193 | | - |
| 238 | + |
194 | 239 | return $currentArray; |
195 | 240 | } |
196 | | - |
197 | | - function drawTable ($tableType, $currentZone) { |
| 241 | + |
| 242 | + function drawTable( $tableType, $currentZone ) { |
198 | 243 | global $wgRequest; |
199 | | - |
| 244 | + |
200 | 245 | $page_label = wfMsg( "admanager_label$tableType" ); |
201 | | - |
| 246 | + |
202 | 247 | $text = <<<END |
203 | 248 | <table id="table$tableType"> |
204 | 249 | <tr> |
— | — | @@ -206,11 +251,10 @@ |
207 | 252 | |
208 | 253 | END; |
209 | 254 | |
210 | | - $display = ''; |
| 255 | + $display = ''; |
211 | 256 | if ( $wgRequest->getCheck( 'submitted' ) ) { |
212 | 257 | $display = $wgRequest->getVal( "textarea_{$currentZone}_{$tableType}" ); |
213 | | - } |
214 | | - else { |
| 258 | + } else { |
215 | 259 | foreach ( $this->currentData[$tableType] as $entry ) { |
216 | 260 | if ( $entry['ad_zone'] == $currentZone ) { |
217 | 261 | $display .= $entry['ad_page_name']. "\n"; |
— | — | @@ -218,9 +262,9 @@ |
219 | 263 | } |
220 | 264 | } |
221 | 265 | |
222 | | - $text .= '<tr><td>' . Xml::textarea( "textarea_{$currentZone}_{$tableType}" , $display, 30, 12, array( 'style' => 'width: auto;' ) ); |
| 266 | + $text .= '<tr><td>' . Xml::textarea( "textarea_{$currentZone}_{$tableType}" , $display, 30, 12, array( 'style' => 'width: auto;' ) ); |
223 | 267 | $text .= '</td></tr></table>'; |
224 | | - |
| 268 | + |
225 | 269 | return $text; |
226 | 270 | } |
227 | 271 | } |
\ No newline at end of file |
Index: trunk/extensions/AdManager/AdManager.hooks.php |
— | — | @@ -1,138 +1,153 @@ |
2 | 2 | <?php |
3 | 3 | |
4 | 4 | final class AdManagerHooks { |
5 | | - |
6 | | - static $catList = Array(); |
7 | | - |
| 5 | + |
| 6 | + static $catList = array(); |
| 7 | + |
8 | 8 | /** |
9 | 9 | * Schema update to set up the needed database tables. |
10 | | - */ |
| 10 | + */ |
11 | 11 | public static function onSchemaUpdate( /* DatabaseUpdater */ $updater = null ) { |
12 | 12 | global $wgDBtype; |
13 | | - |
| 13 | + |
14 | 14 | if ( $wgDBtype == 'mysql' ) { |
15 | 15 | // Set up the current schema. |
16 | 16 | if ( $updater === null ) { |
17 | 17 | // <= 1.16 support |
18 | 18 | global $wgExtNewTables, $wgExtNewIndexes; |
19 | | - |
| 19 | + |
20 | 20 | $wgExtNewTables[] = array( |
21 | 21 | AD_TABLE, |
22 | 22 | dirname( __FILE__ ) . '/AdManager.sql', |
23 | 23 | true |
24 | 24 | ); |
25 | | - |
| 25 | + |
26 | 26 | $wgExtNewTables[] = array( |
27 | 27 | AD_ZONE_TABLE, |
28 | 28 | dirname( __FILE__ ) . '/AdManager.sql', |
29 | 29 | true |
30 | 30 | ); |
31 | 31 | |
32 | | - /*TODO: Do we need an index?*/ |
33 | | - } |
34 | | - else { |
| 32 | + /* TODO: Do we need an index? */ |
| 33 | + } else { |
35 | 34 | // >= 1.17 support |
36 | | - $updater->addExtensionUpdate( array( |
| 35 | + $updater->addExtensionUpdate( array( |
37 | 36 | 'addTable', |
38 | 37 | AD_TABLE, |
39 | 38 | dirname( __FILE__ ) . '/AdManager.sql', |
40 | 39 | true |
41 | 40 | ) ); |
42 | | - $updater->addExtensionUpdate( array( |
| 41 | + $updater->addExtensionUpdate( array( |
43 | 42 | 'addTable', |
44 | 43 | AD_ZONE_TABLE, |
45 | 44 | dirname( __FILE__ ) . '/AdManager.sql', |
46 | 45 | true |
47 | 46 | ) ); |
48 | 47 | } |
49 | | - |
| 48 | + |
50 | 49 | } |
51 | | - |
| 50 | + |
52 | 51 | return true; |
53 | 52 | } |
54 | | - |
55 | | - //Recursively walks through tree array. Creates array containing each input's level. (array_walk_recursive doesn't like when the value is an array) |
56 | | - //A lower count indicates a closer ancestor to the page, that is supercategories are assigned higher numbers than subcategories |
57 | | - private static function assignLevel($value, $catName, $count = 0) { |
| 53 | + |
| 54 | + /** |
| 55 | + * Recursively walks through tree array. |
| 56 | + * Creates array containing each input's level. |
| 57 | + * (array_walk_recursive doesn't like when the value is an array) |
| 58 | + * A lower count indicates a closer ancestor to the page, that is |
| 59 | + * supercategories are assigned higher numbers than subcategories |
| 60 | + */ |
| 61 | + private static function assignLevel( $value, $catName, $count = 0 ) { |
58 | 62 | $count++; |
59 | | - |
60 | | - if(!empty($value)) { |
61 | | - array_walk ( $value , 'self::assignLevel', $count); |
62 | | - |
| 63 | + |
| 64 | + if( !empty( $value ) ) { |
| 65 | + array_walk( $value, 'self::assignLevel', $count ); |
63 | 66 | } |
64 | | - self::$catList[$catName] = $count; |
| 67 | + |
| 68 | + self::$catList[$catName] = $count; |
65 | 69 | } |
66 | | - |
67 | | - //Pop some ads at the bottom of the sidebar |
| 70 | + |
| 71 | + // Pop some ads at the bottom of the sidebar |
68 | 72 | public static function SkinBuildSidebar( $skin, &$sidebar ) { |
69 | | - global $wgOut, $wgDBprefix, $wgTitle, $wgAdManagerService, $wgAdManagerCode; |
70 | | - |
71 | | - $fullTableName = $wgDBprefix . AD_TABLE; |
72 | | - $dbr = wfGetDB( DB_SLAVE ); |
| 73 | + global $wgOut, $wgTitle, $wgAdManagerService, $wgAdManagerCode; |
| 74 | + |
| 75 | + $fullTableName = AD_TABLE; |
| 76 | + $dbr = wfGetDB( DB_SLAVE ); |
73 | 77 | if ( !$dbr->tableExists( $fullTableName ) ) { |
74 | 78 | return $sidebar; |
75 | 79 | } |
76 | | - |
77 | | - //check if an ad zone was set for this page. |
| 80 | + |
| 81 | + // check if an ad zone was set for this page. |
78 | 82 | $thisPageID = $wgTitle->getArticleID(); |
| 83 | + if ( $thisPageID <= 0 ) { |
| 84 | + return $sidebar; |
| 85 | + } |
| 86 | + |
79 | 87 | $thisPageAdZonesDB = $dbr->select( |
80 | | - $fullTableName, |
81 | | - array( 'ad_zone' ), |
82 | | - "ad_page_id = $thisPageID AND ad_page_is_category IS NOT TRUE" |
| 88 | + $fullTableName, |
| 89 | + array( 'ad_zone' ), |
| 90 | + "ad_page_id = $thisPageID AND ad_page_is_category IS NOT TRUE", |
| 91 | + __METHOD__ |
83 | 92 | ); |
84 | | - |
| 93 | + |
85 | 94 | $thisPageAdZones = array(); |
86 | | - if ( $thisPageAdZonesDB->numRows() !== 0 ) { //If there's a page zone set, it gets precedence. |
| 95 | + if ( $thisPageAdZonesDB->numRows() !== 0 ) { // If there's a page zone set, it gets precedence. |
87 | 96 | while ( $row = $thisPageAdZonesDB->fetchObject() ) { |
88 | 97 | $thisPageAdZones[] = $row->ad_zone; |
89 | 98 | } |
90 | | - } |
91 | | - else { |
92 | | - //check if an ad zone was set for any of this page's categories |
| 99 | + } else { |
| 100 | + // check if an ad zone was set for any of this page's categories |
93 | 101 | $allCategories = $dbr->select( |
94 | | - $fullTableName, |
95 | | - array( 'ad_page_id', 'ad_zone' ), |
96 | | - "ad_page_is_category IS TRUE" |
| 102 | + $fullTableName, |
| 103 | + array( 'ad_page_id', 'ad_zone' ), |
| 104 | + 'ad_page_is_category IS TRUE', |
| 105 | + __METHOD__ |
97 | 106 | ); |
98 | | - |
| 107 | + |
99 | 108 | $thisCategoryIDS = $wgTitle->getParentCategoryTree(); |
100 | | - array_walk ( $thisCategoryIDS , 'self::assignLevel' ); |
101 | | - asort ( self::$catList ); //give precedence to the closest ancestors |
102 | | - |
103 | | - if ( !empty(self::$catList) ) { |
104 | | - //find first match in this page's catlist that exists in the database |
105 | | - foreach (self::$catList as $catName => $level) { |
106 | | - $catName = substr($catName, 9); //strips Category: prefix |
107 | | - $catID = Category::newFromName($catName)->getID(); |
| 109 | + array_walk( $thisCategoryIDS , 'self::assignLevel' ); |
| 110 | + asort( self::$catList ); // give precedence to the closest ancestors |
| 111 | + |
| 112 | + if ( !empty( self::$catList ) ) { |
| 113 | + // find first match in this page's catlist that exists in the database |
| 114 | + foreach ( self::$catList as $catName => $level ) { |
| 115 | + // @todo FIXME: this is awfully hacky and specfic to |
| 116 | + // English; the correct way of doing this would be |
| 117 | + // constructing a Title object and calling getText() on it |
| 118 | + // or something like that to get the name of the category |
| 119 | + // without the namespace |
| 120 | + $catName = substr( $catName, 9 ); // strips Category: prefix |
| 121 | + $catID = Category::newFromName( $catName )->getID(); |
108 | 122 | $firstMatch = $dbr->select( |
109 | | - $fullTableName, |
110 | | - array( 'ad_zone' ), |
111 | | - "ad_page_id = $catID AND ad_page_is_category IS TRUE" |
112 | | - ); |
113 | | - if ($firstMatch->numRows() !== 0) { |
| 123 | + $fullTableName, |
| 124 | + array( 'ad_zone' ), |
| 125 | + "ad_page_id = $catID AND ad_page_is_category IS TRUE", |
| 126 | + __METHOD__ |
| 127 | + ); |
| 128 | + if ( $firstMatch->numRows() !== 0 ) { |
114 | 129 | break; |
115 | 130 | } |
116 | 131 | } |
117 | | - |
| 132 | + |
118 | 133 | while ( $row = $firstMatch->fetchObject() ) { |
119 | 134 | $thisPageAdZones[] = $row->ad_zone; |
120 | 135 | } |
121 | 136 | } |
122 | 137 | } |
123 | | - |
124 | | - //And finally, pop those ads in |
125 | | - if ( empty( $thisPageAdZones ) ) { //No zone set for this page or its categories |
| 138 | + |
| 139 | + // And finally, pop those ads in |
| 140 | + if ( empty( $thisPageAdZones ) ) { // No zone set for this page or its categories |
126 | 141 | return true; |
127 | 142 | } |
128 | | - |
129 | | - if ( in_array( null, $thisPageAdZones ) ) { //An entry in this array was set to "None" so show no ads |
| 143 | + |
| 144 | + if ( in_array( null, $thisPageAdZones ) ) { // An entry in this array was set to "None" so show no ads |
130 | 145 | return true; |
131 | 146 | } |
132 | | - |
| 147 | + |
133 | 148 | if ( $wgAdManagerService == 'openx' ) { |
134 | 149 | $wgAdManagerCode = "<a href='http://d1.openx.org/ck.php?cb=91238047' target='_blank'><img src='http://d1.openx.org/avw.php?zoneid=$1&cb=1378957897235' border='0' alt='' /></a>"; |
135 | 150 | } |
136 | | - |
| 151 | + |
137 | 152 | if ( $wgAdManagerService == 'banman' ) { |
138 | 153 | $wgAdManagerCode = <<<END |
139 | 154 | <!-- Begin - Site: AAO Zone: /eyewiki --> |
— | — | @@ -142,15 +157,13 @@ |
143 | 158 | var SiteID = 1; |
144 | 159 | var ZoneID = $1; |
145 | 160 | var browDateTime = (new Date()).getTime(); |
146 | | - if (browName=='Netscape') |
147 | | - { |
148 | | - document.write('<s'+'cript lang' + 'uage="jav' + 'ascript" src="http://aaoads.enforme.com/a.aspx?ZoneID=' + ZoneID + '&Task=Get&IFR=False&Browser=NETSCAPE4&SiteID=' + SiteID + '&Random=' + browDateTime + '">'); document.write('</'+'scr'+'ipt>'); |
| 161 | + if ( browName=='Netscape' ) { |
| 162 | + document.write('<s'+'cript lang' + 'uage="jav' + 'ascript" src="http://aaoads.enforme.com/a.aspx?ZoneID=' + ZoneID + '&Task=Get&IFR=False&Browser=NETSCAPE4&SiteID=' + SiteID + '&Random=' + browDateTime + '">'); document.write('</'+'scr'+'ipt>'); |
149 | 163 | } |
150 | | - if (browName!='Netscape') |
151 | | - { |
152 | | - document.write('<s'+'cript lang' + 'uage="jav' + 'ascript" src="http://aaoads.enforme.com/a.aspx?ZoneID=' + ZoneID + '&Task=Get&IFR=False&SiteID=' + SiteID + '&Random=' + browDateTime + '">'); document.write('</'+'scr'+'ipt>'); |
| 164 | + if ( browName != 'Netscape' ) { |
| 165 | + document.write('<s'+'cript lang' + 'uage="jav' + 'ascript" src="http://aaoads.enforme.com/a.aspx?ZoneID=' + ZoneID + '&Task=Get&IFR=False&SiteID=' + SiteID + '&Random=' + browDateTime + '">'); document.write('</'+'scr'+'ipt>'); |
153 | 166 | } |
154 | | - // --> |
| 167 | + // --> |
155 | 168 | </script> |
156 | 169 | <noscript> |
157 | 170 | <a href="http://aaoads.enforme.com/a.aspx?ZoneID=$1&Task=Click&Mode=HTML&SiteID=1" target="_blank"> |
— | — | @@ -159,14 +172,14 @@ |
160 | 173 | <!-- End - Site: AAO Zone: /eyewiki_0 --> |
161 | 174 | END; |
162 | 175 | } |
163 | | - |
164 | | - //Other ad services can be added here, with the same format as above |
165 | | - |
166 | | - if ( !isSet( $wgAdManagerCode ) ) { |
167 | | - return true; //TODO: show error |
| 176 | + |
| 177 | + // Other ad services can be added here, with the same format as above |
| 178 | + |
| 179 | + if ( !isset( $wgAdManagerCode ) ) { |
| 180 | + return true; // TODO: show error |
168 | 181 | } |
169 | | - |
170 | | - //Adds some CSS, but puts it in <body> |
| 182 | + |
| 183 | + // Adds some CSS, but puts it in <body> |
171 | 184 | $wgOut->addHTML( <<<EOT |
172 | 185 | <style type="text/css"> |
173 | 186 | div[id*='AdManager'] h5 { |
— | — | @@ -179,15 +192,16 @@ |
180 | 193 | </style> |
181 | 194 | EOT |
182 | 195 | ); |
183 | | - |
| 196 | + |
184 | 197 | $adNumber = 0; |
185 | | - foreach ( $thisPageAdZones as $thisPageAdZone ) { |
| 198 | + foreach ( $thisPageAdZones as $thisPageAdZone ) { |
186 | 199 | $adNumber++; |
187 | | - //Allows admins to use any ad service or inclusion code they desire by inserting in LocalSettings |
| 200 | + // Allows admins to use any ad service or inclusion code they |
| 201 | + // desire by inserting in LocalSettings.php |
188 | 202 | $out = str_replace( '$1', $thisPageAdZone, $wgAdManagerCode ); |
189 | 203 | $sidebar["AdManager$adNumber"] = $out; |
190 | 204 | } |
191 | | - |
| 205 | + |
192 | 206 | return true; |
193 | 207 | } |
194 | 208 | } |
Index: trunk/extensions/AdManager/AdManager.sql |
— | — | @@ -1,11 +1,11 @@ |
2 | 2 | -- MySQL version of the database schema for the AdManager extension. |
3 | | -CREATE TABLE IF NOT EXISTS /*$wgDBprefix*/ad ( |
| 3 | +CREATE TABLE IF NOT EXISTS /*_*/ad ( |
4 | 4 | ad_id INT unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY, |
5 | 5 | ad_page_id INT(10) unsigned NOT NULL, |
6 | 6 | ad_zone INT(4) unsigned, |
7 | 7 | ad_page_is_category BOOLEAN |
8 | 8 | ) /*$wgDBTableOptions*/; |
9 | 9 | |
10 | | -CREATE TABLE IF NOT EXISTS /*$wgDBprefix*/adzones ( |
| 10 | +CREATE TABLE IF NOT EXISTS /*_*/adzones ( |
11 | 11 | ad_zone_id INT(4) unsigned NOT NULL PRIMARY KEY |
12 | 12 | ) /*$wgDBTableOptions*/; |
\ No newline at end of file |