
var xmlHttp;

function getFortune()
{
    try
    {
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
        // Internet Explorer
        try
        {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            try
            {
                xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e)
            {
                alert("Your browser does not support AJAX!");
                return false;
            }
        }
    }
    connectToServer();
    prepareOffer();
}

function fromIso88592Code(code)
{
    switch(code)
    {
    case 161: return "¡";
    case 177: return "±";
    case 198: return "Æ";
    case 230: return "æ";
    case 202: return "Ê";
    case 234: return "ê";
    case 163: return "£";
    case 179: return "³";
    case 209: return "Ñ";
    case 241: return "ñ";
    case 211: return "Ó";
    case 243: return "ó";
    case 166: return "¦";
    case 182: return "¶";
    case 172: return "¬";
    case 188: return "¼";
    case 175: return "¯";
    case 191: return "¿";
    }
    return "";
}

function decodeHexCodes(s)
{
    r = "";
    for(var i = 0; i < s.length; i++)
    {
        if(s.charAt(i) == '%')
        {
            hexcode = "" + s.charAt(i+1) + s.charAt(i+2);
            code = parseInt(hexcode, 16);
            r = r + fromIso88592Code(code);
            i += 2;
        }
        else
        {
            r = r + s.charAt(i);
        }
    }
    return r;
}

function handleNewFortune()
{
    if(xmlHttp.readyState == 4)
    {
        items = xmlHttp.responseText.split("#", 2);
        display = document.getElementById("FortuneDisplay");
        display.innerHTML = decodeHexCodes(items[1]);
        document.fortune.fortuneid.value = items[0];
    }
}

function appendRandom(url)
{
    d = new Date();
    secs = d.getTime();
    rand = Math.random() * 1000000;
    return url + "&value=" + secs + "." + rand;
}

function connectToServer()
{
    xmlHttp.onreadystatechange = handleNewFortune;
    xmlHttp.open("GET", appendRandom("/chinskie-ciasteczko/?x=" + document.fortune.fortuneid.value), true);
    xmlHttp.send(null);
}

function prepareOffer()
{
    offerbox = document.getElementById("OfferBox");
    selector = Math.random();
    if(selector < 0.25)
    {
        offerbox.innerHTML = "<a href=\"/numerologia-partnerska/\">Sprawd¼ co Numerologia mówi o Waszym zwi±zku</a>.";
    }
    else if(selector < 0.6)
    {
        offerbox.innerHTML = "<a href=\"/program-numerologiczny/\">Odkryj tajemnice swojego wnêtrza</a>.";
    }
    else
    {
        offerbox.innerHTML = "<a href=\"/przewidywanie-przyszlosci/\">Zobacz co Ciê czeka</a>.";
    }
}

