
var ie_ptags_to_newlines=true;var IPS_editor=new Array();var buttons_update=new Array("bold","italic","underline","justifyleft","justifycenter","justifyright","insertorderedlist","insertunorderedlist");var ips_primary_colors=new Array('#000000','#A0522D','#556B2F','#006400','#483D8B','#000080','#4B0082','#2F4F4F','#8B0000','#FF8C00','#808000','#008000','#008080','#0000FF','#708090','#696969','#FF0000','#F4A460','#9ACD32','#2E8B57','#48D1CC','#4169E1','#800080','#808080','#FF00FF','#FFA500','#FFFF00','#00FF00','#00FFFF','#00BFFF','#9932CC','#C0C0C0','#FFC0CB','#F5DEB3','#FFFACD','#98FB98','#AFEEEE','#ADD8E6','#DDA0DD','#FFFFFF');var ips_primary_fonts=new Array("Arial","Arial Black","Arial Narrow","Book Antiqua","Century Gothic","Comic Sans MS","Courier New","Franklin Gothic Medium","Garamond","Georgia","Impact","Lucida Console","Lucida Sans Unicode","Microsoft Sans Serif","Palatino Linotype","Tahoma","Times New Roman","Trebuchet MS","Verdana");var ips_primary_sizes=new Array(1,2,3,4,5,6,7);var ips_format_items={'cmd_subscript':'Sub-script','cmd_superscript':'Super-script','cmd_strikethrough':'Strikethrough'};var ips_format_item_images={'cmd_subscript':'rte-subscript.gif','cmd_superscript':'rte-superscript.gif','cmd_strikethrough':'rte-strike.gif'};ips_language_array={};function ips_text_editor(editor_id,mode,use_bbcode,file_path,initial_text)
{this.editor_id=editor_id;this.is_rte=mode;this.initialized=false;this.buttons=new Array();this.fonts=new Array();this.state=new Array();this.text_obj=document.getElementById(this.editor_id+'_textarea');this.control_obj=document.getElementById(this.editor_id+'_controls');this.font_obj=document.getElementById(this.editor_id+'_out_fontname');this.size_obj=document.getElementById(this.editor_id+'_out_fontsize');this.special_obj=document.getElementById(this.editor_id+'_out_special');this.format_obj=document.getElementById(this.editor_id+'_out_format');this.mainbar=document.getElementById(this.editor_id+'_main-bar');this.use_menus=(typeof(ipsmenu)=='undefined'?false:true);this.is_ie=is_ie;this.is_moz=is_moz;this.is_opera=is_opera;this.is_safari=is_safari;this.file_path=file_path?file_path:global_rte_includes_url;this.font_state=null;this.size_state=null;this.use_bbcode=use_bbcode;this.open_brace=this.use_bbcode?'[':'<';this.close_brace=this.use_bbcode?']':'>';this.allow_advanced=this.use_bbcode?0:1;this.ips_frame_html='';this.popups=new Array();this.char_set=global_rte_char_set?global_rte_char_set:'UTF-8';this.forum_fix_ie_newlines=0;this.emoticon_window_id='';this.is_loading=0;this.hidden_objects=new Array();this.history_pointer=-1;this.history_recordings=new Array();this._showing_html=0;this._ie_cache=null;this.current_bar_object=null;this.ips_special_items={};ips_format_items['cmd_subscript']=ips_language_array['js_rte_sub']?ips_language_array['js_rte_sub']:'Sub-script';ips_format_items['cmd_superscript']=ips_language_array['js_rte_sup']?ips_language_array['js_rte_sup']:'Super-script';ips_format_items['cmd_strikethrough']=ips_language_array['js_rte_strike']?ips_language_array['js_rte_strike']:'Strikethrough';ips_language_array['emos_show_all']=ips_language_array['emos_show_all']?ips_language_array['emos_show_all']:'Show All';this.init=function()
{if(this.initialized)
{return;}
this.control_obj.style.display='';try
{document.getElementById(this.editor_id+'_wysiwyg_used').value=parseInt(this.is_rte);}
catch(err){}
this.ips_frame_html=this.get_frame_html();this.editor_set_content(initial_text);this.editor_set_functions();this.editor_set_controls();this.initialized=true;};this.get_frame_html=function()
{var ips_frame_html="";ips_frame_html+="<html id=\""+this.editor_id+"_html\">\n";ips_frame_html+="<head>\n";ips_frame_html+="<meta http-equiv=\"content-type\" content=\"text/html; charset="+this.char_set+"\" />";ips_frame_html+="<style type='text/css' media='all'>\n";ips_frame_html+="body {\n";ips_frame_html+=" background: #FFFFFF;\n";ips_frame_html+=" margin: 0px;\n";ips_frame_html+=" padding: 4px;\n";ips_frame_html+=" font-family: Verdana, arial, sans-serif;\n";ips_frame_html+=" font-size: 10pt;\n";ips_frame_html+="}\n";ips_frame_html+="</style>\n";ips_frame_html+="</head>\n";ips_frame_html+="<body>\n";ips_frame_html+="{:content:}\n";ips_frame_html+="</body>\n";ips_frame_html+="</html>";return ips_frame_html;};this.editor_check_focus=function()
{if(!this.editor_window.has_focus)
{if(this.is_opera)
{this.editor_window.focus();}
this.editor_window.focus();}};this.editor_set_controls=function()
{var controls=new Array();var _c=0;if(!this.control_obj)
{return;}
var items=this.control_obj.getElementsByTagName("DIV");for(var i=0;i<items.length;i++)
{if((items[i].className=='rte-normal'||items[i].className=='rte-menu-button'||items[i].className=='rte-normal-menubutton')&&items[i].id)
{controls[controls.length]=items[i].id;}}
for(var i=0;i<controls.length;i++)
{var control=document.getElementById(controls[i]);if(control.className=='rte-normal')
{this.init_editor_button(control);}
else if(control.className=='rte-menu-button'||control.className=='rte-normal-menubutton')
{this.init_editor_popup_button(control);}}
ipsclass.set_unselectable(this.control_obj);};this.init_editor_popup_button=function(obj)
{if(!this.use_menus)
{return;}
ipsmenu.register(obj.id);obj.cmd=obj.id.replace(new RegExp('^'+this.editor_id+'_popup_(.+?)$'),'$1');obj.editor_id=this.editor_id;obj.state=false;this.buttons[obj.cmd]=obj;if(obj.cmd=='fontname')
{this.fontout=this.font_obj;this.fontout.innerHTML=obj.title;this.fontoptions={'':this.fontout};for(var option in ips_primary_fonts)
{var div=document.createElement('div');div.id=this.editor_id+'_fontoption_'+ips_primary_fonts[option];div.style.width=this.fontout.style.width;div.style.display='none';div.innerHTML=ips_primary_fonts[option];this.fontoptions[ips_primary_fonts[option]]=this.fontout.parentNode.appendChild(div);}}
else if(obj.cmd=='fontsize')
{this.sizeout=this.size_obj;this.sizeout.innerHTML=obj.title;this.sizeoptions={'':this.sizeout};for(var option in ips_primary_sizes)
{var div=document.createElement('div');div.id=this.editor_id+'_sizeoption_'+ips_primary_sizes[option];div.style.width=this.sizeout.style.width;div.style.display='none';div.innerHTML=ips_primary_sizes[option];this.sizeoptions[ips_primary_sizes[option]]=this.sizeout.parentNode.appendChild(div);}}
obj._onmouseover=obj.onmouseover;obj._onclick=obj.onclick;obj.onmouseover=obj.onmouseout=obj.onclick=ips_editor_events.prototype.popup_button_onmouseevent;ipsmenu.menu_registered[obj.id]._open=ipsmenu.menu_registered[obj.id].open;ipsmenu.menu_registered[obj.id].open=ips_editor_events.prototype.popup_button_show;};this.init_editor_menu=function(obj)
{var menu=document.createElement('div');menu.id=this.editor_id+'_popup_'+obj.cmd+'_menu';menu.className='rte-popupmenu';menu.style.display='none';menu.style.cursor='default';menu.style.padding='3px';menu.style.width='auto';menu.style.height='auto';menu.style.overflow='hidden';switch(obj.cmd)
{case'fontsize':for(var i in ips_primary_sizes)
{if(typeof(ips_primary_sizes[i])=='function')
{continue;}
var option=document.createElement('div');option.style.paddingTop=ips_primary_sizes[i]*2+'px';option.style.paddingBottom=ips_primary_sizes[i]*2+'px';option.innerHTML='<font size="'+ips_primary_sizes[i]+'">'+ips_primary_sizes[i]+'</font>';option.className='rte-menu-size';option.title=ips_primary_sizes[i];option.cmd=obj.cmd;option.editor_id=this.editor_id;option.onmouseover=option.onmouseout=option.onmouseup=option.onmousedown=ips_editor_events.prototype.menu_option_onmouseevent;option.onclick=ips_editor_events.prototype.font_format_option_onclick;menu.style.width=this.size_obj.style.width;menu.appendChild(option);}
break;case'fontname':for(var i in ips_primary_fonts)
{if(typeof(ips_primary_fonts[i])=='function')
{continue;}
var option=document.createElement('div');option.innerHTML='<font face="'+ips_primary_fonts[i]+'">'+ips_primary_fonts[i]+'</font>';option.className='rte-menu-face';option.title=ips_primary_fonts[i];option.cmd=obj.cmd;option.editor_id=this.editor_id;option.onmouseover=option.onmouseout=option.onmouseup=option.onmousedown=ips_editor_events.prototype.menu_option_onmouseevent;option.onclick=ips_editor_events.prototype.font_format_option_onclick;menu.style.width=this.font_obj.style.width;menu.appendChild(option);}
break;case'special':for(var i in this.ips_special_items)
{if(typeof(this.ips_special_items[i])=='function')
{continue;}
var option=document.createElement('div');var img=(typeof this.ips_special_items[i][1]!='undefined')?'<img src="'+global_rte_images_url+'/'+this.ips_special_items[i][1]+'" style="vertical-align:middle" border="" /> ':'';option.innerHTML=img+this.ips_special_items[i][0];option.className='rte-menu-face';option.cmd='module_load',option.loader_key=i.replace('cmd_loader_','');option.editor_id=this.editor_id;option.onmouseover=option.onclick=option.onmouseout=option.onmouseup=option.onmousedown=ips_editor_events.prototype.special_onmouse_event;menu.style.width=this.special_obj.style.width;menu.appendChild(option);}
break;case'format':for(var i in ips_format_items)
{if(typeof(ips_format_items[i])=='function')
{continue;}
var option=document.createElement('div');var img=(typeof ips_format_item_images[i]!='undefined')?'<img src="'+global_rte_images_url+'/'+ips_format_item_images[i]+'" style="vertical-align:middle" border="" /> ':'';option.innerHTML=img+ips_format_items[i];option.className='rte-menu-face';option.cmd=i.replace('cmd_','');option.editor_id=this.editor_id;option.onmouseover=option.onclick=option.onmouseout=option.onmouseup=option.onmousedown=ips_editor_events.prototype.special_onmouse_event;menu.style.width='130px';menu.appendChild(option);}
break;case'emoticons':var table=document.createElement('table');table.cellPadding=0;table.cellSpacing=0;table.border=0;if(this.is_ie)
{table.style.paddingRight='15px';}
var i=0;var perrow=3;var tr=table.insertRow(-1);var td=tr.insertCell(-1);td.colSpan=perrow;td.align='center';td.cellPadding=0;td.innerHTML='<div class="rte-menu-emo-header"><a href="#" style="text-decoration:none" onclick="return show_all_emoticons(\''+this.editor_id+'\')">'+ips_language_array['emos_show_all']+'</a></div>';for(var emo in ips_smilie_items)
{if(i%perrow==0)
{var tr=table.insertRow(-1);}
i++;var div=document.createElement('div');var _tmp=ips_smilie_items[emo].split(",");var img='<img src="'+global_rte_emoticons_url+'/'+_tmp[1]+'" style="vertical-align:middle" border="0" id="smid_'+_tmp[0]+'" /> ';div.innerHTML=img;var option=tr.insertCell(-1);option.className='rte-menu-emo';option.appendChild(div);option.cmd=obj.cmd;option.editor_id=this.editor_id;option.id=this.editor_id+'_emoticon_'+_tmp[0];option.emo_id=_tmp[0];option.emo_image=_tmp[1];option.emo_code=emo;option.onmouseover=option.onmouseout=option.onmouseup=option.onmousedown=ips_editor_events.prototype.menu_option_onmouseevent;option.onclick=ips_editor_events.prototype.emoticon_onclick;}
if(i>0)
{menu.style.width='auto';if(this.is_ie)
{menu.style.paddingRight='15px';}
menu.style.height='200px';menu.style.overflow='auto';menu.style.overflowX='hidden';menu.appendChild(table);break;}
else
{menu.style.width='auto';menu.style.height='40px';menu.style.overflow='auto';menu.appendChild(table);break;}
case'forecolor':case'backcolor':var table=document.createElement('table');table.cellPadding=0;table.cellSpacing=0;table.border=0;var i=0;for(var hex in ips_primary_colors)
{if(typeof(ips_primary_colors[hex])=='function')
{continue;}
if(i%8==0)
{var tr=table.insertRow(-1);}
i++;var div=document.createElement('div');div.style.backgroundColor=ips_primary_colors[hex];div.innerHTML='&nbsp;';var option=tr.insertCell(-1);option.className='rte-menu-color';option.appendChild(div);option.cmd=obj.cmd;option.editor_id=this.editor_id;option.colorname=ips_primary_colors[hex];option.id=this.editor_id+'_color_'+ips_primary_colors[hex];option.onmouseover=option.onmouseout=option.onmouseup=option.onmousedown=ips_editor_events.prototype.menu_option_onmouseevent;option.onclick=ips_editor_events.prototype.color_cell_onclick;}
menu.style.overflow='visible';menu.appendChild(table);break;}
this.popups[obj.cmd]=this.control_obj.appendChild(menu);ipsclass.set_unselectable(menu);};this.init_editor_button=function(obj)
{obj.cmd=obj.id.replace(new RegExp('^'+this.editor_id+'_cmd_(.+?)$'),'$1');obj.editor_id=this.editor_id;this.buttons[obj.cmd]=obj;obj.state=false;obj.mode='normal';obj.real_type='button';obj.onclick=ips_editor_events.prototype.button_onmouse_event;obj.onmousedown=ips_editor_events.prototype.button_onmouse_event;obj.onmouseover=ips_editor_events.prototype.button_onmouse_event;obj.onmouseout=ips_editor_events.prototype.button_onmouse_event;};this.set_menu_context=function(obj,state)
{if(this._showing_html)
{return false;}
switch(obj.state)
{case true:{this.editor_set_ctl_style(obj,'menubutton','down');break;}
default:{switch(state)
{case'mouseout':{this.editor_set_ctl_style(obj,'menubutton','normal');break;}
case'mousedown':{this.editor_set_ctl_style(obj,'menubutton','down');break;}
case'mouseup':case'mouseover':{this.editor_set_ctl_style(obj,'menubutton','hover');break;}}}}};this.set_button_context=function(obj,state,type)
{if(this._showing_html)
{return false;}
if(typeof type=='undefined')
{type='button';}
if(state=='mousedown'&&(obj.cmd=='undo'||obj.cmd=='redo'))
{return false;}
switch(obj.state)
{case true:{switch(state)
{case'mouseout':{this.editor_set_ctl_style(obj,'button','selected');break;}
case'mouseover':case'mousedown':case'mouseup':{this.editor_set_ctl_style(obj,type,'down');break;}}
break;}
default:{switch(state)
{case'mouseout':{this.editor_set_ctl_style(obj,type,'normal');break;}
case'mousedown':{this.editor_set_ctl_style(obj,type,'down');break;}
case'mouseover':case'mouseup':{this.editor_set_ctl_style(obj,type,'hover');break;}}
break;}}};this.editor_set_ctl_style=function(obj,type,mode)
{if(obj.mode!=mode)
{var extra='';if(type=='menu')
{extra='-menu';}
else if(type=='menubutton')
{extra='-menubutton';}
extra+=obj.colorname?'-color':'';extra+=obj.emo_id?'-emo':'';obj.mode=mode;try
{switch(mode)
{case"normal":{obj.className='rte-normal'+extra;}
break;case"hover":{obj.className='rte-hover'+extra;}
break;case"selected":case"down":{obj.className='rte-selected'+extra;}
break;}}
catch(e)
{}}};this.format_text=function(e,command,arg)
{e=ipsclass.cancel_bubble(e,true);if(command.match(/resize_/))
{this.resize_editorbox(command.replace(/resize_(up|down)/,"$1"));}
if(command.match(/switcheditor/i))
{switch_editor_mode(this.editor_id);}
if(!this.is_rte)
{if(command!='redo')
{this.history_record_state(this.editor_get_contents());}}
this.editor_check_focus();if(this[command])
{var return_val=this[command](e);}
else
{try
{var return_val=this.apply_formatting(command,false,(typeof arg=='undefined'?true:arg));}
catch(e)
{var return_val=false;}}
if(!this.is_rte)
{if(command!='undo')
{this.history_record_state(this.editor_get_contents());}}
this.set_context(command);this.editor_check_focus();return return_val;};this.spellcheck=function()
{if(this.is_moz||this.is_opera)
{return false;}
try
{if(this.rte_mode)
{var tmpis=new ActiveXObject("ieSpell.ieSpellExtension").CheckDocumentNode(this.editor_document);}
else
{var tmpis=new ActiveXObject("ieSpell.ieSpellExtension").CheckAllLinkedDocuments(this.editor_document);}}
catch(exception)
{if(exception.number==-2146827859)
{if(confirm(ips_language_array['js_rte_erroriespell']?ips_language_array['js_rte_erroriespell']:"ieSpell not detected.  Click Ok to go to download page."))
{window.open("http://www.iespell.com/download.php","DownLoad");}}
else
{alert(ips_language_array['js_rte_errorliespell']?ips_language_array['js_rte_errorliespell']:"Error Loading ieSpell: Exception "+exception.number);}}};this.module_remove_item=function(key)
{var tmp=this.ips_special_items;this.ips_special_items=new Array();for(var i in tmp)
{if(i!='cmd_loader_'+key)
{this.ips_special_items[i]=tmp[i];}}};this.module_add_item=function(key,text,image,evalcode)
{this.ips_special_items['cmd_loader_'+key]=new Array(text,image,evalcode);};this.module_load=function(obj,e,loader_key)
{if(!loader_key)
{return false;}
e=ipsclass.cancel_bubble(e,true);this.editor_check_focus();this.preserve_ie_range();menu_action_close();var _m=loader_key.match(/\{(.+?)\}$/);var _args='';try
{if(_m[1])
{_args=_m[1];}}
catch(internetexplorer)
{}
if(typeof this.ips_special_items['cmd_loader_'+loader_key][2]!="undefined")
{eval(this.ips_special_items['cmd_loader_'+loader_key][2]);return false}
else
{this.module_show_control_bar(loader_key,_args);}};this.module_show_control_bar=function(type,_args)
{if(!this.control_obj)
{return;}
type=type.replace(/(\{.+?\})$/,'');_args=(typeof(_args)!='undefined')?_args:'';if(this.current_bar_object)
{this.module_remove_control_bar();}
var newdiv=document.createElement('div');newdiv.id=this.editor_id+'_htmlblock_'+type+'_menu';newdiv.style.display='';newdiv.className='rte-buttonbar';newdiv.style.zIndex=parseInt(this.control_obj.style.zIndex)+1;newdiv.style.position='absolute';newdiv.style.width='320px';newdiv.style.height='400px';newdiv.style.top=ipsclass.get_obj_toppos(this.mainbar)+'px';var _left=ipsclass.get_obj_leftpos(this.mainbar)-(parseInt(newdiv.style.width)+10);if(_left<1)
{_left=ipsclass.get_obj_leftpos(this.mainbar);}
newdiv.style.left=ipsclass.get_obj_leftpos(this.mainbar)-(parseInt(newdiv.style.width)+10)+'px';newdiv.style.left=_left+'px';var tmpheight=parseInt(newdiv.style.height)-16;newdiv.innerHTML=this.module_wrap_html_panel("<iframe id='"+this.editor_id+'_iframeblock_'+type+'_menu'+"' src='"+global_rte_includes_url+"module_"+type+".php?editorid="+this.editor_id+"&"+_args+"' frameborder='0' style='text-align:left;background:transparent;border:0px;overflow:auto;width:98%;height:"+tmpheight+"px'></iframe>");this.mainbar.appendChild(newdiv);if(is_ie)
{document.getElementById(this.editor_id+'_iframeblock_'+type+'_menu').style.backgroundColor='transparent';document.getElementById(this.editor_id+'_iframeblock_'+type+'_menu').allowTransparency=true;}
ipsclass.set_unselectable(newdiv);Drag.init(document.getElementById(this.editor_id+'_pallete-handle'),newdiv);this.current_bar_object=newdiv;};this.module_remove_control_bar=function()
{if(!this.current_bar_object)
{return;}
this.mainbar.removeChild(this.current_bar_object);this.current_bar_object=null;};this.module_wrap_html_panel=function(html)
{var newhtml="";newhtml+=" <div id='"+this.editor_id+"_pallete-wrap'>";newhtml+="   <div id='"+this.editor_id+"_pallete-main'>";newhtml+="    <div class='rte-cb-bg' id='"+this.editor_id+"_pallete-handle'>";newhtml+="   <div align='left'><img id='"+this.editor_id+"_cb-close-window' src='"+global_rte_images_url+"rte-cb-close.gif' alt='' class='ipd' border='0' /></div>";newhtml+="    </div>";newhtml+="    <div>"+html+"</div>";newhtml+="  </div>";newhtml+=" </div>";return newhtml;};this.resize_editorbox=function(direction)
{var inc_value=100;var current_height=parseInt(this.editor_box.style.height);var new_height=0;current_height=current_height?current_height:300;if(current_height>=50)
{if(direction=='up')
{new_height=current_height-inc_value;}
else
{new_height=current_height+inc_value;}
if(new_height>249)
{this.editor_box.style.height=new_height+'px';ipsclass.my_setcookie('ips_rte_height',new_height,1);}}};this.htmlspecialchars=function(html)
{html=html.replace(/&/g,"&amp;");html=html.replace(/"/g,"&quot;");html=html.replace(/</g,"&lt;");html=html.replace(/>/g,"&gt;");return html;};this.unhtmlspecialchars=function(html)
{html=html.replace(/&quot;/g,'"');html=html.replace(/&lt;/g,'<');html=html.replace(/&gt;/g,'>');html=html.replace(/&amp;/g,'&');return html;};this.strip_html=function(html)
{html=html.replace(/<\/?([^>]+?)>/ig,"");return html;};this.strip_empty_html=function(html)
{html=html.replace('<([^>]+?)></([^>]+?)>',"");return html;};this.clean_html=function(t)
{if(t==""||typeof t=='undefined')
{return t;}
t=t.replace(/<br>/ig,"<br />");t=t.replace(/<p>(\s+?)?<\/p>/ig,"");t=t.replace(/<p><hr \/><\/p>/ig,"<hr />");t=t.replace(/<p>&nbsp;<\/p><hr \/><p>&nbsp;<\/p>/ig,"<hr />");t=t.replace(/<(p|div)([^&]*)>/ig,"\n<$1$2>\n");t=t.replace(/<\/(p|div)([^&]*)>/ig,"\n</$1$2>\n");t=t.replace(/<br \/>(?!<\/td)/ig,"<br />\n");t=t.replace(/<\/(td|tr|tbody|table)>/ig,"</$1>\n");t=t.replace(/<(tr|tbody|table(.+?)?)>/ig,"<$1>\n");t=t.replace(/<(td(.+?)?)>/ig,"\t<$1>");t=t.replace(/<p>&nbsp;<\/p>/ig,"<br />");t=t.replace(/<br \/>/ig,"<br />\n");t=t.replace(/<br>/ig,"<br />\n");t=t.replace(/<td><br \/>\n<\/td>/ig,"<td><br /></td>");t=t.replace(/<script/g,"&lt;script");t=t.replace(/<\/script>/g,"&lt;/script&gt;");return t;};this.preserve_ie_range=function()
{if(this.is_ie)
{this._ie_cache=this.is_rte?this.editor_document.selection.createRange():document.selection.createRange();}};this.wrap_tags_lite=function(start_text,close_text)
{selected_text=this.get_selection();selected_text=(selected_text===false)?'':new String(selected_text);this.insert_text(start_text+selected_text+close_text);return false;};this.destruct=function()
{for(var i in this.buttons)
{var _type=(this.buttons[i].real_type=='button')?'button':'menubutton';this.editor_set_ctl_style(this.buttons[i],_type,'normal');}
if(this.fontoptions)
{for(var i in this.fontoptions)
{if(i!='')
{this.fontoptions[i].parentNode.removeChild(this.fontoptions[i]);}}
this.fontoptions[''].style.display='';}
if(this.sizeoptions)
{for(var i in this.sizeoptions)
{if(i!='')
{this.sizeoptions[i].parentNode.removeChild(this.sizeoptions[i]);}}
this.sizeoptions[''].style.display='';}
for(var i in this.hidden_objects)
{try
{document.getElementById(i).style.display='';}
catch(me)
{}}};this.wrap_tags=function(tag_name,has_option,selected_text)
{var tag_close=tag_name;if(!this.use_bbcode)
{switch(tag_name)
{case'url':tag_name='a href';tag_close='a';break;case'email':tag_name='a href';tag_close='a';has_option='mailto:'+has_option;break;case'img':tag_name='img src';tag_close='';break;case'font':tag_name='font face';tag_close='font';break;case'size':tag_name='font size';tag_close='font';break;case'color':tag_name='font color';tag_close='font';break;case'background':tag_name='font bgcolor';tag_close='font';break;case'indent':tag_name=tag_close='blockquote';break;case'left':case'right':case'center':has_option=tag_name;tag_name='div align';tag_close='div';break;}}
if(typeof selected_text=='undefined')
{selected_text=this.get_selection();selected_text=(selected_text===false)?'':new String(selected_text);}
if(has_option===true)
{var option=prompt(ips_language_arrayp['js_rte_optionals']?ips_language_arrayp['js_rte_optionals']:"Enter the optional arguments for this tag",'');if(option)
{var opentag=this.open_brace+tag_name+'="'+option+'"'+this.close_brace;}
else
{return false;}}
else if(has_option!==false)
{var opentag=this.open_brace+tag_name+'="'+has_option+'"'+this.close_brace;}
else
{var opentag=this.open_brace+tag_name+this.close_brace;}
var closetag=this.open_brace+'/'+tag_close+this.close_brace;var text=opentag+selected_text+closetag;this.insert_text(text);return false;};this.history_record_state=function(content)
{if(this.history_recordings[this.history_pointer]!=content)
{this.history_pointer++;this.history_recordings[this.history_pointer]=content;if(typeof this.history_recordings[this.history_pointer+1]!='undefined')
{this.history_recordings[this.history_pointer+1]=null;}}};this.history_time_shift=function(inc)
{var i=this.history_pointer+inc;if(i>=0&&this.history_recordings[i]!=null&&typeof this.history_recordings[i]!='undefined')
{this.history_pointer+=inc;}};this.history_fetch_recording=function()
{if(typeof this.history_recordings[this.history_pointer]!='undefined'&&this.history_recordings[this.history_pointer]!=null)
{return this.history_recordings[this.history_pointer];}
else
{return false;}};if(this.is_rte)
{this.editor_write_contents=function(text,do_init)
{if(text==''&&this.is_moz)
{text='<br />';}
if(this.editor_document&&this.editor_document.initialized)
{this.editor_document.body.innerHTML=text;}
else
{if(do_init)
{this.editor_document.designMode='on';}
this.editor_document=this.editor_window.document;this.editor_document.open('text/html','replace');this.editor_document.write(this.ips_frame_html.replace('{:content:}',text));this.editor_document.close();if(do_init)
{this.editor_document.body.contentEditable=true;this.editor_document.initialized=true;}}};this.editor_set_content=function(init_text)
{var iframe_obj=null;try
{iframe_obj=document.getElementById(this.editor_id+'_iframe');}
catch(error)
{}
if(iframe_obj)
{this.editor_box=iframe_obj;}
else
{var iframe=document.createElement('iframe');if(this.is_ie&&window.location.protocol=='https:')
{iframe.src=this.file_path+'/index.html';}
this.editor_box=this.text_obj.parentNode.appendChild(iframe);this.editor_box.id=this.editor_id+'_iframe';this.editor_box.tabIndex=3;}
if(!this.is_ie)
{this.editor_box.style.border='2px inset';}
var test_height=parseInt(ipsclass.my_getcookie('ips_rte_height'));if(!isNaN(test_height)&&test_height>50)
{this.text_obj.style.height=test_height+'px';}
this.editor_box.style.width=this.text_obj.style.width;this.editor_box.style.height=this.text_obj.style.height;this.editor_box.className=this.text_obj.className;this.text_obj.style.display='none';this.editor_window=this.editor_box.contentWindow;this.editor_document=this.editor_window.document;this.editor_write_contents((typeof init_text=='undefined'||!init_text?this.text_obj.value:init_text),true);this.editor_document.editor_id=this.editor_id;this.editor_window.editor_id=this.editor_id;this.editor_window.has_focus=false;document.getElementById(this.editor_id+'_cmd_justifyfull').style.display='none';};this.editor_set_functions=function()
{this.editor_document.onmouseup=ips_editor_events.prototype.editor_document_onmouseup;this.editor_document.onkeyup=ips_editor_events.prototype.editor_document_onkeyup;this.editor_document.onkeydown=function()
{if(IPS_editor[this.editor_id].forum_fix_ie_newlines&&IPS_editor[this.editor_id].is_ie&&IPS_editor[this.editor_id].editor_window.event.keyCode==13)
{var _test=new Array('Indent','Outdent','JustifyLeft','JustifyCenter','JustifyRight','InsertOrderedList','InsertUnorderedList');for(var i in _test)
{if(IPS_editor[this.editor_id].editor_window.document.queryCommandState(_test[i]))
{return true;}}
var sel=IPS_editor[this.editor_id].editor_document.selection;var ts=IPS_editor[this.editor_id].editor_document.selection.createRange();var t=ts.htmlText.replace(/<p([^>]*)>(.*)<\/p>/i,'$2');if((sel.type=="Text"||sel.type=="None"))
{ts.pasteHTML("<br />"+t+"\n");}
else
{IPS_editor[this.editor_id].editor_document.innerHTML+="<br />\n";}
IPS_editor[this.editor_id].editor_window.event.returnValue=false;ts.select();IPS_editor[this.editor_id].editor_check_focus();}};this.editor_window.onblur=ips_editor_events.prototype.editor_window_onblur;this.editor_window.onfocus=ips_editor_events.prototype.editor_window_onfocus;};this.set_context=function(cmd)
{if(this._showing_html)
{return false;}
for(var i in buttons_update)
{var obj=document.getElementById(this.editor_id+'_cmd_'+buttons_update[i]);if(obj!=null)
{try
{var state=this.editor_document.queryCommandState(buttons_update[i]);if(obj.state!=state)
{obj.state=state;this.set_button_context(obj,(obj.cmd==cmd?'mouseover':'mouseout'));}}
catch(error)
{}}}
this.button_set_font_context();this.button_set_size_context();};this.button_set_font_context=function(font_state)
{if(this._showing_html)
{return false;}
if(this.buttons['fontname'])
{if(typeof font_state=='undefined')
{font_state=this.editor_document.queryCommandValue('fontname');}
switch(font_state)
{case'':{if(!this.is_ie&&window.getComputedStyle)
{font_state=this.editor_document.body.style.fontFamily;}}
break;case null:{font_state='';}
break;}
if(font_state!=this.font_state)
{this.font_state=font_state;var fontword=font_state;var commapos=fontword.indexOf(",");if(commapos!=-1)
{fontword=fontword.substr(0,commapos);}
fontword=fontword.toLowerCase();for(var i in this.fontoptions)
{this.fontoptions[i].style.display=(i.toLowerCase()==fontword?'':'none');}}}};this.button_set_size_context=function(size_state)
{if(this.buttons['fontsize'])
{if(typeof size_state=='undefined')
{size_state=this.editor_document.queryCommandValue('fontsize');}
switch(size_state)
{case null:case'':{if(this.is_moz)
{size_state=this.moz_convert_fontsize(this.editor_document.body.style.fontSize);if(!size_state)
{size_state='2';}}}
break;}
if(size_state!=this.size_state)
{this.size_state=size_state;for(var i in this.sizeoptions)
{this.sizeoptions[i].style.display=(i==this.size_state?'':'none');}}}};this.apply_formatting=function(cmd,dialog,argument)
{dialog=(typeof dialog=='undefined'?false:dialog);argument=(typeof argument=='undefined'?true:argument);if(this.is_ie&&this.forum_fix_ie_newlines)
{if(cmd=='justifyleft'||cmd=='justifycenter'||cmd=='justifyright')
{var _a=cmd.replace("justify","");this.wrap_tags_lite("["+_a+"]","[/"+_a+"]");return true;}
else if(cmd=='outdent'||cmd=='indent'||cmd=='insertorderedlist'||cmd=='insertunorderedlist')
{this.editor_check_focus();var sel=this.editor_document.selection;var ts=this.editor_document.selection.createRange();var t=ts.htmlText.replace(/<p([^>]*)>(.*)<\/p>/i,'$2');if((sel.type=="Text"||sel.type=="None"))
{ts.pasteHTML(t+"<p />\n");}
else
{this.editor_document.body.innerHTML+="<p />";}}}
this.editor_document.execCommand(cmd,dialog,argument);return false;};this.removeformat=function(e)
{this.apply_formatting('unlink',false,false);this.apply_formatting('removeformat',false,false);var text=this.get_selection();if(text)
{text=this.strip_html(text);text=this.strip_empty_html(text);text=text.replace(/\r/g,"");text=text.replace(/\n/g,"<br />");text=text.replace(/<!--(.*?)-->/g,"");text=text.replace(/&lt;!--(.*?)--&gt;/g,"");this.insert_text(text);}};this.editor_get_contents=function()
{return this.editor_document.body.innerHTML;};this.get_selection=function()
{var rng=this._ie_cache?this._ie_cache:this.editor_document.selection.createRange();if(rng.htmlText)
{return rng.htmlText;}
else
{var rtn='';for(var i=0;i<rng.length;i++)
{rtn+=rng.item(i).outerHTML;}}
return rtn;};this.insert_text=function(text)
{this.editor_check_focus();if(typeof(this.editor_document.selection)!='undefined'&&this.editor_document.selection.type!='Text'&&this.editor_document.selection.type!='None')
{this.editor_document.selection.clear();}
var sel=this._ie_cache?this._ie_cache:this.editor_document.selection.createRange();sel.pasteHTML(text);sel.select();this._ie_cache=null;};this.insert_emoticon=function(emo_id,emo_image,emo_code,event)
{try
{var _emo_url=global_rte_emoticons_url+"/"+emo_image;var _emo_html=' <img src="'+_emo_url+'" border="0" alt="" style="vertical-align:middle" emoid="'+this.unhtmlspecialchars(emo_code)+'" />';this.wrap_tags_lite(""+_emo_html,"");}
catch(error)
{}
if(IPS_editor[this.editor_id].emoticon_window_id!=''&&typeof(IPS_editor[this.editor_id].emoticon_window_id)!='undefined')
{IPS_editor[this.editor_id].emoticon_window_id.focus();}};this.togglesource_cancel=function()
{this.togglesource(true);};this.togglesource=function(no_replace)
{if(this._showing_html)
{var ta=document.getElementById(this.editor_id+'_htmlsource');var ba=document.getElementById(this.editor_id+'_html_control_bar');if(no_replace!==true)
{this.editor_document.body.innerHTML=ta.value;}
this.editor_box.style.display='';this.control_obj.style.display='';ba.parentNode.removeChild(ba);ta.parentNode.removeChild(ta);this.togglesource_post_show_html();this._showing_html=0;}
else
{this._showing_html=1;this.togglesource_pre_show_html();var textarea=document.createElement('textarea');var new_ta=this.text_obj.parentNode.appendChild(textarea);new_ta.id=this.editor_id+'_htmlsource';new_ta.className=this.text_obj.className;new_ta.tabIndex=3;new_ta.style.width=this.text_obj.style.width;new_ta.style.height=this.text_obj.style.height;new_ta.value=this.clean_html(this.editor_get_contents());new_ta.focus();var new_div=document.createElement('DIV');new_div.id=this.editor_id+'_html_control_bar';new_div.className=this.control_obj.className;new_div.style.width=this.control_obj.style.width;new_div.style.height=this.control_obj.style.height;new_div.style.paddingBottom='8px';var savebutton=document.createElement('input');savebutton.className='rte-menu-button';savebutton.type='button';savebutton.value=' Save HTML ';savebutton.cmd='togglesource';savebutton.editor_id=this.editor_id;savebutton.onclick=ips_editor_events.prototype.button_onmouse_event;var cancelbutton=document.createElement('input');cancelbutton.className='rte-menu-button';cancelbutton.type='button';cancelbutton.value=' CANCEL ';cancelbutton.cmd='togglesource_cancel';cancelbutton.editor_id=this.editor_id;cancelbutton.onclick=ips_editor_events.prototype.button_onmouse_event;new_div.appendChild(savebutton);new_div.appendChild(cancelbutton);this.control_obj.parentNode.appendChild(new_div);this.control_obj.style.display='none';this.editor_box.style.display='none';this.buttons['togglesource'].state=false;this.buttons['togglesource'].className='rte-normal';this.editor_check_focus();this.set_context();}};this.togglesource_pre_show_html=function()
{};this.togglesource_post_show_html=function()
{};this.update_for_form_submit=function()
{this.text_obj.value=this.editor_get_contents();return true;};this.___OPERA_FUNCTIONS=function(){};if(this.is_opera)
{this._ORIGINAL_editor_set_content=this.editor_set_content;this.editor_set_content=function(initial_text)
{this._ORIGINAL_editor_set_content(initial_text);this.editor_document.body.style.height='95%';this.editor_document.addEventListener('keypress',ips_editor_events.prototype.editor_document_onkeypress,true);document.getElementById(this.editor_id+'_cmd_spellcheck').style.display='none';this.hidden_objects[this.editor_id+'_cmd_spellcheck']=1;if(this.use_bbcode)
{document.getElementById(this.editor_id+'_cmd_justifyfull').style.display='none';this.hidden_objects[this.editor_id+'_cmd_justifyfull']=1;}
try
{var _y=parseInt(window.pageYOffset);this.editor_document.execCommand("inserthtml",false,"-");this.editor_document.execCommand("undo",false,null);scroll(0,_y);}
catch(error)
{}};this.insert_text=function(str)
{this.editor_document.execCommand('insertHTML',false,str);};this.get_selection=function()
{var selection=this.editor_window.getSelection();this.editor_check_focus();var range=selection?selection.getRangeAt(0):this.editor_document.createRange();var lsserializer=document.implementation.createLSSerializer();return lsserializer.writeToString(range.cloneContents());};this.insert_emoticon=function(emo_id,emo_image,emo_code,event)
{this.editor_check_focus();try
{var _emo_url=global_rte_emoticons_url+"/"+emo_image;this.editor_document.execCommand('InsertImage',false,_emo_url);var images=this.editor_document.getElementsByTagName('img');if(images.length>0)
{for(var i=0;i<=images.length;i++)
{if(images[i].src.match(new RegExp(_emo_url+"$")))
{if(!images[i].getAttribute('emoid'))
{images[i].setAttribute('emoid',this.unhtmlspecialchars(emo_code));images[i].setAttribute('border','0');images[i].style.verticalAlign='middle';}}}}}
catch(error)
{}
if(IPS_editor[this.editor_id].emoticon_window_id!=''&&typeof(IPS_editor[this.editor_id].emoticon_window_id)!='undefined')
{IPS_editor[this.editor_id].emoticon_window_id.focus();}};this.editor_set_functions=function()
{this.editor_document.addEventListener('mouseup',ips_editor_events.prototype.editor_document_onmouseup,true);this.editor_document.addEventListener('keyup',ips_editor_events.prototype.editor_document_onkeyup,true);this.editor_window.addEventListener('focus',ips_editor_events.prototype.editor_window_onfocus,true);this.editor_window.addEventListener('blur',ips_editor_events.prototype.editor_window_onblur,true);};}
this.___MOZ_FUNCTIONS=function(){};if(this.is_moz)
{this.togglesource_pre_show_html=function()
{this.editor_document.designMode='off';};this.togglesource_post_show_html=function()
{this.editor_document.designMode='on';};this._ORIGINAL_editor_set_content=this.editor_set_content;this.editor_set_content=function(initial_text)
{this._ORIGINAL_editor_set_content(initial_text);this.editor_document.addEventListener('keypress',ips_editor_events.prototype.editor_document_onkeypress,true);document.getElementById(this.editor_id+'_cmd_spellcheck').style.display='none';this.hidden_objects[this.editor_id+'_cmd_spellcheck']=1;if(this.use_bbcode)
{document.getElementById(this.editor_id+'_cmd_justifyfull').style.display='none';this.hidden_objects[this.editor_id+'_cmd_justifyfull']=1;}
try
{var _y=parseInt(window.pageYOffset);this.editor_document.execCommand("inserthtml",false,"-");this.editor_document.execCommand("undo",false,null);scroll(0,_y);}
catch(error)
{}};this.moz_convert_fontsize=function(in_size)
{switch(in_size)
{case'7.5pt':case'10px':return 1;case'10pt':return 2;case'12pt':return 3;case'14pt':return 4;case'18pt':return 5;case'24pt':return 6;case'36pt':return 7;default:return'';}};this._ORIGINAL_apply_formatting=this.apply_formatting;this.apply_formatting=function(cmd,dialog,arg)
{if(cmd!='redo')
{this.editor_document.execCommand("inserthtml",false,"-");this.editor_document.execCommand("undo",false,null);}
this.editor_document.execCommand('useCSS',false,true);return this._ORIGINAL_apply_formatting(cmd,dialog,arg);};this.get_selection=function()
{var selection=this.editor_window.getSelection();this.editor_check_focus();var range=selection?selection.getRangeAt(0):this.editor_document.createRange();return this.moz_read_nodes(range.cloneContents(),false);};this.insert_text=function(str,len)
{fragment=this.editor_document.createDocumentFragment();holder=this.editor_document.createElement('span');holder.innerHTML=str;while(holder.firstChild)
{fragment.appendChild(holder.firstChild);}
var my_length=parseInt(len)>0?len:0;this.moz_insert_node_at_selection(fragment,my_length);};this.insert_emoticon=function(emo_id,emo_image,emo_code,event)
{this.editor_check_focus();try
{var _emo_url=global_rte_emoticons_url+"/"+emo_image;this.editor_document.execCommand('InsertImage',false,_emo_url);var images=this.editor_document.getElementsByTagName('img');if(images.length>0)
{for(var i=0;i<=images.length;i++)
{if(images[i].src.match(new RegExp(_emo_url+"$")))
{if(!images[i].getAttribute('emoid'))
{images[i].setAttribute('emoid',this.unhtmlspecialchars(emo_code));images[i].setAttribute('border','0');images[i].style.verticalAlign='middle';}}}}}
catch(error)
{}
if(IPS_editor[this.editor_id].emoticon_window_id!=''&&typeof(IPS_editor[this.editor_id].emoticon_window_id)!='undefined')
{IPS_editor[this.editor_id].emoticon_window_id.focus();}};this.editor_set_functions=function()
{this.editor_document.addEventListener('mouseup',ips_editor_events.prototype.editor_document_onmouseup,true);this.editor_document.addEventListener('keyup',ips_editor_events.prototype.editor_document_onkeyup,true);this.editor_window.addEventListener('focus',ips_editor_events.prototype.editor_window_onfocus,true);this.editor_window.addEventListener('blur',ips_editor_events.prototype.editor_window_onblur,true);this.editor_document.addEventListener('keydown',ips_editor_events.prototype.editor_document_onkeydown,true);};this.moz_add_range=function(node,text_length)
{this.editor_check_focus();var sel=this.editor_window.getSelection();var range=this.editor_document.createRange();range.selectNodeContents(node);if(text_length)
{range.setEnd(node,text_length);range.setStart(node,text_length);}
sel.removeAllRanges();sel.addRange(range);};this.moz_read_nodes=function(root,toptag)
{var html="";var moz_check=/_moz/i;switch(root.nodeType)
{case Node.ELEMENT_NODE:case Node.DOCUMENT_FRAGMENT_NODE:{var closed;if(toptag)
{closed=!root.hasChildNodes();html='<'+root.tagName.toLowerCase();var attr=root.attributes;for(var i=0;i<attr.length;++i)
{var a=attr.item(i);if(!a.specified||a.name.match(moz_check)||a.value.match(moz_check))
{continue;}
html+=" "+a.name.toLowerCase()+'="'+a.value+'"';}
html+=closed?" />":">";}
for(var i=root.firstChild;i;i=i.nextSibling)
{html+=this.moz_read_nodes(i,true);}
if(toptag&&!closed)
{html+="</"+root.tagName.toLowerCase()+">";}}
break;case Node.TEXT_NODE:{html=this.htmlspecialchars(root.data);}
break;}
return html;};this.moz_goto_parent_then_body=function(n)
{var o=n;while(n.parentNode!=null&&n.parentNode.nodeName=='HTML')
{n=n.parentNode;}
if(n)
{for(var c=0;c<n.childNodes.length;c++)
{if(n.childNodes[c].nodeName=='BODY')
{return n.childNodes[c];}}}
return o;};this.moz_insert_node_at_selection=function(text,text_length)
{this.editor_check_focus();var sel=this.editor_window.getSelection();var range=sel?sel.getRangeAt(0):this.editor_document.createRange();sel.removeAllRanges();range.deleteContents();var node=range.startContainer;var pos=range.startOffset;text_length=text_length?text_length:0;if(node.nodeName=='HTML')
{node=this.moz_goto_parent_then_body(node);}
switch(node.nodeType)
{case Node.ELEMENT_NODE:{if(text.nodeType==Node.DOCUMENT_FRAGMENT_NODE)
{selNode=text.firstChild;}
else
{selNode=text;}
node.insertBefore(text,node.childNodes[pos]);this.moz_add_range(selNode,text_length);}
break;case Node.TEXT_NODE:{if(text.nodeType==Node.TEXT_NODE)
{var text_length=pos+text.length;node.insertData(pos,text.data);range=this.editor_document.createRange();range.setEnd(node,text_length);range.setStart(node,text_length);sel.addRange(range);}
else
{node=node.splitText(pos);var selNode;if(text.nodeType==Node.DOCUMENT_FRAGMENT_NODE)
{selNode=text.firstChild;}
else
{selNode=text;}
node.parentNode.insertBefore(text,node);this.moz_add_range(selNode,text_length);}}
break;}};}}
else
{this.___STD_FUNCTIONS=function(){};this.editor_write_contents=function(text)
{this.text_obj.value=text;};this.editor_set_content=function(init_text)
{var iframe=this.text_obj.parentNode.getElementsByTagName('iframe')[0];if(iframe)
{this.text_obj.style.display='';this.text_obj.style.width=iframe.style.width;this.text_obj.style.height=iframe.style.height;iframe.style.width='0px';iframe.style.height='0px';iframe.style.border='none';}
this.editor_window=this.text_obj;this.editor_document=this.text_obj;this.editor_box=this.text_obj;if(typeof init_text!='undefined')
{this.editor_write_contents(init_text);}
this.editor_document.editor_id=this.editor_id;this.editor_window.editor_id=this.editor_id;if(!this.is_ie)
{document.getElementById(this.editor_id+'_cmd_spellcheck').style.display='none';this.hidden_objects[this.editor_id+'_cmd_spellcheck']=1;}
document.getElementById(this.editor_id+'_cmd_togglesource').style.display='none';document.getElementById(this.editor_id+'_cmd_outdent').style.display='none';document.getElementById(this.editor_id+'_cmd_justifyfull').style.display='none';this.hidden_objects[this.editor_id+'_cmd_togglesource']=1;this.hidden_objects[this.editor_id+'_cmd_outdent']=1;this.hidden_objects[this.editor_id+'_cmd_justifyfull']=1;};this.editor_set_functions=function()
{if(this.editor_document.addEventListener)
{this.editor_document.addEventListener('keypress',ips_editor_events.prototype.editor_document_onkeypress,false);}
this.editor_window.onfocus=ips_editor_events.prototype.editor_window_onfocus;this.editor_window.onblur=ips_editor_events.prototype.editor_window_onblur;};this.set_context=function()
{};this.removeformat=function()
{var text=this.get_selection();if(text)
{text=this.strip_html(text);this.insert_text(text);}};this.apply_formatting=function(cmd,dialog,argument)
{switch(cmd)
{case'bold':case'italic':case'underline':{this.wrap_tags(cmd.substr(0,1),false);return;}
case'justifyleft':case'justifycenter':case'justifyright':{this.wrap_tags(cmd.substr(7),false);return;}
case'indent':{this.wrap_tags(cmd,false);return;}
case'createlink':{var sel=this.get_selection();if(sel)
{this.wrap_tags('url',argument);}
else
{this.wrap_tags('url',argument,argument);}
return;}
case'fontname':{this.wrap_tags('font',argument);return;}
case'fontsize':{this.wrap_tags('size',argument);return;}
case'forecolor':{this.wrap_tags('color',argument);return;}
case'backcolor':{this.wrap_tags('background',argument);return;}
case'insertimage':{this.wrap_tags('img',false,argument);return;}
case'strikethrough':{this.wrap_tags('s',false);return;}
case'superscript':{this.wrap_tags('sup',false);return;}
case'subscript':{this.wrap_tags('sub',false);return;}
case'removeformat':return;}};this.editor_get_contents=function()
{return this.editor_document.value;};this.get_selection=function()
{if(typeof(this.editor_document.selectionStart)!='undefined')
{return this.editor_document.value.substr(this.editor_document.selectionStart,this.editor_document.selectionEnd-this.editor_document.selectionStart);}
else if((document.selection&&document.selection.createRange)||this._ie_cache)
{return this._ie_cache?this._ie_cache.text:document.selection.createRange().text;}
else if(window.getSelection)
{return window.getSelection()+'';}
else
{return false;}};this.insert_text=function(text)
{this.editor_check_focus();if(typeof(this.editor_document.selectionStart)!='undefined')
{var open=this.editor_document.selectionStart+0;var st=this.editor_document.scrollTop;var end=open+text.length;if(this.is_opera)
{var opera_len=text.match(/\n/g);try
{end+=parseInt(opera_len.length);}
catch(e)
{}}
this.editor_document.value=this.editor_document.value.substr(0,this.editor_document.selectionStart)+text+this.editor_document.value.substr(this.editor_document.selectionEnd);if(!text.match(new RegExp("\\"+this.open_brace+"(\\S+?)"+"\\"+this.close_brace+"\\"+this.open_brace+"/(\\S+?)"+"\\"+this.close_brace)))
{this.editor_document.selectionStart=open;this.editor_document.selectionEnd=end;this.editor_document.scrollTop=st;}}
else if((document.selection&&document.selection.createRange)||this._ie_cache)
{var sel=this._ie_cache?this._ie_cache:document.selection.createRange();sel.text=text.replace(/\r?\n/g,'\r\n');sel.select();}
else
{this.editor_document.value+=text;}
this._ie_cache=null;};this.insert_emoticon=function(emo_id,emo_image,emo_code,event)
{emo_code=this.unhtmlspecialchars(emo_code);this.wrap_tags_lite(" "+emo_code," ");if(this.is_ie)
{if(IPS_editor[this.editor_id].emoticon_window_id!=''&&typeof(IPS_editor[this.editor_id].emoticon_window_id)!='undefined')
{IPS_editor[this.editor_id].emoticon_window_id.focus();}}};this.insertorderedlist=function(e)
{this.insertlist('ol');};this.insertunorderedlist=function(e)
{this.insertlist('ul');};this.insertlist=function(list_type)
{var open_tag;var close_tag;var item_open_tag='<li>';var item_close_tag='</li>';var regex='';var all_add='';if(this.use_bbcode)
{regex=new RegExp('([\r\n]+|^[\r\n]*)(?!\\[\\*\\]|\\[\\/?list)(?=[^\r\n])','gi');open_tag=list_type=='ol'?'[list=1]\n':'[list]\n';close_tag='[/list]';item_open_tag='[*]';item_close_tag='';}
else
{regex=new RegExp('([\r\n]+|^[\r\n]*)(?!<li>|<\\/?ol|ul)(?=[^\r\n])','gi');open_tag=list_type=='ol'?'<ol>\n':'<ul>\n';close_tag=list_type=='ol'?'</ol>\n':'</ul>\n';}
if(text=this.get_selection())
{text=open_tag+text.replace(regex,"\n"+item_open_tag+'$1'+item_close_tag)+'\n'+close_tag;if(this.use_bbcode)
{text=text.replace(new RegExp('\\[\\*\\][\r\n]+','gi'),item_open_tag);}
this.insert_text(text);}
else
{if(this.is_moz)
{this.insert_text(open_tag+close_tag);while(val=prompt(ipb_global_lang['editor_enter_list'],''))
{this.insert_text(open_tag+all_add+item_open_tag+val+item_close_tag+'\n'+close_tag);all_add+=item_open_tag+val+item_close_tag+'\n';}}
else
{var to_insert=open_tag;while(val=prompt(ipb_global_lang['editor_enter_list'],''))
{to_insert+=item_open_tag+val+item_close_tag+'\n';}
to_insert+=close_tag;this.insert_text(to_insert);}}};this.unlink=function()
{var text=this.get_selection();var link_regex='';var link_text='';if(text!==false)
{if(text.match(link_regex))
{text=(this.use_bbcode)?text.replace(/\[url=([^\]]+?)\]([^\[]+?)\[\/url\]/ig,"$2"):text.replace(/<a href=['\"]([^\"']+?)['\"]([^>]+?)?>(.+?)<\/a>/ig,"$3");}
this.insert_text(text);}};this.undo=function()
{this.history_record_state(this.editor_get_contents());this.history_time_shift(-1);if((text=this.history_fetch_recording())!==false)
{this.editor_document.value=text;}};this.redo=function()
{this.history_time_shift(1);if((text=this.history_fetch_recording())!==false)
{this.editor_document.value=text;}};this.update_for_form_submit=function(subjecttext,minchars)
{return true;};}
this.___SAFARI_FUNCTIONS=function(){};if(this.is_safari)
{try
{document.getElementById(this.editor_id+'_cmd_switcheditor').style.display='none';}
catch(error)
{}}
this.___IPB_FUNCTIONS=function(){};this.createlink=function(e)
{var _text=this.get_selection();_text=_text.replace(/\n|\r|<br \/>/g,'');if(_text.match(/(<a href|\[url)/ig))
{this.format_text(e,"unlink",false);}
else
{var _url=prompt(ipb_global_lang['editor_enter_url'],'http://');if(!_url||_url==null||_url=='http://')
{return false;}
_text=_text?_text:prompt(ipb_global_lang['editor_enter_title'],ipb_global_lang['visit_my_website']);if(!_text||_text==null)
{return false;}
this.wrap_tags('url',_url,_text);}};this.insertemail=function(e)
{var _text=this.get_selection();_text=_text.replace(/\n|\r|<br \/>/g,'');if(_text.match(/(<a href|\[email)/ig))
{this.format_text(e,"unlink",false);}
else
{var _url=prompt(ipb_global_lang['editor_enter_email'],'');if(!_url||_url==null)
{return false;}
_text=_text?_text:prompt(ipb_global_lang['editor_enter_title']);if(!_text||_text==null)
{return false;}
this.wrap_tags('email',_url,_text);}};this.insertimage=function()
{var _text=this.get_selection();_text=_text.replace(/\n|\r|<br \/>/g,'');if(this.is_rte)
{if(_text.match(/<img(.+?)src=['"](.+?)["'](.*?)>/g))
{_text=_text.replace(/<img(.+?)src=['"](.+?)["'](.*?)>/g,'$2');}}
var _url=prompt(ipb_global_lang['editor_enter_image'],_text?_text:"http://");if(!_url||_url==null||_url=='http://')
{return false;}
if(!this.is_rte)
{this.wrap_tags('img',false,_url);}
else
{this.wrap_tags('img',_url,'');}};this.insertvideo=function()
{this.wrap_tags_lite('[video]','[/video]',0)};this.ipb_quote=function()
{this.wrap_tags_lite('[quote]','[/quote]',0)};this.ipb_code=function()
{this.wrap_tags_lite('[code]','[/code]',0)};this.init();}
function ips_editor_events()
{}
ips_editor_events.prototype.button_onmouse_event=function(e)
{if(is_ie)
{e=ipsclass.cancel_bubble(e,true);}
if(e.type=='click')
{IPS_editor[this.editor_id].format_text(e,this.cmd,false,true);}
IPS_editor[this.editor_id].set_button_context(this,e.type);};ips_editor_events.prototype.special_onmouse_event=function(e)
{e=ipsclass.cancel_bubble(e,true);if(e.type=='click')
{if(!this.loader_key)
{IPS_editor[this.editor_id].format_text(e,this.cmd,false,true);ipsmenu.close();}
else
{IPS_editor[this.editor_id].module_load(this,e,this.loader_key);}}
IPS_editor[this.editor_id].set_button_context(this,e.type,'menu');};ips_editor_events.prototype.editor_window_onfocus=function(e)
{this.has_focus=true;};ips_editor_events.prototype.editor_window_onblur=function(e)
{this.has_focus=false;};ips_editor_events.prototype.editor_document_onmouseup=function(e)
{try
{if(typeof(this.editor_id=='undefined')&&is_moz)
{this.editor_id=e.view.editor_id;}}
catch(me)
{}
IPS_editor[this.editor_id].set_context();menu_action_close();};ips_editor_events.prototype.editor_document_onkeyup=function(e)
{IPS_editor[this.editor_id].set_context();};ips_editor_events.prototype.editor_document_onkeypress=function(e)
{if(e.ctrlKey)
{switch(String.fromCharCode(e.charCode).toLowerCase())
{case'b':cmd='bold';break;case'i':cmd='italic';break;case'u':cmd='underline';break;default:return;}
e.preventDefault();IPS_editor[this.editor_id].apply_formatting(cmd,false,null);return false;}};ips_editor_events.prototype.popup_button_onmouseevent=function(e)
{e=ipsclass.cancel_bubble(e,true);if(e.type=='click')
{this._onclick(e);IPS_editor[this.editor_id].set_menu_context(this,'mouseover');}
else
{IPS_editor[this.editor_id].set_menu_context(this,e.type);}};ips_editor_events.prototype.popup_button_show=function(obj)
{if(typeof IPS_editor[obj.editor_id].popups[obj.cmd]=='undefined'||IPS_editor[obj.editor_id].popups[obj.cmd]==null)
{IPS_editor[obj.editor_id].init_editor_menu(obj);}
this._open(obj);};ips_editor_events.prototype.menu_option_onmouseevent=function(e)
{e=ipsclass.cancel_bubble(e,true);IPS_editor[this.editor_id].set_button_context(this,e.type,'menu');};ips_editor_events.prototype.font_format_option_onclick=function(e)
{IPS_editor[this.editor_id].format_text(e,this.cmd,this.firstChild.innerHTML);ipsmenu.close();};ips_editor_events.prototype.emoticon_onclick=function(e)
{e=ipsclass.cancel_bubble(e,true);IPS_editor[this.editor_id].insert_emoticon(this.emo_id,this.emo_image,this.emo_code,e);ipsmenu.close();};ips_editor_events.prototype.color_cell_onclick=function(e)
{IPS_editor[this.editor_id].format_text(e,this.cmd,this.colorname);ipsmenu.close();};ips_editor_events.prototype.editor_document_onkeydown=function(e)
{};
