var bdyId = "ds_hldrBdy_"; var formbodyId = "ds_FormBody"; var borderId = "ds_Border"; var headertabsId = "ds_Tabs"; var headerId = "ds_Header"; var footerId = "ds_Footer"; var tiId = "ds_ti"; var headerContentId = "ds_hldrHC_"; var hldrOutside = "ds_hldrOutside_"; var masterIsMobile = "false"; var masterIsSafari = "false"; var leavemastermenuopen = false; function BtnCancelMD(btn) { if (btn && btn.onmousedown != null) btn.onmousedown = null; } function ChangeSelectedAccount(accountid,confirmMsg) { if (true) { if (confirmMsg == "" || confirm(confirmMsg)) { if (typeof(CancelAsynch) != "undefined") CancelAsynch(); document.getElementById("hdnSetSelectedAccount").value=accountid; if (typeof(txtHtmlBlobEscape) != "undefined") txtHtmlBlobEscape(); document.forms[0].submit(); } } } function CE(e) { if (!e) e = window.event; if (e) { if (e.cancelBubble != null) e.cancelBubble = true; if (e.returnValue != null) e.returnValue = false; if (e.preventDefault) e.preventDefault(); if (e.stopPropagation) e.stopPropagation(); } return false; } function MasterPageAction(which, reload) { if (true) { if (typeof(CancelAsynch) != "undefined") CancelAsynch(); document.getElementById("ds_hdnMasterPageAction").value=which; if (typeof(txtHtmlBlobEscape) != "undefined") txtHtmlBlobEscape(); // If asked, do a post and request a page reload for Signing. Doing this when setting language as of the Winter 2015 signing experience. if (window.parent != window && window.jQuery && window.DSSigning && reload) { var $form = jQuery(document.forms[0]); var postType = $form.attr('method'); var url = $form.attr('action'); var data = $form.serialize(); data += "&returnurl=1&errorinfo=1"; jQuery.ajax({ type: postType, dataType: 'JSON', /* Changed dataType to be JSON so the response is automatically parsed. */ url: url, data: data }).then(function(obj) { DSSigning.sendMessage('reloadRequested'); }, function (err) { /* Do nothing for now */ }); } else { document.forms[0].submit(); } } } function ChangeSite(site, accountId) { MasterPageAction(site); } function CloseMasterPageMenus() { if (leavemastermenuopen) { leavemastermenuopen = false; return; } ShowAccounts(true); var acttop = document.getElementById("ds_divUserAccountsMenu"); if (acttop) acttop.className = "ActionsMenuClosed HeaderLink"; var menu = document.getElementById("divAccountMenuItems"); if (!menu) menu = document.getElementById("divAccountMenuItemsNew"); if (menu) menu.style.display="none"; menu = document.getElementById("ds_divUserAccountsMenuNew"); if (menu) menu.className = "ActionsMenuClosed"; acttop = document.getElementById("ds_divLanguageMenu"); if (acttop) acttop.className = "FooterMenuClosed"; menu = document.getElementById("divLanguageMenuItems"); if (menu) menu.style.display="none"; menu = document.getElementById("divSiteItems"); if (menu) menu.style.display="none"; acttop = document.getElementById("ds_divHelpMenu"); if (acttop) acttop.className = "FooterMenuClosed"; var menu = document.getElementById("divHelpMenuItems"); if (menu) menu.style.display="none"; acttop = document.getElementById("ds_divTermsMenu"); if (acttop) acttop.className = "FooterMenuClosed"; var menu = document.getElementById("divTermsMenuItems"); if (menu) menu.style.display="none"; acttop = document.getElementById("ds_divIPMenu"); if (acttop) acttop.className = "FooterMenuClosed"; var menu = document.getElementById("divIPMenuItems"); if (menu) menu.style.display="none"; if (typeof(LoadedSetDocMouseDown) != "undefined") LoadedSetDocMouseDown(); var helpacttop = document.getElementById('divHelpMenu'); if (helpacttop) acttop.className='ActionsMenuClosed'; var helpmenu = document.getElementById('divHelpMenuItems'); if (helpmenu) helpmenu.style.display='none'; } function OpenMasterPageMenu(mi, outer, css) { if (document.getElementById(mi) && document.getElementById(mi).style.display=='none') { var acttop = document.getElementById("ds_" + outer); if (acttop) acttop.className="ActionsMenu " + css; /* get before display for positioning */ var startl = 0; if (mi == "divLanguageMenuItems") { var selitem = document.getElementById(bdyId + "divLanguageSelected"); if (selitem) { startl = (selitem.offsetWidth/2); } } if (mi == "divTermsMenuItems") { var selitem = document.getElementById("divTermsSelected"); if (selitem) { startl = (selitem.offsetWidth/2); } } if (mi == "divIPMenuItems") { var selitem = document.getElementById("divIPSelected"); if (selitem) { startl = (selitem.offsetWidth/2); } } if (mi == "divHelpMenuItems") { var selitem = document.getElementById("divHelpSelected"); if (selitem) { startl = (selitem.offsetWidth/2); } } var midiv = document.getElementById(mi); midiv.style.display='block'; if(masterIsMobile) { /* This is to fix the language menu being closes out on touch in Mobile */ document.ontouchstart=LanguageMenuMobileHander; document.onmousedown=LanguageMenuMobileHander; } else { document.onmousedown=CloseMasterPageMenus; } if (mi == "divLanguageMenuItems" || "divHelpMenuItems" ||"divTermsMenuItems" || "divIPMenuItems") { var footer = document.getElementById(footerId); var footerlinks = document.getElementById("divFooterLinks"); var bw = MasterPageBrowserWidth(); if (footer && footerlinks && bw > 0) { var l = (masterIsSafari=="true") ? startl - (acttop.offsetWidth/2) : 0 - startl - (acttop.offsetWidth/2); var scrleft = MasterPageScrollLeft(); if ((footerlinks.offsetLeft - scrleft) + l < 0) { /* if left is off the screen put it at the left edge */ l -= l + (footerlinks.offsetLeft - scrleft); acttop.style.left = l + "px"; } else { var right = (footerlinks.offsetLeft + l + acttop.offsetWidth) - scrleft; if (right > bw) { l -= (right - bw); /* if left is off the screen put it at the left edge */ if ((footerlinks.offsetLeft - scrleft) + l < 0) { l += (right - bw); l -= l + (footerlinks.offsetLeft - scrleft); } } acttop.style.left = (l) + "px"; } } /* Give focus to first item in language menu */ if (mi == "divLanguageMenuItems") { var $languageMenuItems = $('.languageMenuItem'); $languageMenuItems.eq(0).focus(); } }else if (mi == "divHelpMenuItems" || "divTermsMenuItems" || "divIPMenuItems") acttop.style.left = 0 + "px"; } } function LanguageMenuMobileHander(e) { if (e.target.id !== "ds_divLanguageMenu" && e.target.id !== "divLanguageMenuItems" && e.target.id !== "MOB_languageSelect") { CloseMasterPageMenus(); } } function ShowAccounts(hide) { var div = document.getElementById("divAccountMenuItems"); if (!div) div = document.getElementById("divAccountMenuItemsNew"); if (div) div = div.firstChild; while (div) { if (div.getAttribute && div.getAttribute("isaccount") == "1") { div.style.display = hide ? "none" : ""; } div = div.nextSibling; } if (!hide) leavemastermenuopen = true; } function LogoSizePage() { if (typeof(Size) == "function") Size(); if (typeof(ResizeSqueezePage) == "function") { ResizeSqueezePage(); ResizeSqueezePage(false,true); } if (typeof(SizeFrames) == "function") { if (typeof(BrowserDims) != "undefined" && typeof(gHPg) != "undefined") BrowserDims(gHPg); SizeFrames(); } if (typeof(SizeWindowObjects) == "function") SizeWindowObjects(); if (typeof(ResizeManageAccounts) == "function") ResizeManageAccounts(); if (typeof(ResizePage) == "function") ResizePage(); if (typeof(SizeContentHeight) == "function") SizeContentHeight(); if (typeof(resize) == "function") resize(); } function MasterPageBrowserWidth() { var bw = 0; if (typeof(window.innerWidth) != 'undefined') { bw = window.innerWidth; } else if (typeof(document.documentElement) != 'undefined' && document.documentElement.clientWidth) { bw = document.documentElement.clientWidth; } else if (typeof(document.documentElement) != 'undefined' && document.documentElement.offsetWidth) { bw = document.documentElement.offsetWidth; } else { var body = document.getElementsByTagName("body"); if (body && body[0] && typeof(body[0]) != 'undefined') { if (typeof(body[0].clientWidth) != 'undefined' && body[0].clientWidth != 0) { bw = body[0].clientWidth; } else if (typeof(body[0].offsetWidth) != 'undefined' && body[0].offsetWidth != 0) { bw = body[0].offsetWidth; } } } return bw; } function MasterPageScrollLeft() { var bL = 0; if (masterIsMobile == "true" && window.pageXOffset != null) { bL = window.pageXOffset; } else if (document.documentElement && document.documentElement.scrollLeft != null) { bL = document.documentElement.scrollLeft; } else { bL = document.body.scrollLeft; } return bL; } function upgradeClick() { if (document.forms['upgradeForm'] != null) { document.forms['upgradeForm'].submit(); } return false; } /* Hook up language menu */ (function () { var $document = $(document); var currentItemIndex = 0; var left = 37; var up = 38; var right = 39; var down = 40; var tab = 9; var esc = 27; var enter = 13 var space = 32; /* Open language menu on enter or space on the menu button */ $document.on('keyup', '#ds_divLanguageSelected', function (e) { currentItemIndex = 0; if (e.keyCode === enter || e.keyCode === space) { onkeyup = OpenMasterPageMenu('divLanguageMenuItems','divLanguageMenu', 'ActionMenuShowUp'); } }); /* Navigate language menu */ $document.on('keyup', '.languageMenuItem', function (e) { var $languageMenuItems = $('.languageMenuItem'); var numItems = $languageMenuItems.length; var atEnd = currentItemIndex === numItems - 1; var atStart = currentItemIndex === 0; var lang = $(e.target).attr('lang'); /* Select language on enter or space */ if (e.keyCode === enter || e.keyCode === space) { MasterPageAction('setlang-' + lang); return; } /* Close menu and focus menu button on esc */ if (e.keyCode === esc) { CloseMasterPageMenus(); $('#ds_divLanguageSelected').focus(); return; } /* Focus next menu item on down or right arrow */ if (e.keyCode === down || e.keyCode === right) { currentItemIndex = atEnd ? 0 : currentItemIndex + 1; $languageMenuItems.eq(currentItemIndex).focus(); return; } /* Focus previous menu item on up or left arrow */ if (e.keyCode === up || e.keyCode === left) { currentItemIndex = atStart ? numItems - 1 : currentItemIndex - 1; $languageMenuItems.eq(currentItemIndex).focus(); return; } }); /* Close language menu when tabbing out of it */ $document.on('keydown', '.languageMenuItem', function (e) { if (e.keyCode === tab) { CloseMasterPageMenus(); } }); })();