<!-- // Begin
var email_exists = false;
var check_second = false;
var check_password = false;
var username_exists = false;
var Birth_Updated = false;
var state_not_province = true;
function popUp(URL) {
	day = new Date();
	id = day.getTime();
	eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=0,width=400,height=600,left = 440,top = 212');");
}
// End -->


function changecss(theClass,element,value) {
	//documentation for this script at http://www.shawnolson.net/a/503/
	var cssRules;
	if (document.all) {
		cssRules = 'rules';
	}
	else if (document.getElementById) {
		cssRules = 'cssRules';
	}
	for (var S = 0; S < document.styleSheets.length; S++){
		for (var R = 0; R < document.styleSheets[S][cssRules].length; R++) {
			if (document.styleSheets[S][cssRules][R].selectorText == theClass) {
				document.styleSheets[S][cssRules][R].style[element] = value;
			}
		}
	}
}

var consent_required = false;




function IsNumeric(sText)

{
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;

 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
   
}









function checkUname()
{
	var username = document.getElementById('username').value;



	if (username.length > 21) {
		document.getElementById('username_available').innerHTML = 'max username length is 21 characters';
	}
	else {

                var d = new Date();
                var t = d.getTime();
		sendRequestTextGet('../ajax_check_username.html', 'time=' + t + '&username=' + escape(username), 'ajax_checkUserName');
	}


}

function checkReferrer()
{
	var username = document.getElementById('referrer').value;




	sendRequestTextGet('../ajax_check_referrer.html', 'username=' + escape(username), 'ajax_checkReferrer');


}


// This is a little hack and slash still - Keith
function checkUemail()
{



	
	if (check_second && document.getElementById('email').value != '' &&  document.getElementById('confirm_email').value != '' )
	{
		if (document.getElementById('email').value != document.getElementById('confirm_email').value) {
			document.getElementById('c_email_label').style.color = 'red';
			document.getElementById('c_email_available').innerHTML = "Sorry your emails do not match";
		} else
		{
			document.getElementById('c_email_label').style.color = 'white';
			document.getElementById('c_email_available').innerHTML = '';
		}
	}

	
var email = document.getElementById('email').value;
//var yahoo_email=/yahoo.com$/ 
	if (email.length > 45) {
	    document.getElementById('email_label').style.color = 'red';
		document.getElementById('email_available').innerHTML = 'max email length is 45 characters';
	}
//	else if (yahoo_email.test(email))
   // {
    //    document.getElementById('email_label').style.color = 'red';
   //     document.getElementById('email_available').innerHTML = 'We are temporarily unable to confirm Yahoo e-mail addresses. Please try another e-mail address';
  //  }
    else{

        document.getElementById('email_label').style.color = 'white';
		document.getElementById('email_available').innerHTML = '';

		sendRequestTextGet('../ajax_check_email.html', 'email=' + escape(email), 'ajax_checkEmail');

	}


}






function does_not_require_consent()
{
	consent_required = false;
	changecss('.cdeprofiletable_parent_table','display','none');
}

function requires_consent()
{
	consent_required = true;
	changecss('.cdeprofiletable_parent_table','display','block');
}

function oldEnough(dob_year,dob_month,dob_day_of_month,finalCheck)
{
	var currentTime = new Date();
	var current_year = currentTime.getFullYear();
	var current_month = currentTime.getMonth()+1;
	var current_day_of_month = currentTime.getDate();
	// nested if statements perform this function fast!!
	if ( dob_year >= (current_year - 13))
	{
		if (dob_year == (current_year - 13))
		{
			if (dob_month <=  (current_month))
			{
				if (dob_month == current_month)
				{
					if (dob_day_of_month <= (current_day_of_month) )
					{
						if (dob_day_of_month == current_day_of_month) // HAPPY BIRTHDAY
						{
							if(finalCheck == 'true') {
								alert('Happy Birthday from Cartoon Doll Emporium!!!');
							}
						}
					} else { return false; } // not 13
				}
			} else { return false; } // not 13
		} else { return false; } // not 13
	}
	return true;
}




function checkSecondEmail()
{
	check_second = true;
	checkUemail();
}

function checkPassword()
{
   if( check_password && document.getElementById('first_password').value  != '' &&  document.getElementById('confirm_password').value != '' )
   {
	if (document.getElementById('first_password').value != document.getElementById('confirm_password').value) {
		document.getElementById('c_password_label').style.color = 'red';
		document.getElementById('c_password_notes').innerHTML = "<br/>Sorry your passwords do not match";
	} else
	{
		document.getElementById('c_password_label').style.color = 'white';
		document.getElementById('c_password_notes').innerHTML = "";
	}
   }

}

