function bbcode_ins(fieldId, tag)

{
 
 //Added August
 var url_only = false;
 
	field=document.getElementById(fieldId);

	if(tag=='b' || tag=='i' || tag=='u' || tag == 'php' || tag == 'code' || tag == 'quote')

	{

		if (document.selection) 

		{

			field.focus();

			var selected = document.selection.createRange().text;

			var ins = '[' + tag + ']' + selected + '[/' + tag +']';

			var selected2 = document.selection.createRange();

			var sel = document.selection.createRange();

			selected2.moveStart ('character', -field.value.length);

			sel.text = '[' + tag + ']' + selected + '[/' + tag+']';

			sel.moveStart('character', selected2.text.length + ins.length - selected.length);

		

		}

		

		//MOZILLA/NETSCAPE/SAFARI support

		

		else if (field.selectionStart || field.selectionStart == 0) 

		{

			var startPos = field.selectionStart;

			var endPos = field.selectionEnd;

			var selected = field.value.substring(startPos, endPos);

			var ins = '[' + tag + ']' + selected + '[/' + tag +']';

			field.focus();

			field.value = field.value.substring(0, startPos) + ins + field.value.substring(endPos, field.value.length);

			field.setSelectionRange(endPos+ins.length, endPos+ins.length-selected.length);

		}

}

	else if(tag == 'img')

	{

		var path = prompt('Enter image path', 'http://');

		if(!path)

		{

			return;

		}

		if (document.selection) 

		{
			
			field.focus();

			var selected = document.selection.createRange().text;

			var ins = '[' + tag + ']' + path + '[/' + tag+']';

			var selected2 = document.selection.createRange();

			var sel = document.selection.createRange();

			sel.text = '[' + tag + ']' + path + '[/' + tag+']';

			selected2.moveStart ('character', -field.value.length);

			sel.moveStart('character', selected2.text.length + ins.length - selected.length);

		}

		//MOZILLA/NETSCAPE/SAFARI support

		else if (field.selectionStart || field.selectionStart == 0) 

		{

			var startPos = field.selectionStart;

			var endPos = field.selectionEnd;

			var ins = '[' + tag + ']' + path + '[/' + tag+']';

			field.focus();

			field.value = field.value.substring(0, startPos)

			+ ins

			+ field.value.substring(endPos, field.value.length);

			field.setSelectionRange(endPos+ins.length, endPos+ins.length-selected.length);

		} 

	}

	else if(tag == 'url')

	{

		var url = prompt('Enter link URL', 'http://');

		var linkText = prompt('(Optional} Enter link text', '');

		if(!url && !linkText)

		{

			return;

		} else if(url && !linkText) //Added in August update - still works without link text
		{
			//url_only = true;
			
			linkText = url;
			
		}

		if (document.selection) 

		{

			field.focus();

			
			//IE Section - NOTE! IT ADDS THE URL TAG AT THE START
			var selected = document.selection.createRange().text;
			
			//if(url_only == false){
				var ins = '[' + tag + '='+url+']' + linkText + '[/' + tag+']';
			//} else if(url_only == true){
			//	var ins = '[' + tag + ']' + url + '[/' + tag+']';
			//}

			var selected2 = document.selection.createRange();

			var sel = document.selection.createRange();

			sel.text = ins;

			selected2.moveStart ('character', -field.value.length);

			sel.moveStart('character', selected2.text.length + ins.length - selected.length);



		}

		//MOZILLA/NETSCAPE/SAFARI support

		else if (field.selectionStart || field.selectionStart == 0) 

		{

			var startPos = field.selectionStart;

			var endPos = field.selectionEnd;

			//if(url_only == false){
				var ins = '[' + tag + '='+url+']' + linkText + '[/' + tag+']';
			//} else if(url_only == true){
			//	var ins = '[' + tag + ']' + url + '[/' + tag+']';
			//}

			field.focus();

			field.value = field.value.substring(0, startPos)

			+ ins

			+ field.value.substring(endPos, field.value.length);

			field.setSelectionRange(endPos+ins.length, endPos+ins.length-selected.length);

		} 

	}
	
	//Own addition
	else if(tag == 'youtube') {
	
	
		var url = prompt('Please copy + paste the URL of the youtube video you\'d like to insert. E.g. http://www.youtube.com/watch?v=2lXh2n0aPyw', '');
		
		var youtube_id; 
		
		youtube_id = url.replace(/^[^v]+v.(.{11}).*/,"$1"); 
		

		if(!url)

		{

			return;

		}
		
		if(!youtube_id)
		{
			alert('The YouTube URL you entered isn\'t valid. It should look a bit like: http://www.youtube.com/watch?v=2lXh2n0aPyw');
			return;
		}

		if (document.selection) 

		{

			field.focus();

			
			//IE Section - NOTE! IT ADDS THE URL TAG AT THE START
			var selected = document.selection.createRange().text;
			
			//if(url_only == false){
				var ins = '[' + tag + ']' + youtube_id + '[/' + tag+']';
			//} else if(url_only == true){
			//	var ins = '[' + tag + ']' + url + '[/' + tag+']';
			//}

			var selected2 = document.selection.createRange();

			var sel = document.selection.createRange();

			sel.text = ins;

			selected2.moveStart ('character', -field.value.length);

			sel.moveStart('character', selected2.text.length + ins.length - selected.length);



		}

		//MOZILLA/NETSCAPE/SAFARI support

		else if (field.selectionStart || field.selectionStart == 0) 

		{

			var startPos = field.selectionStart;

			var endPos = field.selectionEnd;

			//if(url_only == false){
				var ins = '[' + tag + ']' + youtube_id + '[/' + tag+']';
			//} else if(url_only == true){
			//	var ins = '[' + tag + ']' + url + '[/' + tag+']';
			//}

			field.focus();

			field.value = field.value.substring(0, startPos)

			+ ins

			+ field.value.substring(endPos, field.value.length);

			field.setSelectionRange(endPos+ins.length, endPos+ins.length-selected.length);

		} 

	}  
  

	else //For smilies

	{

		if (document.selection) 

		{

			field.focus();

		

			var selected = document.selection.createRange().text;

			var ins = tag;

			var selected2 = document.selection.createRange();

			var sel = document.selection.createRange();

			sel.text = tag;

			selected2.moveStart ('character', -field.value.length);

			sel.moveStart('character', selected2.text.length + ins.length - selected.length);

		}

		

		//MOZILLA/NETSCAPE/SAFARI support

		

		else if (field.selectionStart || field.selectionStart == 0) 

		{

			var startPos = field.selectionStart;

			var endPos = field.selectionEnd;

			field.focus();

			field.value = field.value.substring(0, startPos) + tag + field.value.substring(endPos, field.value.length);

			field.setSelectionRange(endPos+tag.length, endPos+tag.length);

		}

	}

}