var ChecksEnum={None:0,Cookies:1,SessionCookies:2,Flash:4,AdobeReader:8};function flashVersion(){this.major=0;this.minor=0;this.revision=0}flashVersion.prototype.version=function(){return this.major+"."+this.minor+"."+this.revision};function BrowserCheck(a){this.completionRedirectUrl=null;this.Checks=a;this.ChecksPassed=ChecksEnum.None;this.FlashVersion=new flashVersion()}BrowserCheck.prototype.IsCheckFailed=function(a){return(this.Checks&a)&&!(this.ChecksPassed&a)};BrowserCheck.prototype.SetComplete=function(){var a=get_bcCookie();a.Success=true;a.store()};BrowserCheck.prototype.CheckComplete=function(){var a=get_bcCookie();a.load();return a.exists()&&a.Success};function get_bcCookie(){var a=new Cookie(document,"BrowserCheckComplete");return a}BrowserCheck.prototype.RunChecks=function(a){if(this.Checks&ChecksEnum.Cookies){this.RunCookieCheck()}if(this.Checks&ChecksEnum.SessionCookies){this.RunSessionCookieCheck()}if(this.Checks&ChecksEnum.Flash){this.RunFlashCheck()}if(this.Checks&ChecksEnum.Https){this.RunHttpsCheck()}if(this.Checks&ChecksEnum.AdobeReader){this.RunAdobeReaderCheck()}if(a){a(this)}return this.ChecksPassed};BrowserCheck.prototype.RunCookieCheck=function(){var a=new Cookie(document,"testCookie",120);a.TestValue="value";a.store();var b=a.exists();this.ChecksPassed=SetFlag(this.ChecksPassed,ChecksEnum.Cookies,b);a.remove();return b};BrowserCheck.prototype.RunSessionCookieCheck=function(){var a=new Cookie(document,"testSessionCookie");a.TestValue="STORE-ME";a.store();var b=a.exists();this.ChecksPassed=SetFlag(this.ChecksPassed,ChecksEnum.SessionCookies,b);a.remove();return b};BrowserCheck.prototype.RunFlashCheck=function(){var a=swfobject.hasFlashPlayerVersion(this.FlashVersion.version());this.ChecksPassed=SetFlag(this.ChecksPassed,ChecksEnum.Flash,a);return a};BrowserCheck.prototype.RunAdobeReaderCheck=function(){var a=false;if(navigator.plugins&&navigator.plugins.length>0){for(i=0;i<navigator.plugins.length;i++){if(navigator.plugins[i].name.indexOf("Acrobat")>=0||navigator.plugins[i].description.indexOf("Acrobat")>=0){a=true}}}else{try{var c=new ActiveXObject("AcroExch.Document");if(c){a=true}}catch(b){a=false}}this.ChecksPassed=SetFlag(this.ChecksPassed,ChecksEnum.AdobeReader,a);return a};BrowserCheck.prototype.RunHttpsCheck=function(){return true};function SetFlag(c,b,a){if(a){c|=b}else{c&=~(b)}return c};