//
// Pull Down Navigation. Source: http://javascript-array.com/scripts/jquery_simple_drop_down_menu/
//

var timeout         = 500;
var closetimer		= 0;
var ddmenuitem      = 0;

function jsddm_open()
{	jsddm_canceltimer();
	jsddm_close();
	ddmenuitem = $(this).find('ul').eq(0).show();}

function jsddm_close()
{	if(ddmenuitem) ddmenuitem.hide();}

function jsddm_timer()
{	closetimer = window.setTimeout(jsddm_close, timeout);}

function jsddm_canceltimer()
{	if(closetimer)
	{	window.clearTimeout(closetimer);
		closetimer = null;}}

$(document).ready(function()
{	$('#nav > li').bind('mouseover', jsddm_open);
	$('#nav > li').bind('mouseout',  jsddm_timer);});

document.onclick = jsddm_close;

function queryString(key) 
{
    var hu = window.location.search.substring(1);
    var gy = hu.split("&");
    for (var i = 0; i < gy.length; i++) 
    {
        var ft = gy[i].split("=");
        if (ft[0].toLowerCase() == key.toLowerCase()) 
        {
            return ft[1];
        }
    }
    
    return "";
}

/* EPIC BIKE HOMEPAGE */
var homepageInterval = null;
var homepageTextArray = [];
var homepageFeatureIndex = 4;
var homepageTextHeight = 0;

$(document).ready(function()
{
    if ($("#hompageHeadline").length)
    {
        homepageInterval = setInterval("homepageIntervalExec()", 5000);
        homepageIntervalExec();
        
        $("#homepageThumbs div").mouseenter(function()
        {
            
            $(this).css({ "border": "solid 3px #0989E0" });
            $(this).find("img").css({ "width": 139, "height": 64 });
            
        }).mouseleave(function()
        {
            
            $(this).css({ "border": "none" });
            $(this).find("img").css({ "width": 145, "height": 70 });
            
        }).click(function()
        {
            clearInterval(homepageInterval);
            
            var featureIndex = parseInt($(this).attr("id").replace("feature", ""));
            
            homepageLoadFeature(featureIndex);
        });
    }
    
    $(".clickItem").mouseenter(function()
    {
        $(this).css("border", "solid 3px #0989E0");
    }).mouseleave(function()
    {
        $(this).css("border", "solid 3px #fff");
    }).click(function()
    {
        var a = $(this).find("a");
        
        if (a.length)
        {
            location.href = a.attr("href");
        }
    });
});

function homepageIntervalExec()
{
    // Cap length of features to 4.
    if (homepageFeatureIndex > 2)
    {
        homepageFeatureIndex = -1;
    }
    
    homepageFeatureIndex = homepageFeatureIndex + 1;
    homepageLoadFeature(homepageFeatureIndex);
}

function homepageLoadFeature(index)
{
    var o = $("#feature" + index);
    
    homepageFeatureIndex = index;
    
    $("#hompageHeadline").css("background", "url(/public/images/source/" + o.attr("imageUrl") + ") no-repeat").click(function()
    {
        if (o.attr("NavigateToUrl").length)
        {
            location.href = o.attr("NavigateToUrl");
        }
    }).empty();
    
    loadLeftText();
}

function loadLeftText()
{
    var o = $("#feature" + homepageFeatureIndex);
    
    var leftText = o.find(".left").html();
    var leftSize = o.find(".left").attr("fontSize");
    
    homepageTextArray = leftText.split('_');
    
    homepageTextHeight = 0;
    
    if (leftText.length > 0)
        homepagePlaceText(leftSize, "left");
    else
        loadRightText();
}

function loadRightText()
{
    var o = $("#feature" + homepageFeatureIndex);
    
    var rightText = o.find(".right").html();
    var rightSize = o.find(".right").attr("fontSize");
    
    homepageTextArray = rightText.split('_');
    
    homepageTextHeight = 0;
    
    if (rightText.length > 0)
        homepagePlaceText(rightSize, "right");
}

function homepagePlaceText(fontSize, direction)
{
    var stylePos = "left:0px;";
    
    if (direction != "left")
        stylePos = "right:0px;";
    
    // Add in all elements.
    for (var i = 0; i < homepageTextArray.length; i++)
    {
        $("#hompageHeadline").append("<div id='" + direction + i + "' style='" + stylePos + ";font-size:" + fontSize + "px;'>" + homepageTextArray[i] + "</div>");
    }
    
    // Kick off the animation.
    slideNext(0, direction);
}

function slideNext(index, direction)
{
    var pos = 0;
    index = parseInt(index);
    
    // Set the height of the box with the current text size.
    if (homepageTextHeight == 0)
    {
        homepageTextHeight = $("#" + direction + "0").height() + 6;
    }
    
    pos = (homepageTextHeight * (homepageTextArray.length - 1 - index)) + 0;
    
    $("#" + direction + index).css("bottom", pos).show("slide", { direction: direction }, 400, function()
    {
        if (index != homepageTextArray.length - 1)
        {
            slideNext(parseInt(index) + 1, direction);
        }
        else
        {
            // Load next side (if exists).
            if (direction == "left")
                loadRightText();
        }
    });
}
