var OX = -20;
var OY = -30;
var TIC = 0;
var TS = 1.0;

function mouseOut () {
    alert( 'Out' );
    TS = 1.0;
}
function mouseOver () {
    alert( 'Over' );
    TS = 0.2;
}

function init () {
    var lang_list = document.getElementById( 'lang_list' );
    lang_list.style.position = 'absolute';
    var tag_list = document.getElementById( 'tag_list' );
    tag_list.style.position = 'absolute';
    timer();
}

var STOPFLAG = 0;
function timer () {
    if ( STOPFLAG ) return;
    var lrnd = ( TIC / 200.0 ) * Math.PI * 2;
    var lsize = 350+Math.sin( lrnd ) * 100;
    var trnd = ( TIC / 100.0 ) * Math.PI * 2;
    var tsize = 400+Math.cos( trnd ) * 150;
    circle( 'lang_list', lsize, 20+2*TIC );
    circle( 'tag_list', tsize, 3*TIC );
    TIC += TS;
    setTimeout( timer, 100 );
}

function circle ( name, size, t ) {
    var ul = document.getElementById( name );
    var list = ul.getElementsByTagName( 'li' );
    if ( ! size ) size = 365;
    if ( ! t ) t = 0;
    var bwid = document.body.clientWidth;
    var bhei = document.body.clientHeight;

    var kanban = document.getElementById( 'enter_kanban' );
    kanban.style.position = 'absolute';
    var kwid = kanban.clientWidth;
    var khei = kanban.clientHeight;
    kanban.style.left = Math.floor(OX+(bwid-kwid)/2)+'px';
    kanban.style.top = Math.floor(OY+(bhei-khei)/2)+'px';

    var cx = OX+bwid/2;
    var cy = OY+bhei/2;
    for( var i=0; i<list.length; i++ ) {
        list[i].style.position = 'absolute';
        var rad = ( i / list.length + t / 360.0 ) * Math.PI * 2;
        var tki = Math.cos(rad/5)/10+1.0;
        var ty = size * tki;
        var tx = size * tki * 1.2;
        var twid = list[i].clientWidth;
        var thei = list[i].clientHeight;
        list[i].style.top = Math.floor(cy + ty/2 * Math.sin(rad) - thei/2)+'px';
        list[i].style.left = Math.floor(cx + tx/2 * Math.cos(rad) - twid/2)+'px';
    }
}

// window.onload = init;
