var colBack = "#FFFF66";
var colFore = "#000000";
var myback = colBack;
var mycount = 0;
var h_blink = null;
var myform; //for changeBackground



function ckOnClick(par,myf) {
   if(!myf)
      myf = document.vSearch;
   if (par == 0) {
      myf.txtCity.value = "";
      myf.txtCity.style.backgroundColor = "#FFFFFF";
      myf.txtCity.style.color = "#000000";
      if (myf.touristic_area != null) myf.touristic_area.value = myf.tmp_area_tag.value;
   } else {
      if (myf.touristic_area != null) myf.touristic_area.value = "";
      if (myf.chk_city != null) {
         myf.chk_city[1].checked = true;
      }
   }
}

function PC(city,myf) {
   if(!myf)
      myf = document.vSearch;
   //window.location.href = '#top';
   C2(city,0,myf);
}

function CheckPR(myf) {
   if(!myf)
      myf = document.vSearch;

   p = myf.pval.value;
   r = myf.rval.value;
   if ((p == 0) && (r == 0)) {
      alert(err_no_room_person);
      return false;
   }
   if ((p != 0) && (r == 0)) {
      alert(err_room_number);
      return false;
   }
   if ((r != 0) && (p == 0)) {
      alert(err_person_number);
      return false;
   }
   if (parseInt(r) > parseInt(p)) {
      alert(err_room_le_person);
      return false;
   }
//   if ((p / r) > 4.0) {
//      alert(err_max_quadruple);
//      return false;
//   }
   return true;
}

function C2(city,geoid,myf) {
   window.location.href = '#top';
   if(!myf)
      myf = document.vSearch;
   if (geoid)
      myf.geoid.value=geoid;
   if (geoid == 0){
      myf.geoid.value='';
   }
   if (myf.chk_city != null) {
      myf.chk_city[1].checked = true;
   }

   myf.city.value = city.replace(/\+/g , ' ');
   
   if (myf.find_tag != null)
      myf.find_tag.value = "0";
   
   if (go_submit) myf.submit();
}

function PA(name,myf) {
   if(!myf)
      myf = document.vSearch;
   window.location.href = '#top';
   A2(name,myf);
}

function A2(name,myf) {
   C2(name,null,myf);
   if(!myf)
      myf = document.vSearch;
   myf.find_tag.value = "1";
   myf.action = actLink2;
   if (go_submit) myf.submit();
}


function changeBackground() {
   if(!myform)
      myf1 = document.vSearch;
   else
      myf1 = myform;
   myf = myf1.txtCity;
   if (myback == colBack) {
      myf.style.backgroundColor = myback;
      myf.style.color = colFore;
      myback = colFore;
      if (mycount >= 4) window.clearInterval(h_blink);
   } else {
      myf.style.backgroundColor = myback;
      myback = colBack;
      myf.style.color = myback;
   }
   mycount++;
}

function ResetDate(myf) {
   if(!myf)
      myf = document.vSearch;
   myf.cb_sd.selectedIndex = 0;
   myf.cb_smy.selectedIndex = 0;
   myf.cb_ed.selectedIndex = 0;
   myf.cb_emy.selectedIndex = 0;
   myf.sd.value = "";
   myf.sm.value = "";
   myf.sy.value = "";
   myf.ed.value = "";
   myf.em.value = "";
   myf.ey.value = "";
}

function CheckDate(myf) {
   if(!myf)
      myf = document.vSearch;
   set_cookies_onsubmit (myf);
   if ((myf.chk_city == null) || (myf.chk_city[1].checked)){
      if (!check_city(myf)) return false;
      if (!_CheckDate(myf)) return false;
   }
   else if (!_CheckDate(myf)) return false;
   return true;
}



