// clear function
var actual_date;
var actual_place;
var actual_time;

var starting_times_class=new Array();
var starting_times_val=new Array();
var returning_times_class=new Array();
var returning_times_val=new Array();

function agree_with_condition()
{
    if ($('.business_condition_checkbox').attr('checked'))
    {
        return true;
    }
    
    alert("You must agree with general terms and conditions and cancellation fees.");
    return false;
}

function filter_returning_dates()
{
    //arrival_dates=$('.arrival_term').val();
    selected_date=$('#starting_date').val();
    selected_date=selected_date.split("_");
    selected_date=selected_date[0];
    
    var selected_date=new Date(selected_date);
    
    var returning_select=document.getElementById("returning_date")
    for (var i=0; i<returning_select.options.length; i++)
    {
        returning_date=returning_select.options[i].value;
        returning_date=returning_date.split("_");
        returning_date=returning_date[0];
                
        returning_date=new Date(returning_date);
        
        if (returning_date>=selected_date)
        {
            document.getElementById("returning_date").selectedIndex=returning_select.options[i].index;
            break;
        }
        else
        {
            $('.'+returning_select.options[i].index).css('display','none');
        }
    }
}

function show_returning_times(id_term_list,mod)
{
    my_date=$('#returning_date').val();
    my_date=my_date.split("_");
    id_term=my_date[1];
    my_date=my_date[0];
    
    var exists=true;

    if (returning_times_val[0]!="")
    {
        returning_times_select=document.getElementById("return_time_select");
        for (var i=1;i<returning_times_select.length;i++)
        {
            exists=false;
            for (var j=0;j<starting_times_class.length;j++)
            {
                if (returning_times_class[j]==returning_times_select.options[i].className && returning_times_val[j]==returning_times_select.options[i].value)
                {
                    exists=true;
                }
            }
            if (exists==false)
            {
                returning_times_class.push(returning_times_select.options[i].className);
                returning_times_val.push(returning_times_select.options[i].value);
            }            
        }
    }
    
    $('#return_time_select').find('option').remove();

    var dt = new Date(my_date);
    
    var day_name=new Array(7);
    day_name[0]="Sun"
    day_name[1]="Mon"
    day_name[2]="Tue"
    day_name[3]="Wed"
    day_name[4]="Thu"
    day_name[5]="Fri"
    day_name[6]="Sat"

    day = day_name[dt.getDay()]; 
    
   //     $('.return_Mon_return').css('display','none');
   //     $('.return_Tue_return').css('display','none');
   //     $('.return_Wed_return').css('display','none');
   //     $('.return_Thu_return').css('display','none');
   //     $('.return_Fri_return').css('display','none');
   //     $('.return_Sat_return').css('display','none');
   //     $('.return_Sun_return').css('display','none');
        
   //     $('.return_'+day+'_return').css('display','block');
   
    for (i=0;i<returning_times_val.length;i++)
    {
        if (returning_times_class[i]=='return_'+day+'_return'+' return_'+id_term)
        {
            $('#return_time_select').append('<option value="'+returning_times_val[i]+'" selected="selected" class="'+returning_times_class[i]+'">'+returning_times_val[i]+'</option>');
        }
    }
   
        
    for(i=0;i<id_term_list.length;i++) 
    {
        if (id_term_list[i]!=id_term)
        {
            $('.return_'+id_term_list[i]).css('display','none');
        }
    } 
    
    if (mod=="select_change")
    {
        $("#return_time_select").val($("#return_time_select option:first").val());   
    }
        
}

