var toRemove = new Array('http://', 'www.', 'en.', 'it.', 'de.', 'fr.', 'es.');

function changeLanguage(select) {
    var lang = select.options[select.selectedIndex].value;
    var url = document.location.href;
    var pos;
    for (i in toRemove) {
        pos = url.indexOf(toRemove[i]);
        if (pos == 0) {
            url = url.substr(pos + toRemove[i].length);
        }
    }
    url = 'http://' + lang + "." + url;

    document.location.href = url;
}

function changeUserLanguage(select) {
    var lang = select.options[select.selectedIndex].value;
    var url = document.location.href;
    var pre = "?";
    if (url.indexOf("?") != -1) {
        if (url.indexOf("lang=", url.indexOf("?")) != -1) {
            url = url.substr(0, url.indexOf("lang=") - 1) + url.substr(url.indexOf("lang=") + 7);
            if (url.indexOf("?") != -1) {
                pre = "&";
            }
        } else {
            pre = "&";
        }
    }

    if (url.indexOf("#") != -1) {
        url = url.substr(0, url.indexOf("#")) + pre + "lang=" + lang + url.substr(url.indexOf("#"));
    } else {
        url = url + pre + "lang=" + lang;
    }

    document.location.href = url;
}