﻿// logic for controling releases control (on the front page and investors&media page)

var ReleasesBoxScrollingDelay = 600; // release items scrolling speed 0.6 s
var releaseItemsPerPage = 6;
var upButtonImages = ["btn_bg-up.gif", "btn_bg-grey-up.gif", "btn_bg-up-h.gif", "btn_bg-grey-up.gif"]; // normal, grayed, normal-highlight, grayed-highlight
var downButtonImages = ["btn_bg-down.gif", "btn_bg-grey-down.gif", "btn_bg-down-h.gif", "btn_bg-grey-down.gif"];

// global vars
var itemsLength;
var releasePos = 0;
var upButtonState = 0;
var downButtonState = 0;

$(document).ready(function() {
    var releases = $('#releases');
    if (releases.length > 0) {
        var items = releases.find('li');
        itemsLength = items.length;
        items.hide();
        var displayedItems = items.slice(releasePos, releasePos + releaseItemsPerPage);
        if (displayedItems.length > 0) displayedItems.show();

        var upButton = releases.find('.up');
        var downButton = releases.find('.down');
        HandleButtonImages();

        if (upButton.length > 0 && downButton.length > 0) {
            upButton.click(function() {
                if (releasePos > 0) {
                    releasePos--;
                    HandleButtonImages();
                    var endItem = items.eq(releasePos + releaseItemsPerPage);
                    //endItem.fadeOut(ReleasesBoxScrollingDelay);

                    var firstItem = items.eq(releasePos);

                    firstItem.show();
                    var itm = $(firstItem);
                    itm.animate({ marginTop: "0px" }, ReleasesBoxScrollingDelay, function() { });
                }
                //FixContentHeight($('.highlight-fixed')); //function in main.js
            })
			.mouseover(function() { upButtonState |= 2; HandleButtonImages(); })
			.mouseout(function() { upButtonState &= ~2; HandleButtonImages(); });

            downButton.click(function() {
                if (releasePos + releaseItemsPerPage < itemsLength) {
                    var firstItem = items.eq(releasePos);
                    //firstItem.hide();
                    var endItem = items.eq(releasePos + releaseItemsPerPage);
                    endItem.fadeIn(ReleasesBoxScrollingDelay * 2, function() { if ($.browser.msie) this.style.removeAttribute('filter'); });
                    releasePos++;
                    HandleButtonImages();

                    var itm = $(firstItem);
                    itm.animate({ marginTop: -itm.innerHeight() }, ReleasesBoxScrollingDelay, function() { firstItem.hide(); });
                }
                //FixContentHeight($('.highlight-fixed'));//function in main.js
            })
			.mouseover(function() { downButtonState |= 2; HandleButtonImages(); })
			.mouseout(function() { downButtonState &= ~2; HandleButtonImages(); });
        }
    }
});

function HandleButtonImages()
{
	var releases = $('#releases');
	var items = releases.find('li');
	var upButton = releases.find('.up');
	var downButton = releases.find('.down');

	upButtonState &= ~1;
	downButtonState &= ~1;
	upButtonState |= releasePos <= 0 ? 1 : 0;
	downButtonState |= (releasePos + releaseItemsPerPage >= itemsLength) ? 1 : 0;
	
	var upButtonImage = upButtonImages[upButtonState];
	var downButtonImage = downButtonImages[downButtonState];

	ChangeButtonImage(upButton, upButtonImage);
	ChangeButtonImage(downButton, downButtonImage);
}

function ChangeButtonImage(btn, imgFileName)
{
	btn.css('background', '#fff url("../Images/' + imgFileName + '") no-repeat left');
}


