$(document).ready(function() {

    //document.domain = 'cutover.redbull.com';
    var locale = $('#input_siteName').val();

    if (locale.length > 0) {
        BuildUrl(locale);
        RenderFooterNavigation(locale);
    }
});

/*
Builds The IFrame Url By Appending The Locale And Query Parameters From The Parent
*/
function BuildUrl(locale) {


    $('#iframeContent').each(function() {

        src = $(this).attr('src');

        var adID = getQueryString('adId');

        if (adID) {
            src = src + '/' + adID;
        }
        else {
            var order = getQueryString('sortOrder');

            if (order) {
                src = src + '/' + order;
            }
            else {
                var userId = getQueryString('userId');
                if (userId) {
                    src = src + '/' + userId;
                }
            }

        }

        // .NET Doesn't Have du_NL, but nl_NL
        if (locale.toString().toUpperCase() == 'DU_NL')
            locale = 'nl_NL';

        $(this).attr('src', (src + '/' + locale)).show();
    });
}

/*
Renders Footer Navigation Links From The Main Navigation
*/
function RenderFooterNavigation(locale) {

    var url = 'http://bestads.redbull.com/getresourcehtml/FooterNavigation/' + locale;

    var navClasses = ['home', 'contest', 'inspiration', 'submit', 'browse', 'your_ads'];

    var footer = $('<ul id="footer"></ul>');

    $('#skin-main-nav li').each(function(i, v) {

        var link = $(this).addClass(navClasses[i]).find('a');

        var li = $('<li><a href="#"></a>&nbsp; | &nbsp;</li>').find('a').attr('href', link.attr('href')).html(link.html()).end();

        footer.append(li);
    });

    $('#footer-wrapper').html(footer);

    ResizeHeaderNavigation();
}

function ResizeHeaderNavigation() {
    var nav = new Array(); nav = $("#skin-main-nav li");
    var navTotalChar = 0;
    var navChar = new Array(6); i = 0;

    $.each(nav, function() {
        navChar[i] = $(this).text().replace(/^\s*|\s*$/g, '').length; i++;
    });

    $.each(navChar, function(i, val) {
        navTotalChar += this
    });

    if (navTotalChar < 60) {
        $("#skin-main-nav li a").css("font-size", "19px");
    }
    else if (navTotalChar < 80) {
        $("#skin-main-nav li a").css("font-size", "17px");
    } else if (navTotalChar < 100) {
        $("#skin-main-nav li a").css("font-size", "15px");
    }
    else if (navTotalChar < 120) {
        $("#skin-main-nav li a").css("font-size", "13px");
    } $.each(navChar, function(i, val) {

        w = (this / navTotalChar) * 550;

        $(nav[i]).find("a").css("width", w + 25);
    });
}

function getQueryString(str) {
    var frameURL = document.URL;

    if (frameURL.indexOf('?') !== -1) {
        qp = frameURL.split('?');
        for (i = 0; i < qp.length; i++) {
            q = qp[i].split("&");
            for (j = 0; j < q.length; j++) {
                p = q[j].split("=");
                if (p[0] == str) {
                    return p[1];
                }
            }
        }
    }
}

function getShareURL() {
    var query = 'adId';

    var adID = getQueryString(query);

    if (adID) {
        return 'http://bestads.redbull.com/ad-detail/' + adID + '/' + locale;
    }
}

function OnMessageFromChild(message) {

    if (message.length > 0) {

        var parameters = parseParameters(message);

        if (parameters["height"] != null) {

            var height = parseInt(parameters["height"]) + 50;

            if (height > 50) {
                if (($('#iframeContent').height() + 50) != height) {
                    $('#iframeContent').height(height);
                }
            }
        }

        if (parameters["scrollTo"] != null) {

            var scrollTo = parseInt(parameters["scrollTo"]);

            window.scrollTo(0, scrollTo);
        }
    }
}

function parseParameters(message) {

    var dictionary = new Array();
    var pairs = message.split(/&/);

    for (var keyValuePairIndex in pairs) {

        var nameVal = pairs[keyValuePairIndex].split(/=/);
        dictionary[nameVal[0]] = nameVal[1];
    }

    return dictionary;
}

// Send a message to the iFrame via the proxy, toggling the iFrame's
// size to indicate there is a message ready to be read
function SendMessageToFrame(message) {

    var elem = document.getElementById('childProxy');
    elem.contentWindow.location = ($('#childProxy').attr('src') + '?rand=' + (Math.floor(Math.random() * 110)) + '#' + message);
    elem.width = (Math.floor(Math.random() * 110) + 'px');
}



