﻿var module = (function () {
    var page_size = 20;
	var container = null;
    var slider = null;
    var step = 13;
    var current_margin = 0;
    var currentIdx = 0;
    var max = 0;
    var upBtn = null;
    var downBtn = null;
    var delay = 500;
    var WS = null;
	function init(){
		container = $("control-722010B1");
		if (container){
            this.WS = LS.Lomedet.Web.Controls.categories.control_service;

            slider = container.getElement(".slider ul");
            var items = slider.getElements("li");

            page_size = Math.min(items.length - 2, page_size); 
            slider.getParent().setStyle("height", page_size * step + 2);
            
            var current = slider.getElement("li.current");
            max = (items.length - page_size) * step;
            current_margin = Math.max(-1 * items.indexOf(current) * step, -max);
           
            slider.set('tween',{ duration:1000,transition:'sine:in:out' });

            downBtn = container.getElement(".down").addEvent("click", function(el){
                 down();
            });
            upBtn = container.getElement(".up").addEvent("click", function(el){
                 up();
            });
            slider.getElements("a").addEvent("click", function(e){
                 e.preventDefault();
                 select(this);
            });

            disableControls();
		}
	}	
    function down(){
        //if (current_margin)
        if (current_margin > -max){
            upBtn.setStyle("opacity", 1).removeClass("disabled");

            current_margin -= step;
            slider.tween("margin-top", current_margin);

            disableControls();
        }
    }
    function up(){
       if (current_margin != 0){
            downBtn.setStyle("opacity", 1).removeClass("disabled");

            current_margin += step;
            slider.tween("margin-top",current_margin);

            disableControls();
        }
    }
    function select(el){
        id = el.get("href");
        this.WS.GetGallery(id, function(response){
            $("module-A19382E3").getElement(".left").set("html", response);
            Asset.javascript("/modules/web/module.js");
            slider.getElements("li.current").removeClass("current");
            el.getParent().addClass("current");
        }.bind(this));
    }
    function disableControls(){
        if (current_margin == 0){
            upBtn.setStyle("opacity",0.1).addClass("disabled");
        }else if (current_margin == -max){
            downBtn.setStyle("opacity", 0.1).addClass("disabled");
        }
    }
	$domready(init);
})();
