// --------= BEGIN FUNCTIONS FOR REGISTRATION FORM =--------

function InputCheck(cfgarbage1, cfgarbage2, inputstring)
   {
   var str = inputstring;
   // Return false if characters are not in allowed set.
   for (var i = 0; i < str.length; i++) 
      {
      var ch = str.substring(i, i + 1);
      if ((ch < "a" || "z" < ch) && (ch < "A" || "Z" < ch) && (ch < "0" || "9" < ch) && (ch != '-') && (ch != '_'))
         {
         return false;
         }
      }
   return true;
   }
   
function _CF_onError(form_object, input_object, object_value, error_message)
    {
	alert(error_message);
       	return false;	
    }

function _CF_hasValue(obj, obj_type)
{
	if (obj_type == "TEXT" || obj_type == "PASSWORD")
	{
		if (obj.value.length == 0) {
			return false;
		} else {
			return true;
		}
	} else if (obj_type == "SELECT") {
		for (i=0; i < obj.length; i++)
		{
			if (obj.options[i].selected && obj.value != "")
				return true;
		}		
		return false;	
	} else if (obj_type == "SINGLE_VALUE_RADIO" || obj_type == "SINGLE_VALUE_CHECKBOX") {
		if (obj.checked)
			return true;
		else
			return false;	
	} else if (obj_type == "RADIO" || obj_type == "CHECKBOX") {
		for (i=0; i < obj.length; i++)
		{
			if (obj[i].checked)
				return true;
		}
		return false;	
	}
}

function ltrim(str)
{
  re=/^ +/;
  var newstr=str.replace(re, "");
  return(newstr);
}
function rtrim(str)
{
  re=/ +$/;
  var newstr=str.replace(re, "");
  return(newstr);
}
function trim(str)
{
  var newstr=ltrim(str);
  return(rtrim(newstr));
}

function isCharacter(vString) {
	vString = trim(vString);
	if (vString == "")
		return false;
	var validChars = ".1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_ ";
	for ( var i = new Number(0); i < vString.length; i++ )
		if (validChars.indexOf(vString.substring(i,i+1)) == -1)
			return false;
	return true;
}

