function trace(m)
{ if( window.console ){ window.console.log(m); } }
var dbgwin = false ;
function checkAndSend(form)
{
var lang = form.lang.value ;
if( !checkPrivacy(form,lang) )
{ return ; }
var data = $(form).serialize();
var debug = false ;
if( typeof form.debug != "undefined" && form.debug.value == "true" )
{debug=true;}
if(!data)
{return}
$("#form-sender").hide();
$("#form-loader").css({ display:"inline-block" });
// CLEAR FORM ELEMS IN ERROR STATE
// BIND FOCUS EVENT FOR CSS HANDLING
var tmp = null ;
for( var i=0 ; i
"001",
"cognome_non_valido"=>"002",
"email_non_valida"=>"003",
"conferma_email_non_valida"=>"004",
"mail_diverse"=>"005",
"data_arrivo_non_valida"=>"006",
"date_non_valide"=>"007",
"adulti_vuoto"=>"010",
"camera_non_valida"=>"011",
"privacy_non_confermata"=>"012" ,
"risultato"=>"013",
"errore"=>"014" ,
"indietro"=>"015" ,
"chiudi"=>"016" ,
"mail_error"=>"017",
"mail_success"=>"018" ,
"notti_vuoto"=>"019" ,
*/
var url = form.getAttribute("action") ;
if( !url )
{
alert("ERROR:: no action.");
$("#form-loader").css({ display:"none" });
$("#form-sender").show();
return;
}
/*
if( lang!="it" )
{ url = "../send_reservation.php" ; }
*/
jQuery.ajax({
url : url ,
cache : false ,
data : data ,
type : "post" ,
dataType : "json" ,
success : function(response){
if( debug )
{
if(dbgwin){dbgwin.close();}
dbgwin = open("nourl","noname","height=600,width=900") ;
dbgwin.document.write(response) ;
$("#form-loader").css({ display:"none" });
$("#form-sender").show();
return ;
}
if( typeof response != "object" )
{
alert("ERROR: service unavailable.")
trace(response.responseText) ;
}
else
{
if( response.result )
{
// Show success panel
// DEBUG
//alert("FATTO") ;
//$("#form-loader").css({ display:"none" });
//$("#form-sender").show();
$(form).hide();
$("#success").show();
}
else
{
// Handle error
switch(response.code)
{
case "004" : case "005" :
$(form[ec["003"]] ).addClass("error") ;
$(form[ec["004"]] ).addClass("error") ;
break ;
case "006" : case "007" :
$(form[ec["006a"]] ).addClass("error") ;
$(form[ec["006b"]] ).addClass("error") ;
break ;
default :
if( form[ec[response.code]] )
{ $(form[ec[response.code]] ).addClass("error") ; }
}
$("#form-loader").css({ display:"none" });
$("#form-sender").show();
}
}
} ,
error : function(response)
{
if( debug )
{
if(dbgwin){dbgwin.close();}
dbgwin = open("nourl","noname","height=600,width=900") ;
dbgwin.document.write(response.responseText) ;
$("#form-loader").css({ display:"none" });
$("#form-sender").show();
return ;
}
alert("ERROR: service unreachable.")
trace(response.responseText) ;
$("#form-loader").css({ display:"none" });
$("#form-sender").show();
}
});
}
function handleFocused(elem)
{
if( $(elem).hasClass("error") )
{
$(elem).removeClass("error");
$(elem).addClass("error-edit")
}
}
function checkPrivacy(form,lang)
{
if( typeof form.privacy_confirm == "undefined" || !form.privacy_confirm || !form.privacy_confirm.checked )
{
if( lang=="it" )
{ alert("Per proseguire è neccessario aver letto e accettato le modalità di trattamento dei dati personali."); }
else
{ alert("Before proceeding you must read and agree with personal data processing policy."); }
return false ;
}
return true ;
}
function togglePrivacy()
{
var p = $("#privacy") ;
if(!p.length){return}
if( p.css("display") == "block" )
{ p.css({ display:"none" }) ; }
else
{ p.css({ display:"block" }) ; }
}
function form_checkChildren(select)
{
var val = select[ select.selectedIndex ].value
var tmp = false ;
for( var i=1 ; i