﻿function ChangeRegStep(stepnum,un,email,zip,dob,err){
	// Open the AJAX object
	var sackObject = new sack();
	var addToURL = "piece=register&step=" + stepnum + "&username="+un+"&email="+email+"&zip="+zip+"&dob="+dob+"&err="+err	
	
	sackObject.requestFile = "/pieces.aspx";
	sackObject.method = "GET";
	sackObject.element = 'RegStep';
	sackObject.onLoading = whenLoading('RegStep');
	sackObject.runAJAX(addToURL);
}

function ChangeRegPopup(stepnum,un,email){
	// Open the AJAX object
	var sackObject = new sack();
	var addToURL = "piece=register&step=2&username="+un+"&email="+email;
	
	sackObject.requestFile = "/pieces.aspx";
	sackObject.method = "GET";
	sackObject.element = 'RegStep';
	sackObject.onLoading = whenLoading('RegStep');
	sackObject.runAJAX(addToURL);
}


function isAlphaNum(str){
	if(!str.match(/^\w+$/)){
		str = str.replace(/[^a-zA-Z 0-9]+/g,'');
		document.getElementById('usernameTextbox').value=str;
	}
}

function CheckUsername(){
	var sackObject = new sack();
	var un = document.getElementById('usernameTextbox');
	
	document.getElementById('moduleSignIn').style.display = 'none';
	
	if (un.value.length <= 3){
		var divID = document.getElementById('badusername');
		divID.style.display = 'block';
		return false;
	}
	var addToURL = "piece=register&username=" + un.value;
	
	sackObject.requestFile = "/pieces.aspx";
	sackObject.method = "GET";
	sackObject.element = 'RegStep';
	sackObject.onLoading = whenLoading('RegStep');
	sackObject.runAJAX(addToURL);
}

function checkZip() {
	var zip = document.getElementById('zip').value;
	var sackObject = new sack();
	var e = document.getElementById('checkingzip'); 
	
	if (zip.length == 0) {
		var divID = document.getElementById('ziperror');
		divID.style.display = 'none';
		e.innerHTML = '';
		return true;
	}

	var addToURL = "piece=checkzip&zip=" + zip;
	
	var divID = document.getElementById('ziperror');
	divID.style.display = 'none';
	
	sackObject.requestFile = "/pieces.aspx";
	sackObject.method = "GET";
	sackObject.element = 'checkingzip';
	sackObject.runAJAX(addToURL);
	
	if ((e.innerHTML = "<img src='/images/check25x25.png' width='25' height='25' alt='Valid' />")||(e.innerHTML = "")) {
		return true;
	}else{
		return false;
	}
	
}

function checkiam(){
    var groupid = document.getElementById('groupid').value;
    document.getElementById('procheck').style.display='none';
    document.getElementById('stucheck').style.display='none';
    document.getElementById('stucheckerror').style.display='none';
    document.getElementById('procheckerror').style.display='none';
    if (groupid == 8){
        document.getElementById('procheck').style.display='block';
    }else if(groupid == 13){
        document.getElementById('stucheck').style.display='block';
    }
}

function CheckPassword(){
    var pw1 = document.getElementById('regpassword').value;
    var pw2 = document.getElementById('regpassword2').value;
    var validIcon = document.getElementById('validPW');
    var invalidIcon = document.getElementById('invalidPW');
    
    if(pw1 != pw2 || pw1.length < 4){
        validIcon.style.display = 'none';
        invalidIcon.style.display = 'block';
    }else{
        invalidIcon.style.display = 'none';
        validIcon.style.display = 'block';        
    }
}

function CheckEmail(){
    var email = document.getElementById('email').value;
    var validIcon = document.getElementById('validEmail');
    var invalidIcon = document.getElementById('invalidEmail');
    
    if (email.length >0 && email.indexOf("@",0) == -1||email.indexOf(".",0) == -1) {
        validIcon.style.display = 'none';
        invalidIcon.style.display = 'block';
    }else{
        invalidIcon.style.display = 'none';
        validIcon.style.display = 'block';        
    }
}

//Function to check form is filled in correctly before submitting
function CheckForm () {

	//Initialise variables
	var errorMsg = "";
	var errorMsgLong = "";
	var divErrors = document.getElementById('errors');
	var divEmail = document.getElementById('emailerror');
	var divPassword1 = document.getElementById('passworderror1');
	var divPassword2 = document.getElementById('passworderror2');
	var divDOB = document.getElementById('doberror');
	var divDOB2 = document.getElementById('doberror2');
	var divZip = document.getElementById('ziperror');
	var divMemberType = document.getElementById('membertypeerror');
	var divProError = document.getElementById('procheckerror');
	var divStuError = document.getElementById('stucheckerror');
	var divTandC = document.getElementById('tandcerror');
	divErrors.style.display = 'none';
	divEmail.style.display = 'none';
	divPassword1.style.display = 'none';
	divPassword2.style.display = 'none';
	divDOB.style.display = 'none';
	divDOB2.style.display = 'none';
	divMemberType.style.display = 'none';
	divProError.style.display = 'none';
	divStuError.style.display = 'none';
	divTandC.style.display = 'none';
	divZip.style.display = 'none';
	
	var curdate = new Date();
	var curyear = curdate.getYear();

	
	var formArea = document.getElementById('frmRegister');


	//If an e-mail is entered check that the e-mail address is valid
	if (formArea.email.value.length >0 && formArea.email.value.indexOf("@",0) == -1||formArea.email.value.indexOf(".",0) == -1) {
			divEmail.style.display = 'block';
			errorMsg = "error";
	}
	
	//Check for a password
	if (formArea.password.value.length <= 3){
			divPassword1.style.display = 'block';
			errorMsg = "error";
	}

	//Check both passwords are the same
	if ((formArea.password.value) != (formArea.password2.value)){
			divPassword2.style.display = 'block';
			errorMsg = "error";
	}
    
   	//Check for a DOB
	if (formArea.DOBmonth.value == '0' || formArea.DOBday.value == '0' || formArea.DOByear.value == '0'){
    	divDOB.style.display = 'block';
    	errorMsg = "error";
    }

	if (formArea.DOBmonth.value == '1' && formArea.DOBday.value == '1' && formArea.DOByear.value == curyear-75+1900){
    	divDOB2.style.display = 'block';
    	errorMsg = "error";
    }
    
    //Check member type
    if (formArea.groupid.value == '0'){
        divMemberType.style.display = 'block';
        errorMsg = "error";
    } else if (formArea.groupid.value == '8' && !formArea.yesimapro.checked){
        divProError.style.display = 'block';
        errorMsg = "error";
    } else if (formArea.groupid.value == '13' && !formArea.yesimastudio.checked){
        divStuError.style.display = 'block';
        errorMsg = "error";
    }
    
    //Check terms and conditions checkbox
	if (!formArea.tandc.checked){
    	divTandC.style.display = 'block';
    	errorMsg = "error";
    }
    
    //If there is aproblem with the form then display an error
	if ((errorMsg != "") || (errorMsgLong != "")){
		divErrors.style.display = 'block';
		return false;
	}

	return true;
}
