﻿
Cufon.replace('h1, h2, h3');

$(document).ready(function () {

    function megaHoverOver() {
        $(this).find(".sub").stop().fadeTo('fast', 1, function () {$('.sub')[0].style.filter = '';}).show(); //Find sub and fade it in

        (function ($) {
            //Function to calculate total width of all ul's
            jQuery.fn.calcSubWidth = function () {
                rowWidth = 0;
                //Calculate row
                $(this).find("ul").each(function () { //for each ul...
                    rowWidth += $(this).width(); //Add each ul's width together
                });
            };
        })(jQuery);

        if ($(this).find(".row").length > 0) { //If row exists...

            var biggestRow = 0;

            $(this).find(".row").each(function () {	//for each row...
                $(this).calcSubWidth(); //Call function to calculate width of all ul's
                //Find biggest row
                if (rowWidth > biggestRow) {
                    biggestRow = rowWidth;
                }
            });

            $(this).find(".sub").css({ 'width': biggestRow }); //Set width
            $(this).find(".row:last").css({ 'margin': '0' });  //Kill last row's margin

        } else { //If row does not exist...

            $(this).calcSubWidth();  //Call function to calculate width of all ul's
            $(this).find(".sub").css({ 'width': '585px' }); //Set Width
            //$(this).find(".sub").removeAttr("style");
            //this.style.removeAttribute('filter');  
            //this.style.removeAttribute("filter");
            //this.style.removeAttribute("filter");
            //$(this).find(".sub").css({ 'filter': '' });

        }
    }
    //On Hover Out
    function megaHoverOut() {
        $(this).find(".sub").stop().fadeTo('fast', 0, function () { //Fade to 0 opactiy
            $(this).hide();  //after fading, hide it
            //$(this).find(".sub").css({ 'filter': '' });
        });
    }

    //Set custom configurations
    var config = {
        sensitivity: 1, // number = sensitivity threshold (must be 1 or higher)
        interval: 00, // number = milliseconds for onMouseOver polling interval
        over: megaHoverOver, // function = onMouseOver callback (REQUIRED)
        timeout: 150, // number = milliseconds delay before onMouseOut
        out: megaHoverOut // function = onMouseOut callback (REQUIRED)
    };

    //$("#nav ul li .sub").css({ 'opacity': '0' }); //Fade sub nav to 0 opacity on default
    $("#nav ul li").hoverIntent(config);

});

function pause(milliseconds) {
    var dt = new Date();
    while ((new Date()) - dt <= milliseconds) { /* Do nothing */ }
}

function getCountries() {
    var selectedCountry;
    if ($('#drpCountry').val() != '0') {selectedCountry = $('#drpCountry').val(); }

    $('#drpCountry').attr('disabled', 'disabled');
    $('#drpCountry').html('<option>Loading...</option>');

    $('#drpCountry').load('/functions/functions.aspx', {
        'action': 'getCountries',
        'subjectID': $('#drpSubject').val()
    }, function () {
        $('#drpCountry').removeAttr('disabled');
        if (selectedCountry != null) { $('#drpCountry').val(selectedCountry); }
    });
    _gaq.push(['_trackEvent', 'TripFinder', 'Get-Countries', '']);
}

function getSubjects() {
    var selectedSubject;
    if ($('#drpSubject').val() != '0') { selectedSubject = $('#drpSubject').val(); }

    $('#drpSubject').attr('disabled', 'disabled');
    $('#drpSubject').html('<option>Loading...</option>');

    $('#drpSubject').load('/functions/functions.aspx', {
        'action': 'getSubjects',
        'countryID': $('#drpCountry').val()
    }, function () {
        $('#drpSubject').removeAttr('disabled');
        if (selectedSubject != null) { $('#drpSubject').val(selectedSubject); }
    });
}
