function fetch_object(idname)
{
    if (document.getElementById)
    {
        return document.getElementById(idname);
    }
    else if (document.all)
    {
        return document.all[idname];
    }
    else if (document.layers)
    {
        return document.layers[idname];
    }
    else
    {
        return null;
    }
}

function fetch_offset (obj)
{
    var left_offset  = obj.offsetLeft;
    var top_offset   = obj.offsetTop;
    var width_offset = obj.offsetWidth;

    while ((obj = obj.offsetParent) != null)
    {
        left_offset += obj.offsetLeft;
        top_offset += obj.offsetTop;
    }

    return { 'left' : left_offset, 'top' : top_offset, 'width' : width_offset };
};


var visadmeny = 'menu0';

function showmenu(id, obj)
{
    var menuobj             = fetch_object(id);
    var pos                 = fetch_offset(obj);
    var leftpx              = pos['left'];
    var toppx               = pos['top'] + obj.offsetHeight;
    menuobj.style.top       = (toppx) + 'px';
    menuobj.style.left      = (leftpx + 0) + 'px';
    menuobj.style.display   = 'block';
    visadmeny = id;
}

function showmenuleft(id, obj)
{
    var menuobj             = fetch_object(id);
    var pos                 = fetch_offset(obj);
    var leftpx              = pos['left'];
    var toppx               = pos['top'] + obj.offsetHeight - 15;
    menuobj.style.top       = (toppx) + 'px';
    menuobj.style.left      = (leftpx + 0) + 'px';
    menuobj.style.display   = 'block';
    visadmeny = id;
}

function hidemenu(id)
{
    visadmeny = 'menu0';
    setTimeout("hidemenu2('" + id + "')", 20);
}

function hidemenu2 (id) {
    if(visadmeny != id)
    {
        var menuobj           = fetch_object(id);
        menuobj.style.left    = '-500px';
        menuobj.style.display = 'none';
    }
}

function showHorseInfo(id, obj, startNr, horseName, driverName, trainerName)
{
    var menuobj             = fetch_object(id);
    var pos                 = fetch_offset(obj);
    var leftpx              = pos['left'];
    var toppx               = pos['top'] + obj.offsetHeight;
    menuobj.style.top       = (toppx) + 'px';
    menuobj.style.left      = (leftpx - 50) + 'px';
    menuobj.style.display   = 'block';
    current_menu = id;

    //**
    document.getElementById(id + '_horseName').innerHTML = startNr + ' ' + unescape(horseName);
    document.getElementById(id + '_driverName').innerHTML = unescape(driverName) + ' (' + unescape(trainerName) + ')';

}

function showLegInfo(id, obj, raceName, distance, startMethod, reservorder)
{
    var menuobj             = fetch_object(id);
    var pos                 = fetch_offset(obj);
    var leftpx              = pos['left'];
    var toppx               = pos['top'] + obj.offsetHeight;
    menuobj.style.top       = (toppx) + 'px';
    menuobj.style.left      = (leftpx) + 'px';
    menuobj.style.display   = 'block';
    current_menu = id;

    //**
    document.getElementById(id + '_raceName').innerHTML = unescape(raceName);
    document.getElementById(id + '_distance').innerHTML = distance + ' ' + startMethod;
    document.getElementById(id + '_reservorder').innerHTML = 'Turordning: ' + reservorder;

}

function hpPlus(id)
{
    var hp        = fetch_object(id);
    hp.innerHTML  =  Number(hp.innerHTML) + 1;
}

function hpMinus(id)
{
    var hp        = fetch_object(id);

    if (Number(hp.innerHTML) == 0)
        return true;

    hp.innerHTML  =  Number(hp.innerHTML) - 1;

}

