var d = document;
var x;
var username = '';
var password = '';

function email_form(type) {
	var url = "/email_form.php?action="+type;
	window.open(url, "ModusOperandi", "directories=no,location=no,menubar=no,resizable=yes,width=270,height=270,scrollbars=no,status=no,toolbar=no");	
}

function sendRequest(url, method, params, action) {
// create the object, careful to the MSFT/Other method
	if (window.XMLHttpRequest) { x = new XMLHttpRequest(); }
	else if (window.ActiveXObject) { x = new ActiveXObject("Microsoft.XMLHTTP"); }
// executing the request, passing the targetted object
	//alert(url + params);
	if (method == 'get') {
		x.open("GET", url, true);
		x.onreadystatechange = function () {processRequestChange(action)};
		x.send(null);
	} else {
		x.open("POST", url, true);
		x.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		x.onreadystatechange = function () {processRequestChange(action)};
		x.send(params);
	}
}

function login(obj, action) {
	switch (action) {
		case 1:
			username = obj.parentNode.username.value;
			password = obj.parentNode.password.value;
			if (password != '' && username != '') {
				var date = new Date();
				sendRequest('/include.clientLogin.php', "post", 'password='+password+'&username='+username+'&submitLogin=true&r=true&date='+date, action);
			} else {
				alert('Please enter a username and password!');
			}
		break;
		case 2:
			var selected = '';
			for (var i = 0; i < obj.parentNode.selection.length; i++) {
				if (obj.parentNode.selection[i].checked) { selected = obj.parentNode.selection[i].value; }
			}
			if (selected != '') {
				switch (selected) {
					case "builder":
						var form = obj.parentNode;
						var passwordField = d.createElement('input');
						var usernameField = d.createElement('input');
						passwordField.setAttribute('name', 'password');
						passwordField.setAttribute('type', 'hidden');
						passwordField.value = password;
						usernameField.setAttribute('name', 'builder_id');
						usernameField.setAttribute('type', 'hidden');
						usernameField.value = username;
						form.appendChild(usernameField);
						form.appendChild(passwordField);
						form.action = 'http://builder.armato.com.au/start_session.php';
						form.method = 'post';
						form.submit();
					break;
					default:
						window.top.location = selected;
					break;
				}
			} else { alert('This login does not have a preview website available.'); }
		break;
		case 3:
			var date = new Date();
			sendRequest('../include.clientLogin.php', "post", 'logout=true&r=true&date='+date, action);
		break;
	}
}

function logout() {
	var date = new Date();
	sendRequest('../include.clientLogin.php', "post", 'submitLogout=true&r=true&date='+date, 1);
}

function processRequestChange(action) {
	var loginDiv = d.getElementById('login');
	switch (x.readyState) {
		case 1:
		case 2:
		case 3:
			loginDiv.innerHTML = '<img src="../images/modusLoading.gif" class="login" alt="Loading..." title="Loading..." />';
		break;
		case 4:
			if(x.status == 200) {
			  var response = x.responseText;
			  switch (action) {
				case 1:
				case 3:
					loginDiv.innerHTML = response; // get message
				break;
			  }
			}
		break;
	}
}