﻿/* --------------------------------------------- MAIN FUNCTIONS ------------------------------------------------*/
function escapeHTML(str) {
    var div = document.createElement('div');
    var text = document.createTextNode(str);
    div.appendChild(text);
    return div.innerHTML;
};

function generateGuid() {
    var guid = '';

    for (var i = 1; i <= 32; i++) {
        var n = Math.floor(Math.random() * 16.0).toString(16);
        guid += n;

        if ((i == 8) || (i == 12) || (i == 16) || (i == 20)) guid += "-";
    }

    return guid;
}

function remoteJson(listener, callback) {
    if (listener) {
        var script = document.createElement("script"); // new script element.
        script.setAttribute("type", "text/javascript");
        script.setAttribute("id", "remotejson" + generateGuid());

        if (listener.indexOf("?") > 0) {
            script.setAttribute("src", listener + "&nocache=" + generateGuid() + "&callback=" + callback);
        }
        else {
            script.setAttribute("src", listener + "?nocache=" + generateGuid() + "&callback=" + callback);
        }

        document.getElementsByTagName("head")[0].appendChild(script);
    }
}


function display(where, what) {
    document.getElementById(where).innerHTML = what[0];
    /*if (document.getElementById('bc_table'))
    {
    document.getElementById('google_ads').style.marginTop = (document.getElementById('broadband_table').clientHeight + 100) + 'px';
    }*/
}

function getNextSibbling(e) {

    do e = e.nextSibling;
    while (e && e.nodeType != 1);
    return e;
}




function getSelectedValue(item) {
    if (document.getElementById(item)) {
        return document.getElementById(item).options[document.getElementById(item).selectedIndex].value;
    }
    else {
        return;
    }

}

function setComboValue(comboid, item) {
    //return document.getElementById(item).options[document.getElementById(item).selectedIndex].value;
    var i = 0;
    for (var i = 0; i < document.getElementById(comboid).options.length; i++) {
        if (document.getElementById(comboid).options[i].value == item) {
            document.getElementById(comboid).selectedIndex = i;
            return;
        }
    }
}





function getNextSibbling(e) {

    do e = e.nextSibling;
    while (e && e.nodeType != 1);
    return e;
}

function SetCookie(cookieName, cookieValue, nDays) {
    var today = new Date();
    var expire = new Date();
    if (nDays == null || nDays == 0) nDays = 1;
    expire.setTime(today.getTime() + 3600000 * 24 * nDays);
    document.cookie = cookieName + "=" + escape(cookieValue)
                 + ";expires=" + expire.toGMTString();
}

function readCookie(name) {

    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for (var i = 0; i < ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) == ' ') c = c.substring(1, c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
    }


    return null;
}



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 trackEvent(name) {
    //remoteJson('/comparison/ajax.aspx?mode=trackevent&event=' + name);
}


/* --------------------------------------------- HOMEPAGE ------------------------------------------------*/