function show_starting_times(id_term_list,mod)
{
    my_date=$('#starting_date').val();
    my_date=my_date.split("_");
    id_term=my_date[1];
    my_date=my_date[0];
    
    var dt = new Date(my_date);
    var exists = true;
    
    if (starting_times_val[0]!="")
    {
        starting_times_select=document.getElementById("time_select");
        for (var i=1;i<starting_times_select.length;i++)
        {
            exists=false;
            for (var j=0;j<starting_times_class.length;j++)
            {
                if (starting_times_class[j]==starting_times_select.options[i].className && starting_times_val[j]==starting_times_select.options[i].value)
                {
                    exists=true;
                }
            }
            if (exists==false)
            {
                starting_times_class.push(starting_times_select.options[i].className);
                starting_times_val.push(starting_times_select.options[i].value);
            }
        }
    }
        
    $('#time_select').find('option').remove();
    
    var day_name=new Array(7);
    day_name[0]="Sun"
    day_name[1]="Mon"
    day_name[2]="Tue"
    day_name[3]="Wed"
    day_name[4]="Thu"
    day_name[5]="Fri"
    day_name[6]="Sat"

    day = day_name[dt.getDay()]; 
    
    
    for (i=0;i<starting_times_val.length;i++)
    {
        if (starting_times_class[i]==day+' '+id_term)
        {
            $('#time_select').append('<option value="'+starting_times_val[i]+'" selected="selected" class="'+starting_times_class[i]+'">'+starting_times_val[i]+'</option>');
        }
    }
                                     
    //$('.Mon').css('display','none');
    //$('.Tue').css('display','none');
    //$('.Wed').css('display','none');
    //$('.Thu').css('display','none');
    //$('.Fri').css('display','none');
    //$('.Sat').css('display','none');
    //$('.Sun').css('display','none');

    //$('.'+day+'').css('display','block');

    for(i=0;i<id_term_list.length;i++) 
    {
        if (id_term_list[i]!=id_term)
        {
            $('.'+id_term_list[i]).css('display','none');
        }
        else
        {
            $('.'+id_term_list[i]).selected;
        }
    } 
    
    if (mod=="select_change")
    {
        $("#time_select").val($("#time_select option:first").val());   
    }
}

function show_ticket_type(type)
{
    if (type=="1"||(type==""))
    {
        $('.one_way_col').css('display','');
        $('.two_way_col').css('display','none');
        $('#arrival_date').css('display','none');
        $('#arrival_time').css('display','none');
    }
    else
    {
        $('.two_way_col').css('display','');
        $('.one_way_col').css('display','none');
        $('#arrival_date').css('display','');
        $('#arrival_time').css('display','');
    }
}

function set_date_type(type)
{
    if ((type=="available")||(type==""))    
    {
        document.activity_reservation_form['available_date_select'].disabled = false;

        document.activity_reservation_form['other_date_select'].disabled = true;
        document.activity_reservation_form['other_hour_select'].disabled = true;
        document.activity_reservation_form['other_min_select'].disabled = true;
    }

    if (type=="other")    
    {
        document.activity_reservation_form['available_date_select'].disabled = true;

        document.activity_reservation_form['other_date_select'].disabled = false;
        document.activity_reservation_form['other_hour_select'].disabled = false;
        document.activity_reservation_form['other_min_select'].disabled = false;
    }
}

function show_extra_date(row_id)
{
    var extra_date=($('#extra_attributes_'+row_id+':checked').val());

    if (extra_date!=null)
    {
            $('#extra_date_row_'+row_id).css('display','table-row');
    }
    else
    {
            $('#extra_date_row_'+row_id).css('display','none');
    }

    var extra_time=($('#extra_attributes_'+row_id+':checked').val());

    if (extra_time!=null)
    {
            $('#extra_time_row_'+row_id).css('display','table-row');
    }
    else
    {
            $('#extra_time_row_'+row_id).css('display','none');
    }
    
    
}

function show_extra_place(row_id)
{
    var extra_place=($('#extra_attributes_'+row_id+':checked').val());
    
    if (extra_place!=null)
    {
            $('#extra_place_row_'+row_id).css('display','table-row');
    }
    else
    {
            $('#extra_place_row_'+row_id).css('display','none');
    }
}


function show_extra_date2(row_id)
{
    var extra_date=($('#extra_attributes_'+row_id).val());
    
    if (actual_date!="")
    {
        $('#extra_date_row_'+actual_date).css('display','none');
    }

    if (extra_date!="")
    {
            $('#extra_date_row_'+extra_date).css('display','table-row');
            actual_date=extra_date;
    }
    else
    {
            $('#extra_date_row_'+extra_date).css('display','none');
    }

    var extra_time=($('#extra_attributes_'+row_id).val());
    
    if (actual_time!="")
    {
        $('#extra_time_row_'+actual_time).css('display','none');
    }

    if (extra_time!="")
    {
            $('#extra_time_row_'+extra_time).css('display','table-row');
            actual_time=extra_time;
    }
    else
    {
            $('#extra_time_row_'+extra_time).css('display','none');
    }
    
    
}

function show_extra_place2(row_id)
{
    var extra_place=($('#extra_attributes_'+row_id).val());

    if (actual_place!="")
    {
        $('#extra_place_row_'+actual_place).css('display','none');
    }
    
    if (extra_place!="")
    {
            $('#extra_place_row_'+extra_place).css('display','table-row');
            actual_place=extra_place;
    }
    else
    {
            $('#extra_place_row_'+extra_place).css('display','none');
    }
}


