jQuery.SkylarkSlider = {

    

    

    options: {

        paginationStripSelector : '.pagination-strip',

        viewable : 1,

        gestures: false,

        auto: true,

        slideshowInterval: 5000

    },

    

    outer : '',

    inner : '',

    items : '',

    width : '',

    

    current: 1,

    

    

    addLinks: function(){

        var p = $(jQuery.SkylarkSlider.options.paginationStripSelector);

        var max = Math.ceil( jQuery.SkylarkSlider.items.length / jQuery.SkylarkSlider.options.viewable );

        p.empty();

        for(var i=1; i< (max+1); i++){

            

            p.append('<a href="javascript:void(0)" class="sliderLink">'+i+'</a>');

        }

        p.children('a:first').addClass('active');

        $(jQuery.SkylarkSlider.options.paginationStripSelector + ' a').click( jQuery.SkylarkSlider.goTo );

        

    },

    

    goTo: function(){

        jQuery.SkylarkSlider.options.auto = false;

        var page = parseInt( $(this).text() ) - 1;

        var s = jQuery.SkylarkSlider.width * page;

        jQuery.SkylarkSlider.outer.animate({scrollLeft:s});

        $(jQuery.SkylarkSlider.options.paginationStripSelector + ' a').removeClass('active');

        $(this).addClass('active');

        jQuery.SkylarkSlider.current = page;

    },

    

    autoGoTo: function(){

        if( jQuery.SkylarkSlider.options.auto === false ) return;

        var n = jQuery.SkylarkSlider.current;

        if( n > ($(jQuery.SkylarkSlider.options.paginationStripSelector + ' a').length - 1) ) n = 0;

        var s = jQuery.SkylarkSlider.width * n;

        jQuery.SkylarkSlider.outer.animate({scrollLeft:s});

        $(jQuery.SkylarkSlider.options.paginationStripSelector + ' a').removeClass('active');

        $($(jQuery.SkylarkSlider.options.paginationStripSelector + ' a')[n]).addClass('active');

        jQuery.SkylarkSlider.current = n + 1;

    },

    

    init: function(){

        if( arguments.length == 1){

            for(prop in arguments[0]){

                jQuery.SkylarkSlider.options[prop] = arguments[0][prop];

            }

        }

        jQuery.SkylarkSlider.outer = $(this);

        jQuery.SkylarkSlider.inner = jQuery.SkylarkSlider.outer.children('.slider-inner');

        jQuery.SkylarkSlider.items = jQuery.SkylarkSlider.inner.children('.slider-item');

        jQuery.SkylarkSlider.width = jQuery.SkylarkSlider.items.outerWidth() * jQuery.SkylarkSlider.options.viewable;

        

        jQuery.SkylarkSlider.inner.width( jQuery.SkylarkSlider.width * jQuery.SkylarkSlider.items.length );

        

        jQuery.SkylarkSlider.addLinks();

        

        if( jQuery.SkylarkSlider.options.auto ){

            window.setInterval( jQuery.SkylarkSlider.autoGoTo, jQuery.SkylarkSlider.options.slideshowInterval )

        }

    }









}













jQuery.fn.skylarkslider = function(){

    var options = arguments.length == 1 ? arguments[0] : {};

    jQuery.SkylarkSlider.init.call($(this)[0], options);

    };






