﻿/*
* 	Easy Slider - jQuery plugin
*	written by Alen Grakalic	
*	http://cssglobe.com/post/3783/jquery-plugin-easy-image-or-content-slider
*
*	Copyright (c) 2009 Alen Grakalic (http://cssglobe.com)
*	Dual licensed under the MIT (MIT-LICENSE.txt)
*	and GPL (GPL-LICENSE.txt) licenses.
*
*	Built for jQuery library
*	http://jquery.com
*
*/

(function($j) {

    var snurrare = 2;
    var intervalTime;

    $j.fn.easySliderPuff = function(options) {

        // default configuration properties
        var defaults = {
            speed: 800,
            intervalSpeed: 7000
        };
        var options = $j.extend(defaults, options);

        return this.each(function() {
            var obj = $j(this);
            var s = $j("li", obj).length;
            var w = obj.width();
            var ts = s - 1;
            var t = 0;
            $j("ul", obj).css('width', s * w);

            intervalTime = setInterval(function() { animateThis($j("#slider"), snurrare, w, s, options.speed); }, options.intervalSpeed);

            // PUFF HANDLER START
            $j("a", ".puffNav").click(function() {
                var id = $j(this).attr("alt");
                animate(obj, id, w, s, options.speed);

                changeImgNav(id);
                clearInterval(intervalTime);

                var nextId = parseInt(id, 10) + 1;
                if (nextId > s) {
                    nextId = 1;
                }

                intervalTime = setInterval(function() { animateThis($j("#slider"), nextId, w, s, options.speed); }, options.intervalSpeed);

            });
            // PUFF HANDLER END
        });

    };

    $j.fn.easySliderButik = function(options) {

        // default configuration properties
        var defaults = {
            speed: 800
        };
        var options = $j.extend(defaults, options);

        return this.each(function() {
            var obj = $j(this);
            var s = $j("li", obj).length;
            var w = obj.width();
            var ts = s - 1;
            var t = 0;
            $j("ul", obj).css('width', s * w);
            
            animate(obj, randomnumber, w, s, options.speed);

            // BUTIK HANDLER START
            $j("a.butikN").click(function() {
                next = parseInt($j(this).attr("alt"), 10) + 1;
                animate(obj, next, w, s, options.speed);
            });
            $j("a.butikP").click(function() {
                prev = parseInt($j(this).attr("alt"), 10) - 1;
                animate(obj, prev, w, s, options.speed);
            });

            // Close last navigator
            $j(".arrowRight:last").attr("class", "arrowNo");

            // Close first navigator
            $j(".arrowLeft:first").attr("class", "arrowNo");

            // BUTIK HANDLER END
        });

    };

    function animate(obj, t, w, s, speed) {
        id = parseInt(t, 10) - 1;
        if (id == s) {
            id = 0;
        } else if (id == -1) {
            id = 0;
        }
        p = (id * w * -1);
        $j("ul", obj).animate(
            { marginLeft: p },
			speed
		);
    };

    function animateThis(obj, t, w, s, speed) {
        if (snurrare == s) {
            snurrare = 1;
        } else {
            snurrare = parseInt(t, 10) + 1;
        }
        changeImgNav(t);
        animate(obj, t, w, s, speed);
    }

    function changeImgNav(id) {

        $j(".puffNav img").each(function() {
            var oldURL = $j(this).attr("src");
            var newURL = oldURL.replace("gfx/puffNavSelected.gif", "gfx/puffNav.gif");
            $j(this).attr("src", newURL);
        });

        $j("#puffNav" + id).attr("src", "gfx/puffNavSelected.gif");

    }
})(jQuery);