function kids_number_change(id_room, beds, max_kids) 
{
    
    document.reservation_form['adults_'+id_room].options.length = 0;
    rooms=document.reservation_form['number_'+id_room].value;
    kids=document.reservation_form['kids_'+id_room].value;
    
    var option_index=0;
    
    for (var i=beds*rooms;i>=beds*rooms-max_kids*rooms;i=i-1)
    {
        if (i==(beds*rooms-kids))
        {
            //document.reservation_form['adults_'+id_room].options[option_index] = new Option(i, i, 'selected');
            $('#adults_'+id_room).append('<option value="'+i+'" selected="selected">'+i+'</option>');
        }
        else
        {
            //document.reservation_form['adults_'+id_room].options[option_index] = new Option(i, i);
            $('#adults_'+id_room).append('<option value="'+i+'">'+i+'</option>');
        }
        
        option_index=option_index+1;
    }        

    enter_child_age(id_room);
}


function adult_number_change(id_room, beds, max_kids) 
{
    /*
    river side mother fucker
    */
        //document.reservation_form['kids_'+id_room].options.length = 0;
        $('#kids_'+id_room).find('option').remove().end();
    /*
    river side mother fucker
    */
    
    rooms=document.reservation_form['number_'+id_room].value;
    adults=document.reservation_form['adults_'+id_room].value;
    
    var option_index=0;
    
    for (var i=0;i<=max_kids*rooms;i=i+1)
    {
        if (i==(beds*rooms-adults))
        {
            //document.reservation_form['kids_'+id_room].options[option_index] = new Option(i, i, 'selected');
            $('#kids_'+id_room).append('<option value="'+i+'" selected="selected">'+i+'</option>');
        }
        else
        {
            //document.reservation_form['kids_'+id_room].options[option_index] = new Option(i, i);
            $('#kids_'+id_room).append('<option value="'+i+'">'+i+'</option>');
        }
        option_index=option_index+1;
    } 
    
    enter_child_age(id_room);
}


