﻿$(document).ready(function() {

    // Load the user's saved form if they have one,
    // and start them on the first step 
    loadRentalForm();


    // Check if a step or code example is specified
    // in the hash.
    //
    // By default move to step 1
    if (document.location.hash && document.location.hash.length > 0) {
        hideHelp();
        onHashChange();
    }
    else
        document.location.hash = "#Step1";


    // Form Events
    $(".step1submit").click(function() {

        // Store rental form elements and move on to step 2
        var validData = checkRequired();

        if (validData == true) {
            $("#validation p").html("<span>*</span> required fields");
            storeRentalForm();
            showStep2();
        }
        else {
            $("#validation p").html("<span>*</span> required fields<br /><span class=\"alert\">- One or more required fields are empty.</span>");
            return false;
        }

    });

    $(".step2submit").click(function() {

        // Store rental car choice, update the summary and move on to step 3
        storeRentalForm();
        updateSummary();
        showStep3();

    });

    $("#nav_dates-and-location").click(function() {
        storeRentalForm();
        showStep1();
    });

    $("#nav_car-type").click(function() {
        // Store rental form elements and move on to step 2
        var validData = checkRequired();

        if (validData == true) {
            $("#validation p").html("<span>*</span> required fields");
            storeRentalForm();
            showStep2();
        }
        else {
            $("#validation p").html("<span>*</span> required fields<br /><span  class=\"alert\">- One or more required fields are empty.</span>");
            return false;
        }
    });

    $("#nav_confirmation").click(function() {
        storeRentalForm();
        showStep3();
    });


    // Other Events
    $(".close-code-box").click(function() {

        // Close all code boxes
        $(".code-overlay").each(function() {
            $(this).css("visibility", "hidden");
        });

        resetHashToStep();

        return false;

    });

    $("#open-price-widget").click(function() {
        showWidget();
        return false;
    });

    $("#widget-close").click(function() {
        hideWidget();
        return false;
    });

    $("#open-start-box").click(function() {
        showHelp();
        return false;
    });

    $("#open-start-box2").click(function() {
        showHelp();
        return false;
    });

    $("#close-start-box").click(function() {
        hideHelp();
        return false;
    });

    $(".copy-code").click(function() {
        copyToClipboard(this);
    });

});
