// --------------------------------------------------------
var HotIdx    = 0;
var HotNumber = 0;
var HotPic    = null;
var HotImages = null;
var HotTimer  = null;
var HotLoaded = 0;
var NowLoaded = 0;
var OkLoaded  = 0;

var TotalTimeout = 80;
var CurrentTimeout = 0;
var FadeTimeout = 4;
// --------------------------------------------------------
function OpenItem(n)
{
    if (n < 0)
    {
        n = HotNumber;
        if (n == 0) return false;
    }

    var pw = 600;
    var ph = 580;
    var px = Math.round((screen.width  - pw) / 2);
    var py = Math.round((screen.height - ph) / 2);
    var opts = 'status=yes,menubar=no,toolbar=no' +
        ',resizable=yes,scrollbars=yes,location=no' +
        ',width='  + pw +
        ',height=' + ph +
        ',left='   + px +
        ',top='    + py;
    var w = window.open("/products/item.cgi?n=" + n, "fp" + n, opts);
    w.focus();
    return false;
}
// --------------------------------------------------------
function Elem(aID)
{
    if (document.all)
        return document.all[aID];
    else if (document.getElementById)
        return document.getElementById(aID);
    else
        return document.eval(aID);
}
// --------------------------------------------------------
function ImgFind(a)
{
    for (var i = 0; i < HotImages.length; i++) {
        if (HotImages[i] == a) return i;
    }
    return -1;
}
// --------------------------------------------------------
function ImgLoadOk()
{
    var i = ImgFind(this);
    if (i != -1)
        HotData[i][3] = 1;
    if (++NowLoaded == HotData.length)
        HotLoaded = 1;
    OkLoaded++;
}
// --------------------------------------------------------
function ImgLoadError()
{
    if (++NowLoaded == HotData.length)
        HotLoaded = 1;
}
// --------------------------------------------------------
function LoadImages()
{
    HotImages = new Array();
    for (var i = 0; i < HotData.length; i++) {
        HotImages[i] = new Image();
        HotImages[i].onload  = ImgLoadOk;
        HotImages[i].onabort = ImgLoadError;
        HotImages[i].onerror = ImgLoadError;
        HotImages[i].src = "/get/pic.php?t=h&n=" + HotData[i][0];
    }
}
// --------------------------------------------------------
function ShowHot()
{
    if (HotLoaded == 0 || OkLoaded == 0) return;

    if (CurrentTimeout == 0) {

        while (HotData[HotIdx][3] == 0) {
            if (++HotIdx == HotData.length) HotIdx = 0;
        }

        HotPic.src = HotImages[HotIdx].src;
        HotPic.title = HotData[HotIdx][1];
        HotNumber = HotData[HotIdx][2];

        if (++HotIdx == HotData.length) HotIdx = 0;
    }

    if (CurrentTimeout > 0 && CurrentTimeout <= FadeTimeout) {
        HotOpacity(CurrentTimeout / FadeTimeout);
    }

    if (CurrentTimeout > (TotalTimeout - FadeTimeout) && CurrentTimeout <= TotalTimeout) {
        HotOpacity((TotalTimeout - CurrentTimeout) / FadeTimeout);
    }

    if (++CurrentTimeout > TotalTimeout) CurrentTimeout = 0;
}
// --------------------------------------------------------
function HotOpacity(n)
{
    if (HotPic.style.opacity) HotPic.style.opacity = n;
    if (HotPic.style.MozOpacity) HotPic.style.MozOpacity = n;
    if (HotPic.style.filter) HotPic.style.filter = "alpha(opacity=" + Math.round(n * 100) + ")";
}
// --------------------------------------------------------
