﻿//Used for both HP and products LP image scrollers [*JRN 10/07/23*]
//$(function() {
$(window).bind("load", function(){
    slider.init();
});

var slider = {
//    setSlideUp: window.setTimeout('slider.slideUpControls();', 1000), //1 sec
//    setSlideDown: window.setTimeout('slider.slideDownControls();', 9000), //9 secs
    num: -1,
    cur: 0,
    cr: [],
    al: null,
    ar: true,
    at: 10 * 1000, //10 secs
    init: function() {
        if (!slider.data || !slider.data.length)
            return false;

        var d = slider.data;
        slider.num = d.length;
        var pos = Math.floor(Math.random() * 1); //slider.num);
        for (var i = 0; i < slider.num; i++) {
            $('#' + d[i].id).css({ top: ((i - pos) * 321) });
            //Creates thumbnails for HP
//            if ($('#homeBanner').length > 0) {
//                $('#slideThumbs').append('<a id="slideLink' + i + '" href="#" onclick="slider.slide(' + i + ');return false;" onfocus="this.blur();"><img src="/images/home/scrollBanner/banner_' + (i + 1) + '_thumb.jpg"/></a>');
//            }
            //Creates number controls for products LP
//            else {
                $('#sliderNav').append('<a id="slideLink' + i + '" href="#" onclick="slider.slide(' + i + ');return false;" onfocus="this.blur();">' + (i + 1) + '</a>');
//            }
        }
        //Get and set height for banner container and images
        var bannerHeight = $('img.slide').height();
        $('img.slide, #bannerContainer #banner, #bannerContainer').css({ height: bannerHeight });

        //Fade in controls for products banner
        $('img, #productsBanner #slideControls', $('#bannerContainer')).fadeIn();
        slider.text(d[pos]); //

        //initialize Homepage banner details controls to slide up after a certain amount of time
//        slider.setSlideUp;

        slider.on(pos); // makes the thumb active
        slider.cur = pos; //sets pos to be the current slide

        //Set Homepage banner details controls to slide down after a certain amount of time (Should not be longer than at - setSlideUp timer)
//        slider.setSlideDown;
//        
        //Call the auto function to initialize the loop after the time interval at
        window.setTimeout('slider.auto();', slider.at);
    },
    auto: function() {
        if (!slider.ar)
            return false;

        //Determine the next slider for autoplay
        var next = slider.cur + 1;
        
        //Check bounds and set to first slide if true
        if (next >= slider.num) next = 0;
        
        //Call the slide function to actually animate the banner
        slider.slide(next);
//        slider.setSlideUp;
//        slider.setSlideDown;

    },
    slide: function(pos) {
        //Check bounds
        if (pos < 0 || pos >= slider.num || pos == slider.cur)
            return;
        
        //Reset timer of slide up action of controls
//        window.clearTimeout(slider.setSlideUp);
//        slider.setSlideUp = window.setTimeout('slider.slideUpControls();', 1000);

        //Reset timer of autoplay
        window.clearTimeout(slider.al);
        slider.al = window.setTimeout('slider.auto();', slider.at);

        //Reset timer of slide down action of controls
//        window.clearTimeout(slider.setSlideDown);
//        slider.setSlideDown = window.setTimeout('slider.slideDownControls();', 9000);
//        
        var d = slider.data;
        for (var i = 0; i < slider.num; i++)
            //Actual sliding of banner happens here
            $('#' + d[i].id).stop().animate({ top: ((i - pos) * 321) }, 500, 'swing');
        slider.on(pos); // makes the thumb active for HP and box active for products LP
        slider.text(d[pos]); //makes number active for products
        slider.cur = pos; //sets pos to be the current slide
    },
    //Current classes
    on: function(pos) {
        $('#sliderNav a').removeClass('on');
        $('#sliderNav a#slideLink' + pos).addClass('on');

//        $('#slideThumbs a').removeClass('on');
//        $('#slideThumbs a#slideLink' + pos).addClass('on');
    },
    //data for slider
    text: function(di) {
        $('#sliderClient').html(di.client);
        $('#sliderDesc').html(di.desc);
        //$('#slideThumbs').html(di.thumbs);
    }//,
//    alttext: function(id) {
//        $('#sliderClient').html(id);
//        $('#sliderDesc').html(id);
//    },
    //Slide controls up for HP
//    slideUpControls: function() {
//        $('#homeBanner #slideControls').stop().animate({ height: 88 }, 300);
//    },
//    //Slide controls down for HP
//    slideDownControls: function() {
//        $('#homeBanner #slideControls').stop().animate({ height: 0 }, 500);
//    }

};
