var texts = {}; var links = {}; var thirdParty = {}; var placeHolders = {}; var locale = ""; var textLoaded = false; function setTexts(localLanguage) { if (!textLoaded) { $.getScript("/public/share/" + localLanguage + ".js").done(function () { replaceTexts(localLanguage); }).fail(function (jqxhr, settings, exception) { window.alert(exception); }); textLoaded = true; } else { replaceTexts(); } } function replaceTexts(localLanguage) { try { document.title = texts['titleLogin']; texts['vloPageTitle'] = texts['titleLogin']; if (vloResetPassword != null && vloResetPassword == true) { document.title = texts['titleResetPwd']; texts['vloPageTitle'] = texts['titleResetPwd']; } } catch (exp) { } //If the user is on a page that shows login links... try { $("#LoginLinks").html(loginLinks); } catch (exp) { } //Set texts $(".vloText").each(function () { try { $(this).html(texts[$(this).attr("id")]); } catch (ex) { } }); //Set button values $(".vloBtn").each(function () { try { $(this).prop( 'value', texts[$(this).attr("id")]); } catch (ex) { } }); //Set placeholders $(".vloPlaceholder").each(function () { try { $(this).attr("placeholder", placeHolders[$(this).attr("id")]); } catch (ex) { } }); //Set Links $(".vloLink").each(function () { try { $(this).attr("href", links[$(this).attr("id")].replace("$$LOCALE$$", localLanguage)); } catch (exl) { } }); //Update third party messages $(".vloThirdParty").each(function () { try { $(this).html(thirdParty[$(this).attr("id")]); } catch (exl) { } }); //show any alerts try { if (messageText.length > 0) { $("#alertText").html(messageText); $("#messageAlert").show(); } } catch (ex) { } } function setPreferredLanguage(language) { document.cookie = "vloPreferredLanguage=" + language; } function setPreferredLocale(locale) { document.cookie = "vloPreferredLocale=" + locale; } function getPreference(setting) { var name = setting + "="; 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); if (c.indexOf(name) == 0) return c.substring(name.length, c.length); } return ""; } function getPreferredLanguage() { return getPreference("vloPreferredLanguage"); } function getPreferredLocale() { return getPreference("vloPreferredLocale"); } $(document).ready() { requestedUri = requestedUri.toUpperCase(); try { //if French if (requestedUri.indexOf("FR-CA") > -1) { language = "fr"; locale = "CA"; } else if (requestedUri.indexOf("ES-MX") > -1) { language = "es"; locale = "MX"; } else if (requestedUri.indexOf("ES-PE") > -1) { language = "es"; locale = "PE"; } else if (requestedUri.indexOf("CA.VALERO.COM") > -1) { language = "en"; locale = "CA"; } else if (requestedUri.indexOf("TEXACOSTATION") > -1 || requestedUri.indexOf("VALEROSUPPLY") > -1) { if (requestedUri.indexOf("IE") > -1) { locale = "IE"; } else { locale = "GB"; } language = "en"; } else //all non-CA pages default to english { switch (getPreferredLanguage()) { case "fr": language = "fr"; locale = "CA"; break; default: language = "en"; locale = getPreferredLocale(); if (locale.length != 2) { locale = "US"; } break; } } //if user is visiting ca.valero.com page without language set if (requestedUri.indexOf("CA-XTEST.VALERO.COM") > -1) { locale = "CA"; } } catch (ext) { language = "en"; locale = "US"; } if (locale != "US") { $(".hideCA").hide(); } setTexts(language + "-" + locale); //set a cookie to remember the language selection setPreferredLanguage(language); setPreferredLocale(locale); } function sessionExpired() { thirdParty["VLO_TP_2"] = thirdParty["VLO_TP_2"].replace("$$SESSION_RESTART_URL$$", requestedUri); setTexts(language + "-" + locale); }