function _CheckDate(myf) {

   var today = new Date();
   var day = today.getDate();
   var month = today.getMonth() + 1 ;
   var year = today.getFullYear();
   if(!myf)
      myf = document.vSearch;

if(!((myf.cb_sd.selectedIndex ==0)&&(myf.cb_smy.selectedIndex ==0)&&(myf.cb_ed.selectedIndex ==0)&&(   myf.cb_emy.selectedIndex ==0)))
{
   if (!CheckPR(myf)) return false;
   mysd = myf.cb_sd.selectedIndex;

   if (mysd == 0) {
      alert(err_wrong_ci_date);
      return false;
      }

   tmp_s=myf.cb_smy.value;
    tmp_s_start=myf.cb_smy.value.indexOf('/');
   tmp_s_stop=myf.cb_smy.value.length;
    tmp_s_m=tmp_s.slice(0,tmp_s_start);
   tmp_s_y=tmp_s.slice(tmp_s_start+1,tmp_s_stop);
    tmp_s_smy=tmp_s_m+'/'+tmp_s_y;


   tmp = myf.cb_smy.selectedIndex;
   if (tmp == 0) {
      alert(err_wrong_ci_date);
      return false;
      }
   mysm = tmp_s_m;
   mysy = tmp_s_y;

   //mysm = month + tmp -1;
   //mysy = year;

   if (mysm > 12) { mysy = mysy + 1; mysm = mysm - 12; }

   myed = myf.cb_ed.selectedIndex;
   if (myed == 0) { ResetDate(myf); return true;   }

   tmp_e=myf.cb_emy.value;
    tmp_e_start=myf.cb_emy.value.indexOf('/');
   tmp_e_stop=myf.cb_emy.value.length;
    tmp_e_m=tmp_e.slice(0,tmp_e_start);
   tmp_e_y=tmp_e.slice(tmp_e_start+1,tmp_e_stop);
    tmp_e_smy=tmp_e_m+'/'+tmp_e_y;



   tmp = myf.cb_emy.selectedIndex;
   if (tmp == 0) { ResetDate(myf); return true;   }

   myem = tmp_e_m;
   myey = tmp_e_y;

   //myem = month + tmp-1;
   //myey = year;

   if (myem > 12) { myey = myey + 1; myem = myem - 12; }

   myf.sd.value = mysd;
   myf.sm.value = mysm;
   myf.sy.value = mysy;

   myf.ed.value = myed;
   myf.em.value = myem;
   myf.ey.value = myey;
   return true;
 }
 return true;
}

function clearAll( form ) {
   form.cb_sd.selectedIndex = 0;
   form.cb_smy.selectedIndex = 0;
   form.cb_ed.selectedIndex = 0;
   form.cb_emy.selectedIndex = 0;
   form.pval.selectedIndex = 0;
  

}

function checkSelNum( cb ) {
   if( cb != null && cb.selectedIndex == 0 ) { clearAll(cb.form); return true; }
}

function StartDateCheck( cb ) {

   if( cb != null && cb.selectedIndex == 0 ) { clearAll(cb.form); return true; }

   var myf = !cb ? document.vSearch : cb.form;
   var today = new Date();
   var day = today.getDate();
   var month = today.getMonth() + 1 ;
   var year = today.getFullYear();
   if(!myf) myf = document.vSearch;

   var mysd = myf.cb_sd.selectedIndex;
   if (mysd == 0) { return true; }

   var tmp = myf.cb_smy.selectedIndex;
   if (tmp == 0) { return true; }

   var mysm = month + tmp - 1;
   var mysy = year;
   if (mysm > 12) { mysy = mysy + 1; mysm = mysm - 12; }

   if (mysd == 31) {
      if ((mysm == 4) || (mysm == 6) || (mysm == 9) || (mysm == 11)) mysd = 30;
   }
   if ((mysd > 29) && (mysm == 2)) mysd = 29;
   if ((mysy %4 != 0) && (mysm == 2) && (mysd > 28)) mysd = 28;
   
   
   //bug 2396
   if (mysm == month && mysy == year){
      if (mysd < day)
         mysd = day
   }// end bug 2396
   
   myf.cb_sd.selectedIndex = mysd;
   
   var myed = mysd + 1;
   var myem = mysm;
   var myey = mysy;
   if (myed > 31) myed = -1;
   if (myed == 31) {
      if ((myem == 4) || (myem == 6) || (myem == 9) || (myem == 11)) myed = -1;
   }
   if ((myed > 29) && (myem == 2)) myed = -1;
   if ((myey %4 != 0) && (myem == 2) && (myed > 28)) myed = -1;
   
   if (myed == -1) { myed = 1;   tmp = tmp + 1; }

   myf.cb_ed.selectedIndex = myed;
   myf.cb_emy.selectedIndex = tmp;

   
      
}



