(function($){var LogFilter=function($){var self=this,_name="LogFilter",_errorCodes={unknown:1,algo:100,use:101,perm_general:200,form_expired:201,perm_filter_crud:202,perm_filter_restricted:203,db_general:500,filter_name_composition:1001,filter_name_nonunique:1002,filter_doesnt_exist:1003,bad_filter_condition:1010},_={errors:[],dateFormat:"YYYY-MM-DD",dateFormat_datepicker:"yy-mm-dd",mode:"default",modePrevious:"default",name:"",origin:"",crudFilters:false,recordedValues:{time_range:"",uid:"",hostname:"",location:"",referer:"",orderBy:[],type_options:[]},deleteLogs_allowed:false,saveEditFilterAjaxed:false,listMessageTruncate:250,adminOverlayOffset:80,currentOffset:0,currentMax:100,logs:{},library_judy_version:2.1,library_judy_compatible:true},_severity=["emergency","alert","critical","error","warning","notice","info","debug"],_submitted,_ajaxRequestingBlocking,_local={},_selectors={page:"div#page",form:"form#log-filter-form",settings:{mode:"input[name='log_filter_mode']",onlyOwn:"input[name='log_filter_only_own']",delete_logs_max:"input[name='log_filter_delete_logs_max']",translate:"input[name='log_filter_translate']",pager_range:"input[name='log_filter_pager_range']"},filter:{filter:"select[name='log_filter_filter']",name:"input[name='log_filter_name']",origin:"input[name='log_filter_origin']",name_suggest:"input[name='log_filter_name_suggest']",description:"textarea[name='log_filter_description']",require_admin:"input[name='log_filter_require_admin']"},conditions:{time_range:"input[name='log_filter_time_range']",time_from:"input[name='log_filter_time_from']",time_from_proxy:"input[name='log_filter_time_from_proxy']",time_to:"input[name='log_filter_time_to']",time_to_proxy:"input[name='log_filter_time_to_proxy']",severity_any:"input[name='log_filter_severity[-1]']",severity_some:"div#edit-log-filter-severity input:not([name='log_filter_severity[-1]'])",type_any:"input[name='log_filter_type_wildcard']",type_some:"textarea[name='log_filter_type']",type_proxy:"div#edit-log-filter-type-proxy input",role:"select[name='log_filter_role']",uid:"input[name='log_filter_uid']",username:"input[name='log_filter_username']",hostname:"input[name='log_filter_hostname']",location:"input[name='log_filter_location']",referer:"input[name='log_filter_referer']"},orderBy:{options:"div.filter-orderby select",bools:"div.filter-orderby input[type='checkbox']"},buttons:{submit:"input#edit-submit",update_list:"input[name='log_filter_update_list']",reset:"input[name='log_filter_reset']",create:"input[name='log_filter_create']",edit:"input[name='log_filter_edit']",delete_filter:"input[name='log_filter_delete']",cancel:"input[name='log_filter_cancel']",save:"input[name='log_filter_save']",delete_logs_button:"input[name='log_filter_delete_logs_button']"},pager:{first:"div#log_filter_pager_first",previous:"div#log_filter_pager_previous",current:"div#log_filter_pager_current",progress:"div#log_filter_pager_progress",next:"div#log_filter_pager_next",last:"div#log_filter_pager_last"},misc:{title:"#log_filter_title_display"}},_elements={settings:{},filter:{},conditions:{},orderBy:[],buttons:{crudFilters:[]},pager:{},misc:{}},_filters=[],_logs={},_errorHandler,_oGet,_toAscii,_textareaRemoveWrapper,_machineNameConvert,_machineNameIllegals,_machineNameValidate,_validateTimeSequence,_url,_submit,_typeProxyHandler,_prepareForm,_setMode,_crudRelay,_changedCriterion,_resetCriteria,_deleteLogs,_filterByEventColumn,_getLogList,_listLogs,_ajaxResponse,_ajaxRequest; _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="log_filter"; inspect.errorHandler(error,variable,o); }else{inspect.console("Please update Inspect."); }}}; _oGet=function(o,k0,k1){var t=typeof o; return o&&(t==="object"||t==="function")&&o.hasOwnProperty(k0)?(k1===undefined?o[k0]:((o=o[k0])&&((t=typeof o)==="object"||t==="function")&&o.hasOwnProperty(k1)?o[k1]:undefined)):undefined; }; _toAscii=function(s){var ndl=_toAscii.needles,rpl=_toAscii.replacers,le=ndl.length,i,u; if(typeof ndl[0]==="string"){u=ndl.concat(); for(i=0; i1&&!rgx.test(v)){if(!rgx.test(v=v.toLowerCase())){if(!rgx.test(v=v.replace(/[ \-]/g,"_"))){if(!rgx.test(v=_toAscii(v))){v=v.replace(/[^a-z\d_]/g,"_"); }}}this.value=v; }}; _machineNameIllegals=["log_filter","default","adhoc"]; _machineNameValidate=function(evt,elm,value,noFeedback){var v=evt?this.value:(elm?elm.value:value),le=v.length; if(le<2||le>32||!/[a-z_]/.test(v.charAt(0))||!/[a-z\d_]/.test(v)||$.inArray(v.toLowerCase(),_machineNameIllegals)>-1){if(!noFeedback){self.Message.set(self.local("error_machine_name_composition",{"!illegals":_machineNameIllegals.join(", ")}),"warning",{modal:true,close:function(){Judy.focus(_elements.filter.name_suggest); }}); }return false; }return true; }; _validateTimeSequence=function(nm,date){var o=_elements.conditions,v,from=(v=o.time_from.value)?parseInt(v,10):0,to; if(from&&(to=(v=o.time_to.value)?parseInt(v,10):0)&&from>to){if(date&&$.trim(o.time_to_proxy.value)===$.trim(o.time_from_proxy.value)){return true; }o["time_"+nm].value=o["time_"+nm+"_proxy"].value=o["time_"+nm+"_time"].value=""; self.Message.set(self.local("invalid_timeSequence_"+nm),"warning",{modal:true}); return false; }return true; }; _url=function(top){var loc=(!top?window:top).location,v; return loc.protocol+"//"+loc.hostname+(!(v=loc.port)?"":(":"+v))+loc.pathname.replace(/\/dblog(\/.+)?$/,"/dblog/log_filter"); }; _submit=function(){var nm="",elm; if(_submitted){return; }_submitted=true; switch(_.mode){case"adhoc":nm="adhoc"; break; case"stored":nm=_.name; break; }_elements.form.setAttribute("action",_elements.form.getAttribute("action").replace(/\/dblog(\/[^\?&]+)([\?&].+)?$/,"/dblog/log_filter/"+nm+"$2")); setTimeout(function(){$(_elements.buttons.submit).trigger("click"); },100); }; _typeProxyHandler=function(){var v,i; if(this.checked){_elements.conditions.type_any.checked=false; if(Judy.arrayIndexOf(v=$.trim(_elements.conditions.type_some.value).split(/\n/),this.value)===-1){v.push(this.value); _elements.conditions.type_some.value=$.trim(v.join("\n")); }}else{if((i=Judy.arrayIndexOf(v=$.trim(_elements.conditions.type_some.value).split(/\n/),this.value))>-1){v.splice(i,1); if(v.length){_elements.conditions.type_some.value=$.trim(v.join("\n")); }else{_elements.conditions.type_some.value=""; _elements.conditions.type_any.checked="checked"; }}}_changedCriterion(); }; _prepareForm=function(){var oSels,oElms,nm,jq,elm,par,aElms,a,le,i,v,nOrderBy,u,elm2,d; try{_elements.page=$(_selectors.page).get(0); _elements.form=$(_selectors.form).get(0); oSels=_selectors.filter; oElms=_elements.filter; for(nm in oSels){if(oSels.hasOwnProperty(nm)&&(elm=(jq=$(oSels[nm])).get(0))){oElms[nm]=elm; switch(nm){case"filter":jq.change(function(){var v; _elements.filter.name.value=_.name=v=Judy.fieldValue(this); _elements.settings.mode.value=_.mode=v?"stored":"default"; if(!v){_resetCriteria(null,"default"); return; }Judy.overlay(1,false,self.local("wait")); _submit(); }); break; case"name_suggest":jq.keyup(_machineNameConvert); break; case"description":_textareaRemoveWrapper(elm); jq.change(function(){var v; if((v=this.value)){this.value=Judy.stripTags(v); }}); break; }}}_.name=_elements.filter.name.value; _.origin=_elements.filter.origin.value; oSels=_selectors.settings; oElms=_elements.settings; for(nm in oSels){if(oSels.hasOwnProperty(nm)&&(elm=(jq=$(oSels[nm])).get(0))){oElms[nm]=elm; switch(nm){case"mode":_.mode=elm.value; break; case"onlyOwn":jq.change(function(){if(_.mode==="stored"){_elements.settings.mode.value="adhoc"; Judy.fieldValue(_elements.filter.filter,null,""); _elements.filter.origin.value=_.name; _elements.filter.name.value=""; }Judy.overlay(1,false,self.local("wait")); _submit(); }); break; case"delete_logs_max":jq.change(function(){var v=this.value; if(v!==""){if((v=$.trim(v))!==""&&!/^[1-9]\d*$/.test(v)){v=""; }this.value=v; }}); break; case"pager_range":_.currentMax=parseInt(elm.value,10); if($(_selectors.buttons.delete_logs_button).get(0)){oElms.delete_logs_max.value=_.currentMax; }jq.change(function(){var v=this.value,n,m; if(v!==""){if((v=$.trim(v))!==""&&/^\d+$/.test(v)){_.currentMax=n=parseInt(v,10); if(_.deleteLogs_allowed&&((m=_elements.settings.delete_logs_max.value)===""||(m=parseInt(m,10))>n)){_elements.settings.delete_logs_max.value=n; }}else{v=""; }this.value=v; }}); break; }}}oSels=_selectors.conditions; oElms=_elements.conditions; for(nm in oSels){if(oSels.hasOwnProperty(nm)&&(elm=(jq=$(oSels[nm])).get(0))){switch(nm){case"time_range":oElms[nm]=elm; _.recordedValues[nm]=elm.value; jq.change(function(){var v=this.value,o; if(v!==""){this.value=v=$.trim(v); }if(v!==""){if(v==="0"||!/^[1-9]\d*$/.test(v)){this.value=v=""; }else{if(v.length>4){this.value=v="9999"; }(o=_elements.conditions).time_from.value=o.time_from_proxy.value=o.time_from_time.value=o.time_to.value=o.time_to_proxy.value=o.time_to_time.value=""; }}if(v!==_.recordedValues.time_range){_.recordedValues.time_range=v; _changedCriterion(); }}); break; case"time_from":case"time_to":oElms[nm]=elm; break; case"time_from_proxy":case"time_to_proxy":oElms[nm]=elm; u=nm==="time_from_proxy"?"from":"to"; jq.after(''); jq.datepicker({dateFormat:_.dateFormat_datepicker}); oElms["time_"+u+"_time"]=elm2=$("input[name='log_filter_time_"+u+"_time']").get(0); if((v=_elements.conditions[u==="from"?"time_from":"time_to"].value)&&(v=parseInt(v,10))){jq.datepicker("setDate",d=new Date(v*1000)); elm2.value=Judy.timeFormat(d); }jq.change(function(){var v,d,nm=this.name.indexOf("from")>1?"from":"to",r=_elements.conditions["time_"+nm],rT=_elements.conditions["time_"+nm+"_time"]; if((v=$.trim(this.value)).length){if((d=Judy.dateFromFormat(v,_.dateFormat))){_.recordedValues.time_range=_elements.conditions.time_range.value=""; rT.value=Judy.timeFormat(d,rT.value); r.value=v=Math.floor(d.getTime()/1000); if(nm==="to"&&(""+v)===_elements.conditions.time_from.value&&d.getHours()===0&&d.getMinutes()===0&&d.getSeconds()===0){rT.value=Judy.timeFormat(d,"24"); r.value=Math.floor(d.getTime()/1000); }else{_validateTimeSequence(nm,true); }}else{self.Message.set(self.local("invalid_date",{"!date":v,"!format":_.dateFormat}),"warning",{modal:true}); r.value=""; return; }}_changedCriterion(); }); $(elm2).change(function(){var nm=this.name.indexOf("from")>-1?"from":"to",rD=_elements.conditions["time_"+nm],d; if(!(d=rD.value)){this.value=""; return; }d=new Date(d*1000); this.value=Judy.timeFormat(d,this.value); rD.value=Math.floor(d/1000); _validateTimeSequence(nm); _changedCriterion(); }); break; case"severity_any":oElms[nm]=elm; jq.change(function(){var a=_elements.conditions.severity_some,le=a.length,i,v; if(this.checked){for(i=0; i '); $('input[name="log_filter_type_proxy_add_item"]',_elements.form).change(function(){var elm,v; if(this.checked){elm=$('input[name="log_filter_type_proxy_add_item_value"]',_elements.form).get(0); if((v=elm.value)&&(v=$.trim(Judy.stripTags(v.replace(/[\r\n]/g,""))))){if(Judy.arrayIndexOf(_.recordedValues.type_options,v)===-1){_.recordedValues.type_options.push(v); _elements.conditions.type_some.value+=(_elements.conditions.type_some.value?"\n":"")+v; $(elm.parentNode).after('
"); $('input[value="'+v+'"]',par).change(_typeProxyHandler); _elements.conditions.type_any.checked=false; }else{self.Message.set(self.local("type_option_dupe",{"!option":v}),"warning",{modal:true,close:function(){Judy.focus(elm); }}); }}this.checked=false; elm.value=""; }}); break; case"role":oElms[nm]=elm; jq.change(function(){if(Judy.fieldValue(this)){_elements.conditions.uid.value=_elements.conditions.username.value=""; }_changedCriterion(); }); break; case"uid":oElms[nm]=elm; _.recordedValues[nm]=elm.value; jq.change(function(){var v=this.value; if(v!==""){this.value=v=$.trim(v); }if(v!==""){if(!/^\d+$/.test(v)){self.Message.set(self.local("invalid_uid"),"warning",{modal:true,close:function(){Judy.focus(_elements.conditions.uid); }}); this.value=v=""; }else{Judy.fieldValue(_elements.conditions.role,null,""); _elements.conditions.username.value=""; }}_elements.conditions.username.value=""; if(v!==_.recordedValues.uid){_.recordedValues.uid=v; _changedCriterion(); }}); break; case"username":oElms[nm]=elm; $(elm).autocomplete({source:"/log_filter/ajax/username_autocomplete",minLength:2,select:function(event,ui){var v; if(ui.item){_elements.conditions.uid.value=(v=ui.item.value); _elements.conditions.username.value=ui.item.label; if(v!==_.recordedValues.uid){_.recordedValues.uid=v; Judy.fieldValue(_elements.conditions.role,null,""); _changedCriterion(); }}return false; }}).bind("autocompletesearch",function(){$(this).addClass("throbbing"); }).bind("autocompleteresponse",function(){$(this).removeClass("throbbing"); }); Judy.ajaxcomplete(_selectors.conditions.username,"/log_filter/ajax/username_autocomplete",function(event){$(this).removeClass("throbbing"); }); break; case"hostname":oElms[nm]=elm; _.recordedValues[nm]=elm.value; jq.change(function(){var v=this.value; if(v!==""){this.value=v=Judy.stripTags(v); }if(v!==_.recordedValues.hostname){_.recordedValues.hostname=v; _changedCriterion(); }}); break; case"location":case"referer":oElms[nm]=elm; _.recordedValues[nm]=elm.value; jq.change(function(){var v=$.trim(this.value),nm=this.name==="log_filter_location"?"location":"referer"; if(nm==="referer"&&(v==="none"||v==="")){this.value="none"; }else{if(v!==""){this.value=v=Judy.stripTags(v); }if(v!==""&&v!=="*"&&!/^https?:\/\/.+$/.test(v)){if(!/^https?:\/\/.+$/.test(v="http://"+v)){self.Message.set(self.local(nm==="location"?"invalid_location":"invalid_referer"),"warning",{modal:true,close:function(){Judy.focus(_elements.conditions[nm]); }}); this.value=v=""; }else{this.value=v; }}}if(v!==_.recordedValues[nm]){_.recordedValues[nm]=v; _changedCriterion(); }}); break; default:oElms[nm]=elm; jq.change(_changedCriterion); }}}oElms=_elements.orderBy; if((nOrderBy=(aElms=$(_selectors.orderBy.options).get()).length)){for(i=0; i0?v:0); }); break; case"current":jq.click(function(){_ajaxRequestingBlocking=true; _getLogList(); }); break; case"next":jq.click(function(){_ajaxRequestingBlocking=true; _getLogList(0,_.currentOffset+_.currentMax); }); break; case"last":jq.click(function(){_ajaxRequestingBlocking=true; _getLogList(0,-1); }); break; }}}oSels=_selectors.misc; oElms=_elements.misc; for(nm in oSels){if(oSels.hasOwnProperty(nm)&&(elm=(jq=$(oSels[nm])).get(0))){oElms[nm]=elm; }}oSels=_selectors.buttons; oElms=_elements.buttons; for(nm in oSels){if(oSels.hasOwnProperty(nm)&&(elm=(jq=$(oSels[nm])).get(0))){switch(nm){case"submit":oElms[nm]=elm; break; case"update_list":oElms[nm]=elm; elm.setAttribute("type","button"); jq.unbind(); jq.click(function(){_ajaxRequestingBlocking=true; _getLogList(); }); Judy.keydown(document.documentElement,"ctr+u cmd+u",function(event){event.preventDefault(); _ajaxRequestingBlocking=true; _getLogList(); }); break; default:oElms[nm]=elm; elm.setAttribute("type","button"); jq.unbind(); switch(nm){case"create":case"edit":case"delete_filter":case"cancel":case"save":_.crudFilters=true; oElms.crudFilters.push(elm); jq.click(_crudRelay); break; case"delete_logs_button":_.deleteLogs_allowed=true; Judy.disable(elm,null,self.local("deleteLogs_prohibit")); jq.click(_crudRelay); break; case"reset":jq.click(_resetCriteria); break; }}}}$("label span").click(function(evt){evt.stopPropagation(); return false; }); }catch(er){_errorHandler(er,0,_name+"._prepareForm()"); }}; self.inspector=function(u){inspect(u,{wrappers:1}); }; _setMode=function(mode,submit,initially){var fromMode=_.mode,doSubmit,elm,nm; try{if(_submitted){return; }if(!initially&&mode!=="delete_filter"){if(!submit&&_.crudFilters){$(_elements.buttons.crudFilters).hide(); }}switch(mode){case"default":$("option[value='']",_elements.filter.filter).html(self.local("default")); $(_elements.misc.title).html(self.local("default")); if(!initially){Judy.fieldValue(_elements.filter.filter,null,""); _elements.filter.name.value=_.name=_elements.filter.origin.value=_.origin=""; }if(_.crudFilters){$(_elements.settings.onlyOwn.parentNode).show(); $(_elements.buttons.create).show(); if((elm=_elements.filter.require_admin)){$(elm.parentNode).hide(); }$(_elements.filter.name_suggest.parentNode).hide(); $(_elements.filter.description.parentNode).hide(); }if(_.deleteLogs_allowed){$(_elements.settings.delete_logs_max).show(); $(elm=_elements.buttons.delete_logs_button).show(); $(elm.parentNode).show(); }if(fromMode==="create"){fromMode=""; }break; case"adhoc":if(!initially){Judy.fieldValue(_elements.filter.filter,null,""); }if(fromMode==="stored"){_elements.filter.origin.value=_.origin=nm=_.name; _elements.filter.name.value=_.name=""; $("option[value='']",_elements.filter.filter).html("("+nm+")"); $(_elements.misc.title).html(self.local("adhocForOrigin",{"!origin":nm})); }else{fromMode=""; $("option[value='']",_elements.filter.filter).html(self.local("adhoc")); $(_elements.misc.title).html(self.local("adhoc")); }if(_.crudFilters){$(_elements.settings.onlyOwn.parentNode).show(); $(_elements.buttons.create).show(); if((elm=_elements.filter.require_admin)){$(elm.parentNode).hide(); }$(_elements.filter.name_suggest.parentNode).hide(); $(_elements.filter.description.parentNode).hide(); }if(_.deleteLogs_allowed){$(_elements.settings.delete_logs_max).show(); $(elm=_elements.buttons.delete_logs_button).show(); $(elm.parentNode).show(); }break; case"stored":if(!initially){if(fromMode==="create"){_elements.filter.name.value=_.name=_.origin; _elements.filter.origin.value=_.origin=""; }Judy.fieldValue(elm=_elements.filter.filter,null,nm=_.name); $("option[value='']",elm).html(self.local("default")); $(_elements.misc.title).html(nm); if(_.crudFilters){if((elm=_elements.filter.require_admin)){$(elm.parentNode).hide(); }$(_elements.filter.name_suggest.parentNode).hide(); $(_elements.filter.description.parentNode).hide(); }}if(_.crudFilters){$(_elements.settings.onlyOwn.parentNode).show(); $(_elements.buttons.create).show(); $(_elements.buttons.edit).show(); $(_elements.buttons.delete_filter).show(); }if(_.deleteLogs_allowed){$(_elements.settings.delete_logs_max).show(); $(elm=_elements.buttons.delete_logs_button).show(); $(elm.parentNode).show(); }switch(fromMode){case"create":case"edit":fromMode="stored"; break; }break; case"create":if(!_.crudFilters){throw new Error("Mode["+mode+"] not allowed."); }switch(fromMode){case"default":case"adhoc":$("option[value='']",_elements.filter.filter).html("("+self.local("newName")+")"); $(_elements.misc.title).html(self.local("newTitle")); break; case"stored":Judy.fieldValue(_elements.filter.filter,null,""); _elements.filter.origin.value=_.origin=nm=_.name; _elements.filter.name.value=_.name=""; $("option[value='']",_elements.filter.filter).html("("+nm+")"); $(_elements.misc.title).html(self.local("newForOrigin",{"!origin":nm})); break; default:throw new Error("Cant create from mode["+fromMode+"]."); }$(_elements.settings.onlyOwn.parentNode).hide(); $(_elements.filter.name_suggest.parentNode).show(); if((elm=_elements.filter.require_admin)){$(elm.parentNode).show(); }$(_elements.filter.description.parentNode).show(); $(_elements.buttons.save).show(); $(_elements.buttons.cancel).show(); if(_.deleteLogs_allowed){$(_elements.buttons.delete_logs_button.parentNode).hide(); }break; case"edit":if(!_.crudFilters){throw new Error("Mode["+mode+"] not allowed."); }if(fromMode==="create"){fromMode=_.modePrevious; $("option[value='']",elm=_elements.filter.filter).after('"); $("option[value='']",elm).html(self.local("default")); Judy.fieldValue(elm,null,nm); }if((elm=_elements.filter.require_admin)){$(elm.parentNode).show(); }$(_elements.filter.name_suggest.parentNode).hide(); $(_elements.filter.description.parentNode).show(); $(_elements.buttons.cancel).show(); $(_elements.buttons.save).show(); $(_elements.settings.onlyOwn.parentNode).hide(); if(_.deleteLogs_allowed){$(_elements.buttons.delete_logs_button.parentNode).hide(); }break; case"delete_filter":if(!_.crudFilters){throw new Error("Mode["+mode+"] not allowed."); }Judy.overlay(1,true); if(_elements.filter.name.value){if(!confirm(self.local("confirmDelete",{"!filter":_elements.filter.name.value}))){Judy.overlay(0); return; }doSubmit=true; Judy.overlay(1,false,self.local("wait")); }else{throw new Error("Cant delete filter having empty name["+_elements.filter.name.value+"]."); }break; default:throw new Error("Mode["+mode+"] not supported."); }_.modePrevious=fromMode; _elements.settings.mode.value=_.mode=mode; if(submit||doSubmit){_submit(); }}catch(er){_errorHandler(er,0,_name+"._setMode()"); }}; _crudRelay=function(){var nm=this.name,elm,v,rqa; try{switch(nm){case"log_filter_reset":_resetCriteria(); break; case"log_filter_create":_setMode("create"); Judy.focus(_elements.filter.name_suggest); break; case"log_filter_edit":_setMode("edit"); break; case"log_filter_delete":_setMode("delete_filter"); break; case"log_filter_cancel":switch(_.mode){case"create":case"edit":switch(_.modePrevious){case"default":case"adhoc":break; case"stored":break; default:throw new Error("Previous mode["+_.modePrevious+"] not supported when cancelling."); }_setMode(_.modePrevious); break; default:throw new Error("Cant cancel in mode["+_.mode+"]."); }break; case"log_filter_save":if(_.mode==="edit"&&!_.saveEditFilterAjaxed){Judy.overlay(1,false,self.local("wait_"+_.mode)); _submit(); return false; }else{if(_ajaxRequestingBlocking){return false; }if(_.mode==="create"){if(!_machineNameValidate(null,null,v=(elm=_elements.filter.name_suggest).value)){Judy.focus(elm); return false; }if($.inArray(v,_filters)>-1){Judy.overlay(1,true); if(!confirm(self.local("error_filter_name_nonunique",{"!name":v}))){Judy.overlay(0); return false; }else{Judy.overlay(1,false,self.local("wait_edit")); _elements.settings.mode.value=_.mode="edit"; _elements.filter.name.value=v; _submit(); return false; }}nm=v; rqa=_elements.filter.require_admin?1:0; }else{nm=_.name; rqa=(elm=_elements.filter.require_admin)&&Judy.fieldValue(elm); }Judy.overlay(1,false,self.local("wait_"+_.mode)); _ajaxRequestingBlocking=true; v=self.getCriteria(); _ajaxRequest("filter_"+_.mode,{name:nm,filter:{require_admin:rqa,description:$.trim(Judy.stripTags(_elements.filter.description.value).replace(/[\r\n\t]/g," ").replace(/\ +/g," ")).substr(0,255)},conditions:v.conditions,order_by:v.order_by}); }break; case"log_filter_delete_logs_button":if(_.deleteLogs_allowed){Judy.overlay(1,false,self.local("wait")); setTimeout(_deleteLogs,200); }else{throw new Error("Button name["+nm+"] not allowed."); }break; default:throw new Error("Unsupported button name["+nm+"]."); }}catch(er){_errorHandler(er,0,_name+"._crudRelay()"); }return false; }; _changedCriterion=function(){if(_.deleteLogs_allowed){Judy.disable(_elements.buttons.delete_logs_button,null,self.local("deleteLogs_prohibit")); }try{switch(_.mode){case"default":_setMode("adhoc"); break; case"adhoc":break; case"stored":_setMode(!_.crudFilters?"adhoc":"edit"); break; case"create":break; case"edit":break; case"delete_filter":break; default:throw new Error("Mode["+_.mode+"] not supported."); }}catch(er){_errorHandler(er,0,_name+"._changedCriterion()"); }}; _resetCriteria=function(evt,mode,noModeChange){var o=_elements.conditions,nm,r,a,le,i; if(_.deleteLogs_allowed){Judy.disable(_elements.buttons.delete_logs_button,null,self.local("deleteLogs_prohibit")); }for(nm in o){if(o.hasOwnProperty(nm)){r=o[nm]; switch(nm){case"severity_any":case"type_any":r.checked=true; break; case"severity_some":le=r.length; for(i=0; i'+Drupal.t("Severity")+""+Drupal.t("Type")+""+Drupal.t("Time")+""+Drupal.t("User")+""; if(conditions.hostname||_elements.conditions.hostname.value==="*"){++nCols; optionalColumns.hostname=true; s+=""+Drupal.t("Hostname")+""; }if(conditions.location||_elements.conditions.location.value==="*"){++nCols; optionalColumns.location=true; s+=""+Drupal.t("Location")+""; }if(conditions.referer||_elements.conditions.referer.value==="*"){++nCols; optionalColumns.referer=true; s+=""+Drupal.t("Referrer")+""; }s+=""+Drupal.t("Message")+""; if(le){if((wid=conditions.wid)&&conditions.hasOwnProperty("wid")){s+=''+self.local("event_from_url",{"!number":wid})+""; setTimeout(function(){self.displayLog(wid); },100); }for(i=0; i '+o.type+''+o.time+''+(o.name)):(">-"+self.local("deleted_user")+"-")):('>'+o.name+""))+""+(!optionalColumns.hostname?"":''+o.hostname+"")+(!optionalColumns.location?"":''+o.location+"")+(!optionalColumns.referer?"":''+o.referer+"")+'
'+Judy.stripTags(o.message.replace(/\r?\n/g," ")).substr(0,_.listMessageTruncate)+"
"; }$(_elements.pager.progress).hide(); if(offset){$(_elements.pager.first).removeClass("log-filter-pager-button-disabled"); $(_elements.pager.previous).removeClass("log-filter-pager-button-disabled"); }$(_elements.pager.current).html(self.local("pager_current",{"!first":(offset+1),"!last":(offset+le),"!total":nTotal})).show(); if(offset+le'+(!conditions.wid?self.local("no_event_matches"):self.local("non_existing_event",{"!number":conditions.wid}))+""; $(_elements.pager.progress).hide(); if(offset){$(_elements.pager.first).removeClass("log-filter-pager-button-disabled"); $(_elements.pager.previous).removeClass("log-filter-pager-button-disabled"); }if(!nTotal){$(_elements.pager.current).html(self.local("pager_current_none")).show(); }else{$(_elements.pager.current).html(self.local("pager_current_outofrange",{"!offset":offset,"!total":nTotal})).show(); }}s+=""; $("#log_filter_log_list").html(s); setTimeout(function(){$("#log_filter_log_list table.sticky-enabled").once("tableheader",function(){$(this).data("drupal-tableheader",new Drupal.tableHeader(this)); }); $("table#log_filter_log_list_table").bind("contextmenu",_filterByEventColumn); Judy.keydown("table#log_filter_log_list_table","f shift+f",_filterByEventColumn,true); },100); }; _ajaxRequest=function(action,oData){$.ajax({url:"/log_filter/ajax/"+action,type:"POST",data:oData,dataType:"json",cache:false,success:function(oResp,textStatus,jqXHR){var o; if(textStatus==="success"&&typeof action==="string"&&$.type(oResp)==="object"){_ajaxResponse(action,oResp); }else{o={source:"ajax request",action:action,textStatus:textStatus,oResp:oResp}; _.errors.push(o); _errorHandler(null,o,_name+"._ajaxRequest()"); }},error:function(jqXHR,textStatus,errorThrown){var o; if(jqXHR&&jqXHR.status===403){_ajaxResponse(action,{success:false,error_code:_errorCodes.perm_general}); }else{o={source:"ajax request",action:action,textStatus:textStatus,errorThrown:errorThrown}; _.errors.push(o); _errorHandler(null,o,_name+"._ajaxRequest()"); }}}); }; _ajaxResponse=function(action,oResp){var errorCode=oResp.error_code||0,url; if(!oResp.success||errorCode){switch(errorCode){case _errorCodes.perm_general:$(_elements.form).html(""); self.Message.set(self.local("error_form_expired",{"!url":url=_url()}),"warning",{modal:true,close:function(){window.location.href=url; }}); return; case _errorCodes.form_expired:self.Message.set(self.local("error_form_expired",{"!url":url=_url()}),"warning",{modal:true,close:function(){window.location.href=url; }}); return; case _errorCodes.perm_filter_crud:self.Message.set(self.local("error_perm_filter_crud"),"warning",{modal:true,close:function(){window.location.href=_url(); }}); return; case _errorCodes.db_general:self.Message.set(self.local("error_db_general"),"error",{modal:true,close:function(){window.location.href=_url(); }}); break; }}if(_ajaxResponse.hasOwnProperty(action)){if(!_ajaxResponse[action](oResp)){_errorHandler(null,oResp,_name+"._ajaxResponse."+action+"()"); self.Message.set(self.local("error_unknown"),"error",{modal:true,close:function(){window.location.href=_url(); }}); }}else{_errorHandler(null,oResp,_name+"._ajaxResponse(), unsupported action["+action+"]"); }}; _ajaxResponse.filter_create=function(oResp){var nm=oResp.name; if(oResp.success){_elements.filter.name_suggest.value=""; _elements.filter.origin.value=_.origin=_.name; _elements.filter.name.value=_.name=nm; _filters.push(nm); _setMode("edit"); $(_elements.misc.title).html(nm+" - "+oResp.description+""); Judy.overlay(0); self.Message.set(self.local("savedNew",{"!filter":nm})); }else{switch(oResp.error_code){case _errorCodes.filter_name_composition:Judy.overlay(0); self.Message.set(self.local("error_machine_name_composition"),"warning",{modal:true,close:function(){Judy.focus(_elements.filter.name_suggest); }}); break; case _errorCodes.filter_name_nonunique:Judy.overlay(0); self.Message.set(self.local("error_filter_name_nonunique",{"!name":nm}),"warning",{modal:true,close:function(){Judy.focus(_elements.filter.name_suggest); }}); break; default:return false; }}_ajaxRequestingBlocking=false; return true; }; _ajaxResponse.filter_edit=function(oResp){var nm=oResp.name; if(oResp.success){$("span",_elements.misc.title).html(" - "+oResp.description); Judy.overlay(0); self.Message.set(self.local("saved",{"!filter":nm})); }else{if(oResp.error_code===_errorCodes.filter_doesnt_exist){self.Message.set(self.local("error_filter_doesnt_exist",{"!name":nm}),"warning",{modal:true,close:function(){window.location.href=_url(); }}); }else{if(oResp.error_code===_errorCodes.perm_filter_restricted){self.Message.set(self.local("error_perm_filter_restricted"),"error",{modal:true,close:function(){window.location.href=_url(); }}); }else{return false; }}}_ajaxRequestingBlocking=false; return true; }; _ajaxResponse.list_logs=function(oResp){var nm=oResp.name,conditions=oResp.log_list[1]; if(oResp.success){_listLogs(oResp.log_list[0],oResp.log_list[1],oResp.log_list[2],oResp.log_list[3]); if(_.deleteLogs_allowed&&(!conditions.wid||!conditions.hasOwnProperty("wid"))){Judy.enable(_elements.buttons.delete_logs_button,null,""); }Judy.overlay(0); }else{return false; }_ajaxRequestingBlocking=false; return true; }; _ajaxResponse.delete_logs=function(oResp){if(oResp.success){self.Message.set(self.local("deleteLogs_success",{"!number":oResp.delete_logs}),"notice",{noFade:false}); _getLogList(); return true; }else{return false; }}; this.inspect=function(prop){if(typeof window.inspect==="function"&&inspect.tcepsni===true){inspect(!prop?_:_[prop],_name+(!prop?"":(" - "+prop))); }}; this.inspectElements=function(group){if(typeof window.inspect==="function"&&inspect.tcepsni===true){inspect(!group?_elements:_elements[group],"_elements"+(!group?"":("."+group))); }}; this.local=function(name,replacers){var nm=name,s; if(!(s=_oGet(_local,nm))){switch(nm){case"default":_local[nm]=s=Drupal.t("Default"); break; case"adhoc":_local[nm]=s=Drupal.t("Ad hoc"); break; case"adhocForOrigin":s=Drupal.t("Ad hoc - based on !origin",replacers); break; case"newForOrigin":s=Drupal.t("New - based on !origin",replacers); break; case"newTitle":_local[nm]=s=Drupal.t("New"); break; case"newName":_local[nm]=s=Drupal.t("new"); break; case"savedNew":s=Drupal.t("Saved new filter '!filter'.",replacers); break; case"saved":s=Drupal.t("Saved filter '!filter'.",replacers); break; case"confirmDelete":s=Drupal.t("Are you sure you want to delete the filter!newline!filter?",replacers); break; case"invalid_date":s=Drupal.t("The date '!date' is not valid!newline- please use the format: !format",replacers); break; case"invalid_timeSequence_from":_local[nm]=s=Drupal.t("'From' time cannot be later than 'To' time."); break; case"invalid_timeSequence_to":_local[nm]=s=Drupal.t("'To' time cannot be earlier than 'From' time."); break; case"invalid_uid":_local[nm]=s=Drupal.t("User ID must be a positive number, or empty."); break; case"invalid_location":_local[nm]=s=Drupal.t("Requested URL must be a URL, or empty."); break; case"invalid_referer":_local[nm]=s=Drupal.t("Referrer URL must be a URL, 'none', or empty."); break; case"error_machine_name_composition":s=Drupal.t("The filter name:!newline- must be 2 to 32 characters long!newline- must only consist of the characters a-z, letters, and underscore (_)!newline- cannot start with a number!newline- cannot be: !illegals",replacers); break; case"error_filter_name_nonunique":s=Drupal.t("There's already a filter named!newline'!name'.!newlineDo you want to overwrite that filter?",replacers); break; case"error_filter_doesnt_exist":s=Drupal.t("There's no filter named!newline'!name'.",replacers); break; case"wait":_local[nm]=s=Drupal.t("Please wait a sec..."); break; case"wait_create":_local[nm]=s=Drupal.t("Creating new filter. Please wait a sec..."); break; case"wait_ereate":_local[nm]=s=Drupal.t("Saving filter changes. Please wait a sec..."); break; case"deleteLogs_prohibit":_local[nm]=s=Drupal.t("Only allowed when the log list is freshly updated,!newlinereflecting current filter - press the 'Update list' button."); break; case"deleteLogs_all":_local[nm]=s=Drupal.t("Do you want to delete!newlineALL logs?"); break; case"deleteLogs_noMax":s=Drupal.t("Do you want to delete!newlineALL logs after event no. !offset?",replacers); break; case"deleteLogs_noOffset":s=Drupal.t("Do you want to delete logs!newlinewithout ANY condition!newlineexcept limited by a maximum of !max?",replacers); break; case"deleteLogs_noConditions":s=Drupal.t("Do you want to delete logs after event no. !offset!newlinewithout ANY condition!newlineexcept limited by a maximum of !max?",replacers); break; case"deleteLogs_storedAll":s=Drupal.t("Do you want to delete all logs matching!newlinethe '!name' filter!newlinelimited by NO maximum?",replacers); break; case"deleteLogs_storedNoMax":s=Drupal.t("Do you want to delete all logs matching!newlinethe '!name' filter!newlineafter matching event no. !offset!newlinelimited by NO maximum?",replacers); break; case"deleteLogs_storedNoOffset":s=Drupal.t("Do you want to delete all logs matching!newlinethe '!name' filter!newlineexcept limited by a maximum of !max?",replacers); break; case"deleteLogs_stored":s=Drupal.t("Do you want to delete all logs matching!newlinethe '!name' filter!newlineafter matching event no. !offset!newlinelimited by a maximum of !max?",replacers); break; case"deleteLogs_adhocAll":_local[nm]=s=Drupal.t("Do you want to delete all logs!newlinematching current ad hoc filter!newlinelimited by NO maximum?"); break; case"deleteLogs_adhocNoMax":s=Drupal.t("Do you want to delete all logs!newlinematching current ad hoc filter!newlineafter matching event no. !offset!newlinelimited by NO maximum?",replacers); break; case"deleteLogs_adhocNoOffset":s=Drupal.t("Do you want to delete all logs!newlinematching current ad hoc filter!newlineexcept limited by a maximum of !max?",replacers); break; case"deleteLogs_adhoc":s=Drupal.t("Do you want to delete all logs!newlinematching current ad hoc filter!newlineafter matching event no. !offset!newlinelimited by a maximum of !max?",replacers); break; case"deleteLogs_success":s=Drupal.t("Deleted !number log events.",replacers); break; case"error_form_expired":s=Drupal.t('The form has become outdated!newline- please reload this page.',replacers); break; case"error_perm_filter_crud":_local[nm]=s=Drupal.t("Sorry, you're not allowed to edit saveable filters."); break; case"error_perm_filter_restricted":_local[nm]=s=Drupal.t("You're not allowed to use that filter."); break; case"error_db_general":_local[nm]=s=Drupal.t("Sorry, failed to save data."); break; case"error_unknown":_local[nm]=s=Drupal.t("Sorry, something unexpected happened."); break; case"emergency":_local[nm]=s=Drupal.t("emergency"); break; case"alert":_local[nm]=s=Drupal.t("alert"); break; case"critical":_local[nm]=s=Drupal.t("critical"); break; case"error":_local[nm]=s=Drupal.t("error"); break; case"warning":_local[nm]=s=Drupal.t("warning"); break; case"notice":_local[nm]=s=Drupal.t("notice"); break; case"info":_local[nm]=s=Drupal.t("info"); break; case"debug":_local[nm]=s=Drupal.t("debug"); break; case"anonymous_user":_local[nm]=s=Drupal.t("anonymous"); break; case"deleted_user":_local[nm]=s=Drupal.t("deleted"); break; case"log_event":_local[nm]=s=Drupal.t("Event"); break; case"log_severity":_local[nm]=s=Drupal.t("Severity"); break; case"log_type":_local[nm]=s=Drupal.t("Type"); break; case"log_time":_local[nm]=s=Drupal.t("Time"); break; case"log_time_from":_local[nm]=s=Drupal.t("Time From"); break; case"log_time_to":_local[nm]=s=Drupal.t("Time To"); break; case"log_user":case"log_uid":_local[nm]=s=Drupal.t("User"); break; case"log_location":_local[nm]=s=Drupal.t("Location"); break; case"log_referer":_local[nm]=s=Drupal.t("Referrer"); break; case"log_hostname":_local[nm]=s=Drupal.t("Hostname"); break; case"log_message":_local[nm]=s=Drupal.t("Message"); break; case"log_link":_local[nm]=s=Drupal.t("Link"); break; case"eventItem_display":s=Drupal.t("Event !logId",replacers); break; case"eventItemHover_filter":s=Drupal.t("Event !logId - press F key (or right-click) to filter !filter",replacers); break; case"eventItemHover_severity":s=Drupal.t("Event !logId (!severity) - press F key (or right-click) to filter Severity",replacers); break; case"eventItemHover_time":s=Drupal.t("Event !logId!newline - press F key (or right-click) to filter Time From!newline - press shift+F to filter Time To",replacers); break; case"eventItemHover_user":s=Drupal.t("Event !logId (user !uid) - press F key (or right-click) to filter User",replacers); break; case"filtered_event_column":s=Drupal.t("Filter !column by '!value'.",replacers); break; case"event_link":_local[nm]=s=Drupal.t("Link to this log event"); break; case"no_event_matches":_local[nm]=s=Drupal.t("The current filter matches no events."); break; case"non_existing_event":s=Drupal.t("Event ID !number doesn't exist.",replacers); break; case"event_from_url":s=Drupal.t("Listing event ID !number, according to URL. Press 'Update list' button to reflect current filter.",replacers); break; case"add_type_item":_local[nm]=s=Drupal.t("Add type..."); break; case"type_option_dupe":s=Drupal.t("Type !option already exists.",replacers); break; case"pager_current":s=Drupal.t("!first-!last of !total",replacers); break; case"pager_current_none":_local[nm]=s=Drupal.t("None"); break; case"pager_current_outofrange":s=Drupal.t("None after !offset, of !total",replacers); break; case"library_judy_incompatible":s=Drupal.t("Log Filter doesn't work without the Judy library, version !version or newer.",replacers); break; default:s="[LOCAL: "+nm+"]"; }}return s.replace(/\!newline/g,"\n"); }; this.getCriteria=function(){var n=0,conditions={},order_by=[],oElms=_elements.conditions,nm,r,v,le,i; try{for(nm in oElms){if(oElms.hasOwnProperty(nm)){r=oElms[nm]; switch(nm){case"time_from_proxy":case"time_to_proxy":case"time_from_time":case"time_to_time":break; case"time_range":case"time_from":case"time_to":case"uid":if((v=r.value)!==""&&(v=$.trim(v)).length&&(v=parseInt(v,10))>-1){++n; conditions[nm]=v; }break; case"username":break; case"role":if((v=Judy.fieldValue(r))!==""&&v!=="_none"&&(v=$.trim(v))&&(v=parseInt(v,10))){++n; conditions[nm]=v; }break; case"severity_any":case"type_any":case"type_proxy":break; case"severity_some":if(!oElms.severity_any.checked){v=[]; le=r.length; for(i=0; i
',_htmlItem='
__CONTENT__
x
',_list,_faders={},_close=function(){$(this.parentNode).hide(); },_fader=function(selector,delay){var __self=this,_delayDefault=3000,_pause=150,_factor=1.2,_stopped,_opacity=100,_subtractor=1,_start=function(){__self._interval=setInterval(_fade,_pause); },_fade=function(){var n=_opacity,jq=__self._jq; if(!_stopped){if((_opacity=(n-=(_subtractor*=_factor)))>0){if(Judy.browserIE<11){jq.css("opacity",n/100); }else{jq.css({"-ms-filter":"progid:DXImageTransform.Microsoft.Alpha(Opacity="+(n=Math.round(n))+")",filter:"alpha(opacity="+n+")"}); }}else{_stopped=true; clearInterval(__self._interval); jq.hide(); }}},jq; this.stop=function(){if(!_stopped){_stopped=true; clearTimeout(__self._timeout); clearInterval(__self._interval); }}; this.unfade=function(){__self.stop(); if(_opacity<100){if(Judy.browserIE<11){__self._jq.css("opacity",1); }else{__self._jq.css({"-ms-filter":"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)",filter:"alpha(opacity=100)"}); }}}; this.destroy=function(){__self.stop(); delete __self._jq; }; if((jq=$(selector)).get(0)){this._jq=jq; this._timeout=setTimeout(_start,!delay?_delayDefault:(delay<1000?Math.floor(delay*_delayDefault):_delayDefault)); }}; this.setup=function(){var elm,jq; if((elm=document.getElementById("console"))){$(elm).after(_htmlList); }else{$("#content").prepend(_htmlList); }_list=document.getElementById("log_filter__message_list"); if((jq=$(_list)).draggable){jq.draggable({handle:"div.log-filter--message-content",cancel:"span",cursor:"move"}); }}; this.set=function(txt,type,options){var t=type||"status",s,f,k,jq,o={noFade:true,fadeDelay:0,modal:false,close:null}; switch(t){case"status":case"info":o.noFade=false; break; case"notice":case"warning":break; default:t="error"; }if(options){for(k in o){if(o.hasOwnProperty(k)&&options.hasOwnProperty(k)){o[k]=options[k]; }}}$(_list).prepend(_htmlItem.replace(/__NO__/,++_n).replace(/__TYPE__/,t).replace(/__CONTENT__/,txt?txt.replace(/\n/g,"
"):"")); (jq=$((s="#log_filter__message_"+_n)+" > div:last-child")).click(_close); if(o.modal){jq.click(Judy.overlay); Judy.overlay(1,true); }if(o.close){jq.click(o.close); }if(!o.noFade){_faders["_"+_n]=f=new _fader(s,o.fadeDelay); $(s+" > div:first-child").bind("click mousedown",f.unfade); }$(s).show(); }; this.showAll=function(){var le=_n+1,i,f; for(i=0; i"+(!o.link?"":('"))+"
'+self.local("log_severity")+""+(v=o.severity_string)+'
 
'+self.local("log_type")+""+o.type+'
'+self.local("log_time")+""+o.time+'
'+self.local("log_user")+""+(!o.uid?o.name:('('+o.uid+") "+o.name+""))+"   •   "+self.local("log_hostname")+": "+o.hostname+'
'+self.local("log_location")+''+o.location+'
'+self.local("log_referer")+""+(!o.referer?" ":(''+o.referer+""))+'
'+self.local("log_message")+""+o.message+"
'+self.local("log_link")+''+o.link+"
"; Judy.dialog(dialId,{title:''+self.local("log_event")+": "+o.wid+"",content:s,fixed:true,resizable:false,closeOnEscape:false,dialogClass:"log-filter-log-display-dialog",contentClass:"log-filter-log-display-content",autoOpen:false,close:function(event,ui){setTimeout(function(){$("#log_filter_logDisplay_"+logId).dialog("destroy").remove(); $("#log_filter_list_log_"+logId).removeClass("log-filter-list-displayed"); }); }}); ($dialOuter=$((dialInner=$("#"+dialId).get(0)).parentNode)).css({visibility:"hidden",overflow:"visible"}); Judy.dialog(dialId,"open"); Judy.outerWidth($dialOuter,true,Judy.innerWidth(window)-200,2); Judy.outerHeight("#"+dialId,true,Judy.outerHeight($dialOuter,true,Judy.outerHeight(window)-10,1)-Judy.outerHeight($("div.ui-dialog-titlebar",$dialOuter))-Math.ceil(parseFloat($dialOuter.css("padding-top"))+parseFloat($dialOuter.css("padding-bottom")))-_.adminOverlayOffset,1); $dialOuter.css({visibility:"visible",left:"150px",top:(4+_.adminOverlayOffset)+"px"}); Drupal.attachBehaviors($dialOuter.get(0)); }}}; this.init=function(useModuleCss,theme){var v; self.init=function(){}; if(typeof window.Judy!=="object"||!(v=Judy.version)||Judy.version<_.library_judy_version){_.library_judy_compatible=false; return; }if((_.useModuleCss=useModuleCss)){$("div#page").addClass("theme-"+theme); }Judy.overlay(1,false,self.local("wait")); }; this.setup=function(filters,messages){var a=messages,le,i,o={fadeDelay:2},url,wid; self.setup=function(){}; _filters=filters||[]; if(!_.library_judy_compatible){alert(self.local("library_judy_incompatible",{"!version":_.library_judy_version})); return; }_prepareForm(); _setMode(_.mode,false,true); (self.Message=new self.Message()).setup(); if(a){le=a.length; for(i=0; i span[title]").each(function(){var t=this.getAttribute("title"); if(t){this.parentNode.setAttribute("title",t); }}); if(!/^#overlay=admin\//.test(top.location.hash)){url=window.location.href; _.adminOverlayOffset=0; }else{url=top.location.href+top.location.hash; }_getLogList(/^.+\/(\d+)\/?$/.test(url)&&(wid=parseInt(url.replace(/^.+\/(\d+)\/?$/,"$1"),10))&&wid<=Math.pow(2,31)?wid:0); Judy.keydown(document.documentElement,"escape",function(){$("div.log-filter-log-display-content").each(function(){$(this).dialog("close"); }); }); Judy.overlay(0); }; }; window.LogFilter=new LogFilter($); })(jQuery);