var feeder = {
    timer:              0,
    events_offset:	0,
    events_limit:	0,
    events_display:	0,

    event_list: [],
    load_url: '/profile/dashboard/',
    filter: 0,
    home_feeder: 0,
    replace_events: false,
    current: 0,

    load_events: function (ethis, homepage_filter, fgroup){
	
        var actual_filter;

        jQuery('.events-view-all a').addClass('bs_waiting');
        jQuery.get(
            this.load_url,
            {
                dl_ctrl	: 'xml-1-1279527074274_870', // em, dude, sorry for that
                'dl_data[loader]'			: true,
                'dl_data[offset]'			: this.events_offset,
                'dl_data[limit]'			: this.events_limit,
                'dl_data[filter]'			: actual_filter,
                'dl_data[home_dashboard]'	: this.home_dashboard
            },
            function(_data){
                try{
                    jQuery('.events-view-all a').removeClass('bs_waiting');

                    var _d      = eval('new Array('+_data+')');
                    var _json	= _d[1];
                    var _html	= _d[2];

                    _data = _data.replace(/\\n/g, "").replace(/\\t/g, "").replace(/\\/g, "");
                    var myRe = /<!--start-->(.*?)<!--finish-->+/gim
                    var event_list = _data.match(myRe);

                    jQuery('.events-view-all').fadeOut('fast');

                    feeder.fill_event_list(event_list);

                    jQuery('a[rel="activate-popup"]').click(function () {
                        showActivatePopup();
                        return false;
                    });
                }catch(err){
                    alert('');
                }
            }
            );
        return false;
    },

    add_events: function(_html){
        var _wr = jQuery('<div class="events_loaded">').css({
            display:'none'
        });
        _wr.append(_html);

        if (this.replace_events) {
            jQuery('.events_loaded').remove();
        }

        jQuery('.events-view-all').before(_wr);
        _wr.fadeIn('slow');
    },

    fill_event_list:function(event_list){
	this.event_list = event_list;
	this.current = (feeder.event_list.length-this.events_display);
        for (var key= this.current;key<feeder.event_list.length;key++) {
            var tt = event_list[key];
            feeder.add_events(tt);
        }
    },

    rotate_events:function(){
        setTimeout('feeder.update_events()',this.timer)
    },

    update_events:function(){
        jQuery('.events_loaded').remove();
        this.current--;
        if(this.current < 0){
            this.current = (feeder.event_list.length-this.events_display);
        }
        for (var key=this.current; key<(this.current+this.events_display); key++) {
            var tt = feeder.event_list[key];
            feeder.add_events(tt);
        }
        this.rotate_events()
    }
}