function EndDateCheck( cb ) {
   if( cb != null && cb.selectedIndex == 0 ) { clearAll(cb.form); return true; }


   var today = new Date();
   var day = today.getDate();
   var month = today.get = today.getMonth() + 1 ;
   var year = today.getFullYear();
   if(!cb)
      myf = document.vSearch;
   else
      myf = cb.form;

   tmp_s=myf.cb_smy.value;
    tmp_s_start=myf.cb_smy.value.indexOf('/');
   tmp_s_stop=myf.cb_smy.value.length;
    tmp_s_m=tmp_s.slice(0,tmp_s_start);
//   tmp_sMonth() + 1 ;
   var year = today.getFullYear();
   myf = document.vSearch;

   myed = myf.cb_ed.selectedIndex;
   if (myed == 0) return true;

   tmp = myf.cb_emy.selectedIndex;
   if (tmp == 0) return true;
   
   myem = month + tmp - 1;
   myey = year;
   if (myem > 12) { myey = myey + 1; myem = myem - 12; }

   if (myed == 31) {
      if ((myem == 4) || (myem == 6) || (myem == 9) || (myem == 11)) myed = 30;
   }
   if ((myed > 29) && (myem == 2)) myed = 29;
   if ((myey %4 != 0) && (myem == 2) && (myed > 28)) myed = 28;
   
   /** extra check on start - end date range **/
   var sd = myf.cb_sd.value;
   var sm = tmp_s_m;
   var sy = tmp_s.slice(tmp_s_start+1);
   var startDate = new Date(sy,sm-1,sd);
   var endDate = new Date(myey,myem-1,myed);    
   var maxDelta = 90 * 24 * 3600 * 1000
   if( endDate.getTime() - startDate.getTime() > maxDelta ) {
	  endDate.setTime( startDate.getTime()+maxDelta );
	  myed = String(endDate.getDate()); while( myed.length < 2 ) myed = String("0") + myed;
	  myem = String(endDate.getMonth()+1); while( myem.length < 2 ) myem = String("0") + myem;
	  myey = String(endDate.getFullYear());
      // reset month / year combo box
	  myf.cb_emy.value = String(myem) + "/" + myey;
   } 
   
   myf.cb_ed.selectedIndex = myed;

}

function Sel(city,id,type,myf) {

   if(!myf)
      myf = document.vSearch;
   if (city == '') {
      myf.city.value = myf.txtCity.value;
      var i=0;
      if (myf.myc){ //code to delete???
         do {
            myf.myc[i].checked = false;
         } while (++i < myf.myc.length);
      }
      myf.city.value = myf.txtCity.value;
   }
    else {
      myf.city.value = city;
      myf.txtCity.value = city;
   }

   if (type == 'selgeoid')
      myf.geoid.value = id;

   myf.geoid.value = id;
}

function set_null(myf){
   if(!myf)
      myf = document.vSearch;
   myf.geoid.value = 0;
}

function set_null_selgeoid(myf){
   if(!myf)
      myf = document.vSearch;
   myf.geoid.value = '';
}

