if(typeof(DEBUG)==="undefined"){var DEBUG=false;if(document.URL.indexOf("debug")>0){DEBUG=true}}if(typeof(COMPRESSEDJS)==="undefined"){var COMPRESSEDJS=window.location.hostname!=="localhost"&&window.location.port!=8080&&!DEBUG;if(document.URL.indexOf("compressed")>0){COMPRESSEDJS=true}}if(!DEBUG){var logConfig={"default":"error"}}function isA(b,a){if(b instanceof a){return true}return(b&&objectHasMethod(b,"isA"))?b.isA(a):false}function isObject(a){return a&&(typeof a==="object")}function isRealObject(a){return(a!=null&&typeof a=="object"&&typeof a.length=="undefined")}function isArray(a){return Object.prototype.toString.apply(a)==="[object Array]"}function isDate(a){if(typeof Ext!="undefined"){return Ext.isDate(a)}return Object.prototype.toString.apply(a)==="[object Date]"}function isEmpty(d){if(d===null||d===undefined){return true}var c=typeof(d);if(c==="boolean"){return !d}else{if(c==="string"){var a=d.trim();return(a===""||a==="0")}else{if(c==="number"){return(d===0)}else{if(c==="function"){return false}else{if(c==="object"){if(isArray(d)){return(d.length==0)}for(var b in d){return false}return true}else{throw new Error("Unsupported js data type: "+c)}}}}}}function isNothing(a,b){if(typeof(a[b])=="undefined"){return true}return(a[b]==null)}function objectContainsField(a,c){if(typeof(a[c])!="undefined"){return true}for(var b in a){if(c==b){return true}}return false}function getObjectProperty(a,c,b){if(typeof(a[c])!="undefined"){return a[c]}return b}function objectHasMethod(a,b){return(typeof(a[b])=="function")}Array.prototype.appendAll=function(b){if(!Ext.isArray(b)){throw new Error("Given param is not an array!")}for(var a=0;a<b.length;a++){this[this.length]=b[a]}return this};Array.prototype.contains=function(b){for(var a=0;a<this.length;a++){if(this[a]==b){return true}}return false};Array.prototype.removeRange=function(c,b){var a=this.slice((b||c)+1||this.length);this.length=c<0?this.length+c:c;return this.push.apply(this,a)};Array.prototype.removePos=function(a){return this.removeRange(a)};if(!Array.prototype.filter){Array.prototype.filter=function(b){var a=this.length;if(typeof b!="function"){throw new TypeError()}var e=new Array();var d=arguments[1];for(var c=0;c<a;c++){if(c in this){var f=this[c];if(b.call(d,f,c,this)){e.push(f)}}}return e}}if(typeof Array.prototype.unshift==="undefined"){Array.prototype.unshift=function(){this.reverse();var b=arguments,c=b.length;while(c--){this.push(b[c])}this.reverse();return this.length}}if(String.prototype.limit){throw new Error("Someone overrode our custom String.prototype.limit! Included any new library lately?")}String.prototype.limit=function(a,b){if(this.length<=a){return this}if(typeof b=="undefined"){b="..."}return this.substr(0,a-b.length)+b};if(!String.prototype.trim){String.prototype.trim=function(){var a=/^\s+|\s+$/g;return function(){return this.replace(a,"")}}()}if(!String.prototype.startsWith){String.prototype.startsWith=function(a){return(this.indexOf(a)===0)}}if(!String.prototype.endsWith){String.prototype.endsWith=function(b){var a=this.length-b.length;if(a<0){return false}return(this.lastIndexOf(b,a)==a)}}if(!String.prototype.contains){String.prototype.contains=function(a){return(this.indexOf(a)!=-1)}}if(!String.prototype.replaceAll){String.prototype.replaceAll=function(d,c){var a=this;var b=a.indexOf(d);while(b!=-1){a=a.replace(d,c);b=a.indexOf(d)}return a}}Date.prototype.ageLastBirthday=function(d){var e=this.getFullYear();var c=d.getFullYear();var b=new Date(d);b.setFullYear(e);var a=(this-b<0)?1:0;return e-c-a};function getNextUid(b){var a=(typeof(b)!="undefined")?b:"";return a+""+getNextUid._uidPos++}getNextUid._uidPos=0;Number.prototype.formatMoney=function(k,g,e){var h=this,k=isNaN(k=Math.abs(k))?2:k,g=g==undefined?",":g,e=e==undefined?".":e,f=h<0?"-":"",b=parseInt(h=Math.abs(+h||0).toFixed(k))+"",a=(a=b.length)>3?a%3:0;return f+(a?b.substr(0,a)+e:"")+b.substr(a).replace(/(\d{3})(?=\d)/g,"$1"+e)+(k?g+Math.abs(h-b).toFixed(k).slice(2):"")};function loadCss(d,g){g=g||"always";if(g.toLowerCase()=="debug"){if(!DEBUG){return}}if(g.toLowerCase()=="develop"){if(COMPRESSEDJS){return}}if(g.toLowerCase()=="release"){if(!COMPRESSEDJS||DEBUG){return}}var b=document.getElementsByTagName("link");for(var e=0;e<b.length;e++){var f=b[e];if(f.href.substring(f.href.length-d.length)===d){if(DEBUG){log("Omitting file because it's loaded already: "+d,false)}return}}if(navigator.userAgent.indexOf("Gecko")!=-1&&navigator.userAgent.indexOf("Konqueror")==-1&&navigator.userAgent.indexOf("Safari")==-1){var c=document.createElement("link");c.rel="stylesheet";c.type="text/css";var a=document.getElementsByTagName("head")[0];a.appendChild(c);c.href=d}else{document.writeln('<link rel="stylesheet" type="text/css" href="'+d+'" />')}}function loadJs(e,f){f=f||"always";if(f.toLowerCase()=="debug"){if(!DEBUG){return}}if(f.toLowerCase()=="develop"){if(COMPRESSEDJS){return}}if(f.toLowerCase()=="release"){if(!COMPRESSEDJS||DEBUG){return}}var a=document.getElementsByTagName("script");var d=a.length;for(var b=0;b<a.length;b++){var c=a[b];if(c.src.substring(c.src.length-e.length)===e){if(DEBUG){log("Omitting file because it's loaded already: "+e,false)}return}}if(loadJsAsync()){loadJsDom(e)}else{document.writeln('<script type="text/javascript" src="'+e+'"><\/script>')}}function createStyleSheet(c,g){var b;var a=document.getElementsByTagName("html")[0];var f=document.createElement("style");f.setAttribute("type","text/css");if(g){f.setAttribute("id",g)}if(Ext.isIE){a.appendChild(f);b=f.styleSheet;b.cssText=c}else{try{f.appendChild(document.createTextNode(c))}catch(d){f.cssText=c}a.appendChild(f);b=f.styleSheet?f.styleSheet:(f.sheet||document.styleSheets[doc.styleSheets.length-1])}return b}function loadJsAsync(){if(loadJsAsync.prototype.loadAsync===undefined){var b=navigator.userAgent;loadJsAsync.prototype.loadAsync=b.indexOf("Gecko")!=-1&&b.indexOf("Konqueror")==-1&&b.indexOf("Safari")==-1;if(b.contains("Firefox")){var a=getFirefoxMajorVersion(b);if(a===null||a>=4){loadJsAsync.prototype.loadAsync=false}else{if(a<4){loadJsAsync.prototype.loadAsync=true}}}}return loadJsAsync.prototype.loadAsync}loadJsAsync.prototype.loadAsync=undefined;function getFirefoxMajorVersion(b){var a=b.match(/.*?Firefox\/(\d*)?\..*/);if(a&&a.length==2){if(/^\d*$/.test(a[1])){return parseInt(a[1])}}return null}function loadJsDom(f,b){var e=document.createElement("script");var a=document.getElementsByTagName("head").item(0);e.setAttribute("type","text/javascript");if(b){var d=false;var c=function(){if(!d){d=true;b.handleSuccess()}};e.onreadystatechange=function(){if(this.readyState=="complete"){c()}};e.onload=c}e.setAttribute("src",f);a.appendChild(e)}function log(a,b){if(typeof console!="undefined"){console.log(a)}else{if(typeof Ext!="undefined"&&typeof Ext.log=="function"){Ext.log(dump(a))}else{if(b&&b===true){alert(dump(a))}}}}function trace(){if(typeof console!="undefined"&&objectHasMethod(console,"trace")){console.trace(arguments)}}function dump(a,c,b){var e=_dump_quickCheck(a);if(e){return e}else{var d=[];if(typeof b=="undefined"){b=20}_dump_recursive(d,a,c,b);return d.join("")}}function _dump_recursive(b,g,d,i,c){if(c>i){return}if(!c){c=0}if(typeof(d)=="undefined"){d=false}var e="";for(var f=0;f<c;f++){e+="    "}if(typeof(g)=="object"){if(!_dump_handleSpecial(g,b,e,null)){for(var k in g){var h=g[k];if(typeof(h)=="object"){if(!_dump_handleSpecial(h,b,e,k)){var a=isArray(h)?"array":"object";b[b.length]=e+"'"+k+"' ("+a+") ...\n";_dump_recursive(b,h,d,i,c+1)}}else{if(!d&&(typeof(h)=="function")){continue}b[b.length]=e+"'"+k+"' => \""+h+'" ('+typeof(h)+")\n"}}}}else{b[b.length]=e+"===>"+g+"<===("+typeof(g)+")"}}function _dump_handleSpecial(d,b,e,c){var a=_dump_quickCheck(d);if(a===null){return false}if(c){b[b.length]=e+"'"+c+"' => "}b[b.length]=a+"\n";return true}function _dump_quickCheck(a){if(a===null){return"(null)"}else{if(a===undefined){return"(undefined)"}else{if(isDate(a)){return a.toGMTString()}else{if((typeof(a._ordinal)!="undefined")&&(typeof(a._name)!="undefined")){return a.toString()+" (enum)"}else{return null}}}}}function getFunctionName(a){if(typeof a=="function"||typeof a=="object"){var b=(""+a).match(/function\s*([\w\$]*)\s*\(/)}if(b!==null){return b[1]}return""}function getUrlParameter(b){b=b.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var a="[\\?&]"+b+"=([^&#]*)";var d=new RegExp(a);var c=d.exec(window.location.href);if(c==null){return""}else{return c[1]}}loadJs("/js/logConfig.js","debug");loadJs("/js/logConfig.local.js","debug");
