/**
 * @author dtardia
 */
(function($){
    jQuery.homeSlideSettings = {
        selected: 0,
        oldSelected: 0,
        elW: 0,
        startLeft: 0,
        setSelected: function(el){
            jQuery(el).find(".homeSliderMask .homeSliderContainer div").eq(jQuery.homeSlideSettings.oldSelected).removeClass("centerBox")

            value = jQuery.homeSlideSettings.selected;

            if (!jQuery(el).find(".homeSliderMask .homeSliderContainer div").eq(value).hasClass("actived")) {
                jQuery(el).find(".homeSliderMask .homeSliderContainer div").eq(value).addClass("centerBox")
            }
        },
        moveSlider: function(el, value){

            var container = jQuery(el).find(".homeSliderMask .homeSliderContainer");
            var mask = jQuery(el).find(".homeSliderMask");
            container.animate({
                left: value
            }, {
                complete: jQuery.homeSlideSettings.setSelected
            });
            jQuery.homeSlideSettings.startLeft = value;
            if (value >= 0) {
                jQuery(el).find(".arrow").eq(0).find("a").hide();
            }
            else {
                jQuery(el).find(".arrow").eq(0).find("a").show();
            }

            if (value <= (mask.width() - container.width())) {
                jQuery(el).find(".arrow").eq(1).find("a").hide();
            }
            else {
                jQuery(el).find(".arrow").eq(1).find("a").show();
            }
        },
        goPrev: function(el){
            var container = jQuery(el).find(".homeSliderMask .homeSliderContainer");
            var newX = jQuery.homeSlideSettings.startLeft + jQuery.homeSlideSettings.elW;
            jQuery.homeSlideSettings.oldSelected = jQuery.homeSlideSettings.selected;
            jQuery.homeSlideSettings.selected--;
            jQuery.homeSlideSettings.moveSlider(el, newX);
        },
        goNext: function(el){
            var container = jQuery(el).find(".homeSliderMask .homeSliderContainer");
            var newX = jQuery.homeSlideSettings.startLeft - jQuery.homeSlideSettings.elW;
            jQuery.homeSlideSettings.oldSelected = jQuery.homeSlideSettings.selected;
            jQuery.homeSlideSettings.selected++;
            jQuery.homeSlideSettings.moveSlider(el, newX);
        }

    }, jQuery.fn.homeSlide = function(sel){
        var slider = jQuery(this);
        var sliderContainer = slider.find(".homeSliderMask .homeSliderContainer");
        var els = sliderContainer.find("div");

        jQuery.homeSlideSettings.selected = (sel < els.length - 1) ? sel : (els.length - 1);
        var containerWidth = 0;
        var elIndex = 0;
        els.each(function(){
            var el = jQuery(this);
            var elLink = jQuery(this).find("a");
            elLink.css("background-color", "#FFF");
            elLink.css("opacity", 0);
            elLink.data("idNum", elIndex);
            elLink.data("container", slider);

            containerWidth += el.width();

            jQuery.homeSlideSettings.elW = el.width();
            elIndex++;
        });
        sliderContainer.width(containerWidth);
        var newX = -(jQuery.homeSlideSettings.elW * (jQuery.homeSlideSettings.selected - 1));
        var maxX = (slider.find(".teamSliderMask").width() - sliderContainer.width());
        sliderContainer.css("left", ((newX > maxX) ? newX : maxX));

        jQuery.homeSlideSettings.startLeft = sliderContainer.position().left;

        jQuery(this).find(".arrow").eq(0).find("a").bind("click", function(e){
            jQuery.homeSlideSettings.goPrev(slider);
        });
        jQuery(this).find(".arrow").eq(1).find("a").bind("click", function(e){
            jQuery.homeSlideSettings.goNext(slider);
        });
        jQuery.homeSlideSettings.moveSlider(slider, ((newX > maxX) ? newX : maxX));
        jQuery.homeSlideSettings.setSelected(jQuery(this), jQuery.homeSlideSettings.selected);
    }
})(jQuery);