function check_city(myf){
   if(!myf)
      myf = document.vSearch;
   if (myf.txtCity.value.length == 0) {
      alert(err_textcity);
      return false;
   }
   return true;
 }



 // Functions to realize check cookies for surf with values
  function getday(obj) {
         var delta = 2;

         var todayR = new Date();
         var year = todayR.getYear ();
          if (year < 1000)  year +=  1900;
         var today = new Date(year,todayR.getMonth(),todayR.getDate()+1);
         var year = today.getYear ();
          if (year < 1000)  year +=  1900;

         var nextdate = new Date(year,today.getMonth(),today.getDate()+delta);
         var nyear = nextdate.getYear ();
          if (nyear < 1000)  nyear +=  1900;

         var _cb_sd = today.getDate();
         var _cb_smy = (today.getMonth()+1) +'/'+ year ;
			var _cb_sm = today.getMonth()+1;
         if ((today.getMonth()+1)<10) _cb_smy ='0' +_cb_smy;
         if (_cb_sd < 10)  _cb_sd ='0'+_cb_sd;

         var _cb_ed = nextdate.getDate();
         var _cb_emy = (nextdate.getMonth()+1) +'/'+ nyear ;
			var _cb_em = nextdate.getMonth()+1;
         if ((nextdate.getMonth()+1)<10) _cb_emy ='0'+_cb_emy;
         if (_cb_ed < 10)  _cb_ed ='0'+_cb_ed;
            setvalues (obj,_cb_sd,_cb_smy,_cb_ed,_cb_emy,2,1);
			setvalues_hidden (obj,_cb_sd,_cb_sm,year,_cb_ed,_cb_em,nyear,2,1);
            SetCookie(_cb_sd,_cb_smy,_cb_ed,_cb_emy,2,1);
      }

      function setvalues (obj,sd,smy,ed,emy,pv,rv){
         obj.cb_sd.value = sd;
         obj.cb_smy.value = smy;
         obj.cb_ed.value = ed;
         obj.cb_emy.value = emy;
         obj.pval.value = pv;
         obj.rval.value = rv;
      }

      function setvalues_hidden (obj,sd,sm,sy,ed,em,ey,pv,rv){
         obj.sd.value = sd;
         obj.sm.value = sm;
         obj.sy.value = sy;
         obj.ed.value = ed;
         obj.em.value = em;
         obj.ey.value = ey;
         obj.pval.value = pv;
         obj.rval.value = rv;
      }

      function SetCookie(sd,smy,ed,emy,pv,rv){
         now = new Date();
         expire = new Date();
         expire.setHours(now.getHours()+1);
         expire.setMinutes(now.getMinutes());
         expire.setSeconds(now.getSeconds());

         document.cookie = "savail[_sd]"  + "=" + sd  + " ; domain=.venere.com ; path=/ ; expires="+expire;
         document.cookie = "savail[_smy]" + "=" + smy + " ; domain=.venere.com ; path=/ ; expires="+expire;
         document.cookie = "savail[_ed]"  + "=" + ed  + " ; domain=.venere.com ; path=/ ; expires="+expire;
         document.cookie = "savail[_emy]" + "=" + emy + " ; domain=.venere.com ; path=/ ; expires="+expire;
         document.cookie = "savail[_pv]"  + "=" + pv  + " ; domain=.venere.com ; path=/ ; expires="+expire;
         document.cookie = "savail[_rv]"  + "=" + rv  + " ; domain=.venere.com ; path=/ ; expires="+expire;
      }

      function getCookieVal (offset){
          var endstr = document.cookie.indexOf (";", offset);
         if (endstr == -1)
             endstr = document.cookie.length;
          return unescape(document.cookie.substring(offset, endstr));
      }

      function GetCookie (name){
         var arg = name + "=";
         var alen = arg.length;
         var clen = document.cookie.length;
         var i = 0;
         while (i < clen){
              var j = i + alen;
              if (document.cookie.substring(i, j) == arg)
              return getCookieVal (j);
              i = document.cookie.indexOf(" ", i) + 1;
              if (i == 0)
             break;
         }
         return null;
      }


      function getArgs() {
        var args = new Object();
        var query = location.search.substring(1);
        var pairs = query.split("&");
        for(var i = 0; i < pairs.length; i++)
        {
            var pos = pairs[i].indexOf('=');
            if (pos == -1) continue;
            var argname = pairs[i].substring(0,pos);
            var value = pairs[i].substring(pos+1);
            args[argname] = unescape(value);
         }
         return args;
      }


      function check_cookies_onload (obj){

        query_params=getArgs();
        if (query_params.sd || query_params.checkin) {

               sd    =   query_params.sd; while( sd.length<2 ) { sd = '0' + String(sd); }
               smy   =   query_params.sm +'/'+ query_params.sy ;
               ed    =   query_params.ed; while( ed.length<2 ) { ed = '0' + String(ed); }
               emy   =   query_params.em +'/'+ query_params.ey ;
               pv    =   query_params.pval;
               rv    =   query_params.rval;
               setvalues (obj,sd,smy,ed,emy,pv,rv);
        }else{
            if(visit = GetCookie("savail[_sd]")) {
               sd =  GetCookie("savail[_sd]");
               smy =  GetCookie("savail[_smy]");
               ed =  GetCookie("savail[_ed]");
               emy =  GetCookie("savail[_emy]");
               pv =  GetCookie("savail[_pv]");
               rv =  GetCookie("savail[_rv]");
               setvalues (obj,sd,smy,ed,emy,pv,rv);
            }
        }
      }

      function set_cookies_onsubmit (obj){
         sd = obj.cb_sd.value;
         smy = obj.cb_smy.value;
         ed = obj.cb_ed.value;
         emy = obj.cb_emy.value;
         pv = obj.pval.value;
         rv = obj.rval.value;
         SetCookie(sd,smy,ed,emy,pv,rv);
      }

function check_email(e) {
   ok = "1234567890qwertyuiop[]asdfghjklzxcvbnm.@-_QWERTYUIOPASDFGHJKLZXCVBNM";

   for(i=0; i < e.length ;i++){
      if(ok.indexOf(e.charAt(i))<0){ 
         return (false);
      }   
   } 

   if (document.images) {
      re = /(@.*@)|(\.\.)|(^\.)|(^@)|(@$)|(\.$)|(@\.)/;
      re_two = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
      if (!e.match(re) && e.match(re_two)) {
         return (-1);      
      } 
   }
}
function check_form(f) { // f is the form (passed using the this keyword)
   if(!check_email(f.email.value)){
      alert("Invalid email detected, please retype it!");
      f.email.focus(); 
// if the browser is Netscape 6 or IE
      if(document.all || document.getElementByID){
// change the color of text field
         f.email.style.background = "yellow";
      }
// make sure the form is not submitted
      return false;
   }
}


function OC(name_form,check_type,lg,mese,anno,mday,mese,anno)
{
   WOpen('/cgi/ihr/vcom/calendar.php?name_form='+name_form+'&inout='+check_type+'&lg='+lg+'&mese='+mese+'&anno='+anno+'&gi=0&load=1&dg='+mday+'&dm='+mese+'&da='+anno,'','top=300,left=300,location=0,height=158,width=150,scrollbars=0,status=0,resizable=0');
   void(0);
}

