
function intval( mixed_var )
{
    // Get the integer value of a variable using the optional base for the conversion  
    // 
    // version: 812.3015
    // discuss at: http://phpjs.org/functions/intval
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: stensi
    // +   bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // *     example 1: intval('Kevin van Zonneveld');
    // *     returns 1: 0
    // *     example 2: intval(4.2);
    // *     returns 2: 4
    // *     example 3: intval(42, 8);
    // *     returns 3: 42
    // *     example 4: intval('09');
    // *     returns 4: 9
    var tmp;

    var type = typeof( mixed_var );

    if (type == 'boolean')
    {
        if (mixed_var == true)
        {
            return 1;
        }
        else
        {
            return 0;
        }
    }
    else if (type == 'string')
    {
        tmp = parseInt(mixed_var * 1);
        if (isNaN(tmp) || !isFinite(tmp))
        {
            return 0;
        }
        else
        {
            return tmp;
        }
    }
    else if (type == 'number' && isFinite(mixed_var) )
    {
        return Math.floor(mixed_var);
    }
    else
    {
        return 0;
    }
}

function tb_getbbpos(id)
{
    var b = document.getElementById("tb"+id+"b");
    
    var pos = {x:0, y:0};
    
    if (b)
    {
        var bx_str = b.style.left;
        var by_str = b.style.top;
        pos.x = intval(bx_str.substr(0,bx_str.length - 2));        
        pos.y = intval(by_str.substr(0,by_str.length - 2));
    }
    
    return pos;
}

function tb_getbbsize(id)
{
    var b  = document.getElementById("tb"+id+"b");
    
    var size = {w:0, h:0};
    
    if (b)
    {
        var w_str = b.style.width;
        var h_str = b.style.height
        size.w = intval(w_str.substr(0,w_str.length - 2));        
        size.h = intval(h_str.substr(0,h_str.length - 2));
    }
    
    return size;
}

function tb_getpos(id)
{
    var tl = document.getElementById("tb"+id+"tl");
    
    var pos = {x:0, y:0};
    
    if (tl)
    {
        var cx_str = tl.style.left;
        var cy_str = tl.style.top;
        pos.x = intval(cx_str.substr(0,cx_str.length - 2));        
        pos.y = intval(cy_str.substr(0,cy_str.length - 2));
    }
    
    return pos;
}

function tb_getsize(id)
{
    var c  = document.getElementById("tb"+id+"c");
    
    var size = {w:0, h:0};
    
    if (c)
    {
        var w_str = c.style.width;
        var h_str = c.style.height
        size.w = intval(w_str.substr(0,w_str.length - 2)) + 32;        
        size.h = intval(h_str.substr(0,h_str.length - 2)) + 55;
    }
    
    return size;
}

function tb_newpos(id,nx,ny)
{
    var tl = document.getElementById("tb"+id+"tl");
    var t  = document.getElementById("tb"+id+"t");
    var tr = document.getElementById("tb"+id+"tr");
    var l  = document.getElementById("tb"+id+"l");
    var c  = document.getElementById("tb"+id+"c");
    var r  = document.getElementById("tb"+id+"r");
    var bl = document.getElementById("tb"+id+"bl");
    var b  = document.getElementById("tb"+id+"b");
    var br = document.getElementById("tb"+id+"br");
    
//    var w_str = c.style.width;
//    var h_str = c.style.height
//    var w = intval(w_str.substr(0,w_str.length - 2)) + 32;        
//    var h = intval(h_str.substr(0,h_str.length - 2)) + 55;
    
    var size = tb_getsize(id);
    
    if (nx >= 0)
    {
        tl.style.left = nx+"px";
        t.style.left = (nx+6)+"px";
        tr.style.left = (nx+(size.w)-6)+"px";
        l.style.left = nx+"px";
        c.style.left = (nx+6)+"px";
        r.style.left = (nx+(size.w)-6)+"px";
        bl.style.left = nx+"px";
        b.style.left = (nx+6)+"px";
        br.style.left = (nx+(size.w)-6)+"px";
    }
    
    if (ny >= 0)
    {
        t.style.top  = ny+"px";
        tl.style.top  = ny+"px";
        tr.style.top  = ny+"px";
        l.style.top  = (ny+6)+"px";
        c.style.top  = (ny+6)+"px";
        r.style.top  = (ny+6)+"px";
        bl.style.top  = (ny+(size.h)-29)+"px";
        b.style.top  = (ny+(size.h)-29)+"px";
        br.style.top  = (ny+(size.h)-29)+"px";
    }
}

function tb_newsize(id,w,h)
{
    var tl = document.getElementById("tb"+id+"tl");
    var t  = document.getElementById("tb"+id+"t");
    var tr = document.getElementById("tb"+id+"tr");
    var l  = document.getElementById("tb"+id+"l");
    var c  = document.getElementById("tb"+id+"c");
    var r  = document.getElementById("tb"+id+"r");
    var bl = document.getElementById("tb"+id+"bl");
    var b  = document.getElementById("tb"+id+"b");
    var br = document.getElementById("tb"+id+"br");
        
    var pos = tb_getpos(id);
    
    // Fix new positions
    tr.style.left = ((pos.x)+w-6)+"px";
    r.style.left = ((pos.x)+w-6)+"px";
    bl.style.top  = ((pos.y)+h-29)+"px";
    b.style.top  = ((pos.y)+h-29)+"px";
    br.style.left = ((pos.x)+w-6)+"px";
    br.style.top  = ((pos.y)+h-29)+"px";    

    // Adjust width and height
    t.style.width = (w-12)+"px";
    l.style.height = (h-35)+"px";
    c.style.height = (h-55)+"px";
    c.style.width = (w-32)+"px";
    r.style.height = (h-35)+"px";
    b.style.width = (w-12)+"px";
}

