var translatedLanguage;
var campaign;


function setTranslations ()
{
    var langTags = getElementsByClassName("language");
    
    for(var i=0; i < langTags.length;i++)
    {
          var translation = trans[langTags[i].value];
          if(translation)
          {
            langTags[i].innerText = translation ; 
          }
    }
    
    
    replaceImages();
}

function replaceImages ()
{
    var langImgTags = getElementsByClassName("languageImg");
    
    for(var i=0; i < langImgTags.length;i++)
    {
        var img;
        
        if(langImgTags[i].tagName == "IMG")
        {
            img = langImgTags[i].src;
            var ext = img.substring(img.length-4,img.length);
            img = img.replace(ext, '_' + translatedLanguage + ext);
            langImgTags[i].src = img;  
        }
        else
        {
            img = langImgTags[i].style.backgroundImage;
            
            var ext = img.substring(img.length-5,img.length-1);
            img = img.replace(ext, '_' + translatedLanguage + ext);
            langImgTags[i].style.backgroundImage = img;  
        }
        
        
    }
    
    
    var campImgTags = getElementsByClassName("campImg");
    
    for(var i=0; i < campImgTags.length;i++)
    {
        var img = campImgTags[i].style.backgroundImage;
        
        var ext = img.substring(img.length-5,img.length-1);
       
        img = img.replace(ext, '_' + campaign + ext);
     
        campImgTags[i].style.backgroundImage = img;  
    }
}

function walkTheDOM (node, func) 
{
    func(node);
    node = node.firstChild;
    while (node)
    {
        walkTheDOM(node, func);
        node = node.nextSibling;
    }
}

function getElementsByClassName (className) 
{
    var results = [];
    walkTheDOM(document.body, function (node){
        var a, c = node.className, i;
        if (c) 
        {
            a = c.split(' ');
            for (i=0; i<a.length; i++) 
            {
                if (a[i] === className) 
                {
                    results.push(node);
                    break;
                }
            }
        }
    });
    
    return results;
}

function extractQueryStringParam(param) 
{
    var urlQuery = window.location.search.substring(1);
    querySplit = urlQuery.split("&");
    
    for (i=0;i<querySplit.length;i++) 
    {
        nameValue = querySplit[i].split("=");
        if (nameValue[0] == param) 
        {
            return nameValue[1];
        }
    }
}

function getLanguage() 
{
    translatedLanguage = extractQueryStringParam("lang");
    campaign = extractQueryStringParam("camp");

    return translatedLanguage;
}

function getTranslationModule()
{
    return extractQueryStringParam("module");
}


function setTranslationInclude(lang, type)
{
    if(lang)
    {
        var scriptLanuageTag = document.getElementById("langugeInclude");

        if(!scriptLanuageTag)
        {
            var headID = document.getElementsByTagName("head")[0];   
            scriptLanuageTag = document.createElement('script');   

            scriptLanuageTag.id = "langugeInclude";
            scriptLanuageTag.type = 'text/javascript'; 
            /*scriptLanuageTag.onreadystatechange = function() {               
                if(scriptLanuageTag.readyState == 'complete')
                {
                  setTranslations (); 
                }                                
            };
            */
            headID.appendChild(scriptLanuageTag); 
        }
        
        scriptLanuageTag.src = '/cdnscripts/languages/' + lang + '/' + type + '.js';
    }
}

setTranslationInclude(getLanguage(),getTranslationModule())