function room_number_change(id_room, beds, max_kids, selected_adults, selected_kids, selected_claimless, selected_extra, claimless_posible, extra_posible) 
{
    document.reservation_form['adults_'+id_room].options.length = 0;
    
    if (document.reservation_form['claimless_'+id_room])
    {
        document.reservation_form['claimless_'+id_room].options.length = 0;
    }

    if (document.reservation_form['extra_bed_'+id_room])
    {
        document.reservation_form['extra_bed_'+id_room].options.length = 0;
    }
    
    document.reservation_form['kids_'+id_room].options.length = 0;

    rooms=document.reservation_form['number_'+id_room].value;

    if (rooms != 0) 
    {
    
        var option_index=0;
        for (var i=rooms;i>=0;i=i-1)
        {
            if (i==selected_claimless)
            {
                //document.reservation_form['claimless_'+id_room].options[option_index] = new Option(i, i, 'selected');
                $('#claimless_'+id_room).append('<option value="'+i+'" selected="selected">'+i+'</option>');
            }
            else
            {
                //document.reservation_form['claimless_'+id_room].options[option_index] = new Option(i, i);
                $('#claimless_'+id_room).append('<option value="'+i+'">'+i+'</option>');
            }
            
            if (document.reservation_form['extra_bed_'+id_room])
            {
                if (i==selected_extra)
                {
                    //document.reservation_form['extra_bed_'+id_room].options[option_index] = new Option(i, i, 'selected');
                    $('#extra_bed_'+id_room).append('<option value="'+i+'" selected="selected">'+i+'</option>');
                }
                else
                {
                    //document.reservation_form['extra_bed_'+id_room].options[option_index] = new Option(i, i);
                    $('#extra_bed_'+id_room).append('<option value="'+i+'">'+i+'</option>');
                }
            }
            
            option_index=option_index+1;
        }

        var option_index=0;
        for (var i=beds*rooms;i>=beds*rooms-max_kids*rooms;i=i-1)
        {
            if ((selected_adults>0)&&(i==selected_adults))
            {
                //document.reservation_form['adults_'+id_room].options[option_index] = new Option(i, i, 'selected');
                $('#adults_'+id_room).append('<option value="'+i+'" selected="selected">'+i+'</option>');
            }
            else
            {
                if (i==(beds*rooms-selected_kids))
                {                             
                    //document.reservation_form['adults_'+id_room].options[option_index] = new Option(i, i);
                    $('#adults_'+id_room).append('<option value="'+i+'">'+i+'</option>');
                }
                else
                {
                    //document.reservation_form['adults_'+id_room].options[option_index] = new Option(i, i);
                    $('#adults_'+id_room).append('<option value="'+i+'">'+i+'</option>');
                }
            }
            option_index=option_index+1;
        }        

        option_index=0;
        for (var i=0;i<=max_kids*rooms;i=i+1)
        {
            if ((selected_kids!=0)&&(i==selected_kids))
            {
                //document.reservation_form['kids_'+id_room].options[option_index] = new Option(i, i, 'selected');
                $('#kids_'+id_room).append('<option value="'+i+'" selected="selected">'+i+'</option>');
            }
            else
            {
                //document.reservation_form['kids_'+id_room].options[option_index] = new Option(i, i);
                $('#kids_'+id_room).append('<option value="'+i+'">'+i+'</option>');
            }
            option_index=option_index+1;
        }        

        document.reservation_form['adults_'+id_room].disabled = false;
        
        if (claimless_posible==1)
        {
            document.reservation_form['claimless_'+id_room].disabled = false;
        }
        else
        {
            document.reservation_form['claimless_'+id_room].disabled = true;
        }

        if (extra_posible==1)
        {
            document.reservation_form['extra_bed_'+id_room].disabled = false;
        }
        else
        {
            document.reservation_form['extra_bed_'+id_room].disabled = true;
        }

        document.reservation_form['kids_'+id_room].disabled = false;
        
    }
    else
    {
        document.reservation_form['adults_'+id_room].options[0] = new Option("0 ", "");
        
        if (document.reservation_form['claimless_'+id_room])
        {
            document.reservation_form['claimless_'+id_room].options[0] = new Option("0 ", "");
        }

        if (document.reservation_form['extra_bed_'+id_room])
        {
            document.reservation_form['extra_bed_'+id_room].options[0] = new Option("0 ", "");
        }
        
        document.reservation_form['kids_'+id_room].options[0] = new Option("0 ", "");
        document.reservation_form['adults_'+id_room].disabled = true;
        
        if (document.reservation_form['claimless_'+id_room])
        {
            document.reservation_form['claimless_'+id_room].disabled = true;
        }

        if (document.reservation_form['extra_bed_'+id_room])
        {
            document.reservation_form['extra_bed_'+id_room].disabled = true;
        }
        
        document.reservation_form['kids_'+id_room].disabled = true;

        if (document.reservation_form['extra_bed_'+id_room])
        {
            document.reservation_form['extra_bed_'+id_room].disabled = true;
        }
    }
    
    adult_number_change(id_room,beds,max_kids);    
    enter_child_age(id_room);
    enter_extra_bed_age(id_room);
    
}



function clear() {
    this.value = "";
}


function enter_extra_bed_age(row_id)
{
    var extra_bed=($('#extra_bed_'+row_id).val())    
    
    if (extra_bed>0)
    {
        $('#extra_bed_age_row_'+row_id).css('display','block');
        
        for (i=0;i<=19;i=i+1)
        {
            $('#extra_bed_age_'+row_id+'_'+i).css('display','none');
        }
        for (i=0;i<extra_bed;i=i+1)
        {
            $('#extra_bed_age_'+row_id+'_'+i).css('display','block');
        }
    }

    if ((extra_bed==0)||(extra_bed==""))
    {
        $('#extra_bed_age_row_'+row_id).css('display','none');
    }    
}


function enter_child_age(row_id)
{
    var kids=($('#kids_'+row_id).val())    
    
    if (kids>0)
    {
        $('#child_age_row_'+row_id).css('display','block');
        
        for (i=0;i<=19;i=i+1)
        {
            $('#child_age_'+row_id+'_'+i).css('display','none');
        }
        for (i=0;i<kids;i=i+1)
        {
            $('#child_age_'+row_id+'_'+i).css('display','block');
        }
    }

    if ((kids==0)||(kids==""))
    {
        $('#child_age_row_'+row_id).css('display','none');
    }
}

function getInternetExplorerVersion()
// Returns the version of Windows Internet Explorer or a -1
// (indicating the use of another browser).
{
   var rv = -1; // Return value assumes failure.
   if (navigator.appName == 'Microsoft Internet Explorer')
   {
      var ua = navigator.userAgent;
      var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
      if (re.exec(ua) != null)
         rv = parseFloat( RegExp.$1 );
   }
   return rv;
}


