﻿function getElementsByClassName(classname, node) {

    if (!node)
        node = document.getElementsByTagName("body")[0];

    var a = [];
    var re = new RegExp('\\b' + classname + '\\b');
    var els = node.getElementsByTagName("*");

    for (var i = 0, j = els.length; i < j; i++)
        if (re.test(els[i].className))
        a.push(els[i]);

    return a;
}

function verticalCenter(img, containerHeight) {
    img.style.marginTop = (containerHeight - img.height) / 2 + "px";
}

var imageCache = [];

function getImageFromCache(url)
{
    var cachedImage = imageCache[url];
    
    if (!cachedImage)
    {
        cachedImage = new Image();
        cachedImage.src = url;
        
        imageCache[url] = cachedImage;
    }
    
    return cachedImage;
}

function onLoadLogo(img)
{
    var cachedImage = getImageFromCache(img.filters[0].src);
    
    img.style.width = cachedImage.width;
    img.style.height = cachedImage.height;
}

function setImageSrc(img, newSrc)
{
    var cachedImage = getImageFromCache(newSrc);
    
    img.style.width = cachedImage.width;
    img.style.height = cachedImage.height;
    img.filters[0].src = newSrc;
}

function loadShow(index)
{
    var dutyFreeTop = document.getElementById("dutyfree_top");
    var btn_nextup = document.getElementById("btn_nextup");
    var logo = document.getElementById("current_show_logo");
    var flag = document.getElementById("current_show_flag");
    var tunein = getElementsByClassName("tunein", dutyFreeTop)[0];
    var description = getElementsByClassName("description", dutyFreeTop)[0];
    
    location.href = "#player";
    
    btn_nextup.style.display = showData[index].isNextUp ? "block" : "none";
    logo.innerHTML = '<img src="' + showData[index].logo + '" onload="fixPNG(this)"/>';
    flag.innerHTML = '<img src="' + showData[index].flag + '" onload="fixPNG(this)"/>';
    tunein.innerHTML = showData[index].airtime;
    description.innerHTML = showData[index].description;
    
    document.getElementById('VideoPlayer').changeVideo(showData[index].video_key);
}
