﻿window.addEvent('domready', function() { Blossom.setup(); });

var Blossom = {
    CurrentPage: 0,
    TransitionLength: 12000,
    Animating: false,
    Timer: null,
    setup: function() {
        Blossom.DropDown = new Dropdown();

        $$('.nextpage').addEvent('click', function(x) {
            $$('#page1,#pagetext').addClass('hidden');
            $('page2').removeClass('hidden');
        });

        if ($('promosection') != null) {
            var left = 0;

            Blossom.Pages = $$('#promosection .page');

            Blossom.Pages.setStyles({ 'opacity': '0', 'display': 'block', 'visibility': 'visible' }).each(function(y) {
                y.setStyle('left', left + 'px');
                left += y.getSize().x;
            });

            if (Blossom.Pages.length > 1) {
                var pn = new Element('div', { 'id': 'promonav' });
                pn.inject('promosection');

                var i = 0;
                Blossom.Pages.each(function(y) {
                    var el = new Element('div');
                    el.inject(pn);
                    var j = i;
                    el.addEvent('click', function(x) {
                        Blossom.CurrentPage = j;
                        Blossom.ShowPage(j);
                    });
                    i++;
                });
            }
            Blossom.PromoNav = $$('#promonav div');
            Blossom.SetPromoNav(0);

            Blossom.Pages.set('tween', { 'duration': '1500' });
            Blossom.Pages.fade(1);

            Blossom.Scroller = new Fx.Scroll('promoinner', { 'duration': '1500', onComplete: Blossom.AnimEnd, onStart: Blossom.AnimStart });
            Blossom.Timer = Blossom.NextPage.delay(Blossom.TransitionLength);
        }
    },
    NextPage: function() {
        if (!Blossom.Animating) {
            Blossom.CurrentPage++;
            if (Blossom.CurrentPage >= Blossom.Pages.length)
                Blossom.CurrentPage = 0;
            Blossom.ShowPage(Blossom.CurrentPage);

        }
    },
    SetPromoNav: function(y) {
        var i = 0;
        Blossom.PromoNav.each(function(z) {
            if (z.hasClass('selected') && i != y)
                z.removeClass('selected');
            if (i == y)
                z.addClass('selected');
            i++;
        });

    },
    ShowPage: function(y) {
        if (!Blossom.Animating) {

            Blossom.SetPromoNav(y);

            $clear(Blossom.Timer);

            Blossom.Scroller.toElement(Blossom.Pages[y]);
        }
    },
    AnimStart: function() { Blossom.Animating = true; },
    AnimEnd: function() { Blossom.Animating = false; Blossom.Timer = Blossom.NextPage.delay(Blossom.TransitionLength); }
}