function checkParentRegisterForm(form) {


if  (!_CF_hasValue(form.title_id, "SELECT" )) 
        {
        if  (!_CF_onError(form, form.title_id, form.title_id.value, "You must enter a title by which you wish to be addressed."))
            {
            return false; 
            }
        }

if  (!InputCheck(form, form.title_id, form.title_id.value))
        {
        if  (!_CF_onError(form, form.title_id, form.title_id.value, "You must enter a title by which you wish to be addressed."))
            {
            return false; 
            }
        }		

if  (!_CF_hasValue(form.first_name, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.first_name, form.first_name.value, "You must enter a first name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false;
            }
        }

if  (!InputCheck(form, form.first_name, form.first_name.value))
        {
        if  (!_CF_onError(form, form.first_name, form.first_name.value, "You must enter a first name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }
		
if  (!_CF_hasValue(form.last_name, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.last_name, form.last_name.value, "You must enter a last name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }

if  (!InputCheck(form, form.last_name, form.last_name.value))
        {
        if  (!_CF_onError(form, form.last_name, form.last_name.value, "You must enter a last name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }
		
		
if  (!_CF_hasValue(form.city, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.city, form.city.value, "You must enter the city in Canada where you were you are from."))
            {
            return false; 
            }
        }

		
if  (!_CF_hasValue(form.provinceId, "SELECT" )) 
        {
        if  (!_CF_onError(form, form.provinceId, form.provinceId.value, "You must choose the province in Canada where you are located."))
            {
            return false; 
            }
        }

if  (!InputCheck(form, form.provinceId, form.provinceId.value))
        {
        if  (!_CF_onError(form, form.provinceId, form.provinceId.value, "You must choose the province in Canada where you are located."))
            {
            return false; 
            }
        }
		
if  (!_CF_hasValue(form.email, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.email, form.email.value, "You must enter a valid email."))
            {
            return false; 
            }
        }
		
// bottom form
if  (!_CF_hasValue(form.login_name, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.login_name, form.login_name.value, "You must enter a user name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }

if  (!InputCheck(form, form.login_name, form.login_name.value))
        {
        if  (!_CF_onError(form, form.login_name, form.login_name.value, "You must enter a user name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }

    if  (!_CF_hasValue(form.password_value, "PASSWORD" )) 
        {
        if  (!_CF_onError(form, form.password_value, form.password_value.value, "You must enter a password. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }

if  (!InputCheck(form, form.password_value, form.password_value.value))
        {
        if  (!_CF_onError(form, form.password_value, form.password_value.value, "You must enter a password. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }

    if  (!_CF_hasValue(form.VerifyAnswer, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.VerifyAnswer, form.VerifyAnswer.value, "You must enter an answer to your chosen verification question.  You can use letters, numbers, a space, and a period."))
            {
            return false; 
            }
        }

if  (!isCharacter(form.VerifyAnswer.value))
        {
        if  (!_CF_onError(form, form.VerifyAnswer, form.VerifyAnswer.value, "You must enter an answer to your chosen verification question.  You can use letters, numbers, a space, and a period."))
            {	
            return false; 
            }
        }

    return true;
}



function checkCounsellorRegisterForm(form) {
		
if  (!_CF_hasValue(form.title_id, "SELECT" )) 
        {
        if  (!_CF_onError(form, form.title_id, form.title_id.value, "You must enter a title by which you wish to be addressed."))
            {
            return false; 
            }
        }

if  (!InputCheck(form, form.title_id, form.title_id.value))
        {
        if  (!_CF_onError(form, form.title_id, form.title_id.value, "You must enter a title by which you wish to be addressed."))
            {
            return false; 
            }
        }		

if  (!_CF_hasValue(form.first_name, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.first_name, form.first_name.value, "You must enter a first name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false;
            }
        }

if  (!InputCheck(form, form.first_name, form.first_name.value))
        {
        if  (!_CF_onError(form, form.first_name, form.first_name.value, "You must enter a first name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }
		
if  (!_CF_hasValue(form.last_name, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.last_name, form.last_name.value, "You must enter a last name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }

if  (!InputCheck(form, form.last_name, form.last_name.value))
        {
        if  (!_CF_onError(form, form.last_name, form.last_name.value, "You must enter a last name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }
		
if  (!_CF_hasValue(form.title, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.title, form.title.value, "You must enter a title."))
            {
            return false; 
            }
        }

		
if  (!_CF_hasValue(form.school_name, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.school_name, form.school_name.value, "You must enter a school name."))
            {
            return false; 
            }
        }

		
if  (!_CF_hasValue(form.street, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.street, form.street.value, "You must enter a street address."))
            {
            return false; 
            }
        }
		
if  (!_CF_hasValue(form.city, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.city, form.city.value, "You must enter the city in Canada where you were you are from."))
            {
            return false; 
            }
        }

		
if  (!_CF_hasValue(form.provinceId, "SELECT" )) 
        {
        if  (!_CF_onError(form, form.provinceId, form.provinceId.value, "You must choose the province in Canada where you are located."))
            {
            return false; 
            }
        }

if  (!InputCheck(form, form.provinceId, form.provinceId.value))
        {
        if  (!_CF_onError(form, form.provinceId, form.provinceId.value, "You must choose the province in Canada where you are located."))
            {
            return false; 
            }
        }
		
if  (!_CF_hasValue(form.postal_code, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.postal_code, form.postal_code.value, "You must enter a valid postal code."))
            {
            return false; 
            }
        }
		
if  (!_CF_hasValue(form.email, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.email, form.email.value, "You must enter a valid email."))
            {
            return false; 
            }
        }
		
if  (!_CF_hasValue(form.students_enrolled, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.students_enrolled, form.students_enrolled.value, "You must enter a number of enrolled students."))
            {
            return false; 
            }
        }

if  (!InputCheck(form, form.students_enrolled, form.students_enrolled.value))
        {
        if  (!_CF_onError(form, form.students_enrolled, form.students_enrolled.value, "You must enter a number of enrolled students."))
            {
            return false; 
            }
        }
		
if  (!_CF_hasValue(form.min_grade, "SELECT" )) 
        {
        if  (!_CF_onError(form, form.min_grade, form.min_grade.value, "You must choose a minimum grade for your school."))
            {
            return false; 
            }
        }

if  (!_CF_hasValue(form.max_grade, "SELECT" )) 
        {
        if  (!_CF_onError(form, form.max_grade, form.max_grade.value, "You must choose a maximum grade for your school."))
            {
            return false; 
            }
        }
			

// bottom form
if  (!_CF_hasValue(form.login_name, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.login_name, form.login_name.value, "You must enter a user name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }

if  (!InputCheck(form, form.login_name, form.login_name.value))
        {
        if  (!_CF_onError(form, form.login_name, form.login_name.value, "You must enter a user name. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }

    if  (!_CF_hasValue(form.password_value, "PASSWORD" )) 
        {
        if  (!_CF_onError(form, form.password_value, form.password_value.value, "You must enter a password. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }

if  (!InputCheck(form, form.password_value, form.password_value.value))
        {
        if  (!_CF_onError(form, form.password_value, form.password_value.value, "You must enter a password. You may enter only letters, numbers, or - _ characters (no spaces or other punctuation)."))
            {
            return false; 
            }
        }

    if  (!_CF_hasValue(form.VerifyAnswer, "TEXT" )) 
        {
        if  (!_CF_onError(form, form.VerifyAnswer, form.VerifyAnswer.value, "You must enter an answer to your chosen verification question.  You can use letters, numbers, a space, and a period."))
            {
            return false; 
            }
        }

if  (!isCharacter(form.VerifyAnswer.value))
        {
        if  (!_CF_onError(form, form.VerifyAnswer, form.VerifyAnswer.value, "You must enter an answer to your chosen verification question.  You can use letters, numbers, a space, and a period."))
            {	
            return false; 
            }
        }

    return true;
}

// --------= END FUNCTIONS FOR REGISTRATION FORMS =--------

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
