﻿/*
// inside between <body></body> tags
<div id="imgSlideHolder" class="imgSlideHolder">
<div id="imgSlide" class="imgSlide">  
</div>
<ul class="imgSlideNumber"></ul>
</div>
*/

(function ($) {
    $.fn.prdgSlideImage = function (option) {


        var defaults = {

            holderWidth: 980,
            holderHeight: 310,
            tabNumberDistance: 4,
            timerInterval: 5000,
            xmlFilePath: "",
            hoverOffImage: "url(/Banner/slideNoBg.png)",
            hoverOnImage: "url(/Banner/slideNoBgOn.png)"

        };

        var options = $.extend(defaults, option);

        //return this.each(function () {

        var holderWidth = options.holderWidth; // 620;
        var holderHeight = options.holderHeight; // 210;
        var tabNumberDistance = options.tabNumberDistance; // 2;
        var timerInterval = options.timerInterval; // 5000;
        var xmlFilePath = options.xmlFilePath; // "XMLFile.xml";
        var hoverOffImage = options.hoverOffImage; // "url(images/slideNoBg.png)";
        var hoverOnImage = options.hoverOnImage; // "url(images/slideNoBgOn.png)";




        var currentImg = -1;
        var timeout;
        var totalImg = 0;

        $.ajax({
            type: "GET",
            url: xmlFilePath,
            dataType: "xml",
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                $(".imgSlideHolder").remove();
            },
            success: function (xml) {
                $(xml).find('image').each(function () {
                    var id = $(this).attr('id');
                    var path = $(this).attr('path');

                    $(".imgSlide").append('<div id="' + id + '"><img class="imgPic" src="' + path + '" /></div>');
                    $(".imgSlideNumber").append('<li><a href="#">&nbsp;</a></li>');
                    totalImg++;

                });

                initial();
            }
        });

        function initial() {
            $(".imgSlideHolder").css("width", holderWidth + "px").css("height", holderHeight + "px").css("position", "relative").css("margin", "0").css("overflow", "hidden");
            $(".imgSlide").css("width", holderWidth + "px").css("height", holderHeight + "px").css("position", "relative").css("margin", "0").css("text-align", "left");
            $(".imgSlide").children("div").css("position", "absolute").hide();


            $(".imgSlideNumber").css("width", holderWidth + "px").css("height", "16px").css("position", "relative").css("left", "-20px").css("bottom", "50px");
            $(".imgSlideNumber").children("li").css("width", "16px").css("height", "16px").css("list-style", "none").css("float", "left").css("padding-right", tabNumberDistance + "px");
            $(".imgSlideNumber").children("li").children("a").css("width", "16px").css("height", "16px").css("text-decoration", "none").css("text-align", "center").css("font-size", "9px").css("float", "left");
            $(".imgSlideNumber").children("li").hover(function () {
                var hoveredImage = $(".imgSlideNumber").children("li").index($(this));
                if (currentImg != hoveredImage) {
                    currentImg = hoveredImage
                    showImage();
                }
            },
                 function () {
                     timeout = setTimeout(playSlide, timerInterval);
                 });

            if (totalImg == 1) {
                currentImg == 0;
                showImage();
            }
            else {

                playSlide();

            }
        }

        function playSlide() {
            currentImg++;

            if (currentImg >= totalImg) {
                currentImg = 0;
            }

            showImage();

            timeout = setTimeout(playSlide, timerInterval);
        }

        function showImage() {
            clearTimeout(timeout);
            $('.imgSlide').css("display", "block").css("overflow", "hidden");
            $('.imgSlide').children("div").fadeOut();
            $('.imgSlide').children("div").eq(currentImg).fadeIn();
            $(".imgSlideNumber").children("li").children("a").css("background", hoverOffImage).css("color", "#c7fb8c"); ;
            $(".imgSlideNumber").children("li").children("a").eq(currentImg).css("background", hoverOnImage).css("color", "#ffffff"); ;
        }

        //});

    };
})(jQuery); 
