//Copyright 2002-2010, My Great Software, Inc. All rights reserved.
//x*x*xStart Encodex*x*
var S_N_Fv = -1;
var m_aBrowser = new Browser();
function Browser()
{
this.bMobile = false;
this.sUserAgent = navigator.userAgent.toLowerCase();
}
Browser.prototype.Message = A_Message;
Browser.prototype.Tutorial = A_Tutorial;
Browser.prototype.IE = A_IE;
Browser.prototype.YouAreUsing = V_YouAreUsing;
Browser.prototype.DOM = V_DOM;
Browser.prototype.Redirect = A_Redirect;
Browser.prototype.IsTreo = V_IsTreo;
Browser.prototype.IsWinCE = V_IsWinCE;
Browser.prototype.IsDesktop65 = A_IsDesktop65;
Browser.prototype.IsMobile65 = A_IsMobile65;
Browser.prototype.IsGecko = A_IsGecko;
Browser.prototype.Sniffer = A_Sniffer;
Browser.prototype.CorpLoad = A_CorpLoad;
Browser.prototype.IsIPhone = A_IsIPhone;
Browser.prototype.EnterHere = A_EnterHere;
Browser.prototype.WUG = A_WUG;
Browser.prototype.wmIsMobile = A_wmIsMobile;
Browser.prototype.IsPocketPC2002 = A_IsPocketPC2002;
Browser.prototype.IsPocketPC = A_IsPocketPC;
Browser.prototype.IsSmartPhone5 = A_IsSmartPhone5;
Browser.prototype.IsSmartPhone = A_IsSmartPhone;
Browser.prototype.IsMobile6 = A_IsMobile6;
Browser.prototype.IsIE55 = A_IsIE55;
Browser.prototype.IsIE6 = A_IsIE6;
Browser.prototype.IsIE7 = A_IsIE7;
Browser.prototype.IsIE8 = A_IsIE8;
Browser.prototype.IsMobile7 = A_IsMobile7;
Browser.prototype.IsBlackBerry = A_IsBlackBerry;
Browser.prototype.IsHrefTel = A_IsHrefTel;
Browser.prototype.IsAndroid = A_IsAndroid;
Browser.prototype.IsWindowsPhone = A_IsWindowsPhone;
Browser.prototype.Click = A_Click;
Browser.prototype.IsMobile7Desktop = A_IsMobile7Desktop;
Browser.prototype.IsIE9 = A_IsIE9;
Browser.prototype.UA = A_UA;
Browser.prototype.IsSafari = A_IsSafari;
Browser.prototype.Toggle = A_Toggle;
Browser.prototype.GEBI = A_GEBI;
Browser.prototype.HasClearInterval = A_HasClearInterval;
Browser.prototype.IsMobile61 = A_IsMobile61;
Browser.prototype.IsMobile60 = A_IsMobile60;
function A_IsMobile61()
{
var fMobile61 = "msie 6.0; windows ce; iemobile 7.11";
return (this.sUserAgent.indexOf(fMobile61) > S_N_Fv);
}
function A_IsMobile60()
{
var fMobile61 = "msie 6.0; windows ce; iemobile 6.12";
return (this.sUserAgent.indexOf(fMobile61) > S_N_Fv);
}
function A_Toggle(sID, bShow)
{
var oElement = this.GEBI(sID);
if (bShow)
{
oElement.style.display = "block";
}
else
{
oElement.style.display = "none";
}
return true;
}
function A_GEBI(sID)
{
var oElement = null;
if (document.all)
{
oElement = document.all[sID];
}
else
{
oElement = document.getElementById(sID);
}
return oElement;
}
function A_IsSafari()
{
return (this.sUserAgent.indexOf("safari/") > S_N_Fv);
}
function A_UA()
{
return navigator.userAgent;
}
function A_IsIE9()
{
var fIE9 = "msie 9";
return (this.sUserAgent.indexOf(fIE9) > S_N_Fv);
}
function A_IsMobile7Desktop()
{
return (this.sUserAgent.indexOf("xblwp7; zunewp") > S_N_Fv);
}
function A_Click(oAnchor)
{
oAnchor.click();
}
function A_IsHrefTel()
{
var bReturn = (this.IsSmartPhone5() ||
this.IsSmartPhone() ||
this.IsIPhone() ||
this.IsBlackBerry() ||
this.IsTreo());
if (! bReturn)
{
bReturn = this.IsWindowsPhone();
}
return bReturn;
}
function A_IsWindowsPhone()
{
return (this.sUserAgent.indexOf("windows phone") > S_N_Fv);
}
function A_IsAndroid()
{
return (this.sUserAgent.indexOf("android") > S_N_Fv);
}
function A_IsBlackBerry()
{
return (this.sUserAgent.indexOf("blackberry") > S_N_Fv);
}
function A_IsMobile7()
{
var fMobile7 = "iemobile/7";
return (this.sUserAgent.indexOf(fMobile7) > S_N_Fv);
}
function A_IsPocketPC()
{
var fPocketPC = "msie 4.01; windows ce; ppc";
return (this.sUserAgent.indexOf(fPocketPC) > S_N_Fv);
}
function A_IsSmartPhone5()
{
var fSmartPhone5 = "msie 4.01; windows ce; smartphone";
return (this.sUserAgent.indexOf(fSmartPhone5) > S_N_Fv);
}
function A_IsPocketPC2002()
{
return (this.sUserAgent.indexOf("msie 3.02; windows ce; ppc") > S_N_Fv);
}
function A_IsSmartPhone()
{
var fSmartPhone = "msie 3.02; windows ce; smartphone";
return (this.sUserAgent.indexOf(fSmartPhone) > S_N_Fv);
}
function A_IsMobile6()
{
var fMobile6 = "msie 6.0; windows ce; iemobile";
return (this.sUserAgent.indexOf(fMobile6) > S_N_Fv);
}
function A_IsIE55()
{
var fIE55 = "msie 5.5";
return (this.sUserAgent.indexOf(fIE55) > S_N_Fv);
}
function A_IsIE6()
{
var fIE6 = "msie 6";
return (this.sUserAgent.indexOf(fIE6) > S_N_Fv);
}
function A_IsIE7()
{
var fIE7 = "msie 7";
return (this.sUserAgent.indexOf(fIE7) > S_N_Fv) && (! this.IsMobile7()) && (! this.IsMobile7Desktop());
}
function A_IsIE8()
{
var fIE8 = "msie 8";
return (this.sUserAgent.indexOf(fIE8) > S_N_Fv);
}
function A_wmIsMobile()
{
var bMobile = (this.IsPocketPC() ||
this.IsSmartPhone5() ||
this.IsMobile6() ||
this.IsMobile65() ||
this.IsDesktop65() ||
this.IsMobile7() ||
this.IsMobile7Desktop());
return bMobile;
}
function A_WUG()
{
var bPocketPC = this.IsPocketPC();
var bSmartPhone = this.IsSmartPhone();
var bSmartPhone5 = this.IsSmartPhone5();
var bMobile6 = this.IsMobile6();
var bDesktop65 = this.IsDesktop65();
var bMobile65 = this.IsMobile65();
var bMobile7 = this.IsMobile7();
var bMobile7Desktop = this.IsMobile7Desktop();
var bMobile = false;
if (bPocketPC || bSmartPhone || bSmartPhone5 || bMobile6 || bDesktop65 || bMobile65 || bMobile7 || bMobile7Desktop)
{
bMobile = true;
}
return bMobile;
}
function A_HasClearInterval()
{
var bPPC2002 = this.IsPocketPC2002();
var bPPC2003 = this.IsPocketPC();
var bSmartPhone = this.IsSmartPhone();
var bSmartPhone5 = this.IsSmartPhone5();
var bMobile60 = this.IsMobile60();
var bMobile61 = this.IsMobile61();
var bInterval = true;
if (bPPC2002 || bPPC2003 || bSmartPhone || bSmartPhone5 || bMobile60 || bMobile61)
{
bInterval = false;
}
return bInterval;
}
function A_EnterHere()
{
var bPPC2002 = this.IsPocketPC2002();
var bPPC2003 = this.IsPocketPC();
var bSmartPhone = this.IsSmartPhone();
var bSmartPhone5 = this.IsSmartPhone5();
var bMobile6 = this.IsMobile6();
var bDesktop65 = this.IsDesktop65();
var bMobile65 = this.IsMobile65();
var bMobile7 = this.IsMobile7();
var bMobile7Desktop = this.IsMobile7Desktop();
var bOpera = (this.sUserAgent.indexOf("opera") > S_N_Fv);
if (bOpera)
{
bOpera = (this.sUserAgent.indexOf("msie 6.0; windows ce;") > S_N_Fv);
}
var bBlackBerry = this.IsBlackBerry();
var bMobile = (bPPC2002 || bPPC2003 || bSmartPhone || bSmartPhone5 || bMobile6 || bDesktop65 || bMobile65 || bOpera || bBlackBerry || bMobile7 || bMobile7Desktop);
return bMobile;
}
function A_IsIPhone()
{
if (! this.IsSafari()) return false;
var bIphone = (this.sUserAgent.indexOf("(iphone;") > S_N_Fv);
if (! bIphone)
{
bIphone = (this.sUserAgent.indexOf("(ipad;") > S_N_Fv);
}
if (! bIphone)
{
bIphone = (this.sUserAgent.indexOf("(ipod;") > S_N_Fv);
}
return bIphone;
}
function A_CorpLoad()
{
var bIE5 = (this.sUserAgent.indexOf("msie 5") > S_N_Fv);
var bIE6 = this.IsIE6();
var bIE7 = this.IsIE7();
var bIE8 = this.IsIE8();
var bMobile6 = this.IsMobile6();
var bIE9 = this.IsIE9();
if (bIE6)
{
if (this.IsTreo())
{
bIE6 = false;
}
}
var bReturn = false;
if ((bIE5 || bIE6 || bIE7 || bIE8 || bIE9) && (! bMobile6))
{
bReturn = true;
}
return bReturn;
}
function A_IsGecko()
{
return (this.sUserAgent.indexOf("gecko") > S_N_Fv);
}
function A_Sniffer()
{
var bIE55 = this.IsIE55();
var bIE6 = this.IsIE6();
var bIE7 = this.IsIE7();
var bIE8 = this.IsIE8();
var bIE9 = this.IsIE9();
if (bIE6)
{
if (this.IsWinCE())
{
bIE6 = false;
}
else
if (this.IsTreo())
{
bIE6 = false;
}
}
var bPocketPC = this.IsPocketPC();
var bSmartPhone = this.IsSmartPhone();
if (! bSmartPhone)
{
bSmartPhone = this.IsSmartPhone5();
}
var bMobile6 = this.IsMobile6();
var bDesktop65 = this.IsDesktop65();
var bMobile7 = this.IsMobile7();
var bMobile7Desktop = this.IsMobile7Desktop();
var bOk = true;
if (bPocketPC || bSmartPhone || bMobile6 || bMobile7 || bMobile7Desktop)
{
this.Message("The MGSi Sniffer pages are not supported for Windows Mobile 5, or Windows Smartphone 2003 and above. " +
"\nThe options will be disabled. " +
"\n\nRun this HTML webpage from IE if IE is installed. " +
"If you do not have IE installed, go to http:/" + "/www.Microsoft.com/ie.");
bOk = false;
}
else
if (bIE55 || bIE6 || bIE7 || bIE8 || bDesktop65 || bIE9)
{
bOk = this.DOM(false);
}
else
{
this.Message("Internet Explorer (IE) 5.5 and above is required." + this.YouAreUsing());
bOk = false;
}
return bOk;
}
function A_IsMobile65()
{
var bReturn = false;
if (this.sUserAgent.indexOf("iemobile 8.12; msiemobile 6.0") > S_N_Fv)
{
bReturn = true;
}
return bReturn;
}
function A_IsDesktop65()
{
var bReturn = false;
if (this.sUserAgent.indexOf("windows phone 6.5") > S_N_Fv)
{
bReturn = true;
}
return bReturn;
}
function V_IsWinCE()
{
return (navigator.platform.toLowerCase() == "wince");
}
function V_IsTreo()
{
var bReturn = false;
var fPalmTreo = "blazer/4.";
if (this.sUserAgent.indexOf(fPalmTreo) > S_N_Fv)
{
bReturn = true;
}
return bReturn;
}
function A_Redirect()
{
var bGecko = (this.IsGecko());
if (bGecko || this.bMobile)
{
window.parent.location.href = document.getElementById("ancNotSupported").href;
}
else
{
this.Click(ancNotSupported);
}
}
function V_YouAreUsing()
{
return "\nYou are using:\n" +
navigator.userAgent + "\n" +
navigator.appName + ".\n(" +
navigator.appVersion +
").\n\nRun this HTML webpage from IE if IE is installed. " +
"If you do not have IE installed, go to http:/" + "/www.Microsoft.com/ie.";
}
function A_Message(sMessage)
{
alert("MGSi Web\n\n" + sMessage);
}
function A_Tutorial(bSilent)
{
var bIE55 = this.IsIE55();
var bIE6 = this.IsIE6();
var bIE7 = this.IsIE7();
var bIE8 = this.IsIE8();
var bMobile6 = this.IsMobile6();
var bIE9 = this.IsIE9();
if (bIE6)
{
if (this.IsWinCE())
{
bIE6 = false;
}
else
if (this.IsTreo())
{
bIE6 = false;
}
}
var bOk = true;
if ((bIE55 || bIE6 || bIE7 || bIE8 || bIE9) && (! bMobile6))
{
bOk = true;
}
else
{
if (! bSilent)
{
this.Message("Internet Explorer (IE) 5.5 and above is required." +  this.YouAreUsing());
}
bOk = false;
this.bMobile = true;
}
return bOk;
}
function A_IE(bHttp)
{
var bIE55 = this.IsIE55();
var bIE6 = this.IsIE6();
var bIE7 = this.IsIE7();
var bIE8 = this.IsIE8();
var bIE9 = this.IsIE9();
if (bIE6)
{
if (this.IsWinCE())
{
bIE6 = false;
}
else
if (this.IsTreo())
{
bIE6 = false;
}
}
var bPocketPC = this.IsPocketPC();
var bSmartPhone = this.IsSmartPhone();
var bSmartPhone5 = this.IsSmartPhone5();
var bMobile6 = this.IsMobile6();
var bDesktop65 = this.IsDesktop65();
var bMobile7 = this.IsMobile7();
var bMobile7Desktop = this.IsMobile7Desktop();
this.bMobile = (bPocketPC || bSmartPhone || bSmartPhone5 || bMobile6 || bDesktop65 || bMobile7 | bMobile7Desktop);
var bOk = true;
var sMessage = "";
if (bIE55 || bIE6 || bIE7 || this.bMobile || bIE8 || bIE9)
{
bOk = this.DOM(bSmartPhone);
}
else
{
sMessage = "Internet Explorer (IE) 5.5 and above, Windows Mobile (Pocket PC) 2003 and above, or SmartPhone 2003 and above, is required." +
this.YouAreUsing();
this.Message(sMessage);
bOk = false;
}
var sUrl = document.URL;
sUrl = sUrl.toLowerCase();
if (sUrl.indexOf("http") == S_N_Fv)
{
if (bHttp)
{
sMessage = "When you use file-based access (and not HTTP), virtual directories will not be accessible " +
"(which will cause security messages to be displayed) and the ASP(X) files will not function correctly.";
this.Message(sMessage);
}
}
var fCookieMsg = "Cookies must be enabled for this web site.";
if (bPocketPC || bSmartPhone)
{
if (document.cookie == null)
{
this.Message("Turn on cookies.");
bOk = false;
}
else
if (document.cookie.length == 0)
{
this.Message(fCookieMsg);
bOk = false;
}
}
else
{
if (! navigator.cookieEnabled)
{
this.Message(fCookieMsg);
bOk = false;
}
}
return bOk;
}
function V_DOM(bSmartPhone)
{
if (! window.ActiveXObject)
{
this.Message("ActiveXObject not supported or security settings are preventing the use of ActiveX objects.");
return false;
}
var fXml2 = "Msxml2.DOMDocument";
var sProgId = fXml2;
if (bSmartPhone)
{
sProgId = "Microsoft.XMLDOM";
}
var bOk = true;
try
{
var oXml = new ActiveXObject(sProgId);
}
catch (exception)
{
var sMessage  = "Microsoft.XMLDOM (" + sProgId + ") is not properly registered " +
"or the 'Script ActiveX controls marked safe for scripting' option was not allowed.\n\n";
this.Message(sMessage);
bOk = false;
}
if (bOk)
delete oXml;
return bOk;
}

