var navFlyout = { init : function() { Reuters.nav.setup(); } };
if (typeof(Reuters) == 'undefined' || Reuters == null) {
Reuters = new Object();
}
if (typeof(Reuters.nav) == 'undefined' || Reuters.nav == null) {
Reuters.nav = new Object();
}
if (typeof(Reuters.nav.baseUrlPrefix) == 'undefined') {
Reuters.nav.baseUrlPrefix = '';
}
if (typeof(Reuters.nav.PRIMARY_SITE_URL) == 'undefined') {
Reuters.nav.PRIMARY_SITE_URL = 'http://www.reuters.com';
}
Reuters.nav.flyoutScript1 = '';
Reuters.nav.flyoutScript2 = '';
Reuters.nav.flyoutScript3 = '';
Reuters.nav.scriptsLoaded = false;
Reuters.nav.closeTimer = null;
Reuters.nav.recheckCloseTimer = null;
Reuters.nav.loadEditionChanger = function() {
var navEditionList = [
{"edition": "AF", "label": "Africa", "link": "http://af.reuters.com"},
{"edition": '', "label": "Arabic", "link": "http://ara.reuters.com"},
{"edition": "AR", "label": "Argentina", "link": "http://ar.reuters.com"},
{"edition": "BR", "label": "Brazil", "link": "http://br.reuters.com"},
{"edition": "CA", "label": "Canada", "link": "http://ca.reuters.com"},
{"edition": '', "label": "China", "link": "http://cn.reuters.com"},
{"edition": "FR", "label": "France", "link": "http://fr.reuters.com"},
{"edition": "DE", "label": "Germany", "link": "http://de.reuters.com"},
{"edition": "IN", "label": "India", "link": "http://in.reuters.com"},
{"edition": "IT", "label": "Italy", "link": "http://it.reuters.com"},
{"edition": '', "label": "Japan", "link": "http://jp.reuters.com"},
{"edition": "LTAM", "label": "Latin America", "link": "http://lta.reuters.com"},
{"edition": "MX", "label": "Mexico", "link": "http://mx.reuters.com"},
{"edition": "RU", "label": "Russia", "link": "http://ru.reuters.com"},
{"edition": "ES", "label": "Spain", "link": "http://es.reuters.com"},
{"edition": "UK", "label": "United Kingdom", "link": "http://uk.reuters.com"}
];
var editionFlyoutHTML = '
YOU\'RE VIEWING:
United States
US
'
for (var i=0; i
'+navEditionList[i].edition+'
';
}
editionFlyoutHTML += '';
if (document.getElementById("submenu_editions")) {
document.getElementById("submenu_editions").innerHTML = editionFlyoutHTML;
}
}
Reuters.nav.openFlyout = function() {
if (Reuters.nav.scriptsLoaded == false) {
Reuters.utils.loadScript('NavFlyoutContent1', navFlyout.navContent1);
Reuters.utils.loadScript('NavFlyoutContent2', navFlyout.navContent2);
Reuters.utils.loadScript('NavFlyoutContent3', navFlyout.navContent3);
Reuters.nav.loadEditionChanger();
Reuters.nav.scriptsLoaded = true;
}
Reuters.nav.cancelCloseFlyoutTimer();
if (Reuters.nav.activeFlyout) {
Reuters.nav.activeFlyout.style.display = 'none';
}
Reuters.nav.activeFlyout = document.getElementById('submenu_' + Reuters.nav.activeFlyoutId);
Reuters.nav.activeFlyout.style.display = 'block';
}
Reuters.nav.openFlyoutTimed = function() {
Reuters.nav.cancelCloseFlyoutTimer();
Reuters.nav.activeFlyoutId = this.id.split("_")[1];
Reuters.nav.closeTimer = window.setTimeout(Reuters.nav.openFlyout, 100);
}
Reuters.nav.closeFlyout = function() {
if (Reuters.nav.activeFlyout) {
Reuters.nav.activeFlyout.style.display = 'none';
}
}
Reuters.nav.closeFlyoutTimed = function() {
if (!document.getElementById("tnsSaver")) {
window.clearTimeout(Reuters.nav.closeTimer);
Reuters.nav.closeTimer = window.setTimeout(Reuters.nav.closeFlyout, 100);
} else {
Reuters.nav.recheckCloseTimer = window.setTimeout(Reuters.nav.closeFlyoutTimed, 500);
}
}
Reuters.nav.cancelCloseFlyoutTimer = function() {
if (Reuters.nav.closeTimer) {
window.clearTimeout(Reuters.nav.closeTimer);
window.clearTimeout(Reuters.nav.recheckCloseTimer);
Reuters.nav.closeTimer = null;
Reuters.nav.recheckCloseTimer = null;
}
}
Reuters.nav.registerEvents = function() {
document.getElementById('change_editions').onmouseover = Reuters.nav.openFlyoutTimed;
document.getElementById('change_editions').onmouseout = Reuters.nav.closeFlyoutTimed;
document.getElementById('submenu_editions').onmouseover = Reuters.nav.cancelCloseFlyoutTimer;
document.getElementById('submenu_editions').onmouseout = Reuters.nav.closeFlyoutTimed;
for (j=1; j<=3; j++) {
document.getElementById('MenuItem_' + j).onmouseover = Reuters.nav.openFlyoutTimed;
document.getElementById('MenuItem_' + j).onmouseout = Reuters.nav.closeFlyoutTimed;
document.getElementById('submenu_' + j).onmouseover = Reuters.nav.cancelCloseFlyoutTimer;
document.getElementById('submenu_' + j).onmouseout = Reuters.nav.closeFlyoutTimed;
}
}
Reuters.nav.loadScripts = function() {
Reuters.utils.loadScript('NavFlyoutContent1', Reuters.nav.flyoutScript1);
Reuters.utils.loadScript('NavFlyoutContent2', Reuters.nav.flyoutScript2);
Reuters.utils.loadScript('NavFlyoutContent3', Reuters.nav.flyoutScript3);
Reuters.nav.loadEditionChanger();
// if (Reuters.nav.isCommerce) { Reuters.nav.checkReplaceNavLinks(); }
}
Reuters.nav.scrubAssets = function(obj) {
var re = /"\/resources_v2/gi; //"
obj = obj.replace(re, '"' + Reuters.nav.baseUrlPrefix + '/resources_v2');
var re = /http:\/\/www.reuters.com\/http/gi;
obj = obj.replace(re, 'http');
return obj;
}
Reuters.nav.scrubCommerceAssets = function (sText) {
if (Reuters.nav.isCommerce) {
var re = /http:\/\/((static.reuters.com)|(www.reuters.com))/gi;
sText = sText.replace(re, '');
var re = /a href="\//gi; //"
sText = sText.replace(re, 'a href="http://www.reuters.com/');
}
return sText;
}
Reuters.nav.callback1 = function (sReturn) {
if (Reuters.nav.baseUrlPrefix == '') {
document.getElementById('nav1').innerHTML = Reuters.nav.scrubCommerceAssets(sReturn);
} else {
document.getElementById('nav1').innerHTML = Reuters.nav.scrubAssets(sReturn);
}
}
Reuters.nav.callback2 = function (sReturn) {
if (Reuters.nav.baseUrlPrefix == '') {
document.getElementById('nav2').innerHTML = Reuters.nav.scrubCommerceAssets(sReturn);
} else {
document.getElementById('nav2').innerHTML = Reuters.nav.scrubAssets(sReturn);
}
}
Reuters.nav.callback3 = function (sReturn) {
if (Reuters.nav.baseUrlPrefix == '') {
document.getElementById('nav3').innerHTML = Reuters.nav.scrubCommerceAssets(sReturn);
} else {
document.getElementById('nav3').innerHTML = Reuters.nav.scrubAssets(sReturn);
}
}
Reuters.nav.setup = function() {
Reuters.nav.registerEvents();
Reuters.nav.flyoutScript1 = Reuters.nav.baseUrlPrefix + "/assets/sharedModuleJS?view=RSM-NavFlyoutContent1&globalJSVariable=&callback=Reuters.nav.callback1&sp=" + Reuters.nav.baseUrlPrefix;
Reuters.nav.flyoutScript2 = Reuters.nav.baseUrlPrefix + "/assets/sharedModuleJS?view=RSM-NavFlyoutContent2&globalJSVariable=&callback=Reuters.nav.callback2&sp=" + Reuters.nav.baseUrlPrefix;
Reuters.nav.flyoutScript3 = Reuters.nav.baseUrlPrefix + "/assets/sharedModuleJS?view=RSM-NavFlyoutContent3&globalJSVariable=&callback=Reuters.nav.callback3&sp=" + Reuters.nav.baseUrlPrefix;
if (Reuters.nav.scriptsLoaded == false) {
Reuters.nav.loadScripts();
if (Reuters.nav.isCommerce) {
document.getElementById('searchForm').getAttributeNode("action").value = Reuters.nav.PRIMARY_SITE_URL + document.getElementById('searchForm').getAttributeNode("action").value;
}
Reuters.nav.scriptsLoaded = true;
}
/* Fix the "Reuters" logo on top */
if (Reuters.nav.baseUrlPrefix != "") {
document.getElementById('logoLink').href = Reuters.nav.baseUrlPrefix;
} else if (Reuters.nav.isCommerce) {
document.getElementById('logoLink').href = Reuters.nav.PRIMARY_SITE_URL;
} else {
document.getElementById('logoLink').href = '/';
}
}