include('ajax');

function displayMessage(content, color) {
	var message = document.getElementById('signupMessage');

	message.style.border = '2px solid ' + color;
	message.innerHTML = content;
	message.style.visibility = 'visible';
}

function hideMessage() {
	message.style.visibility = 'hidden';
	message.innerHTML = '';
}

var unsetAlert = [];
function signupUnsetAlert() {
	for (var i in unsetAlert) {
		label = document.getElementById(unsetAlert[i]);
		if (label) {
			label.style.color = 'black';
		}
	}
	unsetAlert = [];
}

function signupAlert(elements) {
	for (var i in elements) {
		label = document.getElementById(elements[i]);
		if (label) {
			unsetAlert.push(elements[i]);
			label.style.color = 'red';
		}
	}
}

function signupClear(elements) {
	for (var i in elements) {
		input = document.getElementById(elements[i]);
		if (input) {
			input.value = '';
		}
	}
}

/*function signupUpdate(method, params) {
	signupUnsetAlert();

	var request = {
		url: '/signup/ajax.phtml',
		method: 'POST',
		args: false,
		onSuccess: function(response) {
			var response_arr = eval('('+response+')');

			if (response_arr.redir) {
				window.location.href = response_arr.redir;
				return false;
			} else {
				displayMessage(response_arr.message, response_arr.color);
				if (response_arr.alert && response_arr.alert.constructor.toString().indexOf("Array") != -1) {
					signupAlert(response_arr.alert);
				}
				if (response_arr.clear && response_arr.clear.constructor.toString().indexOf("Array") != -1) {
					signupClear(response_arr.clear);
				}
				return false;
			}
		}
	}
	request.args = 'method=' + method;
	for (var key in params) {
		request.args = request.args + '&params[' + key + ']=' + params[key];
	}

	ajaxRequest(request);
}*/

function signupUpdate(method, params) {
	signupUnsetAlert();
	var content = {};
	content.method = method;
	for (var key in params) {
		content[key] = params[key];
	}

	var request = {
		url: '/signup/ajax.phtml',
		content: content,
		handleAs: 'json',
		handle: function(response) {
			if (response.redir) {
				window.location.href = response.redir;
				return false;
			} else {
				displayMessage(response.message, response.color);
				if (response.alert && response.alert.constructor.toString().indexOf('Array') != -1) {
					signupAlert(response.alert);
				}
				if (response.clear && response.clear.constructor.toString().indexOf('Array') != -1) {
					signupClear(response.clear);
				}
				if (method == 'step3') {
					dojo.byId('nextButton').onclick = function() {
						signupUpdate('step3', {
								'email1': dojo.byId('signupEmail1').value,
								'email2': dojo.byId('signupEmail2').value,
								//'optinNeopets': dojo.byId('optinNeopets').checked,
								//'optinNick': dojo.byId('optinNick').checked,
								'optinEmail': dojo.byId('optinEmail').value
								}); return false; };
				}
				return false;
			}
		}
	}

	if (method == 'step3') {
		dojo.byId('nextButton').onclick = function() {};
	}
	dojo.xhrPost(request);
}


