var XHR = false;

function returnObject (id) {
	if (document.all) {
		return document.all[id];
	} else if (document.getElementById) {
		return document.getElementById(id)
	} else if (document.layers) {
		return document.layers[id];
	}
	return null;
}

function returnRadioValue (form,radio) {
	var radios = document.forms[form].elements[radio].length;
	
	if (radios == undefined) {
		if (document.forms[form].elements[radio])
			return document.forms[form].elements[radio].value;
	} else {
		for (var i = 0; i < radios; i++)
			if (document.forms[form].elements[radio][i].checked)
				return document.forms[form].elements[radio][i].value;
	}
	return null;
}

function invalidLogin () {
	var loginStatus = returnObject('loginStatus');
	loginStatus.innerHTML = '<span style="color:red;">Unknown username or password incorrect.<br /><a href="javascript:void(0);" onclick="javascript:resetSubmitLogin(); return false;">Please try again</a>.</span>';
	window.setTimeout('resetSubmitLogin()', 7500);
}

function resetSubmitLogin () {
	var loginStatus = returnObject('loginStatus');
	loginStatus.style.display = 'none';
	loginStatus.innerHTML = 'Logging into webmail...';

	var loginForm = returnObject('loginForm');
	loginForm.style.display = 'block';
	
	var btnLogin = returnObject('btnLogin');
	btnLogin.disabled = false;
	
	XHR = false;
}

function processResponseText () {
	if (XHR.responseText.indexOf('sessionid') != -1) {
		window.parent.location = 'http://connecttime-webmail.nauticom.net/flash_ct/';
	} else {
		invalidLogin();
	}	
}

function submitLoginResponse () {
	try {
		if (XHR.readyState == 4) {
			if (XHR.status == 200) {
				processResponseText();
			} else {
				alert('There was a problem with the login request.');
				resetSubmitLogin();
			}
		}
	} catch( e ) {
		alert('Error:\n\n' + e.description);
		resetSubmitLogin();
	}
}

function submitLogin (username, password) {
	document.domain = 'nauticom.net';
	if (window.XMLHttpRequest) {
		XHR = new XMLHttpRequest();
		if (XHR.overrideMimeType) {
			XHR.overrideMimeType('text/xml');
        }
	} else if (window.ActiveXObject) {
		try {
			XHR = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				XHR = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}

	if (!XHR) {
		alert('Error:\n\nCannot create an XMLHTTP instance. Please upgrade your web browser to the newest version.');
		resetSubmitLogin();
		return false;
	}
	
	var requestURL = 'http://connecttime-webmail.nauticom.net/flash_ct/lzauthentication?email='+username+'&password='+password+'&q=login';
	XHR.onreadystatechange = function() { submitLoginResponse(); };
	XHR.open('GET', requestURL, true);
	XHR.send(null);
}

function submitLoginForm () {
	var username = returnObject('login_username');
	var password = returnObject('secretkey');
	var webmailv = returnRadioValue('login','webmailv');
	
	if (username.value == '') {
		alert('Please enter your username');
		username.focus();
		return false;
	}
	if (password.value == '') {
		alert('Please enter your password');
		password.focus();
		return false;
	}
	
	if (webmailv == 'flash') {
		var btnLogin = returnObject('btnLogin');
		btnLogin.disabled = true;
		
		var loginForm = returnObject('loginForm');
		loginForm.style.display = 'none';
		
		var loginStatus = returnObject('loginStatus');
		loginStatus.style.display = 'block';
			
		submitLogin(encodeURIComponent(username.value), encodeURIComponent(password.value));
		return false;
	}
	return true;
}

function openHelp(siteurl) {
	window.open(siteurl,'newsite','width=500,height=420,scrollbars=yes,resizable=no,toolbar=no');
}
