var browsername;
var strRedirURL = "vrleb_intro.asp";
var strBadRedirReason = "unknown_default";
window.onerror = pluginErr;
function pluginErr(message, url, line) {
	// If you modify this file, be sure to update the line numbers in the if statement below.
	if ( message == "Object doesn't support this property or method" && (line == 45 || line == 41) ) {
		alert("You MAY have the Sun Java plugin enabled.\n\nThis must temporarily be disabled to use this service.");
		strBadRedirReason = "sun_java";
		badRedir();
		return true;
	}
}function doNetscape() {
	var browserVer = navigator.appVersion.substr(0,4);
	var browserMajVer = browserVer.substr(0,1);
	if ( browserMajVer != "4" ) {
		alert("You are running a Netscape browser version that it not supported by this application.");
		strBadRedirReason = "unsupported_browser";
		return false;
	}
	else {
		if ( !navigator.javaEnabled() ) {
			alert("You must have Java enabled to use this application.\n\nPlease enable Java and login again.");
			strBadRedirReason = "java_disabled";
			return false;
		}
		else {
			return true;
		}
	}
}function doMicrosoft() {
	var applet = document.pluginApplet;
	if (!navigator.javaEnabled() || applet == null)	{
		alert("You must have Java enabled to use this application.\n\nPlease enable Java and login again.");
		strBadRedirReason = "java_disabled";
		return false;
	};
	var version = applet.getJavaVersion();	
	if ( version.search(/1\.1\.\d/i) != -1 )// Check for JRE version of the form 1.1.x
	{
		return true;
	}
	else if ( version.search(/1\.[34]\.\d/i) != -1 ){
		alert("You MAY have Sun's Java plugin enabled.\nThis must temporarily be disabled to use this service.\n\nYour current Java plugin version is " + version);
		strBadRedirReason = "sun_java";
		return false;
	}
	else {
		alert("Version: " + version);
		strBadRedirReason = "unknown_microsoft";
		return false;
	};
}function checkJavaPlugin(){
	browsername = navigator.appName;
	if(browsername.indexOf("Netscape")!= -1) { 
		browsername="NS";
		return doNetscape();
	}
	else{
		if (browsername.indexOf("Microsoft")!=-1) {
			browsername="MSIE";
			return doMicrosoft();
		}
		else {
			browsername="N/A";
			alert("This application cannot be run under this browser.\n\n");
			strBadRedirReason = "unsupported_browser";
			return false;
		}
	}
}function pluginCheck() {
	// Only do the Java checks for the PC.
	if ( navigator.platform != "MacPPC" ) {
		// The Java plugin has been detected.
		if ( !checkJavaPlugin() ) {
			badRedir();
		}
		// The Java plugin has not been detected.
		else {
			goodRedir();
		}
	}			
}function isHost() {
	
	if ( document.location.href.indexOf("/vrl_login_patron.asp") == -1 ) {
		return true;
	}
	else {
		return false;
	}
}function goodRedir() {
	if ( isHost() ) {
		openHostVRLWindow();
	}
	else {
		// Nothing; let user fill-out form.
	}
}function badRedir() {
	var redirectPage;
	switch(strBadRedirReason){
		case "unsupported_browser":
			redirectPage = "help/unsupported_browser_help.html";
			break;
		case "sun_java":
			redirectPage = "help/java_plugin_help.html";
			break;
		case "java_disabled":
			redirectPage = "help/java_enable_help.html";
			break;
		default:
			alert("Java Detection: An unknown error has occurred. (" + strBadRedirReason + ")");
			redirectPage = "none";
			break;
	}

	if (redirectPage != "none") {
		helpWin = openPopUpWin(redirectPage,'VRLplusAppletHelp','location=no,status=no,menubar=no,scrollbars=yes,height=600,width=700');
	}

	if ( isHost() ) {
		window.close();
	}
	else {
		document.location.href = strRedirURL;
	}
}function popUpBlocked(obj_win) {
	var isNull, isUndefined;
	isUndefined = ( typeof(obj_win) == "undefined" );
	isNull = ( obj_win == null );
	if ( !isUndefined && !isNull ) {
		if ( typeof(obj_win.document) == "unknown" ) {
			return true;
		}
		else if ( !obj_win.closed ) {
			return false;
		}
		else {
			return false;
		}
	} else if ( isUndefined ) {
		return true;
	}
	else if ( isNull ) {
		return true;
	}
	else if ( obj_win.closed ) {
		return true;
	}
}function checkForPopUpBlocker(message, redir_page) {
	var ms, oPopUpWin;
	
	Today = new Date();
	ms = Today.getUTCMilliseconds(); 
	
	oPopUpWin = window.open('blank_pop_up_check.htm','VRLplusBrowserConfig' + ms,'width=10,height=10,location=no');
	
	if ( popUpBlocked(oPopUpWin) ) {
		alert(message);
		self.location.replace(redir_page);
		
		return false;
	}
	// If the window was successfully opened it will close itself after 1 second (in blank_pop_up_check.htm).
}