﻿var _visibleIndex = 0;
var _timer;
var _duration = 4000;
var _data;
var _banner = $j("#home-banner");

function initializeHomeBanner(json) {
    _data = json;
    _timer = setTimeout("loadSlide()", _duration);
}

function loadSlide() {
    clearTimeout(_timer);
    var nextIndex = _visibleIndex < _data.length - 1 ? _visibleIndex + 1 : 0;
    var image = $j(new Image());
    image.load(function() {
        image.hide();
        var link = _data[nextIndex].link;
        var target = _data[nextIndex].target;

        _banner.click(function() {
            if (target == "_blank")
                window.open(link);
            else
                window.location = link;
            return false;
        });

        var div = $j("<div></div>");
        _banner.append(div);

        var imageLink = $j("<a></a>");
        imageLink.attr("href", link);
        imageLink.attr("target", target);

        imageLink.append(image);
        div.append(imageLink);

        var body = $j("<div class=\"body\"></div>");
        body.hide();
        body.addClass(_data[nextIndex].textAlignment);

        if (_data[nextIndex].kicker != "")
            body.append("<h3>" + _data[nextIndex].kicker + "</h3>");

        if (_data[nextIndex].title != "") {
            var h1 = $j("<h1></h1>");
            var headingSize = _data[nextIndex].headingSize;
            if (headingSize == "small")
                h1.attr("class", headingSize);
            var h1Link = $j("<a>" + _data[nextIndex].title + "</a>");
            h1.append(h1Link);
            h1Link.attr("href", link);
            h1Link.attr("target", target);

            body.append(h1);
        }

        if (_data[nextIndex].subtitle != "") {
            var h2 = $j("<h2>" + _data[nextIndex].subtitle + "</h2>");
            body.append(h2);
        }

        if (_data[nextIndex].lead != "")
            body.append("<div class=\"lead\">" + _data[nextIndex].lead + "</div>");

        div.append(body);

        image.fadeIn(400, function() {
            body.show();
            _visibleIndex = _visibleIndex < _data.length - 1 ? _visibleIndex + 1 : 0;
            _banner.children(":first").remove();
            _timer = setTimeout("loadSlide()", _duration);
        });
    });
    image.attr("src", _data[nextIndex].picture);
}
