var ajax = new sack();
var contentObj;	// Reference to article content <div>
var valueStr;
var ajaxElemName;

function doRedirect()
{
	location.reload(true);	
}

function showContent()	// Displaying content in the content <div>
{
	contentObj.innerHTML = ajax.response;	// ajax.response is a variable that contains the content of the external file
	//alert()
	//if (contentObj.innerHTML.indexOf("messageBox ok") != -1) {
		//document.getElementById("ajax_form").reset();
	//}
	//alert(ajax.response);
	if (contentObj.innerHTML.indexOf("messageBox error") != -1) {
		//document.getElementById("ajax_form").reset();
		error = contentObj.innerHTML;
		error = error.toLowerCase();
		error = error.replace("<div class=\"messagebox error\">", "");
		error = error.replace(/\<\/div>/g, "");
		error = error.replace(/\<div>/g, "");
		error = error.replace(/\<br>/g, "\n");
		error = error.replace("<div id=ajax_null>", "");
		error = error.replace("<div id=\"ajax_null\">", "");
		alert(error);
		//var num = error.indexOf("[");
		//var num2 = error.indexOf("]");
		//if (num > -1) {
			//var errorOk = error.substr(num + 1, num2 - num - 1);
			//errorOk = errorOk.replace("[", "");
			//errorOk = errorOk.replace("]", "");
			//errorOk = errorOk.replace(/\_a/g, "");
			//alert(errorOk);
			//postForm('ajax_form_anteprima', 'form', 'ajaxForm');
		//}
	}
	//if (contentObj.innerHTML.indexOf("ok") != -1) {
		//document.getElementById("ajax_form").reset();
		//document.getElementById("ajax_form_anteprima").reset();
		//setTimeout("doRedirect();",5000);
	//}
}

function showWaitMessage()
{
	contentObj.innerHTML = '<div id="ajax_form_loading"><img src="img/ajax-loader-bar.gif" alt="" /> Invio dei dati in corso...</div>';
}
function getAjaxFile(fileName)
{
	ajax.requestFile = fileName;	// Specifying which file to get
	ajax.onCompletion = showContent;	// Specify function that will be executed after file has been found
	//ajax.onLoading = showWaitMessage;	// Action when AJAX is loading the file
	ajax.runAJAX();		// Execute AJAX function	
}

function postForm(formId) {
	contentObj = document.getElementById("ajax_null");
	//contentObj = document.getElementById(obj);
	var elemArray = document.getElementById(formId);
	//alert(obj);
	for (var i = 0; i < elemArray.length; i++) {
        var element = elemArray[i];
		//alert(elemArray);
		if (element.type) {
			var elemType = element.type.toUpperCase();
			var elemName = element.name;
			//alert(element.value);
			//var valueStr = "";
			if (elemName) {
				var typesStr = "|TEXT|TEXTAREA|PASSWORD|BUTTON|RESET|SUBMIT|FILE|IMAGE|HIDDEN|";
				if (typesStr.indexOf("|" + elemType + "|") != -1) {
					valueStr = GetElemValue(elemName, element.value);
				} else if (elemType == "CHECKBOX" && element.checked) {
					valueStr = GetElemValue(elemName, element.value ? element.value : "On");
				} else if (elemType == "RADIO" && element.checked) {
					valueStr = GetElemValue(elemName, element.value);
				} else if (elemType.indexOf("SELECT") != -1) {
					for (var j = 0; j < element.options.length; j++) {
						var option = element.options[j];
						if (option.selected) {
							//valueStr = GetElemValue(elemName, option.value ? option.value : option.text);
							valueStr = GetElemValue(elemName, option.value);
						}
					}
				}
			}
			ajax.setVar(elemName, valueStr);
		}	
    }
	ajax.setVar("rndval", "");
	getAjaxFile('ajax/form_blog.asp?action=save');
	//alert(action);
	//getAjaxFile('ajax/form_blog.asp?action='+action);
}

function GetElemValue(el_name, value) {
	var comma = "";
	if (ajaxElemName != el_name) {
		valueStr = "";
	} else {
		comma = ", ";
	}
    valueStr += comma + escape((value ? value : "")).replace(/%0A/g, "<br>");
	// escape(value ? value : "").replace(/\+/g, "%2B");
	//+ escape(value ? value : "").replace(/\n/g, "%0D");
	//if (valueStr) alert(valueStr);
	ajaxElemName = el_name;
	return valueStr;
}

function ajaxProvince(regione) {
	var provincia = document.getElementById("provincia");
	contentObj = provincia;
	num_option = provincia.options.length;
	for (a=num_option;a>=0;a--) {
		provincia.options[a]=null;
	}
	//alert(regione);
	ajax.requestFile = "ajax/form_province.asp?regione=" + regione;	// Specifying which file to get
	ajax.onCompletion = function() {
		var provStr = ajax.response;
		//alert(provStr);
		var provArray = provStr.split("|");
		for (a=0;a<provArray.length;a++) {
			var thisProv = provArray[a];
			var thisProvArray = thisProv.split(",");
			var provValue = thisProvArray[0];
			var provName = thisProvArray[1];
			provincia.options[a]=new Option(provName, provValue, false, false);
		}
	};	// Specify function that will be executed after file has been found
	ajax.onLoading = function() {
		provincia.options[0] = new Option("Elenco province in caricamento...", "", true, false);
	};	// Action when AJAX is loading the file
	ajax.onError = function() {
		provincia.options[0] = new Option("Si è verificato un errore!", "", true, false);
	};	// Action when AJAX is loading the file
	ajax.runAJAX();		// Execute AJAX function
}

function copertura(objId)
{
	var str = objId.replace("tr_", "w_");
	var triggerObj = document.getElementById(str);
	str = objId.replace("tr_", "c_");
	contentObj = document.getElementById(str);
	toggle(str);
	triggerObj.style.zIndex = (triggerObj.style.zIndex == "1" ? "0" : "1");
	str = str.replace("c_", "");
	var items = str.split("_");
	prov = items[0];
	p_id = items[1];
	//alert(prov + p_id);
	if (contentObj.className.indexOf("ajaxed") == -1) {
		contentObj.className += " ajaxed";
		
		getAjaxFile("ajax_copertura.asp?p_id=" + p_id + "&prov=" + prov);	
	}
}