$(function() {
    var ticker = $('.ticker-container');
    var items = ticker.find('.items');
    var item_buttons = ticker.find('#type li');
    var navi_buttons = $('#ticker-navi li');
    var i, l, timer;
    var current_item, current_list;
    var list_count = navi_buttons.size();
    var wait_time = 6000;

    var init_item = function(i) {
        current_item = i;
        items.hide();
        clearTimeout(timer);
        show_list(0);
        item_buttons.removeClass('active');
        $(item_buttons[i]).addClass('active');
        $(items[i]).show();
        var lists = $(items[i]).find('li');

        for (i = 1, l = lists.length; i < l; i++) {
            $(lists[i]).hide();
        }

        timer = setTimeout(run_change, wait_time);        list_count = $(items[current_item]).find('li').size();		$('#ticker-navi').empty();	for (i = 1; i <= list_count; i++) { 	    $('#ticker-navi').append('<li>' + i + '</li>');        }	$('#ticker-navi li:first').addClass('active');	navi_buttons = $('#ticker-navi li');	for (i = 0, l = navi_buttons.length; i < l; i++) {
  	    (function (n) {
	        $(navi_buttons[n]).click(function () {
		    show_list(n);
	        });
	    })(i);
        }
    }

    var show_list = function(i) {
        current_list = i;
        var lists = $(items[current_item]).find('li');
        lists.hide();
        $(lists[i]).show();
        navi_buttons.removeClass('active');
        $(navi_buttons[i]).addClass('active');
    }

    var change_list = function () {
        current_list++
        if (current_list >= list_count) {
            current_list = 0;
        }
        show_list(current_list);
    }

    var run_change = function () {
        change_list();
        timer = setTimeout(run_change, wait_time);
    }

    init_item(0);

    for (i = 0, l = item_buttons.length; i < l; i++) {
        (function (n) {
            $(item_buttons[n]).hover(function () {
                init_item(n)
            });
        })(i);
    }
});
