﻿function mycarousel_itemVisibleInCallback(carousel, item, i, state, evt)
{
    // The index() method calculates the index from a
    // given index who is out of the actual item range.
    var idx = carousel.index(i, mycarousel_itemList.length);
    carousel.add(i, mycarousel_getItemHTML(mycarousel_itemList[idx - 1]));
	 carousel.buttonNext.bind('click', function() {
        carousel.startAuto(0);
    });

    carousel.buttonPrev.bind('click', function() {
        carousel.startAuto(0);
    });

    // Pause autoscrolling if the user moves with the cursor over the clip.
    carousel.clip.hover(function() {
        carousel.stopAuto();
    }, function() {
        carousel.startAuto();
    });
	
};

function mycarousel_itemVisibleOutCallback(carousel, item, i, state, evt)
{
    carousel.remove(i);
};




/**
 * Item html creation helper.
 */
function mycarousel_getItemHTML(item)
{
    return '<a href="' + item.links + '"><img src="' + item.url + '" alt="' + item.title + '" onmouseover="javascript:SwapImage(this, \'on\');" onmouseout="javascript:SwapImage(this, \'off\');" /></a>';
};

jQuery(document).ready(function() {
    
    // determine custom start positions for carousel
    var cstart = GetCarouselStartPosition();
    var citem = GetCarouselItem(cstart - 1);
    ShowCarouselItemOverlay(citem);
        
    jQuery('#mycarousel').jcarousel({
        wrap: 'circular',
        auto: 6,
        animation: 2000,
        itemVisibleInCallback: {onBeforeAnimation: mycarousel_itemVisibleInCallback},
        itemVisibleOutCallback: {onAfterAnimation: mycarousel_itemVisibleOutCallback},
        start: cstart
    });
    
    /*
    jQuery('#mycarousel').jcarousel({
        start: 4
    });
    */
    
    if (formDisplayFlag != "1") $("#newwaysForm").hide();
	
});

function ShowCarouselItemOverlay(item)
{
    if (item == null) return;
    
    var url = item.links;
    if (url.indexOf("popupInfoDIVshow") < 0) return;
    
    //jQuery('#mycarousel').jcarousel.stopAuto();
    eval(url);
    
}

function GetCarouselItem(p)
{
    if (mycarousel_itemList == null) return null;
    return mycarousel_itemList[p];
}

function GetCarouselStartPosition() 
{
    var cstart = 1;
    var max = 10;
    if (mycarousel_itemList != null && typeof(mycarousel_itemList) != "undefined")
    {
        try 
        {
            max = mycarousel_itemList.length;
        }
        catch (ex)
        {}
    }
    
    var qstringvars = RetrieveQueryStringVars();
    if (qstringvars == null) return cstart;
    
    var qstart = qstringvars["cid"];
    
    try 
    {
        qstart = parseInt(qstart);
        
        if (!isNaN(qstart) && qstart > 0 && qstart <= max)
        {
            cstart = qstart;
        }
    }
    catch (ex)
    {}
    
    return cstart;
   
}
