/*** HELPER FUNCTIONS by Rye***/
function trim(s) 
{
	while (s.substring(0,1) == ' ') 
	{
		s = s.substring(1,s.length);
	}

	while (s.substring(s.length-1,s.length) == ' ') 
	{
		s = s.substring(0,s.length-1);
	}

	return s;
}



function isNumeric(S)
{
	return /^\d+\.*\d*$/.test(S);
}

function isAlphaNumeric(S)
{
	return /^[\w\d]+$/.test(S);
}


function isValidEmail(S)
{
	return /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(S);
}

function getKeyCode(e)
{
	if (window.event) return window.event.keyCode;
 	else if (e) return e.which;
 	else return null;
}

function keyRestrict(e, validchars) 
{
	var letters = "abcdefghijklmnopqrstuvwxyz";
	var numbers = '0123456789';
	var letterspace = letters + ' ' + "'";
	var numberspace = numbers + ' ';
	var phonenumber = numbers + '-()';
	switch( validchars )
	{
		case 'letters': validchars = letters; break;
		case 'numbers': validchars = numbers; break;
		case 'letterspace': validchars = letterspace; break;
		case 'numberspace': validchars = numberspace; break;
		case 'phonenumber': validchars = phonenumber; break;

	}


	var key='', keychar='';
   	key = getKeyCode(e);

   	if (key == null) return true;
   	keychar = String.fromCharCode(key);
	keychar = keychar.toLowerCase();
	validchars = validchars.toLowerCase();
	if (validchars.indexOf(keychar) != -1)  return true;
 	if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 )  return true;
 	return false;

}


function enableLogin()
{
	var un = document.getElementById('username');
	var pw = document.getElementById('password');
	var bt = document.getElementById('submit');

	if( trim(un.value) != '' && trim(pw.value) != '' )
	{
		bt.disabled = false;
	}
	else
	{
		bt.disabled = 'disabled';	
	}

}



function confirmDelete(dataName)
{
	var confirmMe = confirm('Are you really sure you want to delete this commission as paid?');
	
	if( confirmMe ) {return true;}
	
	return false;
	
}

function validateForm()
{
	var fn = document.getElementById("txtName");
	var em = document.getElementById("txtEmail");

	var rn = document.getElementById("reqName")
	var re = document.getElementById("reqEmail")
	
	var msg = '';
	
	if(trim(fn.value) == '')
	{
		rn.style.visibility = '';
		msg += "<li>Full name required</li>";
	}
	
	if( trim(em.value) == '')
	{
		re.style.visibility = '';
		msg += "<li>Email address required</li>";
	}
	else if( !isValidEmail(trim(em.value)) )
	{
		re.style.visibility = '';
		msg += "<li>Invalid email address entered</li>";
	}
	
	if(msg == '')
	{
		return true;
	}
	else
	{
		var errDiv = document.getElementById("sumContact");
		msg = "<ul>" + msg + "</ul>";
		errDiv.innerHTML = msg;
		return false;
	}
	
					
}


function validateProfileForm()
{
	var fn = document.getElementById("txtFirstName");
	var rfn = document.getElementById("reqFirstName")
	
	var ln = document.getElementById("txtLastName");
	var rln = document.getElementById("reqLastName")
	
	var em = document.getElementById("txtEmail");
	var rem = document.getElementById("reqEmail")
	
	var msg = '';
	
	if(trim(fn.value) == '')
	{
		rfn.style.visibility = '';
		msg += "<li>First name required</li>";
	}
	
	if(trim(ln.value) == '')
	{
		rln.style.visibility = '';
		msg += "<li>Last name required</li>";
	}
	
	if( trim(em.value) == '')
	{
		rem.style.visibility = '';
		msg += "<li>Email address required</li>";
	}
	else if( !isValidEmail(trim(em.value)) )
	{
		rem.style.visibility = '';
		msg += "<li>Invalid email address entered</li>";
	}
	
	if(msg == '')
	{
		return true;
	}
	else
	{
		var errDiv = document.getElementById("sumProfile");
		msg = "<ul>" + msg + "</ul>";
		errDiv.innerHTML = msg;
		errDiv.scrollIntoView();
		return false;
	}
	
}


