var spell_formname,spell_fieldname;function spellCheck(j,i){var c=document.forms.spell_form;spell_formname=j;spell_fieldname=i;var f=/(?:<[^>]+>)|(?:\[[^ ][^\]]*\])|(?:&[^; ]+;)|(?:[^0-9\s\]\[{};:"\\|,<.>\/?`~!@#$%^&*()_+=]+)/g;var e=["-","'"];var a=new Array(),g=new Array();var b=document.forms[j][i].value;var d=false;var k,h;while((g=f.exec(b))&&typeof(g)!="undefined"){k=0;h=g[0].length-1;while(in_array(g[0].charAt(k),e)&&k<h){k++}while(in_array(g[0].charAt(h),e)&&k<h){h--}if(k==h){continue}if(g[0].substr(0,5).toLowerCase()=="[code"){d=true}else{if(d&&g[0].substr(0,7).toLowerCase()=="[/code]"){d=false}else{if(!d&&!in_array(g[0].charAt(0),["[","<"])&&g[0].toUpperCase()!=g[0]){a[a.length]=g[0].substr(k,h-k+1)+"|"+(k+b.substr(0,g.index).length)+"|"+(h+b.substr(0,g.index).length)}}}}openSpellWin(640,480);c.spellstring.value=a.join("\n");c.submit();return true}var wordindex=-1,offsetindex=0;var ignoredWords=[];function misp(c,d,b,a){this.word=c;this.start=d;this.end=b;this.suggestions=a}function replaceWord(){var b="";var a;if(misps[wordindex].start!=0){b=mispstr.slice(0,misps[wordindex].start+offsetindex)}a=mispstr.slice(misps[wordindex].end+1+offsetindex);mispstr=b+document.forms.spellingForm.changeto.value+a;offsetindex+=document.forms.spellingForm.changeto.value.length-misps[wordindex].word.length;misps[wordindex].word=document.forms.spellingForm.changeto.value;nextWord(false)}function replaceAll(){var c;var b;var a;var d=offsetindex;a=misps[wordindex].word;for(b=wordindex;b<misps.length;b++){misps[b].start+=d;misps[b].end+=d}d=0;for(b=0;b<misps.length;b++){if(misps[b].word==a){var e="";if(misps[b].start!=0){e=mispstr.slice(0,misps[b].start+d)}c=mispstr.slice(misps[b].end+1+d);mispstr=e+document.forms.spellingForm.changeto.value+c;d+=document.forms.spellingForm.changeto.value.length-misps[b].word.length}misps[b].start+=d;misps[b].end+=d}ignoredWords[a]=true;offsetindex=0;nextWord(false)}function highlightWord(){var e="";var b;if(misps[wordindex].start!=0){e=mispstr.slice(0,misps[wordindex].start+offsetindex)}b=mispstr.slice(misps[wordindex].end+1+offsetindex);var c,g;c=document.getElementById("spellview");g=htmlspecialchars(e)+'<span class="highlight" id="h1">'+misps[wordindex].word+"</span>"+htmlspecialchars(b);setInnerHTML(c,g.replace(/_\|_/g,"<br>"));var f=typeof(document.getElementById("spellview").currentStyle)!="undefined"?parseInt(document.getElementById("spellview").currentStyle.height):document.getElementById("spellview").offsetHeight;var d=document.getElementById("h1").offsetTop;var a=document.getElementById("spellview").scrollTop;if(f<=(d+a)){document.getElementById("spellview").scrollTop=d+a-f+32}}function nextWord(d){if(d){ignoredWords[misps[wordindex].word]=true}if(wordindex>=0){misps[wordindex].start+=offsetindex;misps[wordindex].end+=offsetindex}wordindex++;if(misps.length<=wordindex){var a;a=document.getElementById("spellview");setInnerHTML(a,htmlspecialchars(mispstr).replace(/_\|_/g,"<br>"));while(document.forms.spellingForm.suggestions.options.length>0){document.forms.spellingForm.suggestions.options[0]=null}alert(txt.done);document.forms.spellingForm.change.disabled=true;document.forms.spellingForm.changeall.disabled=true;document.forms.spellingForm.ignore.disabled=true;document.forms.spellingForm.ignoreall.disabled=true;mispstr=mispstr.replace(/_\|_/g,"\n");window.opener.document.forms[spell_formname][spell_fieldname].value=mispstr;if(!window.opener.spellCheckDone){window.opener.document.forms[spell_formname][spell_fieldname].focus()}else{window.opener.spellCheckDone()}window.close();return true}if(typeof(ignoredWords[misps[wordindex].word])!="undefined"){nextWord(false);return false}while(document.forms.spellingForm.suggestions.options.length>0){document.forms.spellingForm.suggestions.options[0]=null}if(misps[wordindex].suggestions.length){for(var c=0;c<misps[wordindex].suggestions.length;c++){var b=new Option(misps[wordindex].suggestions[c],misps[wordindex].suggestions[c]);document.forms.spellingForm.suggestions.options[c]=b;if(c==0){b.selected=true;document.forms.spellingForm.changeto.value=b.value;document.forms.spellingForm.changeto.select()}}}if(document.forms.spellingForm.suggestions.options.length==0){document.forms.spellingForm.changeto.value=""}highlightWord();return false}function htmlspecialchars(a){a=a.replace(/\</g,"&lt;");a=a.replace(/\>/g,"&gt;");a=a.replace(/\n/g,"<br>");a=a.replace(/\ \ /g," &nbsp;");return a}function openSpellWin(b,a){window.open("","spellWindow","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width="+b+",height="+a)};
