function matchPTags(str){ 
	
	str = ' ' + str + ' ';
    ot = str.split(/\[[B|U|I].*?\]/i);
    ct = str.split(/\[\/[B|U|I].*?\]/i);
    return ot.length==ct.length;
}

function addTag(textarea, tag){
	
	textarea 	= 	document.getElementById(textarea);
	tagOpen		=	'[' + tag + ']';
	tagClose	=	'[/' + tag + ']';
	
	scrollTop 	= 	textarea.scrollTop;  
	scrollLeft 	= 	textarea.scrollLeft;  	
   

	if (tag == "HR"){
		tagOpen		=	"[" + tag + "/]";
		tagClose	=	"";
	}

	if (tag == "IMG"){
		
    	imagePath = prompt('Enter Image URL:', 'http://');
		tagOpen		=	"[IMG SRC='" + imagePath + "'/]";
		tagClose	=	"";
	}

	if (tag == "A"){
		
    	url = prompt('URL:', 'http://');
    	tagOpen	=	"[A HREF='" + url + "'/]";
	}	
	   
	// Code for IE
	if (document.selection){
		
		textarea.focus();
		var sel = document.selection.createRange();
		
		if(!matchPTags(sel.text)){ 
		
			alert('\t\tInvalid Selection\nSelection contains unmatched opening or closing tags.');
            return;
         }

		sel.text = tagOpen + sel.text + tagClose;
	
	}else{  // Code for Mozilla Firefox
	
		var len 	= textarea.value.length;
		var start 	= textarea.selectionStart;
		var end 	= textarea.selectionEnd;
		var sel 	= textarea.value.substring(start, end);
		
		if(!matchPTags(sel)){ 

			alert('\t\tInvalid Selection\nSelection contains unmatched opening or closing tags.');
            return;
         }

		
		var rep 	= tagOpen + sel + tagClose;
		
		textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
	}

	textarea.scrollTop 	= scrollTop;  
	textarea.scrollLeft = scrollLeft;  

}

//code for creating additional field
function createField(){
	
	var container			= 	document.getElementById('fieldset_file[]');
	var max_file_fields		=	document.getElementById('MAX_FILE_FIELDS').value;
	
	//checks if any fields are empty
	var children 			= 	container.getElementsByTagName("input");
	var count				=	children.length;
	
	if (count >= max_file_fields) return(false);
	
	for(var i =0; i <count; i++) {
		
		var childval	=	children[i].value;		
		if (childval == "") return(false);
	}		
	
	
	//do the do do
	var new_field		=	"<input type='file' name='file[]' onchange='createField();' />";
	
	input 				= 	document.createElement("div");
	input.innerHTML		=	new_field;
	
	container.appendChild(input);
}
