function NewUser(name)
{	
	
	var reg = document.forms[name];
	reg.subbutton.value = "Verifying...";
	reg.subbutton.disabled = true;
	 
	var chk=true;

// Set cookie values from form data 

	if (chk)
		chk = validate(reg.user,"username");
	if (chk)
		chk = validate(reg.pass,"password");
	if (chk)
		chk = validate(reg.pass2,"confirmation password");
	if (chk)
		chk = min_length(reg.pass,reg.pass2,"password");
	if (chk)
		chk = min_length(reg.user,reg.user,"username");
	if (chk)
	{
		if (isFill(reg.email)){
			chk = mail_validate(reg.email);
		}
	}
	if (chk && reg.pass.value != reg.pass2.value)
	{
			alert('The passwords you entered did not match.');
			reg.pass.value="";
			reg.pass2.value="";
			reg.pass.focus();
			chk = false;
			reg.subbutton.value = "Submit Information";
			reg.subbutton.disabled = false;
	}
	if (chk && isFill(reg.inst_id))
	{
		if (isNaN(reg.inst_id.value))
		{
			chk = false;
			alert('Please make sure your institution ID is a number only');
			reg.inst_id.focus();
		}
	}
	if (chk && getCookie('asd'+reg.user.value) != null)
	{
			alert('The username ' + "'" +reg.user.value + "'" + ' is already in use. Please choose another.');
			reg.user.value="";		
			reg.user.focus();
			chk = false;
			reg.subbutton.value = "Submit Information";
			reg.subbutton.disabled = false;
	}

	// Check for matching key
	if (chk && typeof inst_key != "undefined" && reg.key.value != inst_key)
	{
		chk = false;
		alert('You need to insert the correct key to continue. If you have lost that key, please contact us.');
		reg.key.value="";		
		reg.key.focus();

		reg.subbutton.value = "Submit Information";
		reg.subbutton.disabled = false;
	}
	
	// A problem? 
	if (!chk)
	{
		reg.subbutton.value = "Submit Information";
		reg.subbutton.disabled = false;
	}
	
	// Good to go
	else
	{
		var cname = 'asd'+reg.user.value;
		var cbmark = 'pgasd'+reg.user.value;

		var exp1 = dater(1);
		var exp3 = dater(1095);

		setCookie(cname, '', exp3);
		setCrumb(cname, reg.user.name, reg.user.value, exp3);     
		setCrumb(cname, reg.firstname.name, escape(reg.firstname.value), exp3);
		setCrumb(cname, reg.lastname.name, escape(reg.lastname.value), exp3);
		
		setCrumb(cname, reg.f_271.name, reg.f_271.options[reg.f_271.selectedIndex].value, exp1); // 1
		setCrumb(cname, reg.t_899.name, escape(reg.t_899.value), exp1); // Other
	
		setCrumb(cname, reg.f_274.name, reg.f_274.options[reg.f_274.selectedIndex].value, exp1); // 2
		setCrumb(cname, reg.t_916.name, escape(reg.t_916.value), exp1); // Other
				
		setCrumb(cname, reg.years.name, reg.years.value, exp3);
		setCrumb(cname, reg.email.name, reg.email.value, exp3);
		setCrumb(cname, reg.pass.name, reg.pass.value, exp3);

		if (reg.f_277[0].checked)
			setCrumb(cname, "f_277", reg.f_277[0].value, exp3);
		else if (reg.f_277[1].checked)
			setCrumb(cname, "f_277", reg.f_277[1].value, exp3);
		
		// Do we need to also store the inst ID?
		if (isFill(reg.inst_id))
			setCrumb(cname, reg.inst_id.name, reg.inst_id.value, exp3);

		// Set the main tracker cookie
		setCookie("asdcurrent",cname,exp1);
		
		// Don't need to set any initial page values because user hasn't gone anywhere yet
		//setCookie(cbmark,'', exp1);
		//setCrumb(cbmark,0,0, exp1);
		
		reg.subbutton.value = "Submit Information";
		reg.subbutton.disabled = false;
		
		// For auto login
		if (reg.auto.checked)
			setCrumb(cname,"auto","t",exp3);
		else
			setCrumb(cname,"auto","f",exp3);
		
		timeStart();
		window.location="newuser.htm";
	}
}