/* 
* containerId: id dell'element HTML in cui verrà in serito il file
* fp: path del file da aprire via ajax
* menuId: id della voce di menù da attivare
*/ 
function loadPage(containerId, fp, menuId){
  //se non viene passato nessun id pr il menu non iene cambiata la voce
  if(menuId){
    activateMenuLink(menuId);
  }
  var containerEl = $(containerId); 
  activateLoader(containerEl);
  //setTimeout("fake()", 3000);
  openAjaxRequest(fp, containerEl);
}

function activateMenuLink(menuId){
  deactivateMenuLink();
  $(menuId).addClassName('menuSelected');
}

function deactivateMenuLink(){
  var l = document.getElementsByClassName('menuSelected');
  l.each(function(el){el.removeClassName('menuSelected');});
}

function activateLoader(containerEl){
  //$(containerEl).update('<span><img src="../utils/img/loading.gif"/></span>');
  //$(containerEl).update('<span><img src="../img/loading.gif"/></span>'); // dentro al tema
  $(containerEl).update('<span><img src="../loading.gif" /></span>'); //sulla root
}

function deactivateLoader(containerEl, errorMessage){
  $(containerEl).update('<span>'+errorMessage+'</span>');
}


function updatePage(containerEl, html){
  containerEl.update(html);
}


function addslashes(str) {
	str=str.replace(/\'/g,'\\\'');
	str=str.replace(/\"/g,'\\"');
	str=str.replace(/\\/g,'\\\\');
	str=str.replace(/\0/g,'\\0');
	return str;
}
function stripslashes(str) {
	str=str.replace(/\\'/g,'\'');
	str=str.replace(/\\"/g,'"');
	str=str.replace(/\\\\/g,'\\');
	str=str.replace(/\\0/g,'\0');
	return str;
}

/** AJAX ******/

function openAjaxRequest(url, containerEl){
	//var pars = serializeForm(form, uuid);
	var onCompleteFunc = function(){processAjaxResponse(arguments[0], containerEl);};
	var onFailureFunc = processAjaxFailure;
	//var header = ["Content-Type", "application/x-www-form-urlencoded; charset=iso-8859-1"];
	var header = ["Content-Type", "text/html; charset=iso-8859-1"];
	
	new Ajax.Request(url, { method: 'post', onComplete: onCompleteFunc, onException: onFailureFunc, requestHeaders: header});
}

function processAjaxFailure(request, exception) {
	//log("ajax response failure start");
	if(exception.message)
		alert("An error has occurred: " + exception.message);
	else
		alert("An error has occurred: " + exception);
	if(window.uxForm)
		window.uxForm.submitted = false;
	deactivateLoader('content_body', exception.message);
}

function processAjaxResponse(request, containerEl) {
	//log("ajax response start");
	//log(request.responseText);
	//alert("request.responseText -> " + request.responseText);
  updatePage(containerEl, request.responseText);
	submitting = false;
	//();
	//log("ajax response done");
}



function showElement(id){
  //$(id).style.visibility = "visible";
  new Effect.Appear(id);
}

function hideElement(id){
  //$(id).style.visibility = "visible";
  new Effect.Fade(id);
}

function toggleMenuHover(){
  if(this.hasClassName('menuHover')){
    this.removeClassName('menuHover');
  }else{
    this.addClassName('menuHover');
  }
  //alert(this.id);
}

function showFoto(path){
  var fc = document.createElement('div');
  Event.observe(fc,"click", fc.remove);
  var img = document.createElement('img');
  img.src = path;
  fc.appendChild(img);
  fc.className="fotoDiv";
  
  $('content_body').appendChild(fc);
}

function expandSectionBody(id){
  var sectionBody = $(id);
  //alert($(id).className);
  if($(id).expStatus == "1"){
    $(id).expStatus = "0";
    $(id).className = "list_box_body";
    $(id+"_opener").innerHTML = ">>";
  }else{
    $(id).expStatus = "1";
    $(id).className = "list_box_body_opened";
    $(id+"_opener").innerHTML = "<<";
  }
}
