var richedit_value='';
var buttonClicked=null;

function enableRichEdits(){
	
	tinyMCE.init({
		// General options
		mode : "textareas",
		theme : "advanced",
		//plugins : "safari,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",

		plugins : "safari,pagebreak,style,layer,table,save,advhr,advlink,emotions,iespell,insertdatetime,preview,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",

		// Theme options
		theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,formatselect,fontsizeselect",
		theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
		theme_advanced_buttons3 : "hr,removeformat,visualaid,|,sub,sup,|,charmap,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
		//theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak",
		//theme_advanced_buttons4 : "",
		theme_advanced_toolbar_location : "top",
		theme_advanced_toolbar_align : "left",
		theme_advanced_statusbar_location : "bottom",
		theme_advanced_resizing : true,

		// Example content CSS (should be your site CSS)
		//content_css : "templates/content.css",
        content_css : "../templates/default/style.css",

		// Drop lists for link/image/media/template dialogs
		template_external_list_url : "../templates/js/lists/template_list.js",
		external_link_list_url : "../templates/js/lists/link_list.js",
		external_image_list_url : "../templates/js/lists/image_list.php",
		//external_media_list_url : "../templates/js/lists/media_list.php",
		media_external_list_url : "../templates/js/lists/media_list.php",
		//media_external_list_url : "../templates/js/lists/media_list.js",

		// Replace values for the template plugin
		template_replace_values : {
				username : "Some User",
				staffid : "991234"
		}
	});
}

// Overriding generic aasf to work with RichEdits
function aacp( form_id ){
	var j;
	var val;
	var elem;
	var res = '';
	if(!form_id)return res;
	var frm = document.getElementById( form_id );
	
	if(frm)
		for(var i=0; i<frm.elements.length; i++){
			if(res != '')res+='&';
			switch(frm.elements[i].type){
				case 'checkbox':
					if(!frm.elements[i].checked)continue;
				case 'radio':
					elem = frm.elements[frm.elements[i].name];
					val = 'null';
					for(j=0; j < elem.length; j++){
						if(elem[j].checked)
							val = elem[j].value;
					}
					res+=frm.elements[i].name+'='+val;
					break;
				case 'button':
					if(buttonClicked == frm.elements[i].name)res+=frm.elements[i].name+'=1';
					break;
				case 'file':
					res+=frm.elements[i].name+'='+serializeJsToPhp(frm.elements[i].value);
					break;
				case 'textarea':
					res+=frm.elements[i].name+'=';
					if(richedit_value!='')res+=encodeURIComponent(richedit_value);
					else res+=encodeURIComponent(frm.elements[i].value);
					break;

				default:
					res+=frm.elements[i].name+'='+encodeURIComponent(frm.elements[i].value);
			}
		}
	return res;
}

// also for richedit
function aasf( form_id, custom_url, success_handler, error_handler ){
	var req = null;
	var frm = document.getElementById( form_id );
	var url = '';
	var method = 'get';
	
	if ( !frm )
		return false;
	if( !custom_url ) {
		if(frm.action )url = frm.action;
	}
	else{
		url = custom_url;
	}

	if( url == '' )
		return false;
	if( frm.method )
		method = frm.method;

	var params = aacp( form_id )+'&ajax_submit=true';

	if (window.XMLHttpRequest)
		req = new XMLHttpRequest();
	else {
		if (window.ActiveXObject){
			ajaxIsIE = true;
			req = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}

	if (req) {
		req.onreadystatechange = function(){
			if (req.readyState == 4) {
				try{
					if (req.status == 200) {
						if(success_handler)
						{
							success_handler(req.responseText, req.responseXML);
						}
						else{
							if( req.responseXML )
								aadp( req.responseXML );
						}
					} else {
						if(error_handler)
							error_handler();
					}
				}
				finally{
					aaec( form_id );
				}
			}
		};

		if(method.toLowerCase() == 'get'){
			req.open('get', url+'?'+params, true );
			req.send('');
		}
		else{
			req.open('post', url, true );
			req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
			req.send(params);
		}
		aadc( form_id );
	}
	return true;
}

