﻿function delnull()
{
	var str=document.getElementById('text').value;
	str=str.replace(/([\s]*\r\n[\s]*){2,}/gm,"\r\n");
	document.getElementById('text').value=str;
}
function refix()
{
	var str=document.getElementById('text').value;
	str=str.replace(/([\s]*\r\n[\s]*){2,}/gm,"\r\n\r\n");
	document.getElementById('text').value=str;
}
function url()
{
	var str=document.getElementById('text').value;
	str=str.replace(/^[ ]*(http:\/\/|^mms:\/\/|rtsp:\/\/|pnm:\/\/|ftp:\/\/|mmst:\/\/|mmsu:\/\/)([^\r\n]*)$/igm,"[url]$1$2[/url]");
	document.getElementById('text').value=str;
}

function addbr()
{
	var str=document.getElementById('text').value;
	str=str.replace(/\r\n/gm,"\r\n\r\n");
	document.getElementById('text').value=str;
}

function html_trans(str) {
	str = str.replace(/\r/g,"");
	str = str.replace(/on(load|click|dbclick|mouseover|mousedown|mouseup)="[^"]+"/ig,"");
	str = str.replace(/<script[^>]*?>([\w\W]*?)<\/script>/ig,"");
if(set.fontbash.checked)
{
	str = str.replace(/<span[^>]*?display\s*?:\s*?none[^>]*?>([\w\W]*?)<\/span>/ig,"");
	str = str.replace(/<span[^>]*?font\s*?-\s*?size\s*?:\s*(0px|0pt)[^>]*?>([\w\W]*?)<\/span>/ig,"");
	str = str.replace(/<font([^>]+)(0px|0pt)+([^>]*)>([\w\W]*?)<\/font>/ig,"");
}

if(set.filtrate.checked)
{
	str = str.replace(/[^<]*<([^>]*?)>[^<]*/ig,"<$1>");
	tm=window.textfield.value;
	if(tm.length<1){
		var arr;
		arr=str.match(/<img[^>]+src=[" ]?([^"]+)[" ]?[^>]*>/ig);
		tm=arr[0].replace(/<img[^>]+src=[" ]?([^"]+)[" ]?[^>]*>/ig,"$1")+"\"";
		i=tm.search(/\/[^\/]+"/ig);
		tm=tm.substr(0,i);
		window.textfield.value=tm+"/";
	}
	if(tm.substr(tm.length-1,1)!="/") tm+="/";
	var strtm="<img[^>]+src=[\"]?("+tm+"[^\"]+)[\"]?[^>]*>";
	var re = new RegExp(strtm,"ig");
	str = str.replace(re,"\n[img]$1[/img]\n");
}
else
{
	if(set.stext.checked) str = str.replace(/[^<]*<([^>]*?)>[^<]*/ig,"<$1>");

	if(!set.linka.checked) str = str.replace(/<a[^>]+href=[" ]?([^"]+)[" ]?[^>]*>(.*?)<\/a>/ig,"[url=$1]$2[/url]");
	if(!set.font_color.checked&&!set.stext.checked)
		str = str.replace(/<font([^>]+)color=([^ >]+)([^>]*)>(.*?)<\/font>/ig,"[color=$2]<font$1$3>$4</font>[/color]");
	if(!set.font_size.checked&&!set.stext.checked)
		str = str.replace(/<font([^>]+)size=([^ >]+)([^>]*)>(.*?)<\/font>/ig,"[size=$2]<font$1$3>$4</font>[/size]");
	if(!set.font_face.checked&&!set.stext.checked)
		str = str.replace(/<font[^>]+face=([^ >]+)[^>]*>(.*?)<\/font>/ig,"[font=$1]$2[/font]");
	if(!set.img.checked) str = str.replace(/<img[^>]+src=[" ]?([^"]+)[" ]?[^>]*>/ig,"\n[img]$1[/img]\n");

	if(!set.odj.checked){
		//return str;
		str = str.replace(/<object[^>]*?6BF52A52\-394A\-11d3\-B153\-00C04F79FAA6[^>]*?>.*<param[^>]+name\s*=\s*["](url|src)["][^>]+value=[" ]?([^"]+)[" ][^>]*>.*<\/object>/ig,"\n[wmv]$2[/wmv]\n"); 
		str = str.replace(/<object[^>]*?D27CDB6E\-AE6D\-11cf\-96B8\-444553540000[^>]*?>.*<param[^>]+name\s*=\s*["](url|src)["][^>]+value=[" ]?([^"]+)[" ][^>]*>.*<\/object>/ig,"\n[swf]$2[/swf]\n");
		str = str.replace(/<embed[^>]*type=["]?application\/x\-shockwave\-flash["]?[^>]*src=[" ]?([^"|^ ]+)[" ]?[^>]*>/ig,"\n[swf]$1[/swf]\n");
		str = str.replace(/<embed[^>]*src=["]?([^"|^ ]+)["]?[^>]*type=["]?application\/x\-shockwave\-flash["]?[^>]*>/ig,"\n[swf]$1[/swf]\n");
		str = str.replace(/<object[^>]*?CFCDAA03\-8BE4\-11cf\-B84B\-0020AFBBCCFA[^>]*?>.*<param[^>]+name\s*=\s*["](url|src)["][^>]+value=[" ]?([^"]+)[" ][^>]*>.*<\/object>/ig,"\n[rm]$2[/rm]\n"); 
		}
	if(!set.font_b.checked&&!set.stext.checked){
		str = str.replace(/<([\/]?)b>/ig,"[$1b]");
		str = str.replace(/<([\/]?)strong>/ig,"[$1b]");}
	if(!set.font_u.checked&&!set.stext.checked)
		str = str.replace(/<([\/]?)u>/ig,"[$1u]");
	if(!set.font_i.checked&&!set.stext.checked)
		str = str.replace(/<([\/]?)i>/ig,"[$1i]");

	str = str.replace(/&nbsp;/g," ");
	str = str.replace(/&amp;/g,"&");
	str = str.replace(/&quot;/g,"\"");
	str = str.replace(/&lt;/g,"<");
	str = str.replace(/&gt;/g,">");
}
	str = str.replace(/<br>/ig,"\n");
	str = str.replace(/<p[^>]*?>/ig,"\n\n");
	str = str.replace(/<[^>]*?>/g,"");
	str = str.replace(/\[url=([^\]]+)\]\n(\[img\]\1\[\/img\])\n\[\/url\]/g,"$2");
	str = str.replace(/\n+/g,"\n");
	
	return str;
}
function copycode(obj){
obj.select();
objcopy=obj.createTextRange();
objcopy.execCommand("Copy");
}
function trans(){
	var str = "";
	rtf.focus();
	rtf.document.body.innerHTML = "";
	rtf.document.execCommand("paste");
	str = rtf.document.body.innerHTML;
	if(str.length == 0) {
		alert("剪贴版不存在超文本数据！");
		return "";
	}
	return html_trans(str);
}
function preview(){
var prewin=window.open("","","");
prewin.document.write(rtf.document.body.innerHTML);
}
function zhen(str)
{
	strfound=str.replace(/\\/ig,"\\\\");
	strfound=strfound.replace(/\[/ig,"\\[");
	strfound=strfound.replace(/\]/ig,"\\]");
	strfound=strfound.replace(/\{/ig,"\\{");
	strfound=strfound.replace(/\}/ig,"\\}");
	strfound=strfound.replace(/\|/ig,"\\|");
	strfound=strfound.replace(/\//ig,"\\/");
	strfound=strfound.replace(/\^/ig,"\\^");
	strfound=strfound.replace(/\./ig,"\\.");
	strfound=strfound.replace(/\*/ig,"\\*");
	strfound=strfound.replace(/\?/ig,"\\?");
	strfound=strfound.replace(/\+/ig,"\\+");
	return strfound;
}
function replace_star()
{
	var str=document.getElementById('text').value;
	if(!reg.checked)
		strfound=zhen(find_text.value);
	else
		strfound=find_text.value;
	var re = new RegExp(strfound,"ig");
	str=str.replace(re,replace_text.value);
	document.getElementById('text').value=str;
}