// Main function used by Wizard navigation buttons
function ProcessForm(gotoStepNumber)
{
	// Store the page to redirect to next
	if (typeof gotoStepNumber != "undefined")
		document.getElementById('requestedStepNumber').value = gotoStepNumber;
	
	document.forms['signUpForm'].submit();
}

function CheckUserNameIsAvailable(username, url)
{
	username = username.trim();
	if (wos.string.hasValue(username))
	{
		// Call the function that checks the username is unique
		url += "?userName=" + wos.uri.urlEncode(username);
		wos.ajax.GetUrl(url, function () {
		    if (wos.ajax.xmlHttpObject && (wos.ajax.xmlHttpObject.readyState == 4))
			{
				if (wos.ajax.xmlHttpObject.responseText == 'false')
					SetMessage("This username has already been taken. Please choose a different one.", "usernameMessageDiv");
				else
					SetMessage("", "usernameMessageDiv");
			}
		});
	}
}

// Displays the error message (if any)
function SetMessage(errorMessage, messageDivId)
{
	var messageDiv = (typeof messageDivId != "undefined") ? document.getElementById(messageDivId) : document.getElementById('messageDiv');
	if (wos.string.hasValue(errorMessage))
	{
		messageDiv.innerHTML = errorMessage;
		wos.dom.replaceClass(messageDiv, "successMessages", "errorMessages");
		ShowElement(messageDiv, true);
		wos.client.ScrollToTopOfPage();
	}
	else
	{
		messageDiv.innerHTML = "";
		ShowElement(messageDiv, false);
	}
}

// Shows/hides an element by setting display to none/block
function ShowElement(element, showIt)
{
	if (showIt)
		wos.dom.replaceClass(element, "noDisplay", "display");
	else
		wos.dom.replaceClass(element, "display", "noDisplay");
}


