String.prototype.addcslashes=function(s){var m=this;var v="",k=[],r=0,p=0,t="",h="",f="",o="",q="",u=0,d=0,n=0,b=0,e=0,l=[],a="",g=/%([\dA-Fa-f]+)/g;var w=function(j,i){if((j=j+"").length<i){return new Array(++i-j.length).join("0")+j}return j};for(r=0;r<s.length;r++){t=s.charAt(r);h=s.charAt(r+1);if(t==="\\"&&h&&(/\d/).test(h)){f=s.slice(r+1).match(/^\d+/)[0];n=f.length;b=r+n+1;if(s.charAt(b)+s.charAt(b+1)===".."){u=f.charCodeAt(0);if((/\\\d/).test(s.charAt(b+2)+s.charAt(b+3))){o=s.slice(b+3).match(/^\d+/)[0];r+=1}else{if(s.charAt(b+2)){o=s.charAt(b+2)}else{throw"Range with no end point"}}d=o.charCodeAt(0);if(d>u){for(p=u;p<=d;p++){k.push(String.fromCharCode(p))}}else{k.push(".",f,o)}r+=o.length+2}else{q=String.fromCharCode(parseInt(f,8));k.push(q)}r+=n}else{if(h+s.charAt(r+2)===".."){f=t;u=f.charCodeAt(0);if((/\\\d/).test(s.charAt(r+3)+s.charAt(r+4))){o=s.slice(r+4).match(/^\d+/)[0];r+=1}else{if(s.charAt(r+3)){o=s.charAt(r+3)}else{throw"Range with no end point"}}d=o.charCodeAt(0);if(d>u){for(p=u;p<=d;p++){k.push(String.fromCharCode(p))}}else{k.push(".",f,o)}r+=o.length+2}else{k.push(t)}}}for(r=0;r<m.length;r++){t=m.charAt(r);if(k.indexOf(t)!==-1){v+="\\";e=t.charCodeAt(0);if(e<32||e>126){switch(t){case"\n":v+="n";break;case"\t":v+="t";break;case"\u000D":v+="r";break;case"\u0007":v+="a";break;case"\v":v+="v";break;case"\b":v+="b";break;case"\f":v+="f";break;default:a=encodeURIComponent(t);if((l=g.exec(a))!==null){v+=w(parseInt(l[1],16).toString(8),3)}while((l=g.exec(a))!==null){v+="\\"+w(parseInt(l[1],16).toString(8),3)}break}}else{v+=t}}else{v+=t}}return v};var Sanitize=new function(){this.slugify=function(a){var d=a.toLowerCase();var b={"ø":"o","Ø":"o","å":"a","á":"a","à":"a","ã":"a","ª":"a","ä":"a","â":"a","Å":"a","Æ":"a","æ":"a","ç":"c","é":"e","è":"e","ë":"e","€":"-euro-","ê":"e","í":"i","ì":"i","ï":"i","ó":"o","ò":"o","õ":"o","ö":"o","º":"o","ú":"u","Ú":"u","ù":"u","Ù":"u","ü":"u","Ü":"u","ý":"y","Š":"s","š":"s","Ž":"z","ž":"z","Þ":"B","ß":"-beta-","þ":"b","&":"-and-","#":"-sharp-","µ":"-niu-"};for(var c in b){d=d.replace(c,b[c])}d=d.replace(/[^a-zA-Z0-9\-]+/ig," ");d=d.replace(/\s+/gi,"-");return d};this.db_entry=function(a){return a.addcslashes("\u0000\u0027\u0022\u001a\u0025\u0023\u005c\r\n")};this.db_result=function(a){return(a+"").replace(/\\(.?)/g,function(c,b){switch(b){case"\\":return"\\";case"0":return"\u0000";case"":return"";default:return b}})}};String.prototype.slugify=function(){return Sanitize.slugify(this)};String.prototype.stripslashes=function(){return Sanitize.db_result(this)};function html_entity_decode(c,f){var e={},d="",a="",b="";a=c.toString();if(false===(e=this.get_html_translation_table("HTML_ENTITIES",f))){return false}delete (e["&"]);e["&"]="&amp;";for(d in e){b=e[d];a=a.split(b).join(d)}a=a.split("&#039;").join("'");return a}function get_html_translation_table(h,f){var c={},e={},b;var d={},a={};var i={},g={};d[0]="HTML_SPECIALCHARS";d[1]="HTML_ENTITIES";a[0]="ENT_NOQUOTES";a[2]="ENT_COMPAT";a[3]="ENT_QUOTES";i=!isNaN(h)?d[h]:h?h.toUpperCase():"HTML_SPECIALCHARS";g=!isNaN(f)?a[f]:f?f.toUpperCase():"ENT_COMPAT";if(i!=="HTML_SPECIALCHARS"&&i!=="HTML_ENTITIES"){throw new Error("Table: "+i+" not supported")}c["38"]="&amp;";if(i==="HTML_ENTITIES"){c["160"]="&nbsp;";c["161"]="&iexcl;";c["162"]="&cent;";c["163"]="&pound;";c["164"]="&curren;";c["165"]="&yen;";c["166"]="&brvbar;";c["167"]="&sect;";c["168"]="&uml;";c["169"]="&copy;";c["170"]="&ordf;";c["171"]="&laquo;";c["172"]="&not;";c["173"]="&shy;";c["174"]="&reg;";c["175"]="&macr;";c["176"]="&deg;";c["177"]="&plusmn;";c["178"]="&sup2;";c["179"]="&sup3;";c["180"]="&acute;";c["181"]="&micro;";c["182"]="&para;";c["183"]="&middot;";c["184"]="&cedil;";c["185"]="&sup1;";c["186"]="&ordm;";c["187"]="&raquo;";c["188"]="&frac14;";c["189"]="&frac12;";c["190"]="&frac34;";c["191"]="&iquest;";c["192"]="&Agrave;";c["193"]="&Aacute;";c["194"]="&Acirc;";c["195"]="&Atilde;";c["196"]="&Auml;";c["197"]="&Aring;";c["198"]="&AElig;";c["199"]="&Ccedil;";c["200"]="&Egrave;";c["201"]="&Eacute;";c["202"]="&Ecirc;";c["203"]="&Euml;";c["204"]="&Igrave;";c["205"]="&Iacute;";c["206"]="&Icirc;";c["207"]="&Iuml;";c["208"]="&ETH;";c["209"]="&Ntilde;";c["210"]="&Ograve;";c["211"]="&Oacute;";c["212"]="&Ocirc;";c["213"]="&Otilde;";c["214"]="&Ouml;";c["215"]="&times;";c["216"]="&Oslash;";c["217"]="&Ugrave;";c["218"]="&Uacute;";c["219"]="&Ucirc;";c["220"]="&Uuml;";c["221"]="&Yacute;";c["222"]="&THORN;";c["223"]="&szlig;";c["224"]="&agrave;";c["225"]="&aacute;";c["226"]="&acirc;";c["227"]="&atilde;";c["228"]="&auml;";c["229"]="&aring;";c["230"]="&aelig;";c["231"]="&ccedil;";c["232"]="&egrave;";c["233"]="&eacute;";c["234"]="&ecirc;";c["235"]="&euml;";c["236"]="&igrave;";c["237"]="&iacute;";c["238"]="&icirc;";c["239"]="&iuml;";c["240"]="&eth;";c["241"]="&ntilde;";c["242"]="&ograve;";c["243"]="&oacute;";c["244"]="&ocirc;";c["245"]="&otilde;";c["246"]="&ouml;";c["247"]="&divide;";c["248"]="&oslash;";c["249"]="&ugrave;";c["250"]="&uacute;";c["251"]="&ucirc;";c["252"]="&uuml;";c["253"]="&yacute;";c["254"]="&thorn;";c["255"]="&yuml;"}if(g!=="ENT_NOQUOTES"){c["34"]="&quot;"}if(g==="ENT_QUOTES"){c["39"]="&#39;"}c["60"]="&lt;";c["62"]="&gt;";for(b in c){if(c.hasOwnProperty(b)){e[String.fromCharCode(b)]=c[b]}}return e};
