function ChangeLanguage(languageCode, pageID) { var d = new Date(2009, 1, 5); document.cookie = "LanguageCode=" + escape(languageCode) + "; expires=" + d.toUTCString() + "; path=/goldmund-media-room/"; var oqs = new Querystring(); var qs = location.search.substring(1, location.search.length); if (pageID != "") { var req = new JsHttpRequest(); req.onreadystatechange = function() { if (req.readyState == 4) { if (req.responseJS && req.responseJS.Answer && req.responseJS.Answer.Error) { alert(req.responseJS.Answer.Error); return; } document.location.href = req.responseJS.Answer; } } req.caching = false; req.open('POST', 'get_path.php', true); req.send({ PageID: pageID, LangCode: languageCode }); } else { if (window.urlLanguageCode) { var reg = new RegExp("/"+urlLanguageCode+"/"); var str = document.location.href; if (oqs.get("switch") == null) { if (qs.length > 0) document.location.href = str.replace(reg, "/"+languageCode+"/")+"&switch=1"; else document.location.href = str.replace(reg, "/"+languageCode+"/")+"?switch=1"; } else { document.location.href = str.replace(reg, "/"+languageCode+"/"); } } else { if (oqs.get("switch") == null) { if (qs.length > 0) document.location.href = document.location.href+"&switch=1"; else document.location.href = document.location.href+"?switch=1"; } else { document.location.href = document.location.href; } } } } function Querystring() { this.params = new Object() this.get = GetQuerystring; var qs = location.search.substring(1, location.search.length) if (qs.length == 0) return // Turn back to // See: http://www.w3.org/TR/REC-html40/interact/forms.html#h-17.13.4.1 qs = qs.replace(/\+/g, ' '); var args = qs.split('&') // parse out name/value pairs separated via & // split out each name=value pair for (var i = 0; i < args.length; i++) { var value; var pair = args[i].split('='); var name = unescape(pair[0]); if (pair.length == 2) value = unescape(pair[1]); else value = name; this.params[name] = value; } } function GetQuerystring(key, default_) { // This silly looking line changes UNDEFINED to NULL if (default_ == null) default_ = null; var value = this.params[key] if (value == null) value = default_; return value }