jQuery.fn.slideShow = function(_options) {
    //defaults options
if (gbPop) {
    var _options = jQuery.extend({
        slideEl: 'ul li',
        linkNext: 'a#btnNext',
        linkPrev: 'a#btnPrev',
        linkPause: false,
        numElementLink: false,
        duration: 600,
        autoSlideShow: false,
        switchTime: 3000,
        event: 'click',
        currentEl: '#footer span.cur',
        allEl: '#footer span.all'
    }, _options);

    }
    else {
        var _options = jQuery.extend({
            slideEl: 'ul li',
            linkNext: 'a.right-galery-btn',
            linkPrev: 'a.left-galery-btn',
            linkPause: false,
            numElementLink: false,
            duration: 600,
            autoSlideShow: false,
            switchTime: 3000,
            event: 'click',
            currentEl: '#footer span.cur',
            allEl: '#footer span.all'
        }, _options);
    }



    return this.each(function() {
        //var counter = 4;
        var _THIS = jQuery(this);
        var _linkNext = false, _linkPrev = false, _linkPause = false, _numElementLink = false, _numElement = false;
        var _slideEl = $(_options.slideEl, _THIS);
        var _elTagName = _options.slideEl;
        if (_options.linkNext)
            var _linkNext = $(_options.linkNext, _THIS).length ? $(_options.linkNext, _THIS) : false;
        if (_options.linkPrev)
            var _linkPrev = $(_options.linkPrev, _THIS).length ? $(_options.linkPrev, _THIS) : false;
        if (_options.linkPause)
            var _linkPause = $(_options.linkPause, _THIS).length ? $(_options.linkPause, _THIS) : false;
        if (_options.numElementLink) {
            var _numElementLink = $(_options.numElementLink, _THIS).length ? $(_options.numElementLink, _THIS) : false;
            var _numElement = $(_options.numElementLink, _THIS).length ? _numElementLink.parent() : false;
        }
        var _duration = _options.duration;
        var _switchTime = _options.switchTime;
        var _numElActive, _n, _timer = false, _hover = false;

        if (!_slideEl.filter('.active').length)
            _slideEl.eq(0).addClass('active');

        $(_slideEl).not(".active").css('display', 'none');

        if ($(_numElement).length) { activeNumEl() }

        if (_options.autoSlideShow) {
            _timer = setTimeout(function() { nextEl() }, _switchTime);
            contentHover();
        }
        if (_linkNext) {
            $(_linkNext).click(function() {
                if (_timer) {
                    clearTimeout(_timer);
                    _timer = setTimeout(function() { nextEl() }, _switchTime);
                }
                if ($(_slideEl).filter(".active").next().is(_elTagName)) {
                    $(_slideEl).filter(".active").next().addClass("next");
                } else {
                    $(_slideEl).eq(0).addClass("next");
                }
                fadeElement();
                activeNumEl();
                //                GetImage(counter);
                //                counter = counter + 1;
                return false;
            });
        }
        if (_linkPrev) {
            $(_linkPrev).click(function() {

                if (_timer) {
                    clearTimeout(_timer);
                    _timer = setTimeout(function() { nextEl() }, _switchTime);
                }
                if ($(_slideEl).filter(".active").prev().is(_elTagName)) {
                    $(_slideEl).filter(".active").prev().addClass("next");
                } else {
                    $(_slideEl).filter(":last-child").addClass("next");
                }
                fadeElement();
                activeNumEl();
                return false;
            });
        }
        if (_linkPause) {
            if (!_options.autoSlideShow) {
                _linkPause.addClass('play');
                _options.autoSlideShow = true;
                if (!_hover) contentHover();
            }
            $(_linkPause).click(function() {
                if (!_linkPause.is('.play')) {
                    clearTimeout(_timer);
                    _linkPause.addClass('play');
                } else {
                    _linkPause.removeClass('play');
                    _timer = setTimeout(function() { nextEl() }, _switchTime);
                }
                return false;
            });
        }
        if (_numElementLink) {
            $(_numElementLink).bind(_options.event, function() {
                if (_timer) {
                    clearTimeout(_timer);
                    _timer = setTimeout(function() { nextEl() }, _switchTime);
                }
                _n = _numElement.index($(this).parent());
                if (!$(_slideEl).eq(_n).hasClass("active")) {
                    $(_slideEl).eq(_n).addClass("next");
                    fadeElement();
                    activeNumEl();
                }
                return false;
            });
        }
        if (_options.currentEl || _options.allEl) {
            _THIS.all = _slideEl.length;
            $(_options.allEl, _THIS).html(_THIS.all);
            function currentNum() {
                var _index = _slideEl.index(_slideEl.filter('.active')) + 1;
                $(_options.currentEl, _THIS).html(_index);
            }
            currentNum();
        }
        function contentHover() {
            _hover = true;
            _slideEl.hover(function() {
                if (_timer) clearTimeout(_timer);
            }, function() {
                if (_linkPause && !_linkPause.is('.play'))
                    _timer = setTimeout(function() { nextEl() }, _switchTime);
                else if (!_linkPause)
                    _timer = setTimeout(function() { nextEl() }, _switchTime);
            });
        }
        function nextEl() {
            if ($(_slideEl).filter(".active").next().is(_elTagName)) {
                $(_slideEl).filter(".active").next().addClass("next");
            } else {
                $(_slideEl).eq(0).addClass("next");
            }
            fadeElement();
            activeNumEl();
            _timer = setTimeout(function() { nextEl() }, _switchTime);
        };
        function activeNumEl() {
            $(_numElement).removeClass("active");
            _numElActive = $(_slideEl).index($(_slideEl).filter(".active")[0]);
            $(_numElement).eq(_numElActive).addClass("active");

        };
        function fadeElement() {
            $(_slideEl).filter(".active").fadeOut(_duration).removeClass("active");
            $(_slideEl).filter(".next").fadeIn(_duration).addClass("active").removeClass("next");
            if (_options.currentEl || _options.allEl) currentNum();

        };
    });
}


$(document).ready(function() {
	$('div.gallery').slideShow();
});