function checkSecondPassword()
{
	check_password = true;
	checkPassword()
}


function check_field_BirthSet()
{
	var error_msg = '';


	if (Birth_Updated == false)
	{
		error_msg += "<div class='errortop'></div><div class='errormessage'>Please fill out your birthdate.</div>";
	}
	return error_msg;

}



function date_acceptable(year,month,day)
{
        var birthdate_msg = '';
        var error_msg = true;
        var currentTime = new Date();

        /** 
        * @todo replace these with atomitized functions check_year, check_month, etc. Use for this and check_field_Birth()
        *
        */

        if (  year!= 'yyyy' &&  ((year > currentTime.getFullYear()) || (year < (currentTime.getFullYear()  - 150) ) || !IsNumeric(year))      )
        {
              error_msg = false;
              birthdate_msg += "<br/>Please select a valid birth year." ;
        }

        if ( month > 12 || month < 0 || !IsNumeric(month) )
        {
             error_msg =  false;
             birthdate_msg += "<br/>Please select a valid birth month.";
        }

        if  ( day != 'dd' && (day > 35 || day < 0 || !IsNumeric(day)) )
        {
             error_msg =  false;
             birthdate_msg += "<br/>Please select a valid day of month.";
        }

       if ( year == 'yyyy' || day == 'dd' ) error_msg = false;

       document.getElementById('birthdate_message').innerHTML = birthdate_msg;
       return error_msg;

}




function check_field_Birth()
{
	var error_msg = '';
	var year = document.getElementById('year').value;
	var month = document.getElementById('month').value;
	var day = document.getElementById('day').value;

	var currentTime = new Date();


	if ( (year > currentTime.getFullYear()) || (year < currentTime.getFullYear()  - 150 ) || !IsNumeric(year)   )
	{
		error_msg += "<div class='errortop'></div><div class='errormessage'>Please enter your correct birth year in yyyy format. Example 1995</div>";
	}

	if ( month > 12 || month < 0  || !IsNumeric(month) )
	{
		error_msg += "<div class='errortop'></div><div class='errormessage'>Please enter your correct birth month mm in mm format. </div>";
	}

	if  (day > 35 || day < 0 || !IsNumeric(day) )
	{
		error_msg += "<div class='errortop'></div><div class='errormessage'>Please enter your correct birth day of month.</div>";
	}


       


	if (!oldEnough(year,month,day,'true') && !document.getElementById('parent_consent').checked)
	{
		document.getElementById('month').style.color = 'red';
		document.getElementById('day').style.color = 'red';
		document.getElementById('year').style.color = 'red';
		error_msg += "<div class='errortop'></div><div class='errormessage'>You must be over the age of 13 or have your parents consent to be on this site.</div>";
	} else if ( !oldEnough(year,month,day,'true')  && document.getElementById('parent_consent').checked )
	{
		if( document.getElementById('parent_email').value == '') 		error_msg += "<div class='errortop'></div><div class='errormessage'>Your parent must enter their email address.</div>";
		if( document.getElementById('parent_email').value == '') 		error_msg += "<div class='errortop'></div><div class='errormessage'>Your parent must enter their name.</div>";
	}
	return error_msg;
}

function check_field_Username()
{
	var error_msg = '';



	if (document.getElementById('username').value == '') {
		error_msg += "<div class='errortop'></div><div class='errormessage'>You must enter a username (max length 21 characters).</div>";
		document.getElementById('username_label').style.color = 'red';
	}
	else {

		// replace with if (username_exists != true)
   testvar = 'ok';
		if (!username_exists ) {
			document.getElementById('username_label').style.color = 'red';
			error_msg +=  "<div class='errortop'></div><div class='errormessage'>You must provide a valid username!</div>";
		}


		var un = document.getElementById('username').value;
		if (un.length > 21) {
			error_msg += "<div class='errortop'></div><div class='errormessage'>Your username has a max length of 21 characters.</div>";
			document.getElementById('username_label').style.color = 'red';
		}

		var numcheck = /[^a-zA-Z0-9_]/
		if (numcheck.test(un)) {
			error_msg += "<div class='errortop'></div><div class='errormessage'>Your username may only contain letters, numbers and _.</div>";
			document.getElementById('username_label').style.color = 'red';
		}
	}
	return error_msg;
}

