function is_email(emailAddress) {
    var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)jQuery)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?jQuery)/i);
    return pattern.test(emailAddress);
}

function checkleapyear(Y)
{
         return ( ((Y)>0) && !((Y)%4) && ( ((Y)%100) || !((Y)%400) ) )
}


function number_of_days_in_month (year, cmonth) {
    var month = new Array();
    month[1] = 31;
    if (checkleapyear(year)) {
        month[2] = 29;
    } else {
        month[2] = 28;
    }
    month[3] = 31;
    month[4] = 30;
    month[5] = 31;
    month[6] = 30;
    month[7] = 31;
    month[8] = 31;
    month[9] = 30;
    month[10] = 31;
    month[11] = 30;
    month[12] = 31;
    
    return month[cmonth];
    
}

function resi_broj_dana() {
     jQuery(".depart_year, .depart_month").change(function(){
         var year = parseInt(jQuery(".depart_year").val());
         var month = parseInt(jQuery(".depart_month").val());
         
         var max_broj_dana = number_of_days_in_month (year, month);
         
         var poslednji = parseInt(jQuery(".depart_day option:last").val());

         if (poslednji  > max_broj_dana) {
            for (var x = max_broj_dana + 1; x <= poslednji; x ++) {
                jQuery(".depart_day option[value='" + x + "']").remove();
            }
         } else {
            //dodaj
            for (var x = poslednji + 1; x <= max_broj_dana; x ++) {
                var y = x - 1; 
                jQuery(".depart_day").append("<option value='" + x + "'>" + x + "</option>");
            }
         }
         
     })
     
     jQuery(".return_year, .return_month").change(function(){
         var year = parseInt(jQuery(".return_year").val());
         var month = parseInt(jQuery(".return_month").val());
         
         var max_broj_dana = number_of_days_in_month (year, month);
         
         var poslednji = parseInt(jQuery(".return_day option:last").val());
     
         if (poslednji  > max_broj_dana) {
            for (var x = max_broj_dana + 1; x <= poslednji; x ++) {
                jQuery(".return_day option[value='" + x + "']").remove();
            }
         } else {
            //dodaj
            for (var x = poslednji + 1; x <= max_broj_dana; x ++) {
                var y = x - 1;
                jQuery(".return_day option[value='" + y + "']").after("<option value='" + x + "'>" + x + "</option>");
            }
         }
         
     })
}    

function validate_request_a_quote() {
      jQuery(".quote_request").submit(function(){
    
            var from_field = jQuery(".from_input").val();
            var to_field = jQuery(".to_input").val();
            var passengers = jQuery(".passengers_input").val();
            
            var error = false;
            var error_msg = "";
            
            if (from_field == '') {
                error = true;
                error_msg += "field FROM is required \n";
            }
            
            if (to_field == '') {
                error = true;
                error_msg += "field TO is required \n";
            }
            
            if (passengers == '') {
                error = true;
                error_msg += "field PASSENGER(S) is required \n";
            }
            
            if (error) {
                alert(error_msg);
                return false;
            }
            
      });
}

function validate_contact_form() {
    jQuery("#contact_form").submit(function(){
        var first_name = jQuery(".ime").val();
        var last_name = jQuery(".prezime").val();
        var email = jQuery(".email").val();
        var phone = jQuery(".telefon").val();
        var comments = jQuery(".komentar").val();
        
        var error = false;
        var error_msg = "";
            
            if (first_name == '') {
                error = true;
                error_msg += "field FIRST NAME is required \n";
            }
            
            if (last_name == '') {
                error = true;
                error_msg += "field LAST NAME is required \n";
            }
            
            if (email == '') {
                error = true;
                error_msg += "field EMAIL is required \n";
            } else if (!is_email(email)) {
                error = true;
                error_msg += "email address is not valid \n";
            }
            
            if (comments == '') {
                error = true;
                error_msg += "field COMMENTS is required \n";
            }
            
            if (error) {
                alert(error_msg);
                return false;
            }
        
    })
}

function num_only()
    {
        jQuery(".num_only").bind("keypress", function(e) {
                                       var key = e.charCode || e.keyCode || 0;
                                       if (key < 8) return false;
                                       if ((key < 13) && (key > 8)) return false;
                                       if ((key < 37) && (key > 13)) return false;
                                       if ((key < 39) && (key > 37)) return false;
                                       if ((key < 48) && (key > 39)) return false;
                                       if (key > 57) return false;  
                                        
        });
    }

jQuery(document).ready(function(){
        
        if (jQuery("#left_part").html() != null) {
            jQuery("#calculate_btn").click(function(){
                jQuery("#avi-submit-brokerlink-search-form-link").trigger("click");
                return false;
            })
        }
        
        if (jQuery("#quote_request_large").html() != null) {
            jQuery("#quote_req_l_btn").click(function(){
                jQuery("#avi-submit-brokerlink-search-form-link").trigger("click");
                return false;
            })
        }
        
        if (jQuery("#contact_form").html() != null) {
            jQuery("input").focus(function(){
                jQuery(this).select();
            });
            validate_contact_form();
        }

        
})