function tb_setcontent(id,str)
{
    document.getElementById("tb"+id+"c").innerHTML = str;
}

function autoCursor(e)
{
    document.body.style.cursor = "auto";
}

function pointerCursor(e)
{
    document.body.style.cursor = "pointer";
}

function tb_setLink(id,linkurl)
{
    document.getElementById("tb"+id+"tl").onclick = function (e) { window.location = linkurl; }
    document.getElementById("tb"+id+"t").onclick = function (e) { window.location = linkurl; }
    document.getElementById("tb"+id+"tr").onclick = function (e) { window.location = linkurl; }
    document.getElementById("tb"+id+"l").onclick = function (e) { window.location = linkurl; }
    document.getElementById("tb"+id+"c").onclick = function (e) { window.location = linkurl; }
    document.getElementById("tb"+id+"r").onclick = function (e) { window.location = linkurl; }
    document.getElementById("tb"+id+"bl").onclick = function (e) { window.location = linkurl; }
    document.getElementById("tb"+id+"b").onclick = function (e) { window.location = linkurl; }
    document.getElementById("tb"+id+"br").onclick = function (e) { window.location = linkurl; }
}
    

function tb_pCursor(id)
{
    document.getElementById("tb"+id+"tl").onmouseover = pointerCursor;
    document.getElementById("tb"+id+"t").onmouseover = pointerCursor;
    document.getElementById("tb"+id+"tr").onmouseover = pointerCursor;
    document.getElementById("tb"+id+"l").onmouseover = pointerCursor;
    document.getElementById("tb"+id+"c").onmouseover = pointerCursor;
    document.getElementById("tb"+id+"r").onmouseover = pointerCursor;
    document.getElementById("tb"+id+"bl").onmouseover = pointerCursor;
    document.getElementById("tb"+id+"b").onmouseover = pointerCursor;
    document.getElementById("tb"+id+"br").onmouseover = pointerCursor;    

    document.getElementById("tb"+id+"tl").onmouseout = autoCursor;
    document.getElementById("tb"+id+"t").onmouseout = autoCursor;
    document.getElementById("tb"+id+"tr").onmouseout = autoCursor;
    document.getElementById("tb"+id+"l").onmouseout = autoCursor;
    document.getElementById("tb"+id+"c").onmouseout = autoCursor;
    document.getElementById("tb"+id+"r").onmouseout = autoCursor;
    document.getElementById("tb"+id+"bl").onmouseout = autoCursor;
    document.getElementById("tb"+id+"b").onmouseout = autoCursor;
    document.getElementById("tb"+id+"br").onmouseout = autoCursor;    
}

function tb_aCursor(id)
{
    document.getElementById("tb"+id+"tl").onmouseover = autoCursor;
    document.getElementById("tb"+id+"t").onmouseover = autoCursor;
    document.getElementById("tb"+id+"tr").onmouseover = autoCursor;
    document.getElementById("tb"+id+"l").onmouseover = autoCursor;
    document.getElementById("tb"+id+"c").onmouseover = autoCursor;
    document.getElementById("tb"+id+"r").onmouseover = autoCursor;
    document.getElementById("tb"+id+"bl").onmouseover = autoCursor;
    document.getElementById("tb"+id+"b").onmouseover = autoCursor;
    document.getElementById("tb"+id+"br").onmouseover = autoCursor;    
}

    
function tb_hide(id)
{
    document.getElementById("tb"+id+"tl").style.display = "none";
    document.getElementById("tb"+id+"t").style.display = "none";
    document.getElementById("tb"+id+"tr").style.display = "none";
    document.getElementById("tb"+id+"l").style.display = "none";
    document.getElementById("tb"+id+"c").style.display = "none";
    document.getElementById("tb"+id+"r").style.display = "none";
    document.getElementById("tb"+id+"bl").style.display = "none";
    document.getElementById("tb"+id+"b").style.display = "none";
    document.getElementById("tb"+id+"br").style.display = "none";
}

function tb_show(id)
{
    document.getElementById("tb"+id+"tl").style.display = "block";
    document.getElementById("tb"+id+"t").style.display = "block";
    document.getElementById("tb"+id+"tr").style.display = "block";
    document.getElementById("tb"+id+"l").style.display = "block";
    document.getElementById("tb"+id+"c").style.display = "block";
    document.getElementById("tb"+id+"r").style.display = "block";
    document.getElementById("tb"+id+"bl").style.display = "block";
    document.getElementById("tb"+id+"b").style.display = "block";
    document.getElementById("tb"+id+"br").style.display = "block";
}