// submit check function
function submit_check(form) {
    var return_value = true;
    var mail_ok = true;
    $(form).find(".required").each(function() {
        var value = "";
        if ($(this).get(0).tagName == 'SELECT') value = $(this).find('option:selected').val();
        else value = $(this).val();

        if (value == "") {
            return_value = false;
            $(this).css({'border' : '1px solid red'});
            if (getInternetExplorerVersion() == 6.0 && $(this).get(0).tagName == 'SELECT'){
                $(this).css({'background-color' : 'red'});
                $(this).find('option').css({'background-color' : 'white'});
            }
        }
        else {
            $(this).css({'border' : '1px solid #006EA1'});
        }
    });
    
    
    if (return_value == false){
        alert("Vul in alle verplichte velden.");
        return return_value;
    }
    
    var mail = document.getElementsByName("email");
    var email = mail[0].value;
    var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    if (!emailPattern.test(email)){
        mail[0].style.border="1px solid red";
        alert("Vul in een geldig e-mail adres.");
        return false;
    }
        
    return return_value;
}
function check_business_conditions(form) {
    if(form.business_conditions.checked==true) {
        return true;
    }
    else {
        alert('Musíte akceptovať obchodné podmienky!');
        return false;
    }
}

function foo(value){
    var select=document.getElementById("number["+value+"]");
    var selectedTr=document.getElementById("extrabed"+value);
    if (select.value==0){
        selectedTr.style.display='none';
        document.getElementById("extrabed["+value+"]").checked=false;
        document.getElementById("extrabed_number["+value+"]").disabled='disabled';
    }
    else{
        selectedTr.style.display="";
        changeOptions(value);
        document.getElementById("extrabed["+value+"]").checked=false;
        document.getElementById("extrabed_number["+value+"]").disabled='disabled';
    }
}

function enableSelect(elem){
    if (elem.checked)
        document.getElementById("extrabed_number["+elem.value+"]").disabled=false;
    else
       document.getElementById("extrabed_number["+elem.value+"]").disabled='disabled';
}

function changeOptions(value) {
    var elSel=document.getElementById('extrabed_number['+value+']');
    var to=document.getElementById('number['+value+']').value;
    var count=0;
    while (elSel.length>0)
        elSel.remove(0);
    for (i=1;i<=to;i++) {
        var elOptNew = document.createElement('option');
        elOptNew.text = i;
        elOptNew.value = i;
        try {
            elSel.add(elOptNew, null); // standards compliant; doesn't work in IE
        }
        catch(ex) {
            elSel.add(elOptNew); // IE only
        }
        count++;                                                                                                         
    }
}

$(function() 
{
    var nli = $('input#newsLetterInput');
    var nli_bkp = nli.val();
    nli.focus(function() { if (nli.val() == nli_bkp) nli.val(''); });
    nli.blur(function() { if (nli.val() == '') nli.val(nli_bkp); });
    
    /*
    $('.radius_5').corner("5px");
    */
    
   
    // equal heights
    
    $('div.product_title').equalHeights();
    $('div.available_activity_list_item div.header').equalHeights();
    
    $('.calendar').datepicker( { dateFormat: "dd.mm.yy",yearRange: '-0:+2' } );     

    $('.calendar_birth_date').datepicker( { dateFormat: "dd.mm.yy",yearRange: '-80:+0' } );     

    $('.calendar_passport').datepicker( { dateFormat: "dd.mm.yy",yearRange: '-0:+20' } );     
    
    // jQuery lightbox
    $('a.gallery').lightBox();

    // idTabs
    $('#tabs').idTabs();
      
    // hiding form items (in registration form)
    $('input#comp').load(function() {
        if ($('input#comp:checked').val() != null) $('tr.company').show();
        else $('tr.company').hide();
    });

    $('input#add2').load(function() {
        if ($('input#add2:checked').val() != null) $('tr.add2').show();
        else $('tr.add2').hide();
    });

    $('input#comp').change(function() {
        if ($('input#comp:checked').val() != null) $('tr.company').show();
        else $('tr.company').hide();
    });

    $('input#add2').change(function() {
        if ($('input#add2:checked').val() != null) $('tr.add2').show();
        else $('tr.add2').hide();
    });

    // hiding order details (in order list)
    $('tr.order_detail').hide();
    //$('tr.order_info').hover(function() { $(this).next().show() }, function() { $(this).next().hide() });
    $('tr.order_info').css('cursor', 'pointer');
    $('tr.order_info').toggle(function() { $(this).next().show() }, function() { $(this).next().hide() });
    $('tr.order_detail').click(function() { $(this).hide() });
});

