﻿$(document).ready(function() {
    $.ajaxSetup({ timeout: 2500 });
});

function showBanners(el, lang, type, id) {
    var box = $('#' + el);
    box.html('').show();
    $('<img/>').attr('src', 'http://livios.starttobuild.be/content/ajax.gif').appendTo(box);

    box.ajaxError(function() {
        $(this).html('').hide();
    });

    var banners = readCookie('banners');
    if (banners == null)
        banners = 0;
    else
        banners = parseInt(banners) % 2;

    var url = 'http://livios.starttobuild.be/banners/' + type + '/' + id + '?l=' + lang + '&r=' + banners + '&jsoncallback=?'

    $.getJSON(url, function(data) {
        showBannerDetails(box, lang, type, data);
    });

    writeCookie('banners', banners + 1, 0);
}

function showBannerDetails(el, lang, type, banners) {
    var box = $(el);
    box.html('');

    if (banners.length == 0)
        box.hide();

    $.each(banners, function(index, bannerItem) {
        var url = (lang == 'nl') ? bannerItem.UrlNl : bannerItem.UrlFr;

        var li = $('<li/>');
        var div = $('<div/>');

        var a = $('<a/>')
            .attr('href', 'http://www.livios.be/_redz/redirect.ashx?t=8&i=' + bannerItem.BannerId + '&l=' + lang)
            .attr('target', '_blank');
        var img = $('<img/>')
            .attr('src', 'http://www.livios.be/_bdrf/' + lang + '/' + bannerItem.ImagePath)
            .attr('alt', bannerItem.Name);

        if (type == "action")
            img.attr('width', '200');

        img.appendTo(a);

        if (type == "small") {
            a.appendTo(div);
            div.appendTo(li);
            li.appendTo(box);
        }
        else
            a.appendTo(box);
    });
}

function showNodes(el, lang, id) {
    var box = $('#' + el);
    box.html('').show();
    $('<img/>').attr('src', 'http://livios.starttobuild.be/content/ajax.gif').appendTo(box);

    box.ajaxError(function() {
        $(this).html('').hide();
    });

    var url = 'http://livios.starttobuild.be/nodes/' + id + '?jsoncallback=?'

    $.getJSON(url, function(data) {
        showNodeDetails(box, lang, data);
    });
}

function showNodeDetails(el, lang, nodes) {
    var box = $(el);
    box.html('');

    if (nodes.length == 0)
        box.hide();

    var items = 0;

    $.each(nodes, function(index, nodeItem) {
        var label;

        switch (lang) {
            case 'nl':
                label = nodeItem.LabelNl.toLowerCase();
                break;
            case 'fr':
                label = nodeItem.LabelFr.toLowerCase();
                break;
        }

        if (!nodeItem.Hidden && label.length > 0) {
            if (items > 0)
                box.append(', ');

            var a = $('<a/>')
                .attr('href', 'http://www.livios.be/' + lang + '/' + nodeItem.Url)
                .attr('target', '_blank');

            a.html(label);
            a.appendTo(box);
            
            items++
        }
    });

    if (items == 0)
        box.hide();
}

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 writeCookie(name, value, days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        var expires = "; expires=" + date.toGMTString();
    }
    else
        var expires = "";
    document.cookie = name + "=" + value + expires + "; path=/";
}

