/**
 * Created by JetBrains PhpStorm.
 * User: helgehvding
 * Date: 20.09.11
 * Time: 10.14
 * To change this template use File | Settings | File Templates.
 */

var gallery = function(obj)
{
	this.initialize(obj);
}

gallery.prototype = {

	initialize: function(obj)
	{
		var self = this;
		this.obj = obj;
		this.currentElement = 0;

		this.setObservers();
	},

	setObservers: function(){

		var self = this;

		$(this.obj.nextBtn).each(function(i,elm){
			$(elm).click(function(event){
                event.preventDefault();

                var nextImage;
                var lengde = $(self.obj.galleryContent).size() - 1;

                if((self.currentElement + 1) >= lengde)
                {
                    nextImage = 0;
                }
                else
                {
                    nextImage = self.currentElement + 1;
                }

                self.switchContent(nextImage,elm);
            });
		});

        $(this.obj.prevBtn).each(function(i,elm){
			$(elm).click(function(event){
                event.preventDefault();

                var nextImage;
                var lengde = $(self.obj.galleryContent).size() - 1;

                if((self.currentElement + 1) < 0)
                {
                    nextImage = lengde - 1;
                }
                else
                {
                    nextImage = self.currentElement - 1;
                }

                self.switchContent(nextImage,elm);
            });
		});

        $(this.obj.galleryBtn).each(function(i,elm){
            $(elm).click(function(){
                self.switchContent(i,elm);
            })
        })
	},

    switchContent: function(i,elm){
        var self = this;
        if(self.currentElement != i)
        {
            $(self.obj.galleryContent).eq(self.currentElement).fadeOut('slow');
            $(self.obj.galleryContent).eq(i).fadeIn('slow');
            $(self.obj.galleryBtn).eq(self.currentElement).toggleClass('active');
            $(self.obj.galleryBtn).eq(i).toggleClass('active');
            self.currentElement = i;
        }
    }

};

$(document).ready(function()
{
	if($('.bildegalleri'))
	{
		new gallery(
		{
			nextBtn: '.bildegalleri #next',
            prevBtn: '.bildegalleri #prev',
            galleryBtn: '#buttons .image',
			galleryContent: '#imageContainer .image'
		});
	}
});
