(function($) {
    $.fn.extend({
        horSlider: function(options) {
            var defaults = {
                nextArrow: '',
                prevArrow: '',
                count: 4,
                speed: 600,
                bigImg: false,
                bigImgHolder: '',
                bigNav: false,
                mainPrev: '',
                mainNext: ''
            };
            var options = $.extend(defaults, options);
            return this.each(function() {
                var o = options;
                var obj = $(this);
                var len, imgPath;
                var ctr = 0;
                len = obj.find('li').size();

                $(o.nextArrow).bind('click', nextThumb);
                $(o.prevArrow).bind('click', prevThumb);

                if (o.bigImg) {
                    obj.find('a').bind('click', showBig);
                }
                else {
                    obj.find('a').bind('click', showBigNo);
                }

                if (o.bigNav) {
                    $(o.mainNext).bind('click', nextBig);
                    $(o.mainPrev).bind('click', prevBig);
                } else {
                
                }


                function mainNextPrev() {
                    if (ctrBig >= len - 1) {
                        $(o.mainNext).fadeOut(10);
                    }
                    else {
                        $(o.mainNext).fadeIn(10);
                    }


                    if (ctrBig <= 0) {
                        $(o.mainPrev).fadeOut(10);
                    }
                    else {
                        $(o.mainPrev).fadeIn(10);
                    }
                }



                function nextBig() {
                    ctrBig++;
                    imgPath = obj.find('ul').children('li:eq(' + ctrBig + ')').find('a').attr('href');
                    loadBig();
                    mainNextPrev()
                    return false;
                }

                function prevBig() {
                    ctrBig--;
                    imgPath = obj.find('ul').children('li:eq(' + ctrBig + ')').find('a').attr('href');
                    loadBig();
                    mainNextPrev()
                    return false;
                }





                if (len <= o.count) {
                    $(o.nextArrow).hide(0);
                    $(o.prevArrow).hide(0);
                }

                function nextThumb() {
                    $(o.prevArrow).fadeIn(10);
                    ctr++;
                    obj.find('ul').animate({ "left": -obj.find('li:eq(' + ctr + ')').position().left }, o.speed);
                    if (ctr == len - o.count) {
                        $(o.nextArrow).fadeOut(10);
                    }
                    return false;
                }

                function prevThumb() {
                    $(o.nextArrow).fadeIn(10);
                    ctr--;
                    obj.find('ul').animate({ "left": -obj.find('li:eq(' + ctr + ')').position().left }, o.speed);
                    if (ctr == 0) {
                        $(o.prevArrow).fadeOut(10);
                    }
                    return false;
                }

                function showBig() {

                    ctrBig = obj.find('ul li').index($(this).parent('li'))
                    // alert(ctrBig)
                    imgPath = $(this).attr('href');
                    loadBig();
                    mainNextPrev();
                    return false;
                }


                function showBigNo() {
                    //return false;
                }

                function loadBig() {

                    var bigImg = new Image();

                    $(bigImg).load(function() {
                        $(this).css({ 'display': 'none' })
                        $(o.bigImgHolder).prepend(this)
                        $(this).fadeIn(o.speed);
                        $(o.bigImgHolder).find('img:eq(1)').fadeOut(o.speed, function() {
                            $(o.bigImgHolder).find('img:eq(1)').remove();
                        })
                    }).attr({ 'src': imgPath })
                }
            });
        }
    });

})(jQuery)
