function pwd_enc(pwd)
{
	// Remove leading spaces and carriage returns
	while ((pwd.substring(0,1) == ' ') || (pwd.substring(0,1) == '\\r'))
	{
		pwd = pwd.substring(1,pwd.length);
	}

	// Remove trailing spaces and carriage returns
	while ((pwd.substring(pwd.length-1,pwd.length) == ' ') || (pwd.substring(pwd.length-1,pwd.length) == '\\r'))
	{
		pwd = pwd.substring(0,pwd.length-1);
	}

	return hex_md5(pwd.toLowerCase());
}

function valid_user()
{
	var reg1 = /^[\W\w]{5,}$/;
	var reg2 = /^(\w([-._\w]*\w)*@(\w[-_\w]*\w\.)+\w{2,9})$/;

	if(document.addUser.username.value == "") 
	{
		alert("Please give a username");
		return false;
	}
	else if(document.addUser.name.value == "")
	{
		alert("Please give a name");
		return false;
	}
	else if(document.addUser.admin_level.value == "")
	{
		alert("Please select an admin level");
		return false;
	}

	if(document.addUser.task.value == "add")
	{
		if(document.addUser.password1.value == "")
		{
			alert("Please give a password");
			return false;
		}
		else if(document.addUser.password2.value == "")
		{
			alert("Please repeat the password");
			return false;
		}
		else if(document.addUser.password1.value != document.addUser.password2.value)
		{
			alert("Passwords do not match");
			return false;
		}
		else if(!reg1.test(document.addUser.username.value) || !reg1.test(document.addUser.password1.value))
		{
			alert("Username and password must be at least 5 characters");
			return false;
		}
	
		document.addUser.password1.value = pwd_enc(document.addUser.password1.value);
		document.addUser.password2.value = pwd_enc(document.addUser.password2.value);
	}
	else
	{
		if(!reg1.test(document.addUser.username.value))
		{
			alert("Username must be at least 5 characters");
			return false;
		}

		if(document.addUser.password.value != "")
		{
			document.addUser.password.value = pwd_enc(document.addUser.password.value);
		}
	}

	return true;
}

function valid_page()
{
	if(document.addPage.title.value == "") 
	{
		alert("Please give a title");
		return false;
	}

	return true;
}

function valid_item()
{
	if(document.addItem.title.value == "") 
	{
		alert("Please give a title");
		return false;
	}

	return true;
}

function valid_link()
{
	if(document.addLink.title.value == "") 
	{
		alert("Please give a title");
		return false;
	}
	else if(document.addLink.url.value == "") 
	{
		alert("Please give a URL");
		return false;
	}

	return true;
}

function valid_image()
{
	if(document.addImage.name.value == "") 
	{
		alert("Please give a name");
		return false;
	}
	if(document.addImage.category.value == "") 
	{
		alert("Please give a category");
		return false;
	}
	else if(document.addImage.imageFile.value == "") 
	{
		alert("Please select an image file");
		return false;
	}

	return true;
}

function valid_login()
{
	if(document.login.username.value == "" || document.login.password.value == "")
	{
		alert("Please give a username and password");
		return false;
	}

	document.login.password.value = pwd_enc(document.login.password.value);
	return true;
}