/////////////////////////////////
// Clink.js
//
// Bringing blog linking to a whole new level!
// see http://komski.awardspace.com/clink
//
// name : arvin castro
// url  : komski.awardspace.com
// email: onebigearth@yahoo.com
// date : May 24, 2007

var clinkFadeValue = 0, clinkFadeRun = false, clinkFadeTop, clinkData = new Array();

rvn.echo('<div class="clink" id="clinkID"><b class="t1"></b><b class="t2"></b><b class="t3"></b>');
rvn.echo('<b class="t4"></b><b class="body"><img id="clinkLoad" src="load.gif" class="load">');
rvn.echo('<img id="clinkIMG" onload="hideClinkLoad()"><b id="clinkName" class="name"></b>');
rvn.echo('<b id="clinkURL"></b><b id="clinkText" class="text"></b><b style="clear:both;"></b></b>');
rvn.echo('<b class="b4"></b><b class="b3"></b><b class="b2"></b><b class="b1"></b></div>');

clink = rvn.obj('clinkID');
bs = clink.getElementsByTagName('b');
for(i=0;i<bs.length;i++) {
    bs[i].style.color = clinkConfig.foregroundColor;
    bs[i].style.background = clinkConfig.backgroundColor;
    bs[i].style.fontFamily = clinkConfig.fontFamily;
}

function echoClink(text, url, icon, name, description) {
    i = clinkData.length;
    clinkData[i] = [text, url, icon, name, description];
    rvn.echo('<a href="http://'+url+'"  ');
    rvn.echo('onmouseover="showClink(event, '+i+')" ');
    rvn.echo('onmouseout="hideClink()">');
    rvn.echo(text+'</a>'+ clinkConfig.separator);
}


function showClink(e, n) {
    
    rvn.obj('clinkIMG').src = clinkData[n][2];
    rvn.obj('clinkName').innerHTML = clinkData[n][3];
    rvn.obj('clinkURL' ).innerHTML = clinkData[n][1];
    rvn.obj('clinkText').innerHTML = clinkData[n][4];
    
    if(!rvn.obj('clinkIMG').complete) {
        rvn.hide(rvn.obj('clinkIMG'));
        rvn.inline(rvn.obj('clinkLoad'));
    }
    if(!clinkData[n][2]) {
        rvn.hide(rvn.obj('clinkIMG'));
        rvn.hide(rvn.obj('clinkLoad'));
    }
    
    x = rvn.mousex(e);
    y = rvn.mousey(e);
    x += (x + 300 > rvn.widthof (window))? -250: 40;
    y += (y + 130 > rvn.heightof(window))? -110: 5;
    rvn.move(clink, x, y);
    
    rvn.block(clink);
        
    clinkFadeTop = 100;
    if(!clinkFadeRun) clinkFade();
}

function clinkFade() {
    
    dir = (clinkFadeTop > clinkFadeValue);
    if(dir) {
        clinkFadeValue+= Math.ceil((clinkFadeTop-clinkFadeValue) * .3);
        clinkFadeValue = Math.min(clinkFadeValue, clinkFadeTop);
    } else {
        clinkFadeValue+= Math.floor((clinkFadeTop-clinkFadeValue) * .2);
        clinkFadeValue = Math.max(clinkFadeValue, clinkFadeTop);
        clink.style.top= rvn.topof(clink) + 1;
    }
    
    if(rvn.ie()) clink.style.filter = 'alpha(opacity='+clinkFadeValue+')';
    else clink.style.opacity = clinkFadeValue / 100;
    
    if(clinkFadeValue != clinkFadeTop) setTimeout('clinkFade()', 1);
    else {
        clinkFadeRun = false;    
        if(clinkFadeTop == 0) rvn.hide(clink);
    }
}

function hideClink() {
    clinkFadeTop = 0;
    if(!clinkFadeRun) {
        clinkFadeRun = true;
        clinkFade();
    }
}

function hideClinkLoad() {
    rvn.hide(rvn.obj('clinkLoad'));
    rvn.inline(rvn.obj('clinkIMG'));
}