$.fn.slideInfoBar = function(options) {
    var defaults = {
        class_pointers: 'navi',
        class_pointer_element: 'pointer',
        class_pointer_active: 'act'
    };  
    var options = $.extend(defaults, options);
    var elements = new Array();
    var times = new Array();
    var pointers = new Array();
    var parent = this;
    var current = 0;
    var timeout;

    return this.each(function() {  
        $(this).find('ul li:gt(0)').hide();
        var i = 0;
        $(this).find('ul').children().each(function(){
            elements[i] = $(this);
            // var t = $(this).find('a').attr('rel');
            // t = t.substr(t.indexOf("_")+1);
            t = 3;
            times[i++] = t;
        });
        _createPointers();
        pointers[current].addClass(options.class_pointer_active);
        setTimeout(function(){_setInfoBar(null)}, times[current]*1000);
    });    
    function _createPointers() {
        var pointer = '';
        var i = 0;
        $.each(elements, function(index, value){
            i++;
            temp_element = $('<li>', {
                'class': options.class_pointer_element+'_'+index,
                'html': '<a href="javascript:void(0)">'+(index+1)+'</a>'
            });
            temp_element.click(function(){
                _setInfoBar(index)
            });
            pointers[index] = temp_element;
            $('.'+options.class_pointers).append(temp_element);
            
        });
    }
    function _setInfoBar(index) {
        elements[current].fadeOut(200);
        pointers[current].removeClass(options.class_pointer_active);
        
        if(index != null) {
            current = index;
        } else {
            ++current;
            if(current >= elements.length) current = 0;            
        }        
        elements[current].fadeIn(700);
        pointers[current].addClass(options.class_pointer_active);
        
        clearTimeout(timeout);
        timeout = setTimeout(function(){_setInfoBar(null)}, times[current]*1000);
    }
};

