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