/* Returns true if this content is running under Microsoft Help Viewer */ function hsIsMshv() { return (location.protocol == 'ms-xhelp:' || location.href.indexOf("/ms.help?") != -1); } /* Gets the MSHS base url for resources */ function hsResourceBaseUrl() { if (isDesignTime) { return ''; } else { // Get the first script tag var script = document.getElementById('mshs_support_script'); // Extract the src which is a full resource url to within our origin .mshc var scriptSrc = script.src; var scriptUrl = null; if (isMshv2()) { // HV 2 var startIndex = scriptSrc.indexOf('&id='); var scriptUrl = scriptSrc.substring(0, startIndex); startIndex = scriptSrc.indexOf('&', startIndex + 1); scriptUrl = scriptUrl + scriptSrc.substring(startIndex) + "&id="; } else { // HV 1 // Get the portion up to the ; (the base url for resource references) var startIndex = scriptSrc.indexOf(';') + 1; scriptUrl = scriptSrc.substring(0, startIndex); } return scriptUrl; } } function hsFixUrl(url) { if (hsIsMshv()) { var originalUrl; if (url.indexOf('127.0.0.1') != -1) { // Chrome - rule returned as full url originalUrl = url.substring(url.indexOf('/', url.indexOf('127.0.0.1')) + 5, url.length); originalUrl = originalUrl.replace("\"", ""); } else if (url.indexOf('../') != -1) { // IE - rule returned as original, with a .. prefix originalUrl = url.substring(url.indexOf('../') + 2, url.lastIndexOf(')')); originalUrl = originalUrl.replace("\"", ""); } else { // Relative url in MSHV 2.0 originalUrl = url.replace(new RegExp("/", "g"), "\\"); } if (originalUrl.indexOf("/help/") != -1) { originalUrl = originalUrl.substring(originalUrl.indexOf("/", originalUrl.indexOf("/help/") + 5), originalUrl.length); } var newUrl = hsResourceBaseUrl() + originalUrl; return newUrl; } else { return url } }