function insert_bbcode(v, whichbox, filename) {
	var filename = (filename == null) ? "" : filename;
	if (filename == 'undefined') { filename = ""; }

	var brs = "";
	if (document.selection){
		var txtarea = document.forms['editnews'].elements[whichbox];
		document.forms['editnews'].elements[whichbox].focus();
		var sel = document.selection.createRange();
		var str = document.selection.createRange().text;

//		sel.text = "[" + v + "]" + str + "[E" + v + "]";
//		return;

		var brs = "IE";

		if (v == 'OL' || v == 'UL')
		{
//			sel.text = '[' + v + '][LI]' + str + '[ELI][E' + v + ']';
			extra_lis = 1;
			ss = str.split(/\r?\n|\r/);
			sc = str.split(/\r?\n|\r/).length;
			sss = '';
			for (s=0; s<sc; s++)
			{
				sss = sss + '[LI]' + ss[s] + '[ELI]\n';
				extra_lis = extra_lis + 9;
			}
			sel.text = '[' + v + ']' + sss + '[E' + v + ']';
		}
		else
		{
			if (v == 'LINK')
			{
				var get_link = prompt("Enter the URL to link to?");
// if highlighted text dont ask
				if (str == '' || str == null) { var get_text = prompt("Enter any text to use for the link?"); }

				if (get_link.substr(0,7) == "http://") { get_link = get_link.substr(7); v = 'LINK:URL'; }
				if (get_link.substr(0,4) == "www.") { get_link = get_link.substr(4); v = 'LINK:URL'; }

				if (str == '' || str == null) 
				{ 
					if (get_text == '' || get_text == null) { get_text = get_link; }
					sel.text = '[' + v + "#" + get_link + ']' + get_text + ' [EA]' + str;
				}
				else
				{
					sel.text = '[' + v + "#" + get_link + ']' + str + ' [EA]';
				}
			}
			else
			{
				if (v == 'IMG' || v == 'DIMG' || v == 'IMGD' || v == 'LIMG' || v == 'RIMG' || v == 'NIMG' || v.substr(0,5) == 'IMAGE')
				{
					var get_alt = prompt("What alt text would you like to use?");
					var get_class = prompt("What class would you like to use?");
					var alt_text = "";
					var the_class = "";
					if (get_class != '' && get_class != null) { the_class = "{" + get_class; alt_text = "{[HEADING]"; }
					if (get_alt != '' && get_alt != null) { alt_text = "{" + get_alt; }
					sel.text = '[' + v + ":" + filename + alt_text + the_class + ']' + str;
				}
				else
				{
					if (v == 'YOUTUBE' || v == 'YT')
					{
						var get_code = prompt("Type the YouTube video code?");
						var get_heading = prompt("Please type the subject?");
						var heading_text = "";
						if (get_heading != '' && get_heading != null) { heading_text = get_heading; }
						sel.text = '[' + v + "#" + get_code + "{" + heading_text + ']' + str;
					}
					else
					{
						sel.text = '[' + v + ']' + str + '[E' + v + ']';
					}
				}
			}
		}
	}
	else 
	if ((typeof document.forms['editnews'].elements[whichbox].selectionStart) != 'undefined') 
	{
		var txtarea = document.forms['editnews'].elements[whichbox];
		var selLength = txtarea.textLength;
		var selStart = txtarea.selectionStart;
		var selEnd = txtarea.selectionEnd;

		txtarea.focus(); 

		var brs = "FF";

		var s1 = (txtarea.value).substring(0,selStart);
		var s2 = (txtarea.value).substring(selStart, selEnd)
		var s3 = (txtarea.value).substring(selEnd, selLength);
		extra_lis = 0;

// Check for Lists
// If adding UL or OL then search for end of lines and add [ELI]
		if (v == 'OL' || v == 'UL')
		{
//				txtarea.value = s1 + '[' + v + '][LI]' + s2 + '[ELI][E' + v + ']' + s3;
			extra_lis = 1;
			ss = s2.split(/\r?\n|\r/);
			sc = s2.split(/\r?\n|\r/).length;
			sss = '';
			for (s=0; s<sc; s++)
			{
				sss = sss + '[LI]' + ss[s] + '[ELI]\n';
				extra_lis = extra_lis + 9;
			}
			txtarea.value = s1 + '[' + v + ']' + sss + '[E' + v + ']' + s3;
		}
		else
		{
			if (v == 'LINK')
			{
				var get_link = prompt("Enter the URL to link to?");
// if highlighted text dont ask
				if (s2 == '' || s2 == null) { var get_text = prompt("Enter any text to use for the link?"); }

				if (get_link.substr(0,7) == "http://") { get_link = get_link.substr(7); v = 'LINK:URL'; }
				if (get_link.substr(0,4) == "www.") { get_link = get_link.substr(4); v = 'LINK:URL'; }

				if (s2 == '' || s2 == null) 
				{ 
					if (get_text == '' || get_text == null) { get_text = get_link; }
					txtarea.value = s1 + '[' + v + "#" + get_link + ']' + get_text + ' [EA]' + s2 + s3;
				}
				else
				{
					txtarea.value = s1 + '[' + v + "#" + get_link + ']' + s2 + ' [EA]' + s3;
				}
			}
			else
			{
				if (v == 'IMG' || v == 'DIMG' || v == 'IMGD' || v == 'LIMG' || v == 'RIMG' || v == 'NIMG' || v.substr(0,5) == 'IMAGE')
				{
					var get_alt = prompt("What alt text would you like to use?");
					var get_class = prompt("What class would you like to use?");
					var alt_text = "";
					var the_class = "";
					if (get_class != '' && get_class != null) { the_class = "{" + get_class; alt_text = "{[HEADING]"; }
					if (get_alt != '' && get_alt != null) { alt_text = "{" + get_alt; }
					txtarea.value = s1 + '[' + v + ":" + filename + alt_text + the_class + ']' + s2 + s3;
				}
				else
				{
					if (v == 'YOUTUBE' || v == 'YT')
					{
						var get_code = prompt("Type the YouTube video code?");
						var get_heading = prompt("Please type the subject?");
						var heading_text = "";
						if (get_heading != '' && get_heading != null) { heading_text = get_heading; }
						txtarea.value = s1 + '[' + v + "#" + get_code + "{" + heading_text + ']' + s2 + s3;
					}
					else
					{
						txtarea.value = s1 + '[' + v + filename + ']' + s2 + '[E' + v + ']' + s3;
					}
				}
			}
		}

		txtarea.selectionStart = s1.length;
		txtarea.selectionEnd = s1.length + 5 + s2.length + v.length * 2 + extra_lis;

		var txtcols = txtarea.cols;
		var txtrows = txtarea.rows;
		var scrollto = parseInt(selStart/txtrows) + 1;
		txtarea.scrollTop = scrollto;
		return;
	}
}


