(function($){var Judy=function($){var self=this,_name="Judy",_nonObj=["window","document","document.documentElement","element","image","textNode","attributeNode","otherNode","event","date","regexp","jquery"],_uaIe=0,_dateFrmt,_dateTz,_nonInputFlds=["textarea","select"],_dataName,_dialEvts=["beforeClose","create","open","focus","dragStart","drag","dragStop","resizeStart","resize","resizeStop","close"],_dialOpts=["appendTo","autoOpen","buttons","closeOnEscape","closeText","dialogClass","draggable","height","hide","maxHeight","maxWidth","minHeight","minWidth","modal","position","resizable","show","title","width"],_dialMthds=["close","destroy","isOpen","moveToTop","open","option","widget"],_dialogs=[],_acInit,_acLstnrs={},_acFltrs=[{"!url":/\/inspect\/ajax/},{"!url":/\/log_filter\/ajax/}],_checklist="checkboxes",_radio="radios",_jqOvrly,_ovrlyRsz,_errorHandler=function(error,variable,options){var u=options,o={},t; if(typeof window.inspect==="function"&&inspect.tcepsnI){if(typeof inspect.errorHandler==="function"){if(u){if((t=typeof u)==="string"){o.message=u; o.wrappers=1; }else{if(t==="object"){o=u; o.wrappers=!u.wrappers?1:(u.wrappers+1); }}}o.category="Judy"; inspect.errorHandler(error,variable,o); }else{inspect.console("Please update Inspect."); }}},_elm=function(list,u,cntxt,mthd,noError){var li=!list?0:undefined,t,s=u,jq,le,i,f; if(u){if((t=typeof u)==="object"){if(u===window||u===document||u.getAttributeNode){return !list?u:[u]; }if(typeof u.jquery==="string"){if(u.length){if(!cntxt){return u.get(li); }if((jq=$(u,cntxt)).length){return jq.get(li); }}s=u.selector; }else{if(self.isArray(u)&&(le=u.length)){for(i=0; i<le; i++){if(!(u[i]===window||u[i]===document||u[i].getAttributeNode)){f=true; break; }else{if(!i&&!list){return u[0]; }}}if(!f){return u; }}}}else{if(t==="string"&&(jq=$(u)).length){return jq.get(li); }}}if(!noError){try{throw new Error("selector["+s+"], type["+self.typeOf(u)+"], doesnt resolve to element"); }catch(er){_errorHandler(er,null,_name+"."+mthd+"()"); }}return undefined; },_fieldType=function(r,b){var t=r.tagName.toLowerCase(); if(t==="input"){if((t=r.getAttribute("type"))){switch(t){case"button":case"submit":case"reset":return !b?"":t; case"radio":return _radio; case"checkbox":return self.ancestor(r,"div.form-checkboxes",3)?_checklist:"checkbox"; default:return t; }}return""; }return self.arrayIndexOf(_nonInputFlds,t)>-1?t:""; },_disable=function(nbl,slctr,cntxt,ttl){var a=_elm(true,slctr,cntxt,!nbl?"disable":"enable"),le,i,r; if(a){le=a.length; for(i=0; i<le; i++){(r=a[i]).disabled=!nbl?"disabled":false; if(typeof ttl==="string"){r.setAttribute("title",ttl); }switch(_fieldType(r,true)){case"checkbox":$(r).unbind("click."+_name+".disabled"); if(!nbl){$(r).bind("click."+_name+".disabled",function(){return false; }); }break; case _checklist:$("input[type='checkbox']",r).each(function(){$(r).unbind("click."+_name+".disabled"); if(!nbl){$(this).bind("click."+_name+".disabled",function(){return false; }); }}); break; case _radio:$("input[name='"+r.getAttribute("name")+"']",cntxt).each(function(){this.disabled=!nbl?"disabled":false; }); break; case"button":case"submit":case"reset":$(r)[!nbl?"addClass":"removeClass"]("form-button-disabled"); break; }}}},_valCheckbox=function(r,val){if(val===undefined){return r.checked?r.value:""; }r.checked=(val?"checked":false); return true; },_valRadio=function(r,context,val){var nm=r.getAttribute("name"),a,le,i,v; if(!nm){return _valCheckbox(r,val); }if(val===undefined){return(v=$("input[name='"+nm+"']:checked",context).val())!==undefined?v:""; }if((le=(a=$().get("input[name='"+nm+"']",context)).length)){if((v=""+val)===""){for(i=0; i<le; i++){a[i].checked=false; }return true; }for(i=0; i<le; i++){if(a[i].value===v){a[i].checked="checked"; return true; }}return false; }return undefined; },_valSelect=function(r,val){var multi,ndx=-1,rOpts,nOpts,rOpt,nVals,i,vals=[],v,set=0; if(val===undefined&&((ndx=r.selectedIndex)===undefined||ndx<0)){return""; }multi=r.multiple; nOpts=(rOpts=$("option",r).get()).length; if(val===undefined){if(!multi){return(v=rOpts[ndx].value)!=="_none"?v:""; }for(i=0; i<nOpts; i++){if((rOpt=rOpts[i]).selected&&(v=rOpt.value)!==""&&v!=="_none"){vals.push(v); }}return vals.length?vals:""; }for(i=0; i<nOpts; i++){rOpts[i].selected=false; }if(val===""||val==="_none"){return true; }if(!self.isArray(val)){v=[""+val]; }else{if(!(nVals=val.length)||(nVals===1&&(val[0]===""||val[0]==="_none"))){return true; }v=val.concat(); for(i=0; i<nVals; i++){v[i]=""+v[i]; }}for(i=0; i<nOpts; i++){if(((rOpt=rOpts[i]).selected=self.arrayIndexOf(v,rOpt.value)>-1?"selected":false)){++set; if(!multi){return 1; }}}return set; },_valChecklist=function(r,val){var par,rOpts,nOpts,rOpt,nVals,i,v=[],set=0; if((par=self.ancestor(r,"div.form-checkboxes",3))){nOpts=(rOpts=$("input[type='checkbox']",par).get()).length; if(val===undefined){for(i=0; i<nOpts; i++){if((rOpt=rOpts[i]).checked){v.push(rOpt.value); }}return v.length?v:""; }v=!self.isArray(val)?(val===""?undefined:[val]):(!(nVals=val.length)||(nVals===1&&val[0]==="")?undefined:val.concat()); if(v===undefined){for(i=0; i<nOpts; i++){rOpts[i].checked=false; }return true; }for(i=0; i<nVals; i++){v[i]=""+v[i]; }for(i=0; i<nOpts; i++){if(((rOpt=rOpts[i]).checked=self.arrayIndexOf(v,rOpt.value)>-1?"checked":false)){++set; }}return set; }return undefined; },_filter=function(o,fltr){var le=fltr.length,i,k,x,not,v; for(i=0; i<le; i++){for(k in fltr[i]){v=null; if(fltr[i].hasOwnProperty(k)){x=k; if((not=x.charAt(0)==="!")){x=x.substr(1); }if(o.hasOwnProperty(x)){if((v=fltr[i][k])&&v instanceof RegExp){if(typeof o[x]==="string"){if(v.test(o[x])){if(not){return false; }}else{if(!not){return false; }}}}else{if(o[x]===v){if(not){return false; }}else{if(!not){return false; }}}}}}}return true; },_acOff=function(u,s,nm,h){var le,i,rm=[],n,sbtrt; if(_acLstnrs[u]&&_acLstnrs.hasOwnProperty(u)){le=_acLstnrs[u].length; for(i=0; i<le; i++){if((_acLstnrs[u][i][0]===s||(nm&&_acLstnrs[u][i][1]===nm))&&(!h||_acLstnrs[u][i][2]===h)){rm.push(i); }}if((n=rm.length)){if(n===le){delete _acLstnrs[u]; }else{sbtrt=0; for(i=0; i<n; i++){_acLstnrs[u].splice(rm[i]-sbtrt,1); ++sbtrt; }}}}},_keyMask=function(keystrokes){var aK=keystrokes.toUpperCase().split(/_/),nK=aK.length,k=0,ky,cK,i; for(i=0; i<nK; i++){switch((ky=aK[i])){case"CTR":case"CTRL":case"CMD":case"META":k+=100000; break; case"ALT":k+=10000; break; case"SHIFT":k+=1000; break; case"ENTER":case"RETURN":k+=13; break; case"ESC":case"ESCAPE":k+=27; break; case"TAB":k+=9; break; case"SPACE":k+=32; break; case"BACKSPACE":k+=8; break; case"INS":case"INSERT":k+=45; break; case"DEL":case"DELETE":k+=46; break; case"HOME":k+=36; break; case"END":k+=35; break; case"PGUP":case"PAGEUP":k+=33; break; case"PGDN":case"PAGEDOWN":k+=34; break; case"PAUSE":case"BREAK":k+=19; break; case"STAR":k+=106; break; case"-":case"MINUS":case"HYPHEN":k+=109; break; case"+":case"PLUS":k+=107; break; case"LEFT":k+=37; break; case"UP":k+=38; break; case"RIGHT":k+=39; break; case"DOWN":k+=40; break; case"F1":k+=112; break; case"F2":k+=113; break; case"F3":k+=114; break; case"F4":k+=115; break; case"F5":k+=116; break; case"F6":k+=117; break; case"F7":k+=118; break; case"F8":k+=119; break; case"F9":k+=120; break; case"F10":k+=121; break; case"F11":k+=122; break; case"F12":k+=123; break; default:cK=ky.charCodeAt(0); if(cK>=96&&cK<=105){k+=(cK-48); }else{if((cK>=65&&cK<=90)||(cK>=48&&cK<=57)){k+=cK; }else{throw new Error("unsupported char["+ky+"] in keystrokes["+keystrokes+"]"); }}}}if(k&&k%1000>0){return"_"+k; }throw new Error("keystrokes["+keystrokes+"] "+(!k?"evaluates to nothing":"all modifiers, no plain keys")); },_keystrokes=function(e){var k=0,kC; if(e.ctrlKey||e.metaKey){k+=100000; }if(e.altKey){k+=10000; }if(e.shiftKey){k+=1000; }if((kC=e.keyCode)){switch(kC){case 61:k+=107; break; case 189:k+=109; break; default:if(kC>=96&&kC<=105){k+=(kC-48); }else{k+=kC; }}}return k; },_bindKeys=function(et,as){var jq=$(as[0]),jqMthd=typeof jq.on==="function"?"on":"bind",nAs=as.length,qualifiers="",nQs,iQ,q,nm,kms={},km,rs=jq.get(),nRs=jq.length,r,hndlr,dat,pdef=false,i,jq1,d,e,j,le,kyHndlrs,f; if(nAs<3){throw new Error("requires at least 3 args"); }if(!nRs){throw new Error("No element like selector["+as[0]+"], type["+self.typeOf(as[0])+"]"); }for(i=1; i<5; i++){switch(typeof as[i]){case"string":qualifiers=as[1]; break; case"function":hndlr=as[i]; break; case"object":dat=as[i]; break; case"boolean":pdef=as[i]; break; }}if(!hndlr){throw new Error("No handler function arg found"); }nQs=(qualifiers=qualifiers.split(" ")).length; for(iQ=0; iQ<nQs; iQ++){if((q=qualifiers[iQ]).indexOf("key")===0){q=q.replace(/^key[^_]+_(.+)$/,"$1"); }if(!q||q==="*"){jq[jqMthd].apply(jq,!dat?[et,hndlr]:[et,dat,hndlr]); return true; }nm=""; if(q.indexOf(".")>-1){nm=q.replace(/^[^\.]+\.(.+)$/,"$1"); q=q.replace(/^([^\.]+)\..+$/,"$1"); }km=_keyMask(q.replace(/[_\+]\+/,"_plus").replace(/\+/g,"_")); if(iQ&&kms[km]&&kms.hasOwnProperty(km)){continue; }kms[km]={handler:hndlr,data:dat,namespace:nm,type:q,preventDefault:pdef}; }for(i=0; i<nRs; i++){if((r=rs[i])!==document.documentElement){if(r===window){if(_uaIe){throw new Error("IE key event on window illegal, do set it on document.documentElement"); }}else{if(!_uaIe){switch(r.tagName.toLowerCase()){case"textarea":case"input":break; default:if(!r.hasAttribute("tabindex")){throw new Error("non-IE key event on tag-type["+r.tagName+"] without tabindex not possible"); }}}}}kyHndlrs=null; if((d=(jq1=$(r)).data("events"))&&(e=d[et])&&d.hasOwnProperty(et)){le=e.length; for(j=0; j<le; j++){if(e[j].namespace===_dataName){kyHndlrs=e[j].handler.judy_keyMask_handlers; break; }}}if(!kyHndlrs){f=function(evt){var o,k,a,pd,le,i,lstnr,e; if((a=(o=f.judy_keyMask_handlers)[k="_"+_keystrokes(evt)])&&o.hasOwnProperty(k)&&(le=a.length)){for(i=0; i<le; i++){lstnr=a[i]; if(!pd&&lstnr.preventDefault){pd=true; evt.preventDefault(); }evt.data=lstnr.data; evt.keystrokes=lstnr.type; lstnr.handler.apply(this,[evt]); }}}; kyHndlrs=f.judy_keyMask_handlers={}; jq1[jqMthd](et+"."+_dataName,f); }for(km in kms){if(kms.hasOwnProperty(km)){if(kyHndlrs[km]&&kyHndlrs.hasOwnProperty(km)){kyHndlrs[km].push(kms[km]); }else{kyHndlrs[km]=[kms[km]]; }}}}return undefined; },_dateTz=function(dt,asHourStr){var z=dt.getTimezoneOffset(),zu; return !asHourStr?(-(z*60*1000)):(z?(((zu=z>0)?"-":"+")+((zu=((zu?z:z*-1)/60))<10?"0":"")+Math.floor(zu)):"+00"); },_dateFrmt=function(dt,d,t,m,UTC,iso){var u,f=UTC?"getUTC":"get"; return(d?(dt[f+"FullYear"]()+"-"+((u=dt[f+"Month"]()+1)<10?("0"+u):u)+"-"+((u=dt[f+"Date"]())<10?("0"+u):u)):"")+(d&&t?(iso?"T":" "):"")+(t?((((u=dt[f+"Hours"]())<10?("0"+u):u)+":"+((u=dt[f+"Minutes"]())<10?("0"+u):u)+":"+((u=dt[f+"Seconds"]())<10?("0"+u):u))+(m?((iso?".":" ")+((u=dt[f+"Milliseconds"]())<10?("00"+u):(u<100?("0"+u):u))):"")):"")+(!iso?"":(UTC?"Z":(_dateTz(dt,1)+":00"))); },_dimInner=function(d,slctr,ignorePadding){var u=slctr,r,dE=document.documentElement,jq,v,p; if(u===window){return dE["client"+d]; }if(u===dE||u===document.body){return dE["scroll"+d]; }if((r=_elm(0,u,0,"inner"+d))){v=r["client"+d]; if(!ignorePadding){if((p=(jq=$(r)).css("padding-"+(d==="Width"?"left":"top"))).indexOf("px")>-1){v-=parseFloat(p); }if((p=jq.css("padding-"+(d==="Width"?"right":"bottom"))).indexOf("px")>-1){v-=parseFloat(p); }v=Math.round(v); }return v; }return undefined; },_dimOuter=function(d,slctr,includeMargin,set,max){var u=slctr,r,dE=document.documentElement,jq,v; if(u===window){return dE["inner"+d]||dE["client"+d]; }if(u===dE||u===document.body){return dE["scroll"+d]; }if((r=_elm(0,u,0,"outer"+d))){v=(jq=$(r))["outer"+d](includeMargin); if(!set||set===v){return v; }v=_dimInner(d,u)+(set-v); if(!max||max===2){jq.css(d.toLowerCase(),v+"px"); }if(max){jq.css("max-"+d.toLowerCase(),v+"px"); }return set; }return undefined; },_ovrlyRsz=function(){var w=window,d=document.documentElement,dW,dD; _jqOvrly.css({width:((dD=self.innerWidth(d))>(dW=self.innerWidth(w))?dD:dW)+"px",height:((dD=self.innerHeight(d))>(dW=self.innerHeight(w))?dD:dW)+"px"}); }; this.yduj=true; this.yduJ=true; this.version=2.1; this.browserIE=_uaIe=(function(){var u; if((u=window.navigator)&&(u=u.userAgent)){if(/; MSIE \d{1,2}\.\d/.test(u)){return(u=parseFloat(u.replace(/^.+; MSIE (\d{1,2}\.\d).+/,"$1")))?u:0; }if(/; Trident\/\d+\.\d+;/.test(u)&&/; rv:\d+\.\d+[;\)]/.test(u)){return(u=parseFloat(u.replace(/^.+; rv:(\d+\.\d+)[;\)].+$/,"$1")))?u:0; }}return 0; }()); this.setup=function(){self.setup=function(){}; _dataName="judy_"+self.randName(); }; this.typeOf=function(u){var t=typeof u; if(!arguments.length){return"Judy"; }switch(t){case"boolean":case"string":return t; case"number":return isFinite(u)?t:(isNaN(u)?"NaN":"infinite"); case"object":if(u===null){return"null"; }try{if(u.typeOf&&typeof u.typeOf==="function"){return u.typeOf(); }else{if(typeof u.length==="number"&&!(u.propertyIsEnumerable("length"))&&typeof u.splice==="function"){return"array"; }else{if(u===window){return"window"; }else{if(u===document){return"document"; }else{if(u===document.documentElement){return"document.documentElement"; }else{if(u.getAttributeNode){return u.tagName.toLowerCase==="img"?"image":"element"; }else{if(u.nodeType){switch(u.nodeType){case 3:return"textNode"; case 2:return"attributeNode"; }return"otherNode"; }else{if(typeof u.stopPropagation==="function"||(u.cancelBubble!==undefined&&typeof u.cancelBubble!=="function"&&typeof u.boundElements==="object")){return"event"; }else{if(typeof u.getUTCMilliseconds==="function"){return"date"; }else{if(typeof u.exec==="function"&&typeof u.test==="function"){return"regexp"; }else{if(u.hspace&&typeof u.hspace!=="function"){return"image"; }else{if(u.jquery&&typeof u.jquery==="string"&&!u.hasOwnProperty("jquery")){return"jquery"; }}}}}}}}}}}}}catch(er){}return t; case"function":return(u.constructor===RegExp||(typeof u.exec==="function"&&typeof u.test==="function"))?"regexp":t; }return t; }; this.isContainer=function(u,orArray){var t; return u&&typeof u==="object"&&((t=self.typeOf(u))==="object"||(orArray&&t==="array")||(t!=="array"&&self.arrayIndexOf(_nonObj,t)===-1))?(!orArray||t!=="array"?"object":t):false; }; this.isArray=function(u){return(u&&typeof u==="object"&&typeof u.length==="number"&&!(u.propertyIsEnumerable("length"))&&typeof u.splice==="function"); }; this.isNumber=function(u){return typeof u==="number"&&isFinite(u); }; this.isInt=function(u,nonNegative){return typeof u==="number"&&isFinite(u)&&(u%1===0)&&(!nonNegative||u>-1); }; this.containerCopy=function(oa,shallow){var t,c={},p,v; if(!oa||!(t=self.isContainer(oa,true))){return oa; }if(t==="array"){if(shallow){return oa.concat(); }c=[]; }for(p in oa){if(oa.hasOwnProperty(p)){c[p]=((v=oa[p])&&typeof v==="object")?(v===oa?c:(!shallow?self.containerCopy(v,false):v)):v; }}return c; }; this.objectGet=function(o,anyNumberOfKeys){var a=arguments,le=a.length,u=o,p,i; try{if(!u||typeof u!=="object"){throw new Error("arg o isnt object"); }if(le<2){throw new Error("no key arg"); }for(i=1; i<le; i++){if(i>1&&(!u||typeof u!=="object")){return undefined; }if((!(p=a[i])&&p!==0)||!(p=""+p)){throw new Error("arg #"+i+"["+p+"] type["+self.typeOf(p)+"] isnt integer or non-empty string"); }if(u.hasOwnProperty(p)){u=u[p]; }else{return undefined; }}return u; }catch(er){_errorHandler(er,null,_name+".objectGet()"); }return undefined; }; this.objectKeys=function(o){var a,k; if(!o||typeof o!=="object"){return null; }if(typeof Object.keys==="function"){return Object.keys(o); }a=[]; for(k in o){if(o.hasOwnProperty(k)){a.push(k); }}return a; }; this.objectKeyOf=function(o,v){var k; if(v!==undefined&&o||typeof o==="object"){for(k in o){if(o.hasOwnProperty(k)&&o[k]===v){return k; }}}return undefined; }; this.objectSort=function(o){var a=[],oByVal={},os={},k,v,cNum=String.fromCharCode(127),le,i=0; if(!o||typeof o!=="object"){return o; }for(k in o){if(o.hasOwnProperty(k)){++i; oByVal[(typeof(v=o[k])!=="number"?"":cNum)+v]=k; a.push(v); }}if(!i){return o; }le=i; a.sort(); for(i=0; i<le; i++){os[oByVal[(typeof(v=a[i])!=="number"?"":cNum)+v]]=v; }return os; }; this.objectKeySort=function(o){var a,os={},le,i; if(!(a=self.objectKeys(o))||(le=a.length)<2){return a?o:null; }a.sort(); for(i=0; i<le; i++){os[a[i]]=o[a[i]]; }return os; }; this.toArray=function(o){var a,le,i; if(o&&typeof o==="object"){if(typeof o.hasOwnProperty==="function"){return Array.prototype.slice.call(o); }a=[]; le=o.length; for(i=0; i<le; i++){a.push(o[i]); }return a; }return null; }; this.arrayIndexOf=function(a,v){var le=a.length,i; for(i=0; i<le; i++){if(a[i]===v){return i; }}return -1; }; this.merge=function(oa,oa1,isContainer,_depth){var tBoth=isContainer!==true?isContainer:0,t=tBoth||self.isContainer(oa,true),t1=tBoth||self.isContainer(oa1,true),d=_depth||0,p,le,le1,v,v1; try{if(d<10){if(t&&t1){if(t==="object"){if(t1==="object"){for(p in oa1){if(oa1.hasOwnProperty(p)&&(v1=oa1[p])!==undefined){if((v=oa[p])===undefined||!oa.hasOwnProperty(p)){oa[p]=v1; }else{if(v1!==null){if(!(t=self.isContainer(v,true))||self.isContainer(v1,true)!==t){oa[p]=v1; }else{self.merge(v,v1,t,d+1); }}}}}return true; }throw new TypeError("Type mismatch, first is object type["+self.typeOf(oa)+"], second is array"); }else{if(t1==="array"){if((le1=oa1.length)){if(!(le=oa.length)){oa=oa1.concat(); }else{for(p=0; p<le1; p++){if((v1=oa1[p])!==undefined){if(p>=le){oa.push(v1); }else{if((v=oa[p])===undefined){oa[p]=v1; }else{if(v1!==null){if(!(t=self.isContainer(v,true))||self.isContainer(v1,true)!==t){oa[p]=v1; }else{self.merge(v,v1,t,d+1); }}}}}}}}return true; }}throw new TypeError("Type mismatch, first is array, second is type["+self.typeOf(oa1)+"]"); }throw new TypeError("First arg is type["+self.typeOf(oa)+"], second is type["+self.typeOf(oa1)+"]"); }throw new Error("Cant recurse > 10, circular ref?"); }catch(er){_errorHandler(er,null,_name+".merge()"); }return false; }; this.ancestor=function(selector,parentSelector,max){var u,r=_elm(0,selector,null,"ancestor"),tt=parentSelector,lim=max&&max>0?(max+1):101,id,aCls,tn,cls,le,i; if(!r||r===window||r===document.documentElement){return undefined; }if(!tt||!(tt=$.trim(""+tt))){return r.parentNode; }if(tt.indexOf("#")>-1){u=tt.replace(/^([^\#]+)?\#([^\.]+)(\..+)?$/,"$2,$1$3").split(","); id=u[0]; tt=u[1]||""; }if(tt.indexOf(".")>-1){aCls=tt.split("."); tt=aCls[0]; aCls.splice(0,1); le=aCls.length; }tt=tt.toLowerCase(); while((--lim)&&(r=r.parentNode)){if(r.nodeType!==1||tn==="body"){return undefined; }tn=r.tagName.toLowerCase(); if((tt&&tn!==tt)||(id&&r.id!==id)){continue; }if(le){if(!(cls=r.className).length){continue; }cls=" "+cls+" "; u=0; for(i=0; i<le; i++){if(cls.indexOf(aCls[i])===-1){continue; }++u; }if(u<le){continue; }}return r; }return undefined; }; this.selector=function(selector,findName){var s=selector,f=findName,t=typeof s,x,v,tg; try{if(!s){throw new Error("Falsy selector, type["+t+"]"); }if(t==="string"){return !f?s:(s.indexOf("[name=")===-1?[s]:[s,s.replace(/^.*\[name=['\"]([^'\"]+)['\"]\].*$/,"$1")]); }else{if(t==="object"){if($.isWindow(s)){x="_win_"; }else{if(s===document){x="_doc_"; }else{if(s===document.documentElement){x="_docElm_"; }}}if(x){return !f?x:[x]; }if(typeof s.getAttributeNode!=="function"||typeof s.getAttribute!=="function"){throw new Error("Selector, type["+t+"], isnt non-empty string|element"); }tg=s.tagName.toLowerCase(); if((v=s.getAttribute("name"))){x=tg+'[name="'+v+'"]'; return !f?x:[x,v]; }if((v=s.id)){x="#"+v; }else{if((v=s.className)){x=tg+"."+v.replace(/ +/g,"."); }else{if((v=s.getAttribute("type"))){x=tg+'[type="'+v+'"]'; }else{x=tg; }}}return !f?x:[x]; }else{throw new Error("Selector, type["+t+"], isnt non-empty string|element"); }}}catch(er){_errorHandler(er,null,_name+".selector()"); }return null; }; this.ajaxcomplete=function(selector,url,data,handler,filter){var s=selector,t=typeof s,nm,u=url,d=data,h=handler,f=filter,a,le,i,v; try{if(!s){throw new Error("Falsy selector, type["+t+"]"); }if(t==="object"){if(s instanceof $){s=s.selector||s.get(); }if($.isArray(s)){if(!(le=s.length)){throw new Error("Empty selector, type array or jquery"); }for(i=0; i<le; i++){self.ajaxcomplete(s[i],u,d,h,f); return; }}}if(!(a=self.selector(s,true))){throw new Error("Bad selector, see previous error"); }nm=a[1]; s=a[0]; if(!u||typeof u!=="string"){throw new Error("Url type["+self.typeOf(v)+"] isnt non-empty string"); }if(u!=="*"){if(u.indexOf("http")===0){u=u.replace(/^https?:\/\/[^\/]+(\/.+)$/,"$1"); }else{if(u.charAt(0)!=="/"){u="/"+u; }}}if(h){if(typeof h==="object"){f=h; h=null; }}if(d&&typeof d==="function"){h=d; d=null; }if(!h){throw new Error("Cant resolve a handler"); }if(!_acInit){$(document).ajaxComplete(function(event,xhr,settings){var url=self.objectGet(settings,"url"),all=[],nm,val,le,i,n,j,k,$jq,nElms,fElms,elms,elm,lstnr,h,d,evt; if(url){if(url.indexOf("http")===0){url=url.replace(/^https?:\/\/[^\/]+(\/.+)$/,"$1"); }for(k in _acLstnrs){if(_acLstnrs.hasOwnProperty(k)&&url.indexOf(k)===0){all.push(_acLstnrs[k]); }}if(_acLstnrs["*"]&&_acLstnrs.hasOwnProperty("*")){all.push(_acLstnrs["*"]); }if((le=all.length)){if((nm=self.objectGet(settings,"extraData","_triggering_element_name"))){if(!($jq=$('[name="'+nm+'"]')).length){return; }if((val=self.objectGet(settings,"extraData","_triggering_element_value"))!==undefined){if(!($jq=$jq.filter('[value="'+val+'"]')).length){return; }}nElms=(fElms=$jq.get()).length; }for(i=0; i<le; i++){n=all[i].length; for(j=0; j<n; j++){lstnr=$jq=elms=h=d=evt=null; lstnr=all[i][j]; if(nm){if(lstnr[1]!==nm||(lstnr[4]&&!_filter(settings,lstnr[4]))){continue; }elms=fElms; }else{nElms=1; switch(lstnr[0]){case"_win_":elms=[window]; break; case"_doc_":elms=[document]; break; case"_docElm_":elms=[document.documentElement]; break; default:nElms=(elms=$(lstnr[0]).get()).length; }if(!nElms||(lstnr[4]&&!_filter(settings,lstnr[4]))){continue; }}h=lstnr[2]; d=lstnr[3]; evt=!d?{type:"ajaxcomplete"}:{type:"ajaxcomplete",data:d}; evt.ajax=settings; for(k=0; k<nElms; k++){elm=null; elm=elms[k]; h.apply(elm,[evt]); }}}}}}); _acInit=true; }if(f){if(!$.isArray(f)){f=[f]; }if(u==="*"){f=f.concat(_acFltrs); }}else{if(u==="*"){f=_acFltrs; }}if(!_acLstnrs[u]){_acLstnrs[u]=[[s,nm,h,d,f]]; }else{_acLstnrs[u].push([s,nm,h,d,f]); }}catch(er){_errorHandler(er,null,_name+".ajaxcomplete()"); }}; this.ajaxcomplete.off=function(selector,url,handler){var s=selector,t=typeof s,u=url,h=handler,nm,lstnrs,a,le,i,rm=[],sbtrt; try{if(!_acInit){return; }if(!s){throw new Error("Falsy selector, type["+t+"]"); }if(t==="object"){if(s instanceof $){s=s.selector||s.get(); }if($.isArray(s)){if(!(le=s.length)){throw new Error("Empty selector, type array or jquery"); }for(i=0; i<le; i++){self.ajaxcomplete.off(s[i],u,h); return; }}}if(!(a=self.selector(s,true))){throw new Error("Bad selector, see previous error"); }nm=a[1]; s=a[0]; if(u){if((t=typeof u)==="function"){h=u; u=null; }else{if(t!=="string"){throw new Error("Url type["+self.typeOf(v)+"] isnt non-empty string"); }if(u.indexOf("http")===0){u=u.replace(/^https?:\/\/[^\/]+(\/.+)$/,"$1"); }else{if(u.charAt(0)!=="/"){u="/"+u; }}}}if(u){_acOff(u,s,nm,h); }else{for(u in _acLstnrs){_acOff(u,s,nm,h); }}}catch(er){_errorHandler(er,null,_name+".ajaxcomplete.off()"); }}; this.keydown=function(){try{_bindKeys("keydown",arguments); return true; }catch(er){_errorHandler(er,null,_name+".keydown()"); }return false; }; this.keyup=function(){try{_bindKeys("keyup",arguments); return true; }catch(er){_errorHandler(er,null,_name+".keyup()"); }return false; }; this.eventList=function(selector,type){var r=_elm(0,selector,null,"eventList"),jq,o,k; if(!r){return undefined; }jq=$(r); if((o=jq.data())){if(!o.hasOwnProperty("events")){for(k in o){if(k.length>7&&o.hasOwnProperty(k)&&k.indexOf("jQuery")===0){if(!(o=o[k])||!o.events||!o.hasOwnProperty("events")){return null; }}}}}if(!o){return null; }if(!type){return o.events; }o=o.events; for(k in o){if(k===type&&o.hasOwnProperty(k)){return o[k]; }}return null; }; this.isField=function(elm,button){return typeof elm==="object"&&elm.tagName?(_fieldType(elm,button)?true:false):undefined; }; this.fieldType=function(selector,context,button){var r=_elm(0,selector,context,"fieldType"); return r?_fieldType(r,button):undefined; }; this.fieldValue=function(selector,context,val,type){var r=_elm(0,selector,context,"fieldValue"),t; if(r&&(t=type||_fieldType(r,true))){switch(t){case"select":return _valSelect(r,val); case"checkbox":return _valCheckbox(r,val); case"checkboxes":case"checklist":return _valChecklist(r,val); case"radio":case"radios":return _valRadio(r,context,val); case"image":t="src"; default:t=""; }if(val===undefined){return !t?r.value:r.getAttribute(t); }if(!t){r.value=""+val; }else{r.setAttribute(t,""+val); }return true; }return undefined; }; this.disable=function(selector,context,hoverTitle){_disable(0,selector,context,hoverTitle); }; this.enable=function(selector,context,hoverTitle){_disable(1,selector,context,hoverTitle); }; this.scrollTrap=function(selector,context,eventName){var a=_elm(true,selector,context,"scrollTrap"),nm=eventName||(_name+".scrollTrap"); if(a){$(a).each(function(){var preventZone=100,halfZone,s=this.scrollTop,$self=$(this),$chlds,le,$chld,h; if(!$self.hasClass("scroll-trapped")){if((le=($chlds=$self.children()).get().length)===1){$chld=$($chlds.get(0)); }else{if(le){$chld=$chlds.wrapAll("<div />").parent(); }else{return; }}$self.addClass("scroll-trapped"); if((h=this.clientHeight)<1.5*preventZone){preventZone=Math.floor(h/1.5); }halfZone=Math.floor(preventZone/2); $chld.css({"margin-top":preventZone+"px","margin-bottom":preventZone+"px"}); this.scrollTop=s+preventZone; $self.bind("scroll."+nm,function(){var that=this,s=that.scrollTop,h; if(s<halfZone){that.scrollTop=halfZone; setTimeout(function(){that.scrollTop=preventZone; },100); }else{if(s>(h=that.scrollHeight-that.clientHeight)-halfZone){that.scrollTop=h-halfZone; setTimeout(function(){that.scrollTop=h-preventZone; },100); }}}); }}); }}; this.scrollTo=function(selector,context,offset,pad){var u,par,r,to=offset,p=pad||0,num,$par,chld,prvntZn=0,max=-1; if((par=_elm(0,selector,context,"scrollTo"))){if(!to||typeof to==="number"||!(r=_elm(0,to,par,"",true))){num=true; to=!to||!isFinite(to)||to<0?0:to; }if(($par=$(par)).hasClass("scroll-trapped")&&(chld=$par.children().get(0))){prvntZn=parseInt($(chld).css("margin-top").replace(/px/,""),10); max=par.scrollHeight-par.clientHeight-Math.floor(prvntZn*0.75); }if(num){to+=prvntZn; }else{par.scrollTop=prvntZn; to=(r.offsetTop-par.offsetTop); }if(p&&prvntZn&&p<0&&(p*-1)>(u=Math.floor(prvntZn/4))){p=-u; }to+=p; if(max>0&&to>max){to=max; }par.scrollTop=to; }}; this.focus=function(selector,context,delay){var d=delay||0,to; if(selector){to=setTimeout(function(){var r; if((r=_elm(0,selector,context,"",true))){try{r.focus(); }catch(er){}}},d>=0?d:20); }}; this.innerWidth=function(selector,ignorePadding){return _dimInner("Width",selector,ignorePadding); }; this.innerHeight=function(selector,ignorePadding){return _dimInner("Height",selector,ignorePadding); }; this.outerWidth=function(selector,includeMargin,set,max){return _dimOuter("Width",selector,includeMargin,set,max); }; this.outerHeight=function(selector,includeMargin,set,max){return _dimOuter("Height",selector,includeMargin,set,max); }; this.stripTags=function(u){return $.trim((""+u).replace(/<[^<>]+>/g," ").replace(/[ ]+/g," ")); }; this.toLeading=function(u,length){var le=length||1; return(new Array(le).join("0")+u).substr(-le,le); }; this.toUpperCaseFirst=function(u){var s=""+u,le=s.length; return !le?"":(s.charAt(0).toUpperCase()+(le<2?"":s.substr(1))); }; this.isLeapYear=function(u){var y; switch(self.typeOf(u)){case"date":y=u.getFullYear(); break; case"number":y=u; break; case"string":y=parseInt(u,10); break; default:return null; }if(isFinite(y)&&u>-1&&u%1===0){return(!(y%4)&&(y%100))||!(y%400); }return null; }; this.dateISO=function(date,UTC){var d=date||new Date(); return UTC&&Date.prototype.toISOString?d.toISOString():_dateFrmt(d,1,1,1,UTC,1); }; this.dateTime=function(date,UTC){var d=date||new Date(); return UTC&&Date.prototype.toISOString?d.toISOString().replace(/T/," ").replace(/\.\d{3}Z$/,""):_dateFrmt(d,1,1,0,UTC); }; this.dateToFormat=function(date,sFormat){var u=date,fmt=sFormat||"YYYY-MM-DD",le,y,m,d,s,a,b; if(u&&typeof u==="object"&&u.getFullYear){y=u.getFullYear(); m=self.toLeading(u.getMonth()+1,2); d=self.toLeading(u.getDate(),2); if((a=(s=fmt.substr(0,10)).replace(/[MDY]/g,"")).length<2){return""; }b=a.charAt(1); a=a.charAt(0); switch(s.replace(/[^MDY]/g,"")){case"YYYYMMDD":s=y+a+m+b+d; break; case"MMDDYYYY":s=m+a+d+b+y; break; case"DDMMYYYY":s=d+a+m+b+y; break; default:return""; }if((le=fmt.length)>11){s+=" "+self.toLeading(u.getHours(),2); if(le>14){s+=":"+self.toLeading(u.getMinutes(),2); if(le>17){s+=":"+self.toLeading(u.getSeconds(),2); if(le>20){s+=" "+self.toLeading(u.getMilliseconds(),3); }}}}return s; }else{try{throw new Error("date["+u+"] type["+self.typeOf(u)+"] is not a non-empty Date"); }catch(er){_errorHandler(er,null,_name+".dateToFormat()"); }return""; }}; this.dateFromFormat=function(sDate,sFormat){var s=sDate,dt=new Date(),fmt=sFormat||"YYYY-MM-DD",y,m,d; if(s&&typeof s==="string"){if(/^YYYY.MM.DD$/.test(fmt)){y=s.substr(0,4); m=s.substr(5,2); d=s.substr(8,2); }else{if(/^MM.DD.YYYY$/.test(fmt)){y=s.substr(6,4); m=s.substr(0,2); d=s.substr(3,2); }else{if(/^DD.MM.YYYY$/.test(fmt)){y=s.substr(6,4); m=s.substr(3,2); d=s.substr(0,2); }else{return null; }}}y=parseInt(y,10); d=parseInt(d,10); switch((m=parseInt(m,10))){case 1:case 3:case 5:case 7:case 8:case 10:case 12:if(d>31){return null; }break; case 4:case 6:case 9:case 11:if(d>30){return null; }break; case 2:if(d>29||(d===29&&!self.isLeapYear(y))){return null; }break; default:return null; }dt.setFullYear(y,m-1,d); dt.setHours(0,0,0); dt.setMilliseconds(0); return dt; }else{try{throw new Error("date["+s+"] type["+self.typeOf(s)+"] is not non-empty string"); }catch(er){_errorHandler(er,null,_name+".dateFromFormat()"); }return null; }}; this.timeFormat=function(date,sTime){var d=date,t=sTime?$.trim(sTime):0,h=0,i=0,s=0,le,v; if(d&&typeof d==="object"&&d.getFullYear){if(t){if(/^\d+$/.test(t)){h=t.substr(0,2); if((le=t.length)>3){i=t.substr(2,2); if(le>5){s=t.substr(4,2); }}}else{if((le=(t=t.split(/[^\d]/)).length)){h=t[0]; if(le>1){i=t[1]; if(le>2){s=t[2]; }}}}if(h){h=isFinite(v=parseInt(h,10))&&v<25?v:0; if(i){i=isFinite(v=parseInt(i,10))&&v<60?v:0; }if(s){s=isFinite(v=parseInt(s,10))&&v<60?v:0; }if(h===24){if(!i&&!s){h=23; i=s=59; }else{h=0; }}}d.setHours(h,i,s); }else{h=d.getHours(); i=d.getMinutes(); s=d.getSeconds(); }return""+(h<10?"0":"")+h+":"+(i<10?"0":"")+i+":"+(s<10?"0":"")+s; }else{try{throw new Error("date["+d+"] type["+self.typeOf(d)+"] is not a non-empty Date"); }catch(er){_errorHandler(er,null,_name+".timeFormat()"); }return"00:00:00"; }}; this.numberToFormat=function(num,oFormat){var n=num||0,s,sgn="",o,isInt,kSep,scale,u,le,d,i; if(!n){return"0"; }if(n<0){n*=-1; sgn="-"; }isInt=!(u=(o=oFormat||{}).type)||u==="integer"; kSep=(u=o.thousand_separator)||u===""?u:" "; if((d=n%1)){n=Math.round(n); }s=""+n; if(kSep&&(le=s.length)>3){n=s; s=n.substr(0,i=le%3); while(i<le){s+=(i?kSep:"")+n.substr(i,3); i+=3; }}scale=o.scale||2; return sgn+s+(isInt?"":(((u=o.decimal_separator)||u===""?u:".")+((d?(""+Math.round(d*Math.pow(10,scale))):"")+new Array(scale+1).join("0")).substr(0,scale))); }; this.numberFromFormat=function(str,oFormat){var s=$.trim(str),sgn=1,o,isInt,dSep,u,p,d,n; if(!s||s==="0"||s==="-0"){return 0; }if(s.charAt(0)==="-"){sgn=-1; s=s.substr(1); }if((s=s.replace(/^(.*\d)\D+$/,"$1").replace(/^[^1-9]+([1-9].*)$/,"$1"))){isInt=!(u=(o=oFormat||{}).type)||u==="integer"; dSep=o.decimal_separator||"."; if(new RegExp("\\"+dSep+"\\d*\\D").test(s)){return false; }if((p=s.indexOf(dSep))>-1){d=s.substr(p).replace(/\D/g,""); s=s.substr(0,p); }n=parseInt(s.replace(/\D/g,""),10); if(d){n+=parseInt(d,10)/Math.pow(10,d.length); }return sgn*(!isInt?n:Math.round(n)); }return 0; }; this.rand=function(min,max){var m=min||0; return m+Math.floor((Math.random()*(((max||9000000000000000)-m)+1))+1)-1; }; this.randName=function(length){var al=length||20,l,s=String.fromCharCode(Math.floor(Math.random()*26)+97); while((l=s.length)<al){s+=Math.floor(Math.random()*9000000000000000).toString(36); }return l>al?s.substr(0,al):s; }; this.overlay=function(show,opaque,hoverTitle){var hide=!show||typeof show==="object",ttl=hoverTitle||"",clsO="module-judy-overlay-opaque",clsT="module-judy-overlay-hovertitled"; if(!_jqOvrly){if(hide){return; }$(document.body).append('<div id="module_judy_overlay" class="'+(opaque?clsO:"")+(opaque&&ttl?" ":"")+(ttl?clsT:"")+'"></div>'); _jqOvrly=$("div#module_judy_overlay"); _ovrlyRsz(); $(window).resize(function(){_ovrlyRsz(); }); }else{if(hide){_jqOvrly.hide(); return; }else{_jqOvrly[opaque?"addClass":"removeClass"](clsO)[ttl?"addClass":"removeClass"](clsT).get(0).setAttribute("title",ttl); }}_jqOvrly.show(); }; this.dialog=function(selector,option,value){var sl=selector,u=option,t,s,o,v=value,keys,a,tg="",id="",cls="module-judy-dialog",cls1="",elm,jq,dialExists,fxd,title,doOpen,autoOpenLater,to; if($.ui&&typeof $.ui.dialog==="function"){if(u){if((t=typeof u)==="string"){if(u!=="option"){s=u; }else{if(v&&typeof v==="object"){o=self.containerCopy(v); }}}else{if(t==="object"){o=self.containerCopy(u); }}}if(sl){if(typeof sl==="string"){if(sl.indexOf("#")===-1&&sl.indexOf(".")===-1){if((elm=document.getElementById(id=sl))&&self.arrayIndexOf(_dialogs,id)>-1){dialExists=true; }}else{if((elm=$(sl).get(0))){if((id=elm.id)){if(self.arrayIndexOf(_dialogs,id)>-1){dialExists=true; }}else{id=elm.id=self.randName(); }}else{a=sl.replace(/^([a-z\d_\-]+)?(\#[a-z\d_\-]+)?(\.[a-z\d_\-]+)?$/,"$1,$2,$3").split(","); tg=a[0]; id=a[1]?a[1].substr(1):self.randName(); if(a[2]){cls1=" "+a[2].split(/\./).join(" "); }}}}else{if(typeof sl==="object"&&sl.getAttributeNode){if((id=elm.id)){if(self.arrayIndexOf(_dialogs,id)>-1){dialExists=true; }}else{id=elm.id=self.randName(); }}}}else{id=self.randName(); }if(dialExists){doOpen=false; jq=$(elm); if(o){delete o.fixed; if((keys=self.objectKeys(o)).length===1){v=o[s=keys[0]]; }}if(s){if(s==="content"){if(jq.dialog("isOpen")){doOpen=true; }jq.html(v); if(doOpen){if(doOpen){to=setTimeout(function(){jq.dialog("open"); },100); }}return id; }if(s==="getContent"){return jq.html(); }if(s==="title"){$(".ui-dialog-title",$(elm.parentNode)).html(v); return id; }else{if(self.arrayIndexOf(_dialOpts,s)>-1||self.arrayIndexOf(_dialEvts,s)>-1){jq.dialog("option",s,v); }}if(self.arrayIndexOf(_dialMthds,s)>-1){return jq.dialog(s); }jq.dialog(s,v); return id; }else{if(o){if(jq.dialog("isOpen")){doOpen=true; jq.dialog("close"); }if(o.close&&o.hasOwnProperty("close")&&typeof o.close!=="function"){doOpen=false; delete o.close; }if(o.content!==undefined&&o.hasOwnProperty("content")){jq.html(v); delete o.content; }if(o.open&&o.hasOwnProperty("open")){doOpen=true; delete o.open; }jq.dialog(o); if(doOpen){to=setTimeout(function(){jq.dialog("open"); },100); }}}return id; }doOpen=true; if(!o){o={}; if(s){o[s]=v; }}if(!elm){$(document.body).append("<"+(tg||"div")+' id="'+id+'" class="'+cls+cls1+(!o.contentClass?"":(" "+o.contentClass))+'"></'+(tg||"div")+">"); elm=document.getElementById(id); }jq=$(elm); if(o.open&&o.hasOwnProperty("open")){delete o.open; }if(!o.autoOpen&&o.hasOwnProperty("autoOpen")){doOpen=false; }else{autoOpenLater=true; o.autoOpen=false; }if((u=self.objectGet(o,"content"))){jq.html(u); delete o.content; }if(o.fixed&&o.hasOwnProperty("fixed")){fxd=true; delete o.fixed; }if(o.title&&o.hasOwnProperty("title")){title=o.title; delete o.title; }jq.dialog(o); u=$(elm.parentNode); if(fxd){u.css("position","fixed"); }if(title!==undefined){$(".ui-dialog-title",u).html(title); }u.addClass(cls+"-container"); _dialogs.push(id); if(doOpen){to=setTimeout(function(){jq.dialog("open"); if(autoOpenLater){jq.dialog("autoOpen",true); }},100); }return id; }try{throw new Error("jQuery UI Dialog not included"); }catch(er){_errorHandler(er,null,_name+".dialog()"); }return false; }; this.timer=function(o,func,args,delay){return new self.Timer(o,func,args,delay); }; this.Timer=function(o,func,args,delay){var a=args||[],fired=false,f=o?function(){fired=true; try{func.apply(o,a); }catch(er){}}:function(){fired=true; try{func(); }catch(er){}},t=window.setTimeout(f,delay||0); this.fired=function(){return fired; }; this.cancel=function(){window.clearTimeout(t); }; }; }; (Drupal.Judy=window.Judy=window.judy=new Judy($)).setup(); })(jQuery);