var hoverMouseOver = '#fef0d6'; //blady pomarancz
var hoverMouseOut = '#ffdfaf'; //jasny pomarancz (nieco ciemniejszy niz poprzedni

var booking_input_error_color = '#ec6c00'; //jasny pomarancz
var booking_input_ok_color = '#cccccc'; //szary
var booking_input_bg_error_color = '#fec698'; //ciemny pomarancz
var booking_input_bg_ok_color = '#FFFFFF'; //bialy

var textRegulamin = "Prosz\u0119 przeczyta\u0107 i zaakceptowa\u0107 warunki touroperatora.";
var textNoPayment = "Nie wybrano rodzaju p\u0142atno\u015Bci.";
var textWrongEmail = "Adres e-mail jest nieprawidłowy!"
var textWrongNumber = "Nr karty jest niew\u0142a\u015Bciwy!";
var textChildAgeChanged = "Uwaga! Wiek dziecka zosta\u0142 zmieniony. Cena mo\u017Ce ulec zmianie.";

/*
* checkDatesFromT - 0/1 sprawdzanie czy daty wyjazdu i przyjazdu sa wypelnione prawidlowo
*
*/

function ValidateBooking (form_name,checkDatesFromTo)
{

  var error = 0;
  var payment_ok = 0;
  
  var zap = document.getElementById('zapytanie');
  if (zap && zap.value == 1) {
        var val = new Array();
        // val[0] = "name";
        // val[1] = "surname"; 
        // val[2] = "street";
        // val[3] = "postal_code";
        // val[4] = "city";
        val[5] = "telephone_priv";
        val[6] = "email";
  }
  else {
        var val = new Array();
        val[0] = "name";
        val[1] = "surname"; 
        val[2] = "street";
        val[3] = "postal_code";
        val[4] = "city";
        val[5] = "telephone_priv";
        val[6] = "email";
  }

  var val_cc = new Array();
  val_cc[0] = "credit_card_owner";
  val_cc[1] = "credit_card_number";
  val_cc[2] = "credit_card_cvc";
  
  val_payment_type = "payment_type";
//  var val_cc_type = "credit_card_type";
//  var val_cc_month = "credit_card_month";
//  var val_cc_year = "credit_card_year";
//  val[8] = document.getElementById("");
//  val[9] = document.getElementById("");

  if (!zap || zap.value == 0) {
      var regulamin = document.getElementById("regulamin");
      if( regulamin.checked == false)
      {
        alert(textRegulamin);
        error = 1;
        return false;
      }
  }

        //  var payment_type_1 = document.getElementById("payment_type_1");
        //  var payment_type_2 = document.getElementById("payment_type_2");

        //  alert("Regval:"+regulamin.checked);


//  alert(document.getElementById(val_payment_type).length);
/*  for( i = 0; i < document.form_booking.payment_type.length; i++)
    if( document.form_booking.payment_type[i].checked == true )
      payment_ok = 1;*/
 // if( document.form_booking.payment_type.checked == true )
    payment_ok = 1;

  if( !payment_ok )
  {
    alert(textNoPayment);
    error = 1;
  }

  
//  alert(booking_input_error_color);
	
if (!zap || zap.value != 1) {    
    for(var i = 1; document.getElementById("person_"+i+"_name") != null ; i++) {
		if( getStyle( document.getElementById("person_"+i+"_p"),"display") != 'none') {
			//var tds=document.getElementById("person_"+i+"_p").getElementsByTagName('td');
			
			if( document.getElementById("person_"+i+"_name") == null ) {
				continue;
			}
			if( document.getElementById("person_"+i+"_name").value.length == 0) {
				SetDOMElementStyleERR( document.getElementById("person_"+i+"_name"));
				error = 1;
			} else {
				SetDOMElementStyleOK( document.getElementById("person_"+i+"_name") );
			}
			
			if( document.getElementById("person_"+i+"_surname") == null ) {
				continue;
			}
			if( document.getElementById("person_"+i+"_surname").value.length == 0) {
				SetDOMElementStyleERR( document.getElementById("person_"+i+"_surname") );
				error = 1;
			} else {
				SetDOMElementStyleOK(document.getElementById("person_"+i+"_surname"));
	  		}
	
			if( document.getElementById("person_"+i+"_age") == null ) {
				continue;
			}
			if( document.getElementById("person_"+i+"_age").value.length == 0 
	          || !isDate(document.getElementById("person_"+i+"_age").value)) {
				SetElementStyleERR( "person_"+i+"_age" );
				error = 1;
			} else {
				SetElementStyleOK( "person_"+i+"_age" );
			}
		}
	}
}  
  
  if (checkDatesFromTo)
  {
  	if( document.getElementById("trip_term_from").value.length == 0 
        || !isDate(document.getElementById("trip_term_from").value))
    {
      SetElementStyleERR( "trip_term_from" );
      error = 1;
    }
    else
    {
      SetElementStyleOK( "trip_term_from" );
    }
    if( document.getElementById("trip_term_to").value.length == 0 
        || !isDate(document.getElementById("trip_term_to").value))
    {
      SetElementStyleERR( "trip_term_to" );
      error = 1;
    }
    else
    {
      SetElementStyleOK( "trip_term_to" );
    }
  }

  if( ValidateBookingArray( val ) == false )
    error = 1;

  if( ValidateEmail( 'email' ) == false )
    error = 1;

  if( error )
  {
    alert('Proszę wypełnić wszystkie pola oznaczone kolorem pomarańczowym');
	//document.getElementById("info_form_error").style.display = "block";
    return false;
  }

  //document.getElementById('action').value = 'book';
  //document.getElementById('action').value = 'polcard';

  //if( document.getElementById('mode').value == 'a' )
 // {
    //document.getElementById('step').value = 6;
  //  document.getElementById('step').value = 7;
  //}
  
  //if( document.getElementById('mode').value == 'b' )
  //  document.getElementById('step').value = 4;

  //document.getElementById(form_name).method = 'post';
  //document.getElementById(form_name).action = url_action;
  //document.getElementById('step').value = 6;
  
    // tylko w przypadku zapytania
    // formularz nie może wysyłać pustych danych, dlatego je uzupełniamy przed wysłaniem
    if (zap && zap.value == 1) {
    
        if (document.getElementById('name').value == '') document.getElementById('name').value = '-';
        if (document.getElementById('surname').value == '') document.getElementById('surname').value = '-';
        if (document.getElementById('street').value == '') document.getElementById('street').value = '-';
        if (document.getElementById('postal_code').value == '') document.getElementById('postal_code').value = '-';
        if (document.getElementById('city').value == '') document.getElementById('city').value = '-';
    }
   

  if (!zap || zap.value != 1) { 
      okienko();
      setTimeout("asd()", 2000);
  
  }
  else 
    document.getElementById(form_name).submit();
  return false;
}

