From ea1a533ef8c675f914466f96fcd3771413697c06 Mon Sep 17 00:00:00 2001
From: Tobias McNulty
Date: Sun, 15 Jan 2012 22:25:25 -0500
Subject: [PATCH 1/2] first shot at ajax requests panel
---
.../media/debug_toolbar/js/toolbar.js | 16 +++++
.../media/debug_toolbar/js/toolbar.min.js | 6 +-
debug_toolbar/middleware.py | 22 ++++--
debug_toolbar/panels/ajax.py | 67 +++++++++++++++++++
.../templates/debug_toolbar/base.html | 2 +
.../templates/debug_toolbar/panels/ajax.html | 19 ++++++
debug_toolbar/toolbar/loader.py | 1 +
debug_toolbar/urls.py | 2 +
debug_toolbar/views.py | 35 +++++++++-
9 files changed, 160 insertions(+), 10 deletions(-)
create mode 100644 debug_toolbar/panels/ajax.py
create mode 100644 debug_toolbar/templates/debug_toolbar/panels/ajax.html
diff --git a/debug_toolbar/media/debug_toolbar/js/toolbar.js b/debug_toolbar/media/debug_toolbar/js/toolbar.js
index 306342b7c..dc64c7152 100644
--- a/debug_toolbar/media/debug_toolbar/js/toolbar.js
+++ b/debug_toolbar/media/debug_toolbar/js/toolbar.js
@@ -83,6 +83,22 @@ window.djdt = (function(window, document, jQuery) {
});
return;
});
+ $('#djDebug a.djAjaxLoad').live('click', function(e) {
+ e.preventDefault();
+ var req_id = $(this).attr('data-requestid');
+ $.get('/__debug__/ajax_request/' + req_id + '/', function(data) {
+ $('#djDebugWrapper').wrap('').parent().html(data);
+ $('#djAjaxRefreshBtn').click();
+ });
+ });
+ $('#djAjaxRefreshBtn').live('click', function(e) {
+ e.preventDefault();
+ $.get('/__debug__/ajax_request/', function(data) {
+ $('#djDebugAjaxPanel .djDebugPanelContent div.scroll').html(data);
+ var num_reqs = $('#djDebugAjaxPanel .djDebugPanelContent tbody tr').length;
+ $('a.djDebugAjaxPanel small').html(num_reqs + ' requests');
+ });
+ });
function getSubcalls(row) {
var id = row.attr('id');
return $('.djDebugProfileRow[id^="'+id+'_"]');
diff --git a/debug_toolbar/media/debug_toolbar/js/toolbar.min.js b/debug_toolbar/media/debug_toolbar/js/toolbar.min.js
index 734e65b6d..8c3e91cfa 100644
--- a/debug_toolbar/media/debug_toolbar/js/toolbar.min.js
+++ b/debug_toolbar/media/debug_toolbar/js/toolbar.min.js
@@ -1,4 +1,4 @@
-/*
+/*!
* jQuery JavaScript Library v1.4.1
* http://jquery.com/
*
@@ -14,10 +14,10 @@
* Date: Mon Jan 25 19:43:33 2010 -0500
*/
(function(aI,B){var a=function(aU,aV){return new a.fn.init(aU,aV)},n=aI.jQuery,Q=aI.$,aa=aI.document,W,O=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,aS=/^.[^:#\[\.,]*$/,au=/\S/,L=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,e=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,b=navigator.userAgent,u,I=false,ac=[],aC,aq=Object.prototype.toString,an=Object.prototype.hasOwnProperty,g=Array.prototype.push,D=Array.prototype.slice,s=Array.prototype.indexOf;a.fn=a.prototype={init:function(aU,aX){var aW,aY,aV,aZ;if(!aU){return this}if(aU.nodeType){this.context=this[0]=aU;this.length=1;return this}if(typeof aU==="string"){aW=O.exec(aU);if(aW&&(aW[1]||!aX)){if(aW[1]){aZ=(aX?aX.ownerDocument||aX:aa);aV=e.exec(aU);if(aV){if(a.isPlainObject(aX)){aU=[aa.createElement(aV[1])];a.fn.attr.call(aU,aX,true)}else{aU=[aZ.createElement(aV[1])]}}else{aV=H([aW[1]],[aZ]);aU=(aV.cacheable?aV.fragment.cloneNode(true):aV.fragment).childNodes}}else{aY=aa.getElementById(aW[2]);if(aY){if(aY.id!==aW[2]){return W.find(aU)}this.length=1;this[0]=aY}this.context=aa;this.selector=aU;return this}}else{if(!aX&&/^\w+$/.test(aU)){this.selector=aU;this.context=aa;aU=aa.getElementsByTagName(aU)}else{if(!aX||aX.jquery){return(aX||W).find(aU)}else{return a(aX).find(aU)}}}}else{if(a.isFunction(aU)){return W.ready(aU)}}if(aU.selector!==B){this.selector=aU.selector;this.context=aU.context}return a.isArray(aU)?this.setArray(aU):a.makeArray(aU,this)},selector:"",jquery:"1.4.1",length:0,size:function(){return this.length},toArray:function(){return D.call(this,0)},get:function(aU){return aU==null?this.toArray():(aU<0?this.slice(aU)[0]:this[aU])},pushStack:function(aV,aX,aU){var aW=a(aV||null);aW.prevObject=this;aW.context=this.context;if(aX==="find"){aW.selector=this.selector+(this.selector?" ":"")+aU}else{if(aX){aW.selector=this.selector+"."+aX+"("+aU+")"}}return aW},setArray:function(aU){this.length=0;g.apply(this,aU);return this},each:function(aV,aU){return a.each(this,aV,aU)},ready:function(aU){a.bindReady();if(a.isReady){aU.call(aa,a)}else{if(ac){ac.push(aU)}}return this},eq:function(aU){return aU===-1?this.slice(aU):this.slice(aU,+aU+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(D.apply(this,arguments),"slice",D.call(arguments).join(","))},map:function(aU){return this.pushStack(a.map(this,function(aW,aV){return aU.call(aW,aV,aW)}))},end:function(){return this.prevObject||a(null)},push:g,sort:[].sort,splice:[].splice};a.fn.init.prototype=a.fn;a.extend=a.fn.extend=function(){var aZ=arguments[0]||{},aY=1,aX=arguments.length,a1=false,a2,aW,aU,aV;if(typeof aZ==="boolean"){a1=aZ;aZ=arguments[1]||{};aY=2}if(typeof aZ!=="object"&&!a.isFunction(aZ)){aZ={}}if(aX===aY){aZ=this;--aY}for(;aY
a";var a2=aU.getElementsByTagName("*"),a1=aU.getElementsByTagName("a")[0];if(!a2||!a2.length||!a1){return}a.support={leadingWhitespace:aU.firstChild.nodeType===3,tbody:!aU.getElementsByTagName("tbody").length,htmlSerialize:!!aU.getElementsByTagName("link").length,style:/red/.test(a1.getAttribute("style")),hrefNormalized:a1.getAttribute("href")==="/a",opacity:/^0.55$/.test(a1.style.opacity),cssFloat:!!a1.style.cssFloat,checkOn:aU.getElementsByTagName("input")[0].value==="on",optSelected:aa.createElement("select").appendChild(aa.createElement("option")).selected,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null};aZ.type="text/javascript";try{aZ.appendChild(aa.createTextNode("window."+aV+"=1;"))}catch(aX){}a0.insertBefore(aZ,a0.firstChild);if(aI[aV]){a.support.scriptEval=true;delete aI[aV]}a0.removeChild(aZ);if(aU.attachEvent&&aU.fireEvent){aU.attachEvent("onclick",function a3(){a.support.noCloneEvent=false;aU.detachEvent("onclick",a3)});aU.cloneNode(true).fireEvent("onclick")}aU=aa.createElement("div");aU.innerHTML="";var aW=aa.createDocumentFragment();aW.appendChild(aU.firstChild);a.support.checkClone=aW.cloneNode(true).cloneNode(true).lastChild.checked;a(function(){var a4=aa.createElement("div");a4.style.width=a4.style.paddingLeft="1px";aa.body.appendChild(a4);a.boxModel=a.support.boxModel=a4.offsetWidth===2;aa.body.removeChild(a4).style.display="none";a4=null});var aY=function(a4){var a6=aa.createElement("div");a4="on"+a4;var a5=(a4 in a6);if(!a5){a6.setAttribute(a4,"return;");a5=typeof a6[a4]==="function"}a6=null;return a5};a.support.submitBubbles=aY("submit");a.support.changeBubbles=aY("change");a0=aZ=aU=a2=a1=null})();a.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var aE="jQuery"+aL(),aD=0,aP={};var K={};a.extend({cache:{},expando:aE,noData:{embed:true,object:true,applet:true},data:function(aW,aV,aY){if(aW.nodeName&&a.noData[aW.nodeName.toLowerCase()]){return}aW=aW==aI?aP:aW;var aZ=aW[aE],aU=a.cache,aX;if(!aV&&!aZ){return null}if(!aZ){aZ=++aD}if(typeof aV==="object"){aW[aE]=aZ;aX=aU[aZ]=a.extend(true,{},aV)}else{if(aU[aZ]){aX=aU[aZ]}else{if(typeof aY==="undefined"){aX=K}else{aX=aU[aZ]={}}}}if(aY!==B){aW[aE]=aZ;aX[aV]=aY}return typeof aV==="string"?aX[aV]:aX},removeData:function(aW,aV){if(aW.nodeName&&a.noData[aW.nodeName.toLowerCase()]){return}aW=aW==aI?aP:aW;var aZ=aW[aE],aU=a.cache,aX=aU[aZ];if(aV){if(aX){delete aX[aV];if(a.isEmptyObject(aX)){a.removeData(aW)}}}else{try{delete aW[aE]}catch(aY){if(aW.removeAttribute){aW.removeAttribute(aE)}}delete aU[aZ]}}});a.fn.extend({data:function(aU,aW){if(typeof aU==="undefined"&&this.length){return a.data(this[0])}else{if(typeof aU==="object"){return this.each(function(){a.data(this,aU)})}}var aX=aU.split(".");aX[1]=aX[1]?"."+aX[1]:"";if(aW===B){var aV=this.triggerHandler("getData"+aX[1]+"!",[aX[0]]);if(aV===B&&this.length){aV=a.data(this[0],aU)}return aV===B&&aX[1]?this.data(aX[0]):aV}else{return this.trigger("setData"+aX[1]+"!",[aX[0],aW]).each(function(){a.data(this,aU,aW)})}},removeData:function(aU){return this.each(function(){a.removeData(this,aU)})}});a.extend({queue:function(aV,aU,aX){if(!aV){return}aU=(aU||"fx")+"queue";var aW=a.data(aV,aU);if(!aX){return aW||[]}if(!aW||a.isArray(aX)){aW=a.data(aV,aU,a.makeArray(aX))}else{aW.push(aX)}return aW},dequeue:function(aX,aW){aW=aW||"fx";var aU=a.queue(aX,aW),aV=aU.shift();if(aV==="inprogress"){aV=aU.shift()}if(aV){if(aW==="fx"){aU.unshift("inprogress")}aV.call(aX,function(){a.dequeue(aX,aW)})}}});a.fn.extend({queue:function(aU,aV){if(typeof aU!=="string"){aV=aU;aU="fx"}if(aV===B){return a.queue(this[0],aU)}return this.each(function(aX,aY){var aW=a.queue(this,aU,aV);if(aU==="fx"&&aW[0]!=="inprogress"){a.dequeue(this,aU)}})},dequeue:function(aU){return this.each(function(){a.dequeue(this,aU)})},delay:function(aV,aU){aV=a.fx?a.fx.speeds[aV]||aV:aV;aU=aU||"fx";return this.queue(aU,function(){var aW=this;setTimeout(function(){a.dequeue(aW,aU)},aV)})},clearQueue:function(aU){return this.queue(aU||"fx",[])}});var am=/[\n\t]/g,R=/\s+/,at=/\r/g,aM=/href|src|style/,d=/(button|input)/i,y=/(button|input|object|select|textarea)/i,j=/^(a|area)$/i,G=/radio|checkbox/;a.fn.extend({attr:function(aU,aV){return al(this,aU,aV,true,a.attr)},removeAttr:function(aU,aV){return this.each(function(){a.attr(this,aU,"");if(this.nodeType===1){this.removeAttribute(aU)}})},addClass:function(aZ){if(a.isFunction(aZ)){return this.each(function(a3){var a2=a(this);a2.addClass(aZ.call(this,a3,a2.attr("class")))})}if(aZ&&typeof aZ==="string"){var a0=(aZ||"").split(R);for(var aW=0,aV=this.length;aW<0){aY.className+=" "+a0[a1]}}}}}}return this},removeClass:function(aZ){if(a.isFunction(aZ)){return this.each(function(a3){var a2=a(this);a2.removeClass(aZ.call(this,a3,a2.attr("class")))})}if((aZ&&typeof aZ==="string")||aZ===B){var a0=(aZ||"").split(R);for(var aW=0,aV=this.length;aW-1){return true}}return false},val:function(a1){if(a1===B){var aV=this[0];if(aV){if(a.nodeName(aV,"option")){return(aV.attributes.value||{}).specified?aV.value:aV.text}if(a.nodeName(aV,"select")){var aZ=aV.selectedIndex,a2=[],a3=aV.options,aY=aV.type==="select-one";if(aZ<0){return null}for(var aW=aY?aZ:0,a0=aY?aZ+1:a3.length;aW=0}else{if(a.nodeName(this,"select")){var a4=a.makeArray(a7);a("option",this).each(function(){this.selected=a.inArray(a(this).val(),a4)>=0});if(!a4.length){this.selectedIndex=-1}}else{this.value=a7}}})}});a.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(aV,aU,a0,a3){if(!aV||aV.nodeType===3||aV.nodeType===8){return B}if(a3&&aU in a.attrFn){return a(aV)[aU](a0)}var aW=aV.nodeType!==1||!a.isXMLDoc(aV),aZ=a0!==B;aU=aW&&a.props[aU]||aU;if(aV.nodeType===1){var aY=aM.test(aU);if(aU==="selected"&&!a.support.optSelected){var a1=aV.parentNode;if(a1){a1.selectedIndex;if(a1.parentNode){a1.parentNode.selectedIndex}}}if(aU in aV&&aW&&!aY){if(aZ){if(aU==="type"&&d.test(aV.nodeName)&&aV.parentNode){a.error("type property can't be changed")}aV[aU]=a0}if(a.nodeName(aV,"form")&&aV.getAttributeNode(aU)){return aV.getAttributeNode(aU).nodeValue}if(aU==="tabIndex"){var a2=aV.getAttributeNode("tabIndex");return a2&&a2.specified?a2.value:y.test(aV.nodeName)||j.test(aV.nodeName)&&aV.href?0:B}return aV[aU]}if(!a.support.style&&aW&&aU==="style"){if(aZ){aV.style.cssText=""+a0}return aV.style.cssText}if(aZ){aV.setAttribute(aU,""+a0)}var aX=!a.support.hrefNormalized&&aW&&aY?aV.getAttribute(aU,2):aV.getAttribute(aU);return aX===null?B:aX}return a.style(aV,aU,a0)}});var z=function(aU){return aU.replace(/[^\w\s\.\|`]/g,function(aV){return"\\"+aV})};a.event={add:function(aW,a1,a6,aY){if(aW.nodeType===3||aW.nodeType===8){return}if(aW.setInterval&&(aW!==aI&&!aW.frameElement)){aW=aI}if(!a6.guid){a6.guid=a.guid++}if(aY!==B){var a4=a6;a6=a.proxy(a4);a6.data=aY}var a7=a.data(aW,"events")||a.data(aW,"events",{}),a0=a.data(aW,"handle"),aZ;if(!a0){aZ=function(){return typeof a!=="undefined"&&!a.event.triggered?a.event.handle.apply(aZ.elem,arguments):B};a0=a.data(aW,"handle",aZ)}if(!a0){return}a0.elem=aW;a1=a1.split(/\s+/);var a3,aX=0;while((a3=a1[aX++])){var aU=a3.split(".");a3=aU.shift();if(aX>1){a6=a.proxy(a6);if(aY!==B){a6.data=aY}}a6.type=aU.slice(0).sort().join(".");var aV=a7[a3],a2=this.special[a3]||{};if(!aV){aV=a7[a3]={};if(!a2.setup||a2.setup.call(aW,aY,aU,a6)===false){if(aW.addEventListener){aW.addEventListener(a3,a0,false)}else{if(aW.attachEvent){aW.attachEvent("on"+a3,a0)}}}}if(a2.add){var a5=a2.add.call(aW,a6,aY,aU,aV);if(a5&&a.isFunction(a5)){a5.guid=a5.guid||a6.guid;a5.data=a5.data||a6.data;a5.type=a5.type||a6.type;a6=a5}}aV[a6.guid]=a6;this.global[a3]=true}aW=null},global:{},remove:function(aW,a0,a6){if(aW.nodeType===3||aW.nodeType===8){return}var a7=a.data(aW,"events"),a1,a3,a4;if(a7){if(a0===B||(typeof a0==="string"&&a0.charAt(0)===".")){for(a3 in a7){this.remove(aW,a3+(a0||""))}}else{if(a0.type){a6=a0.handler;a0=a0.type}a0=a0.split(/\s+/);var aY=0;while((a3=a0[aY++])){var aU=a3.split(".");a3=aU.shift();var a5=!aU.length,aV=a.map(aU.slice(0).sort(),z),aX=new RegExp("(^|\\.)"+aV.join("\\.(?:.*\\.)?")+"(\\.|$)"),a2=this.special[a3]||{};if(a7[a3]){if(a6){a4=a7[a3][a6.guid];delete a7[a3][a6.guid]}else{for(var aZ in a7[a3]){if(a5||aX.test(a7[a3][aZ].type)){delete a7[a3][aZ]}}}if(a2.remove){a2.remove.call(aW,aU,a4)}for(a1 in a7[a3]){break}if(!a1){if(!a2.teardown||a2.teardown.call(aW,aU)===false){if(aW.removeEventListener){aW.removeEventListener(a3,a.data(aW,"handle"),false)}else{if(aW.detachEvent){aW.detachEvent("on"+a3,a.data(aW,"handle"))}}}a1=null;delete a7[a3]}}}}for(a1 in a7){break}if(!a1){var aZ=a.data(aW,"handle");if(aZ){aZ.elem=null}a.removeData(aW,"events");a.removeData(aW,"handle")}}},trigger:function(aU,aY,aW){var a2=aU.type||aU,aX=arguments[3];if(!aX){aU=typeof aU==="object"?aU[aE]?aU:a.extend(a.Event(a2),aU):a.Event(a2);if(a2.indexOf("!")>=0){aU.type=a2=a2.slice(0,-1);aU.exclusive=true}if(!aW){aU.stopPropagation();if(this.global[a2]){a.each(a.cache,function(){if(this.events&&this.events[a2]){a.event.trigger(aU,aY,this.handle.elem)}})}}if(!aW||aW.nodeType===3||aW.nodeType===8){return B}aU.result=B;aU.target=aW;aY=a.makeArray(aY);aY.unshift(aU)}aU.currentTarget=aW;var aZ=a.data(aW,"handle");if(aZ){aZ.apply(aW,aY)}var a3=aW.parentNode||aW.ownerDocument;try{if(!(aW&&aW.nodeName&&a.noData[aW.nodeName.toLowerCase()])){if(aW["on"+a2]&&aW["on"+a2].apply(aW,aY)===false){aU.result=false}}}catch(a1){}if(!aU.isPropagationStopped()&&a3){a.event.trigger(aU,aY,a3,true)}else{if(!aU.isDefaultPrevented()){var a0=aU.target,aV,a4=a.nodeName(a0,"a")&&a2==="click";if(!a4&&!(a0&&a0.nodeName&&a.noData[a0.nodeName.toLowerCase()])){try{if(a0[a2]){aV=a0["on"+a2];if(aV){a0["on"+a2]=null}this.triggered=true;a0[a2]()}}catch(a1){}if(aV){a0["on"+a2]=aV}this.triggered=false}}}},handle:function(a0){var aZ,aU;a0=arguments[0]=a.event.fix(a0||aI.event);a0.currentTarget=this;var a1=a0.type.split(".");a0.type=a1.shift();aZ=!a1.length&&!a0.exclusive;var aY=new RegExp("(^|\\.)"+a1.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)");aU=(a.data(this,"events")||{})[a0.type];for(var aW in aU){var aX=aU[aW];if(aZ||aY.test(aX.type)){a0.handler=aX;a0.data=aX.data;var aV=aX.apply(this,arguments);if(aV!==B){a0.result=aV;if(aV===false){a0.preventDefault();a0.stopPropagation()}}if(a0.isImmediatePropagationStopped()){break}}}return a0.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(aX){if(aX[aE]){return aX}var aV=aX;aX=a.Event(aV);for(var aW=this.props.length,aZ;aW;){aZ=this.props[--aW];aX[aZ]=aV[aZ]}if(!aX.target){aX.target=aX.srcElement||aa}if(aX.target.nodeType===3){aX.target=aX.target.parentNode}if(!aX.relatedTarget&&aX.fromElement){aX.relatedTarget=aX.fromElement===aX.target?aX.toElement:aX.fromElement}if(aX.pageX==null&&aX.clientX!=null){var aY=aa.documentElement,aU=aa.body;aX.pageX=aX.clientX+(aY&&aY.scrollLeft||aU&&aU.scrollLeft||0)-(aY&&aY.clientLeft||aU&&aU.clientLeft||0);aX.pageY=aX.clientY+(aY&&aY.scrollTop||aU&&aU.scrollTop||0)-(aY&&aY.clientTop||aU&&aU.clientTop||0)}if(!aX.which&&((aX.charCode||aX.charCode===0)?aX.charCode:aX.keyCode)){aX.which=aX.charCode||aX.keyCode}if(!aX.metaKey&&aX.ctrlKey){aX.metaKey=aX.ctrlKey}if(!aX.which&&aX.button!==B){aX.which=(aX.button&1?1:(aX.button&2?3:(aX.button&4?2:0)))}return aX},guid:100000000,proxy:a.proxy,special:{ready:{setup:a.bindReady,teardown:a.noop},live:{add:function(aU,aX,aW,aV){a.extend(aU,aX||{});aU.guid+=aX.selector+aX.live;aX.liveProxy=aU;a.event.add(this,aX.live,U,aX)},remove:function(aW){if(aW.length){var aU=0,aV=new RegExp("(^|\\.)"+aW[0]+"(\\.|$)");a.each((a.data(this,"events").live||{}),function(){if(aV.test(this.type)){aU++}});if(aU<1){a.event.remove(this,aW[0],U)}}},special:{}},beforeunload:{setup:function(aW,aV,aU){if(this.setInterval){this.onbeforeunload=aU}return false},teardown:function(aV,aU){if(this.onbeforeunload===aU){this.onbeforeunload=null}}}}};a.Event=function(aU){if(!this.preventDefault){return new a.Event(aU)}if(aU&&aU.type){this.originalEvent=aU;this.type=aU.type}else{this.type=aU}this.timeStamp=aL();this[aE]=true};function aN(){return false}function f(){return true}a.Event.prototype={preventDefault:function(){this.isDefaultPrevented=f;var aU=this.originalEvent;if(!aU){return}if(aU.preventDefault){aU.preventDefault()}aU.returnValue=false},stopPropagation:function(){this.isPropagationStopped=f;var aU=this.originalEvent;if(!aU){return}if(aU.stopPropagation){aU.stopPropagation()}aU.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=f;this.stopPropagation()},isDefaultPrevented:aN,isPropagationStopped:aN,isImmediatePropagationStopped:aN};var P=function(aV){var aU=aV.relatedTarget;while(aU&&aU!==this){try{aU=aU.parentNode}catch(aW){break}}if(aU!==this){aV.type=aV.data;a.event.handle.apply(this,arguments)}},av=function(aU){aU.type=aU.data;a.event.handle.apply(this,arguments)};a.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(aV,aU){a.event.special[aV]={setup:function(aW){a.event.add(this,aU,aW&&aW.selector?av:P,aV)},teardown:function(aW){a.event.remove(this,aU,aW&&aW.selector?av:P)}}});if(!a.support.submitBubbles){a.event.special.submit={setup:function(aW,aV,aU){if(this.nodeName.toLowerCase()!=="form"){a.event.add(this,"click.specialSubmit."+aU.guid,function(aZ){var aY=aZ.target,aX=aY.type;if((aX==="submit"||aX==="image")&&a(aY).closest("form").length){return ax("submit",this,arguments)}});a.event.add(this,"keypress.specialSubmit."+aU.guid,function(aZ){var aY=aZ.target,aX=aY.type;if((aX==="text"||aX==="password")&&a(aY).closest("form").length&&aZ.keyCode===13){return ax("submit",this,arguments)}})}else{return false}},remove:function(aV,aU){a.event.remove(this,"click.specialSubmit"+(aU?"."+aU.guid:""));a.event.remove(this,"keypress.specialSubmit"+(aU?"."+aU.guid:""))}}}if(!a.support.changeBubbles){var ao=/textarea|input|select/i;function i(aV){var aU=aV.type,aW=aV.value;if(aU==="radio"||aU==="checkbox"){aW=aV.checked}else{if(aU==="select-multiple"){aW=aV.selectedIndex>-1?a.map(aV.options,function(aX){return aX.selected}).join("-"):""}else{if(aV.nodeName.toLowerCase()==="select"){aW=aV.selectedIndex}}}return aW}function N(aW){var aU=aW.target,aV,aX;if(!ao.test(aU.nodeName)||aU.readOnly){return}aV=a.data(aU,"_change_data");aX=i(aU);if(aW.type!=="focusout"||aU.type!=="radio"){a.data(aU,"_change_data",aX)}if(aV===B||aX===aV){return}if(aV!=null||aX){aW.type="change";return a.event.trigger(aW,arguments[1],aU)}}a.event.special.change={filters:{focusout:N,click:function(aW){var aV=aW.target,aU=aV.type;if(aU==="radio"||aU==="checkbox"||aV.nodeName.toLowerCase()==="select"){return N.call(this,aW)}},keydown:function(aW){var aV=aW.target,aU=aV.type;if((aW.keyCode===13&&aV.nodeName.toLowerCase()!=="textarea")||(aW.keyCode===32&&(aU==="checkbox"||aU==="radio"))||aU==="select-multiple"){return N.call(this,aW)}},beforeactivate:function(aV){var aU=aV.target;if(aU.nodeName.toLowerCase()==="input"&&aU.type==="radio"){a.data(aU,"_change_data",i(aU))}}},setup:function(aX,aW,aV){for(var aU in aO){a.event.add(this,aU+".specialChange."+aV.guid,aO[aU])}return ao.test(this.nodeName)},remove:function(aW,aV){for(var aU in aO){a.event.remove(this,aU+".specialChange"+(aV?"."+aV.guid:""),aO[aU])}return ao.test(this.nodeName)}};var aO=a.event.special.change.filters}function ax(aV,aW,aU){aU[0].type=aV;return a.event.handle.apply(aW,aU)}if(aa.addEventListener){a.each({focus:"focusin",blur:"focusout"},function(aW,aU){a.event.special[aU]={setup:function(){this.addEventListener(aW,aV,true)},teardown:function(){this.removeEventListener(aW,aV,true)}};function aV(aX){aX=a.event.fix(aX);aX.type=aU;return a.event.handle.call(this,aX)}})}a.each(["bind","one"],function(aV,aU){a.fn[aU]=function(aZ,a0,aY){if(typeof aZ==="object"){for(var aW in aZ){this[aU](aW,a0,aZ[aW],aY)}return this}if(a.isFunction(a0)){aY=a0;a0=B}var aX=aU==="one"?a.proxy(aY,function(a1){a(this).unbind(a1,aX);return aY.apply(this,arguments)}):aY;return aZ==="unload"&&aU!=="one"?this.one(aZ,a0,aY):this.each(function(){a.event.add(this,aZ,aX,a0)})}});a.fn.extend({unbind:function(aW,aV){if(typeof aW==="object"&&!aW.preventDefault){for(var aU in aW){this.unbind(aU,aW[aU])}return this}return this.each(function(){a.event.remove(this,aW,aV)})},trigger:function(aU,aV){return this.each(function(){a.event.trigger(aU,aV,this)})},triggerHandler:function(aU,aW){if(this[0]){var aV=a.Event(aU);aV.preventDefault();aV.stopPropagation();a.event.trigger(aV,aW,this[0]);return aV.result}},toggle:function(aW){var aU=arguments,aV=1;while(aV-1){a0=a4.data;if(!(a0.beforeFilter&&a0.beforeFilter[aU.type]&&!a0.beforeFilter[aU.type](aU))){a7.push(a4.selector)}}else{delete aW[aZ]}}a2=a(aU.target).closest(a7,aU.currentTarget);for(a1=0,aY=a2.length;a1+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,a6=0,a8=Object.prototype.toString,a0=false,aZ=true;[0,0].sort(function(){aZ=false;return 0});var aW=function(bh,bc,bk,bl){bk=bk||[];var bn=bc=bc||aa;if(bc.nodeType!==1&&bc.nodeType!==9){return[]}if(!bh||typeof bh!=="string"){return bk}var bi=[],be,bp,bs,bd,bg=true,bf=aX(bc),bm=bh;while((a5.exec(""),be=a5.exec(bm))!==null){bm=be[3];bi.push(be[1]);if(be[2]){bd=be[3];break}}if(bi.length>1&&a1.exec(bh)){if(bi.length===2&&a2.relative[bi[0]]){bp=a9(bi[0]+bi[1],bc)}else{bp=a2.relative[bi[0]]?[bc]:aW(bi.shift(),bc);while(bi.length){bh=bi.shift();if(a2.relative[bh]){bh+=bi.shift()}bp=a9(bh,bp)}}}else{if(!bl&&bi.length>1&&bc.nodeType===9&&!bf&&a2.match.ID.test(bi[0])&&!a2.match.ID.test(bi[bi.length-1])){var bo=aW.find(bi.shift(),bc,bf);bc=bo.expr?aW.filter(bo.expr,bo.set)[0]:bo.set[0]}if(bc){var bo=bl?{expr:bi.pop(),set:a4(bl)}:aW.find(bi.pop(),bi.length===1&&(bi[0]==="~"||bi[0]==="+")&&bc.parentNode?bc.parentNode:bc,bf);bp=bo.expr?aW.filter(bo.expr,bo.set):bo.set;if(bi.length>0){bs=a4(bp)}else{bg=false}while(bi.length){var br=bi.pop(),bq=br;if(!a2.relative[br]){br=""}else{bq=bi.pop()}if(bq==null){bq=bc}a2.relative[br](bs,bq,bf)}}else{bs=bi=[]}}if(!bs){bs=bp}if(!bs){aW.error(br||bh)}if(a8.call(bs)==="[object Array]"){if(!bg){bk.push.apply(bk,bs)}else{if(bc&&bc.nodeType===1){for(var bj=0;bs[bj]!=null;bj++){if(bs[bj]&&(bs[bj]===true||bs[bj].nodeType===1&&a3(bc,bs[bj]))){bk.push(bp[bj])}}}else{for(var bj=0;bs[bj]!=null;bj++){if(bs[bj]&&bs[bj].nodeType===1){bk.push(bp[bj])}}}}}else{a4(bs,bk)}if(bd){aW(bd,bn,bk,bl);aW.uniqueSort(bk)}return bk};aW.uniqueSort=function(bd){if(a7){a0=aZ;bd.sort(a7);if(a0){for(var bc=1;bc":function(bi,bd){var bg=typeof bd==="string";if(bg&&!/\W/.test(bd)){bd=bd.toLowerCase();for(var be=0,bc=bi.length;be=0)){if(!be){bc.push(bh)}}else{if(be){bd[bg]=false}}}}return false},ID:function(bc){return bc[1].replace(/\\/g,"")},TAG:function(bd,bc){return bd[1].toLowerCase()},CHILD:function(bc){if(bc[1]==="nth"){var bd=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(bc[2]==="even"&&"2n"||bc[2]==="odd"&&"2n+1"||!/\D/.test(bc[2])&&"0n+"+bc[2]||bc[2]);bc[2]=(bd[1]+(bd[2]||1))-0;bc[3]=bd[3]-0}bc[0]=a6++;return bc},ATTR:function(bg,bd,be,bc,bh,bi){var bf=bg[1].replace(/\\/g,"");if(!bi&&a2.attrMap[bf]){bg[1]=a2.attrMap[bf]}if(bg[2]==="~="){bg[4]=" "+bg[4]+" "}return bg},PSEUDO:function(bg,bd,be,bc,bh){if(bg[1]==="not"){if((a5.exec(bg[3])||"").length>1||/^\w/.test(bg[3])){bg[3]=aW(bg[3],null,null,bd)}else{var bf=aW.filter(bg[3],bd,be,true^bh);if(!be){bc.push.apply(bc,bf)}return false}}else{if(a2.match.POS.test(bg[0])||a2.match.CHILD.test(bg[0])){return true}}return bg},POS:function(bc){bc.unshift(true);return bc}},filters:{enabled:function(bc){return bc.disabled===false&&bc.type!=="hidden"},disabled:function(bc){return bc.disabled===true},checked:function(bc){return bc.checked===true},selected:function(bc){bc.parentNode.selectedIndex;return bc.selected===true},parent:function(bc){return !!bc.firstChild},empty:function(bc){return !bc.firstChild},has:function(be,bd,bc){return !!aW(bc[3],be).length},header:function(bc){return/h\d/i.test(bc.nodeName)},text:function(bc){return"text"===bc.type},radio:function(bc){return"radio"===bc.type},checkbox:function(bc){return"checkbox"===bc.type},file:function(bc){return"file"===bc.type},password:function(bc){return"password"===bc.type},submit:function(bc){return"submit"===bc.type},image:function(bc){return"image"===bc.type},reset:function(bc){return"reset"===bc.type},button:function(bc){return"button"===bc.type||bc.nodeName.toLowerCase()==="button"},input:function(bc){return/input|select|textarea|button/i.test(bc.nodeName)}},setFilters:{first:function(bd,bc){return bc===0},last:function(be,bd,bc,bf){return bd===bf.length-1},even:function(bd,bc){return bc%2===0},odd:function(bd,bc){return bc%2===1},lt:function(be,bd,bc){return bdbc[3]-0},nth:function(be,bd,bc){return bc[3]-0===bd},eq:function(be,bd,bc){return bc[3]-0===bd}},filter:{PSEUDO:function(bi,be,bf,bj){var bd=be[1],bg=a2.filters[bd];if(bg){return bg(bi,bf,be,bj)}else{if(bd==="contains"){return(bi.textContent||bi.innerText||aV([bi])||"").indexOf(be[3])>=0}else{if(bd==="not"){var bh=be[3];for(var bf=0,bc=bh.length;bf=0)}}},ID:function(bd,bc){return bd.nodeType===1&&bd.getAttribute("id")===bc},TAG:function(bd,bc){return(bc==="*"&&bd.nodeType===1)||bd.nodeName.toLowerCase()===bc},CLASS:function(bd,bc){return(" "+(bd.className||bd.getAttribute("class"))+" ").indexOf(bc)>-1},ATTR:function(bh,bf){var be=bf[1],bc=a2.attrHandle[be]?a2.attrHandle[be](bh):bh[be]!=null?bh[be]:bh.getAttribute(be),bi=bc+"",bg=bf[2],bd=bf[4];return bc==null?bg==="!=":bg==="="?bi===bd:bg==="*="?bi.indexOf(bd)>=0:bg==="~="?(" "+bi+" ").indexOf(bd)>=0:!bd?bi&&bc!==false:bg==="!="?bi!==bd:bg==="^="?bi.indexOf(bd)===0:bg==="$="?bi.substr(bi.length-bd.length)===bd:bg==="|="?bi===bd||bi.substr(0,bd.length+1)===bd+"-":false},POS:function(bg,bd,be,bh){var bc=bd[2],bf=a2.setFilters[bc];if(bf){return bf(bg,be,bd,bh)}}}};var a1=a2.match.POS;for(var aY in a2.match){a2.match[aY]=new RegExp(a2.match[aY].source+/(?![^\[]*\])(?![^\(]*\))/.source);a2.leftMatch[aY]=new RegExp(/(^(?:.|\r|\n)*?)/.source+a2.match[aY].source.replace(/\\(\d+)/g,function(bd,bc){return"\\"+(bc-0+1)}))}var a4=function(bd,bc){bd=Array.prototype.slice.call(bd,0);if(bc){bc.push.apply(bc,bd);return bc}return bd};try{Array.prototype.slice.call(aa.documentElement.childNodes,0)}catch(bb){a4=function(bg,bf){var bd=bf||[];if(a8.call(bg)==="[object Array]"){Array.prototype.push.apply(bd,bg)}else{if(typeof bg.length==="number"){for(var be=0,bc=bg.length;be0){bg=bc;break}}}bc=bc[bd]}bl[bf]=bg}}}var a3=aa.compareDocumentPosition?function(bd,bc){return bd.compareDocumentPosition(bc)&16}:function(bd,bc){return bd!==bc&&(bd.contains?bd.contains(bc):true)};var aX=function(bc){var bd=(bc?bc.ownerDocument||bc:0).documentElement;return bd?bd.nodeName!=="HTML":false};var a9=function(bc,bj){var bf=[],bg="",bh,be=bj.nodeType?[bj]:bj;while((bh=a2.match.PSEUDO.exec(bc))){bg+=bh[0];bc=bc.replace(a2.match.PSEUDO,"")}bc=a2.relative[bc]?bc+"*":bc;for(var bi=0,bd=be.length;bi=0)===aU})};a.fn.extend({find:function(aU){var aW=this.pushStack("","find",aU),aZ=0;for(var aX=0,aV=this.length;aX0){for(var a0=aZ;a00},closest:function(a3,aU){if(a.isArray(a3)){var a0=[],a2=this[0],aZ,aY={},aW;if(a2&&a3.length){for(var aX=0,aV=a3.length;aX-1:a(a2).is(aZ)){a0.push({selector:aW,elem:a2});delete aY[aW]}}a2=a2.parentNode}}return a0}var a1=a.expr.match.POS.test(a3)?a(a3,aU||this.context):null;return this.map(function(a4,a5){while(a5&&a5.ownerDocument&&a5!==aU){if(a1?a1.index(a5)>-1:a(a5).is(a3)){return a5}a5=a5.parentNode}return null})},index:function(aU){if(!aU||typeof aU==="string"){return a.inArray(this[0],aU?a(aU):this.parent().children())}return a.inArray(aU.jquery?aU[0]:aU,this)},add:function(aU,aV){var aX=typeof aU==="string"?a(aU,aV||this.context):a.makeArray(aU),aW=a.merge(this.get(),aX);return this.pushStack(x(aX[0])||x(aW[0])?aW:a.unique(aW))},andSelf:function(){return this.add(this.prevObject)}});function x(aU){return !aU||!aU.parentNode||aU.parentNode.nodeType===11}a.each({parent:function(aV){var aU=aV.parentNode;return aU&&aU.nodeType!==11?aU:null},parents:function(aU){return a.dir(aU,"parentNode")},parentsUntil:function(aV,aU,aW){return a.dir(aV,"parentNode",aW)},next:function(aU){return a.nth(aU,2,"nextSibling")},prev:function(aU){return a.nth(aU,2,"previousSibling")},nextAll:function(aU){return a.dir(aU,"nextSibling")},prevAll:function(aU){return a.dir(aU,"previousSibling")},nextUntil:function(aV,aU,aW){return a.dir(aV,"nextSibling",aW)},prevUntil:function(aV,aU,aW){return a.dir(aV,"previousSibling",aW)},siblings:function(aU){return a.sibling(aU.parentNode.firstChild,aU)},children:function(aU){return a.sibling(aU.firstChild)},contents:function(aU){return a.nodeName(aU,"iframe")?aU.contentDocument||aU.contentWindow.document:a.makeArray(aU.childNodes)}},function(aU,aV){a.fn[aU]=function(aY,aW){var aX=a.map(this,aV,aY);if(!M.test(aU)){aW=aY}if(aW&&typeof aW==="string"){aX=a.filter(aW,aX)}aX=this.length>1?a.unique(aX):aX;if((this.length>1||aH.test(aW))&&X.test(aU)){aX=aX.reverse()}return this.pushStack(aX,aU,D.call(arguments).join(","))}});a.extend({filter:function(aW,aU,aV){if(aV){aW=":not("+aW+")"}return a.find.matches(aW,aU)},dir:function(aW,aV,aY){var aU=[],aX=aW[aV];while(aX&&aX.nodeType!==9&&(aY===B||aX.nodeType!==1||!a(aX).is(aY))){if(aX.nodeType===1){aU.push(aX)}aX=aX[aV]}return aU},nth:function(aY,aU,aW,aX){aU=aU||1;var aV=0;for(;aY;aY=aY[aW]){if(aY.nodeType===1&&++aV===aU){break}}return aY},sibling:function(aW,aV){var aU=[];for(;aW;aW=aW.nextSibling){if(aW.nodeType===1&&aW!==aV){aU.push(aW)}}return aU}});var S=/ jQuery\d+="(?:\d+|null)"/g,Y=/^\s+/,F=/(<([\w:]+)[^>]*?)\/>/g,aj=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,c=/<([\w:]+)/,t=/"+aU+">"},ab={option:[1,""],legend:[1,""],thead:[1,""],tr:[2,""],td:[3,""],col:[2,""],area:[1,""],_default:[0,"",""]};ab.optgroup=ab.option;ab.tbody=ab.tfoot=ab.colgroup=ab.caption=ab.thead;ab.th=ab.td;if(!a.support.htmlSerialize){ab._default=[1,"div","
"]}a.fn.extend({text:function(aU){if(a.isFunction(aU)){return this.each(function(aW){var aV=a(this);aV.text(aU.call(this,aW,aV.text()))})}if(typeof aU!=="object"&&aU!==B){return this.empty().append((this[0]&&this[0].ownerDocument||aa).createTextNode(aU))}return a.getText(this)},wrapAll:function(aU){if(a.isFunction(aU)){return this.each(function(aW){a(this).wrapAll(aU.call(this,aW))})}if(this[0]){var aV=a(aU,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){aV.insertBefore(this[0])}aV.map(function(){var aW=this;while(aW.firstChild&&aW.firstChild.nodeType===1){aW=aW.firstChild}return aW}).append(this)}return this},wrapInner:function(aU){if(a.isFunction(aU)){return this.each(function(aV){a(this).wrapInner(aU.call(this,aV))})}return this.each(function(){var aV=a(this),aW=aV.contents();if(aW.length){aW.wrapAll(aU)}else{aV.append(aU)}})},wrap:function(aU){return this.each(function(){a(this).wrapAll(aU)})},unwrap:function(){return this.parent().each(function(){if(!a.nodeName(this,"body")){a(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(aU){if(this.nodeType===1){this.appendChild(aU)}})},prepend:function(){return this.domManip(arguments,true,function(aU){if(this.nodeType===1){this.insertBefore(aU,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(aV){this.parentNode.insertBefore(aV,this)})}else{if(arguments.length){var aU=a(arguments[0]);aU.push.apply(aU,this.toArray());return this.pushStack(aU,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(aV){this.parentNode.insertBefore(aV,this.nextSibling)})}else{if(arguments.length){var aU=this.pushStack(this,"after",arguments);aU.push.apply(aU,a(arguments[0]).toArray());return aU}}},clone:function(aV){var aU=this.map(function(){if(!a.support.noCloneEvent&&!a.isXMLDoc(this)){var aX=this.outerHTML,aW=this.ownerDocument;if(!aX){var aY=aW.createElement("div");aY.appendChild(this.cloneNode(true));aX=aY.innerHTML}return a.clean([aX.replace(S,"").replace(Y,"")],aW)[0]}else{return this.cloneNode(true)}});if(aV===true){q(this,aU);q(this.find("*"),aU.find("*"))}return aU},html:function(aW){if(aW===B){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(S,""):null}else{if(typeof aW==="string"&&!/
1||aX>0?aW.fragment.cloneNode(true):aW.fragment)}}if(aV){a.each(aV,aR)}}return this;function a0(a4,a5){return a.nodeName(a4,"table")?(a4.getElementsByTagName("tbody")[0]||a4.appendChild(a4.ownerDocument.createElement("tbody"))):a4}}});function q(aW,aU){var aV=0;aU.each(function(){if(this.nodeName!==(aW[aV]&&aW[aV].nodeName)){return}var a1=a.data(aW[aV++]),a0=a.data(this,a1),aX=a1&&a1.events;if(aX){delete a0.handle;a0.events={};for(var aZ in aX){for(var aY in aX[aZ]){a.event.add(this,aZ,aX[aZ][aY],aX[aZ][aY].data)}}}})}function H(aZ,aX,aV){var aY,aU,aW,a0;if(aZ.length===1&&typeof aZ[0]==="string"&&aZ[0].length<512&&aZ[0].indexOf("