function check_field_Email()
{
	var error_msg = '';
	if (email_exists == true) {
		//      email_exists = false;
		error_msg += "<div class='errortop'></div><div class='errormessage'> Email address already registered.</div>";
		document.getElementById('email_label').style.color = 'red';
	}

	if (document.getElementById('email').value == '' || document.getElementById('email').value.indexOf('@') == -1) {
		error_msg += "<div class='errortop'></div><div class='errormessage'>You must provide a valid email address.</div>";
		document.getElementById('email_label').style.color = 'red';
	}

	if (document.getElementById('email').value != document.getElementById('confirm_email').value) {
		error_msg += "<div class='errortop'></div><div class='errormessage'>The email addresses you entered do not match.</div>";
		document.getElementById('email_label').style.color = 'red';
		document.getElementById('c_email_label').style.color = 'red';
	}

	return error_msg;
}


function check_field_Password()
{
	var error_msg = '';

	if (document.getElementById('first_password').value != document.getElementById('confirm_password').value) {
		error_msg += "<div class='errortop'></div><div class='errormessage'>The passwords you entered do not match.</div>";
		document.getElementById('password_label').style.color = 'red';
		document.getElementById('c_password_label').style.color = 'red';
	}

	if (document.getElementById('first_password').value == '') {
		error_msg += "<div class='errortop'></div><div class='errormessage'>You must enter a password.</div>";
		document.getElementById('password_label').style.color = 'red';
	}
	else {
		var pw = document.getElementById('first_password').value;
		if (pw.length <6) {
			error_msg += "<div class='errortop'></div><div class='errormessage'>Your password must be at least 6 characters in length.</div>";
			document.getElementById('password_label').style.color = 'red';
		}
		if (pw.length > 16) {
			error_msg += "<div class='errortop'></div><div class='errormessage'>Your password has a max length of 16 characters.</div>";
			document.getElementById('password_label').style.color = 'red';
		}

		var numcheck = /[^a-zA-Z0-9_]/
		if (numcheck.test(pw)) {
			error_msg += "<div class='errortop'></div><div class='errormessage'>Your password may only contain letters, numbers and _. No special characters.</div>";
			document.getElementById('password_label').style.color = 'red';
		}
	}
	return error_msg;

}


function check_field_Name()
{
	var error_msg = '';

	if (document.getElementById('name').value == '') {
		error_msg += 'You must enter a name.<br />';
		document.getElementById('name_label').style.color = 'red';
	}

	return error_msg;
}

function check_field_Country()
{
	var error_msg = '';

	var country = document.getElementById('country').value;

	if (country == 'USA')
	{
		if (document.getElementById('state').value == '')
		{
			document.getElementById('state').style.color = 'red';
			error_msg += "<div class='errortop'></div><div class='errormessage'>You must select a state.</div>";
		}

	} else
	{
		if ( document.getElementById('province').value == '')
		{
			document.getElementById('state').style.color = 'red';
			error_msg += "<div class='errortop'></div><div class='errormessage'>You must enter a state/province.</div>";			
		}
	}

	return error_msg;
}

function check_field_City()
{
	var error_msg = '';

	if (document.getElementById('city_name').value == '') {
		error_msg += "<div class='errortop'></div><div class='errormessage'>You must enter a city name.</div>";
		document.getElementById('city_name_label').style.color = 'red';
	}
	var un = document.getElementById('city_name').value;
	var numcheck = /[^a-zA-Z ]/
	if (numcheck.test(un)) {
		error_msg += "<div class='errortop'></div><div class='errormessage'>Your city may only contain letters.</div>";
		document.getElementById('city_name').style.color = 'red';
	}


	return error_msg;
}

function check_field_Zip()
{
	var error_msg = '';

	if (document.getElementById('zipcode').value == '') {
		error_msg += 'You must enter a zipcode.<br />';
		document.getElementById('zipcode_label').style.color = 'red';
	}

	return error_msg;
}

function check_field_Terms()
{
	var error_msg = '';

	if (!document.getElementById('terms_and_conditions').checked) {
		error_msg += "<div class='errortop'></div><div class='errormessage'>You must agree to the terms and conditions.</div>";
		//    document.getElementById('terms_label').style.color = 'red';
	}

	return error_msg;
}