function validateAppForm()
{
	
	
	var fn = document.getElementById("txtName");
	var rn = document.getElementById("reqName")
	
	var org  = document.getElementById("txtOrg")
	var rorg = document.getElementById("reqOrg")
	
	var posi  = document.getElementById("txtPosition")
	var rposi = document.getElementById("reqPosition")
	
	var addr  = document.getElementById("txtAddress1")
	var raddr = document.getElementById("reqAddress1")
	
	var city  = document.getElementById("txtCity")
	var rcity = document.getElementById("reqCity")
	
	var em = document.getElementById("txtEmail");
	var re = document.getElementById("reqEmail")
	
	var msg = '';
	
	if(trim(fn.value) == '')
	{
		rn.style.visibility = '';
		msg += "<li>Full name required</li>";
	}
	
	
	if(trim(org.value) == '')
	{
		rorg.style.visibility = '';
		msg += "<li>Organization required</li>";
	}
	
	if(trim(posi.value) == '')
	{
		rposi.style.visibility = '';
		msg += "<li>Position required</li>";
	}
	
	if(trim(addr.value) == '')
	{
		raddr.style.visibility = '';
		msg += "<li>Address 1 required</li>";
	}
	
	if(trim(city.value) == '')
	{
		rcity.style.visibility = '';
		msg += "<li>City, State and Zip required</li>";
	}
	
	if( trim(em.value) == '')
	{
		re.style.visibility = '';
		msg += "<li>Email address required</li>";
	}
	else if( !isValidEmail(trim(em.value)) )
	{
		re.style.visibility = '';
		msg += "<li>Invalid email address entered</li>";
	}
	
		
	if(msg == '')
	{
		return true;
	}
	else
	{
		var errDiv = document.getElementById("sumApplication");
		msg = "<ul>" + msg + "</ul>";
		errDiv.innerHTML = msg;
		return false;
	}
	
	
}

function validateLogin()
{
	var un  = document.getElementById("txtUsername");
	var run = document.getElementById("reqUsername");
	
	var pw  = document.getElementById("txtPassword");
	var rpw = document.getElementById("reqPassword");
	
	var msg = '';
	
	if(trim(un.value) == '')
	{
		run.style.visibility = '';
		msg += "<li>Username required</li>";
	}
	
	if(trim(pw.value) == '')
	{
		rpw.style.visibility = '';
		msg += "<li>Password required</li>";
	}
	
	if(msg == '')
	{
		return true;
	}
	else
	{
		var errDiv = document.getElementById("sumLogin");
		msg = "<ul>" + msg + "</ul>";
		errDiv.innerHTML = msg;
		return false;
	}
	
	
}

function validateMemberForm()
{
	
	var un  = document.getElementById("un");
	var run = document.getElementById("reqUN")
	
	var pw = document.getElementById("pw");
	var rpw = document.getElementById("reqPW")
	
	var em = document.getElementById("em");
	var rem = document.getElementById("reqEmail")
	
	var msg = '';
	
	if(trim(un.value) == '')
	{
		run.style.visibility = '';
		msg += "-Username is required\n";
	}
	
	if(trim(pw.value) == '')
	{
		rpw.style.visibility = '';
		msg += "-Password is required\n";
	}
	
	if( trim(em.value) == '')
	{
		rem.style.visibility = '';
		msg += "-Email address is required";
	}
	else if( !isValidEmail(trim(em.value)) )
	{
		rem.style.visibility = '';
		msg += "-Invalid email address entered";
	}
	
	if(msg == '')
	{
		return true;
	}
	else
	{
		msg = "Submitted form contains error(s)\n" + msg;
		document.getElementById('body-wrapper').scrollIntoView();
		alert(msg);
		return false;
	}
	
}