//pio ale lipa z tym setTiameout
function asd() {
   document.getElementById('frm-booking').submit();
}


function okienko()
{
    var a = document.getElementById('s5_overlay');
    if (!a)
        return false;
    
    var dsoctop = document.documentElement.scrollTop;
    //var he = window.screen.height;
    
    // alert(dsoctop); return false
    a.style.top = dsoctop+'px';
    a.style.height = '500px';
    a.className = '';
    return false;
}


function rezerwacjaForm()
{
   document.getElementById('step').value = 5;
   document.getElementById('form_booking').submit();
}

function ValidateBookingArray ( val )
{
  var error = 0;
  for( i = 0; i < val.length; i++)
  {
    if( document.getElementById(val[i]) == null )
      continue;

    if( document.getElementById(val[i]).value.length == 0)
    {
      SetElementStyleERR( val[i] )
      error = 1;
    }
    else
    {
      SetElementStyleOK( val[i] )
    }
  }

  if( error )
    return false;

  return true;
}

function CleanBookingArray ( val )
{
  for( i = 0; i < val.length; i++)
  {
    if( document.getElementById(val[i]) == null )
      continue;
    SetElementStyleOK( val[i] )
  }
}

function ValidateEmail( email )
{
  var el = document.getElementById(email);
  
  if( el.value == null )
    return true;
    
  if( el.value.length == 0 )
    return true;
    
  var pos_at     =  el.value.indexOf('@');
  var pos_point  =  el.value.indexOf('.');
  
  if( pos_at == -1 || pos_point == -1)
  {
    SetElementStyleERR( email );
    alert(textWrongEmail);
    return false;
  }
  SetElementStyleOK( email );
  return true;
    
}

function IsNumeric( number )

{
  var element = document.getElementById(number);

  if( element.value == null )
    return true;
    
  if( element.value.length == 0 )
    return true;

  var ValidChars = "0123456789.";
  var IsNumber=true;
  var Char;

 
  for (i = 0; i < element.value.length && IsNumber == true; i++) 
  { 
    Char = element.value.charAt(i); 
    if (ValidChars.indexOf(Char) == -1) 
    {
      SetElementStyleERR( number );
      alert(textWrongNumber)
      IsNumber = false;
    }
	
  }
  if( IsNumber == true )
    SetElementStyleOK( number )

  return IsNumber;
   
}

function SetDOMElementStyleERR( element )
{
  element.style.borderWidth = 1;
  element.style.borderColor = booking_input_error_color;
  element.style.backgroundColor = booking_input_bg_error_color;
}
function SetDOMElementStyleOK( element )
{
  element.style.borderWidth = 1;
  element.style.borderColor = booking_input_ok_color;
  element.style.backgroundColor = booking_input_bg_ok_color;
}

function SetElementStyleERR( element )
{
  document.getElementById( element ).style.borderWidth = 1;
  document.getElementById( element ).style.borderColor = booking_input_error_color;
  document.getElementById( element ).style.backgroundColor = booking_input_bg_error_color;
}

function SetElementStyleOK( element )
{
  document.getElementById( element ).style.borderWidth = 1;
  document.getElementById( element ).style.borderColor = booking_input_ok_color;
  document.getElementById( element ).style.backgroundColor = booking_input_bg_ok_color;
}

function UpdateAge( form_name )
{
  
  for(var i = 1; document.getElementById("person_"+i+"_name") != null ; i++)
  {
    if(document.getElementById("person_"+i+"_age")  != null)
    {
      if(document.getElementById("person_"+i+"_age").value.length == 0)
      {
        //SetElementStyleERR( "person_"+i+"_age" );
        return;
      }
      if(!isDate(document.getElementById("person_"+i+"_age").value))
      {
        SetElementStyleERR( "person_"+i+"_age" );
        return;
      }
    }
  }
  //alert(textChildAgeChanged);
  
  //document.getElementById('update_age').value = 1;
  //document.getElementById(form_name).submit();
}