function check_field_Parents()
{
	var error_msg = '';

	// parent or guardian consent
	if (consent_required == true ) {
		if (document.getElementById('parent_email').value == '' || document.getElementById('parent_email').value.indexOf('@') == -1) {
			error_msg += "<div class='errortop'></div><div class='errormessage'>Your parent or guardian must provide a valid email address.</div>";
			document.getElementById('parent_email_label').style.color = 'red';
		}
		if (document.getElementById('parent_name').value == '') {
			error_msg += "<div class='errortop'></div><div class='errormessage'>Your parent or guardian must provide thier name.</div>";
			document.getElementById('parent_name_label').style.color = 'red';
		} else
		{
			var un = document.getElementById('parent_name').value;
			var namecheck = /[^a-zA-Z \'\.,]/
			if (namecheck.test(un))
			{
				error_msg += "<div class='errortop'></div><div class='errormessage'>Your parent or guardian may only have letters in their name.</div>";
				document.getElementById('parent_name_label').style.color = 'red';
			}
		}
		if(!document.getElementById('parent_consent').checked) {
			error_msg += "<div class='errortop'></div><div class='errormessage'>Your parent or guardian must agree to the terms and conditions.</div>";
		}
	}

	return error_msg;
}










function checkOldEnough()
{
	var year = document.getElementById('year').value;
	var month = document.getElementById('month').value;
	var day = document.getElementById('day').value;
	Birth_Updated = true;

	if ( date_acceptable(year,month,day) && (!oldEnough(year,month,day,'false') || isNaN(parseInt(year)) ) )
	{
	//	document.getElementById('underage_yes').checked = 'checked';
                document.getElementById('age'). value = 0;
        sendRequestTextGet('set_under_13.php', '', 'none');
		requires_consent()
	} else {
		does_not_require_consent()
                document.getElementById('age'). value = 1;

	//	document.getElementById('underage_no').checked = 'checked';
	}
}



function check_country()
{
	var country = document.getElementById('country').value;
	if (country == 'USA') {
		document.getElementById('div_state').style.visibility = 'visible';
		document.getElementById('div_province').style.visibility = 'hidden';
		state_not_province = true;
		document.getElementById('state_not_province').value = true;
	
	} else {
		document.getElementById('div_province').style.visibility = 'visible';
		document.getElementById('div_state').style.visibility = 'hidden';
	    state_not_province = false;
		document.getElementById('state_not_province').value = false;
	}




}






function formCheck( page )
{
	switch (page)
	{
		case 0: // Main Page
		return check_MainPage();
		break;

		case 1:
		break;

		case 2:
		return check_InfoPage();
		break;

		case 3:
		return check_RegisterPage();
		break;

		case 4:
		break;

		case 5:
		break;
	}

}




function check_RegisterPage()
{

	error_msg = '';
	var error_msg = '';
//	error_msg += check_field_Username();
//	error_msg += check_field_Email();
//	error_msg += check_field_Password();

	// Birthday Block
//	error_msg += check_field_BirthSet();
//	if(Birth_Updated) error_msg += check_field_Birth(); // This is only called if the user has set their birthday otherwise they are asked to set their birthday.
	// Birthday Block



	//error_msg += check_field_Name();
//	error_msg += check_field_Country();
//	error_msg += check_field_City();
//	error_msg += check_field_Zip();
	error_msg += check_field_Terms();
	//error_msg += check_field_Parents();
	
	
	document.getElementById('error').innerHTML = error_msg;
	return( error_msg == '' );
}



function check_InfoPage()
{

	error_msg = '';
	var error_msg = '';
//	error_msg += check_field_Username();
//	error_msg += check_field_Email();
//	error_msg += check_field_Password();

	// Birthday Block
//	error_msg += check_field_BirthSet();
//	if(Birth_Updated) error_msg += check_field_Birth(); // This is only called if the user has set their birthday otherwise they are asked to set their birthday.
	// Birthday Block



	//error_msg += check_field_Name();
	error_msg += check_field_Country();
	error_msg += check_field_City();
//	error_msg += check_field_Zip();
	//error_msg += check_field_Terms();
	//error_msg += check_field_Parents();
	
	
	document.getElementById('error').innerHTML = error_msg;
	return( error_msg == '' );
}


function check_MainPage()
{
	error_msg = '';
	var error_msg = '';
	error_msg += check_field_Username();
	error_msg += check_field_Email();
	error_msg += check_field_Password();

	// Birthday Block
	error_msg += check_field_BirthSet();

//        error_msg += check_field_validBirthdate();

	if(Birth_Updated) error_msg += check_field_Birth(); // This is only called if the user has set their birthday otherwise they are asked to set their birthday.
 
	// Birthday Block


	//error_msg += check_field_Name();
	//error_msg += check_field_Country();
	//error_msg += check_field_City();
	//error_msg += check_field_Zop();
	//error_msg += check_field_Terms();
	error_msg += check_field_Parents();
	document.getElementById('error').innerHTML = error_msg;
	return( error_msg == '' );
}
-->
