
var isRichText=false;var rng;var currentRTE;var allRTEs="";var isIE;var isGecko;var isSafari;var isKonqueror;var imagesPath;var includesPath;var cssFile;function initRTE(imgPath,incPath,css){var ua=navigator.userAgent.toLowerCase();isIE=((ua.indexOf("msie")!=-1)&&(ua.indexOf("opera")==-1)&&(ua.indexOf("webtv")==-1));isGecko=(ua.indexOf("gecko")!=-1);isSafari=(ua.indexOf("safari")!=-1);isKonqueror=(ua.indexOf("konqueror")!=-1);if(document.getElementById&&document.designMode&&!isSafari&&!isKonqueror){isRichText=true;}
imagesPath=imgPath;includesPath=incPath;cssFile=css;if(!imagesPath){var elements=document.getElementsByTagName('script');for(var i=0;i<elements.length;i++){if(elements[i].src&&elements[i].src.indexOf("richtext")!=-1){var src=elements[i].src;src=src.substring(0,src.lastIndexOf('/')+1);imagesPath=src+'images/';includesPath=src;break;}}}}
function writeRichText(rte,html,width,height,buttons,readOnly){if(isRichText){writeRTE(rte,html,width,height,buttons,readOnly);}else{writeDefault(rte,html,width,height,buttons,readOnly);}}
function writeDefault(rte,html,width,height,buttons,readOnly){}
function writeRTE(rte,html,width,height,buttons,readOnly){var iframe,txtarea=document.getElementsByName(rte)[0];if(!txtarea)return false;if(!html||html=='')html=txtarea.value;if(!width||width==0)width=txtarea.offsetWidth;if(!height||height==0)height=txtarea.offsetHeight;if(allRTEs.length>0)allRTEs+=";";allRTEs+=rte;rte+='_rte';if(document.getElementById(rte))return false;if(isIE){var tablewidth=width;}else{var tablewidth=width+4;}
if(readOnly)buttons=false;if(buttons==true){var img,opt,sel,td,tr,table,tb;if(!(table=document.getElementById('Buttons1_'+rte))){table=document.createElement('table');table.setAttribute('id','Buttons1_'+rte);tb=document.createElement('tbody');tr=document.createElement('tr');td=document.createElement('td');sel=document.createElement('select');sel.setAttribute('id','formatblock_'+rte);sel.onchange=function(){eval('Select(\''+rte+'\', this.id);')};addOption(sel,"","[Style]");addOption(sel,"<p>","Paragraph");addOption(sel,"<h1>","Heading 1 <h1>");addOption(sel,"<h2>","Heading 2 <h2>");addOption(sel,"<h3>","Heading 3 <h3>");addOption(sel,"<h4>","Heading 4 <h4>");addOption(sel,"<h5>","Heading 5 <h5>");addOption(sel,"<h6>","Heading 6 <h6>");addOption(sel,"<address>","Address <ADDR>");addOption(sel,"<pre>","Formatted <pre>");td.appendChild(sel);tr.appendChild(td);td=document.createElement('td');sel=document.createElement('select');sel.setAttribute('id','fontname_'+rte);sel.onchange=function(){eval('Select(\''+rte+'\', this.id);')};addOption(sel,"Font","[Font]",1);addOption(sel,"Arial, Helvetica, sans-serif","Arial");addOption(sel,"Courier New, Courier, mono","Courier New");addOption(sel,"Times New Roman, Times, serif","Times New Roman");addOption(sel,"Verdana, Arial, Helvetica, sans-serif","Verdana");td.appendChild(sel);tr.appendChild(td);td=document.createElement('td');sel=document.createElement('select');sel.setAttribute('id','fontsize_'+rte);sel.onchange=function(){eval('Select(\''+rte+'\', this.id);')};sel.setAttribute('unselectable',"on");addOption(sel,"Size","[Size]");addOption(sel,"1","1");addOption(sel,"2","2");addOption(sel,"3","3");addOption(sel,"4","4");addOption(sel,"5","5");addOption(sel,"6","6");addOption(sel,"7","7");td.appendChild(sel);tr.appendChild(td);tb.appendChild(tr);table.appendChild(tb);}
txtarea.parentNode.insertBefore(table,txtarea);if(!(table=document.getElementById('Buttons2_'+rte))){table=document.createElement('table');table.setAttribute('id','Buttons2_'+rte);table.setAttribute('cellpadding',1);table.setAttribute('cellspacing',0);tb=document.createElement('tbody');tr=document.createElement('tr');addImg(tr,"btnImage",imagesPath+'bold.gif',25,24,"Bold",'FormatText(\''+rte+'\', \'bold\', \'\')');addImg(tr,"btnImage",imagesPath+'italic.gif',25,24,"Italic",'FormatText(\''+rte+'\', \'italic\', \'\')');addImg(tr,"btnImage",imagesPath+'underline.gif',25,24,"Underline",'FormatText(\''+rte+'\', \'underline\', \'\')');addImg(tr,"btnImage",imagesPath+'left_just.gif',25,24,"Align Left",'FormatText(\''+rte+'\', \'justifyleft\', \'\')');addImg(tr,"btnImage",imagesPath+'centre.gif',25,24,"Center",'FormatText(\''+rte+'\', \'justifycenter\', \'\')');addImg(tr,"btnImage",imagesPath+'right_just.gif',25,24,"Align Right",'FormatText(\''+rte+'\', \'justifyright\', \'\')');addImg(tr,"btnImage",imagesPath+'justifyfull.gif',25,24,"Justify Full",'FormatText(\''+rte+'\', \'justifyfull\', \'\')');addImg(tr,"btnImage",imagesPath+'hr.gif',25,24,"Horizontal Rule",'FormatText(\''+rte+'\', \'inserthorizontalrule\', \'\')');addImg(tr,"btnImage",imagesPath+'numbered_list.gif',25,24,"Ordered List",'FormatText(\''+rte+'\', \'insertorderedlist\', \'\')');addImg(tr,"btnImage",imagesPath+'list.gif',25,24,"Unordered List",'FormatText(\''+rte+'\', \'insertunorderedlist\', \'\')');addImg(tr,"btnImage",imagesPath+'outdent.gif',25,24,"Outdent",'FormatText(\''+rte+'\', \'outdent\', \'\')');addImg(tr,"btnImage",imagesPath+'indent.gif',25,24,"Indent",'FormatText(\''+rte+'\', \'indent\', \'\')');addImg(tr,"btnImage",imagesPath+'textcolor.gif',25,24,"Text Color",'FormatText(\''+rte+'\', \'forecolor\', \'\')','forecolor_'+rte);addImg(tr,"btnImage",imagesPath+'bgcolor.gif',25,24,"Background Color",'FormatText(\''+rte+'\', \'hilitecolor\', \'\')','hilitecolor_'+rte);addImg(tr,"btnImage",imagesPath+'hyperlink.gif',25,24,"Insert Link",'FormatText(\''+rte+'\', \'createlink\', \'\')');addImg(tr,"btnImage",imagesPath+'image.gif',25,24,"Add Image",'AddImage(\''+rte+'\')');if(isIE)addImg(tr,"btnImage",imagesPath+'spellcheck.gif',25,24,"Spell Check","checkspell()");addImg(tr,"btnImage",imagesPath+'tbl.gif',25,24,"insert table",'InsertHTML({"name":"'+rte+'","html":"<table border=\\"1\\"><tr><td>a</td><td>b</td></tr><tr><td>a</td><td>b</td></tr></table>"})');if(txtarea.className&&txtarea.className.match(/rtecgi/))addImg(tr,"btnImage",imagesPath+'cgi.gif',25,24,"insert FORM field",'insertRTECGI(\''+rte+'\',event||window.event)');addImg(tr,"btnImage",imagesPath+'resize.gif',25,24,"enlarge text area",'resizeRTE(\''+rte+'\',event||window.event)');tb.appendChild(tr);table.appendChild(tb);}
txtarea.parentNode.insertBefore(table,txtarea);}
if(!(iframe=document.getElementById(rte))){iframe=document.createElement('iframe');iframe.setAttribute('id',rte);iframe.setAttribute('name',rte);iframe.setAttribute('width',width+'px');iframe.setAttribute('height',height+'px');}
txtarea.parentNode.insertBefore(iframe,txtarea);if(!(iframe=document.getElementById('cp'+rte))){iframe=document.createElement('iframe');iframe.setAttribute('id','cp'+rte);iframe.setAttribute('width',154);iframe.setAttribute('height',104);iframe.setAttribute('src',includesPath+'palette.htm');iframe.setAttribute('scrolling',"no");if(isIE){iframe.style.visibility="hidden";iframe.style.display="none";iframe.style.position="absolute";}else{iframe.setAttribute('style',"visibility:hidden; display: none; position: absolute;");}}
txtarea.parentNode.insertBefore(iframe,txtarea);if(isIE){txtarea.style.width=txtarea.style.height='1px';}else{txtarea.style.display='none';}
enableDesignMode(rte,html,readOnly);}
function clearRichText(rte){var o,txtarea=document.getElementsByName(rte)[0];if(!txtarea)return true;rte+='_rte';if(!(o=document.getElementById(rte)))return true;if(isIE){txtarea.style.width=o.width;txtarea.style.height=o.height;}
txtarea.style.display='';removeNodeAndChildren(document.getElementById('Buttons1_'+rte));removeNodeAndChildren(document.getElementById('Buttons2_'+rte));removeNodeAndChildren(document.getElementById('cp'+rte));removeNodeAndChildren(o);}
function removeNodeAndChildren(o){if(!o)return true;var A=new Array();for(var child=o.firstChild;child;child=child.nextSibling){A.push(child);}
for(child in A){removeNodeAndChildren(child);}
if(o.parentNode)o.parentNode.removeChild(o);}
function addOption(sel,val,txt,selected){var opt=new Option(txt,val,selected?true:false);sel.options.add(opt);}
function addImg(tr,c,s,w,h,t,f,dv){var div,td=document.createElement('td'),img=document.createElement('img');img.className=c;img.src=s;img.setAttribute('width',w);img.setAttribute('height',h);img.setAttribute('alt',t);img.setAttribute('title',t);img.onclick=function(event){eval(f)};if(dv){div=document.createElement('div');div.setAttribute('id',dv);div.appendChild(img);td.appendChild(div);}else{td.appendChild(img);}
tr.appendChild(td);}
function resizeRTE(rte,ev){var iframe=document.getElementById(rte);var h=iframe.offsetHeight,w=iframe.offsetWidth,d=ev.shiftKey?-80:80;if(h)iframe.style.height=h+d+'px';if(w)iframe.style.width=w+d+'px';}
var InsertHTMLselrng=null;function InsertHTML(jn){if(document.all){var selection=frames[jn.name].document.selection;if(selection!=null){frames[jn.name].focus();rng=InsertHTMLselrng?InsertHTMLselrng:selection.createRange();rng.pasteHTML(jn.html);rng.select();InsertHTMLselrng=null;}}else{document.getElementById(jn.name).contentWindow.document.execCommand('insertHTML',false,jn.html);}}
function enableDesignMode(rte,html,readOnly){var txtarea=document.getElementsByName(rte.replace(/_rte$/,''))[0];if(!txtarea)return false;var oRTE,frameHtml="<html id=\""+rte+"\">\n";frameHtml+="<head>\n";if(cssFile.length>0){frameHtml+="<link media=\"all\" type=\"text/css\" href=\""+cssFile+"\" rel=\"stylesheet\">\n";}else{frameHtml+="<style>\n";frameHtml+="body {\n";frameHtml+=" background: #FFFFFF;\n";frameHtml+=" margin: 0px;\n";frameHtml+=" padding: 0px;\n";frameHtml+="}\n";frameHtml+="</style>\n";}
frameHtml+="</head>\n";frameHtml+="<body>\n";frameHtml+=html+"\n";frameHtml+="</body>\n";frameHtml+="</html>";if(document.all){oRTE=frames[rte].document;oRTE.open();oRTE.write(frameHtml);oRTE.close();if(!readOnly)oRTE.designMode="On";}else{try{if(!readOnly)document.getElementById(rte).contentDocument.designMode="on";try{oRTE=document.getElementById(rte).contentWindow.document;oRTE.open();oRTE.write(frameHtml);oRTE.close();if(isGecko&&!readOnly){oRTE.addEventListener("keypress",kb_handler,true);}}catch(e){alert("Error preloading content.");}}catch(e){if(isGecko){setTimeout("enableDesignMode('"+rte+"', '"+html+"', "+readOnly+");",10);}else{return false;}}}
if(window.attachEvent){}else if(window.addEventListener){}else{}}
function updateRTEs(e){if(!allRTEs)return true;var vRTEs=allRTEs.split(";");for(var i=0;i<vRTEs.length;i++){updateRTE(vRTEs[i]);}}
function updateRTE(rte){if(!isRichText)return;rte=rte.replace(/_rte$/,'');var oHdnMessage=document.getElementsByName(rte)[0];if(!oHdnMessage)return false;rte+='_rte';var oRTE=document.getElementById(rte);if(!oRTE)return false;var readOnly=false;if(document.all){if(frames[rte].document.designMode!="On")readOnly=true;}else{if(document.getElementById(rte).contentDocument.designMode!="on")readOnly=true;}
if(isRichText&&!readOnly){if(0&&document.getElementById("chkSrc"+rte).checked){document.getElementById("chkSrc"+rte).checked=false;toggleHTMLSrc(rte);}
var val='';if(oHdnMessage.value==null)val="";if(document.all){val=frames[rte].document.body.innerHTML;}else{val=oRTE.contentWindow.document.body.innerHTML;}
val=val.replace(/(^[ \r\n]+|[ \r\n]+$|\r*\n*<br>\r*\n*$)/g,'');oHdnMessage.value=val;if(stripHTML(oHdnMessage.value.replace("&nbspX;"," "))==""&&oHdnMessage.value.toLowerCase().search("<hr")==-1&&oHdnMessage.value.toLowerCase().search("<img")==-1)oHdnMessage.value="";if(escape(oHdnMessage.value)=="%3Cbr%3E%0D%0A%0D%0A%0D%0A")oHdnMessage.value="";oHdnMessage.setAttribute('value',oHdnMessage.value);}}
function toggleRTE(rte){var txtarea=document.getElementsByName(rte)[0];if(!txtarea)return false;rte+='_rte';var iframe=document.getElementById(rte);if(!iframe)return false;if(txtarea.style.display=='none'){txtarea.style.display='';iframe.style.display='none';if(document.getElementById('Buttons1_'+rte)){document.getElementById('Buttons1_'+rte).style.display='none';document.getElementById('Buttons2_'+rte).style.display='none';}}else{txtarea.style.display='none';iframe.style.display='';if(document.getElementById('Buttons1_'+rte)){document.getElementById('Buttons1_'+rte).style.display='';document.getElementById('Buttons2_'+rte).style.display='';}}}
function toggleHTMLSrc(rte){var oRTE;if(document.all){oRTE=frames[rte].document;}else{oRTE=document.getElementById(rte).contentWindow.document;}
if(document.getElementById("chkSrc"+rte).checked){document.getElementById("Buttons1_"+rte).style.visibility="hidden";document.getElementById("Buttons2_"+rte).style.visibility="hidden";if(document.all){oRTE.body.innerText=oRTE.body.innerHTML;}else{var htmlSrc=oRTE.createTextNode(oRTE.body.innerHTML);oRTE.body.innerHTML="";oRTE.body.appendChild(htmlSrc);}}else{document.getElementById("Buttons1_"+rte).style.visibility="visible";document.getElementById("Buttons2_"+rte).style.visibility="visible";if(document.all){var output=escape(oRTE.body.innerText);output=output.replace("%3CP%3E%0D%0A%3CHR%3E","%3CHR%3E");output=output.replace("%3CHR%3E%0D%0A%3C/P%3E","%3CHR%3E");oRTE.body.innerHTML=unescape(output);}else{var htmlSrc=oRTE.body.ownerDocument.createRange();htmlSrc.selectNodeContents(oRTE.body);oRTE.body.innerHTML=htmlSrc.toString();}}}
function FormatText(rte,command,option){var oRTE;if(document.all){oRTE=frames[rte];var selection=oRTE.document.selection;if(selection!=null){rng=selection.createRange();}}else{oRTE=document.getElementById(rte).contentWindow;var selection=oRTE.getSelection();rng=selection.getRangeAt(selection.rangeCount-1).cloneRange();}
try{if((command=="forecolor")||(command=="hilitecolor")){parent.command=command;currentRTE=rte;buttonElement=document.getElementById(command+'_'+rte);document.getElementById('cp'+rte).style.left=getOffsetLeft(buttonElement)+"px";document.getElementById('cp'+rte).style.top=(getOffsetTop(buttonElement)+buttonElement.offsetHeight)+"px";if(document.getElementById('cp'+rte).style.visibility=="hidden"){document.getElementById('cp'+rte).style.visibility="visible";document.getElementById('cp'+rte).style.display="inline";}else{document.getElementById('cp'+rte).style.visibility="hidden";document.getElementById('cp'+rte).style.display="none";}}else if(command=="createlink"){var szURL=prompt("Enter a URL:","");try{oRTE.document.execCommand("Unlink",false,null);oRTE.document.execCommand("CreateLink",false,szURL);}catch(e){}}else{oRTE.focus();oRTE.document.execCommand(command,false,option);oRTE.focus();}}catch(e){alert(e);}}
function setColor(color){var rte=currentRTE;var oRTE;if(document.all){oRTE=frames[rte];}else{oRTE=document.getElementById(rte).contentWindow;}
var parentCommand=parent.command;if(document.all){var sel=oRTE.document.selection;if(parentCommand=="hilitecolor")parentCommand="backcolor";if(sel!=null){var newRng=sel.createRange();newRng=rng;newRng.select();}}
oRTE.focus();oRTE.document.execCommand(parentCommand,false,color);oRTE.focus();document.getElementById('cp'+rte).style.visibility="hidden";document.getElementById('cp'+rte).style.display="none";}
function AddImage(rte){var oRTE;if(document.all){oRTE=frames[rte];var selection=oRTE.document.selection;if(selection!=null){rng=selection.createRange();}}else{oRTE=document.getElementById(rte).contentWindow;var selection=oRTE.getSelection();rng=selection.getRangeAt(selection.rangeCount-1).cloneRange();}
imagePath=prompt('Enter Image URL:','http://');if((imagePath!=null)&&(imagePath!="")){oRTE.focus();oRTE.document.execCommand('InsertImage',false,imagePath);oRTE.focus();}}
function checkspell(){try{var tmpis=new ActiveXObject("ieSpell.ieSpellExtension");tmpis.CheckAllLinkedDocuments(document);}
catch(exception){if(exception.number==-2146827859){if(confirm("ieSpell not detected.  Click Ok to go to download page."))
window.open("http://www.iespell.com/download.php","DownLoad");}else{alert("Error Loading ieSpell: Exception "+exception.number);}}}
function getOffsetTop(elm){var mOffsetTop=elm.offsetTop;var mOffsetParent=elm.offsetParent;while(mOffsetParent){mOffsetTop+=mOffsetParent.offsetTop;mOffsetParent=mOffsetParent.offsetParent;}
return mOffsetTop;}
function getOffsetLeft(elm){var mOffsetLeft=elm.offsetLeft;var mOffsetParent=elm.offsetParent;while(mOffsetParent){mOffsetLeft+=mOffsetParent.offsetLeft;mOffsetParent=mOffsetParent.offsetParent;}
return mOffsetLeft;}
function Select(rte,selectname){var oRTE;if(document.all){oRTE=frames[rte];var selection=oRTE.document.selection;if(selection!=null){rng=selection.createRange();}}else{oRTE=document.getElementById(rte).contentWindow;var selection=oRTE.getSelection();rng=selection.getRangeAt(selection.rangeCount-1).cloneRange();}
var idx=document.getElementById(selectname).selectedIndex;if(idx!=0){var selected=document.getElementById(selectname).options[idx].value;var cmd=selectname.replace('_'+rte,'');oRTE.focus();oRTE.document.execCommand(cmd,false,selected);oRTE.focus();document.getElementById(selectname).selectedIndex=0;}}
function kb_handler(evt){var rte=evt.target.id;if(evt.ctrlKey){var key=String.fromCharCode(evt.charCode).toLowerCase();var cmd='';switch(key){case'b':cmd="bold";break;case'i':cmd="italic";break;case'u':cmd="underline";break;};if(cmd){FormatText(rte,cmd,true);evt.preventDefault();evt.stopPropagation();}}}
function docChanged(evt){alert('changed');}
function stripHTML(oldString){var newString=oldString.replace(/(<([^>]+)>)/ig,"");newString=newString.replace(/\r\n/g," ");newString=newString.replace(/\n/g," ");newString=newString.replace(/\r/g," ");newString=trim(newString);return newString;}
function trim(inputString){if(typeof inputString!="string")return inputString;var retValue=inputString;var ch=retValue.substring(0,1);while(ch==" "){retValue=retValue.substring(1,retValue.length);ch=retValue.substring(0,1);}
ch=retValue.substring(retValue.length-1,retValue.length);while(ch==" "){retValue=retValue.substring(0,retValue.length-1);ch=retValue.substring(retValue.length-1,retValue.length);}
while(retValue.indexOf("  ")!=-1){retValue=retValue.substring(0,retValue.indexOf("  "))+retValue.substring(retValue.indexOf("  ")+1,retValue.length);}
return retValue;}