/**
 * @author Bryan Dease
 * @version 1
 * @copyright Bryan Dease, 10 September, 2009
 **/

/**
// jquery plugin to validate forms
**/
 
jQuery.fn.simpleValidate = function(opts)
{
	// set our global defaults here
	var defaults = 
	{ 
		emailMsg	: 'Please Enter Your Email Address',
		emailWrong	: 'Please Enter a Valid Email Address',
		nameMsg		: 'Please Enter your Name'
	}; 
	
	var opts = jQuery.extend(defaults, opts);	
	// set a global function element on the current form ID
	var $form = jQuery(this);
	
	// capture the submit event and run it through some email and name validation	
		this.submit(function() 
		{
			var nameID = jQuery(this).find('#name');
			var emailID = jQuery(this).find('#email');
			
			if ((nameID.val()==null)||(nameID.val()==''))
			{
				alert(opts.nameMsg);
				jQuery('#name').focus();
				return false;
			}
			if ((emailID.val()==null)||(emailID.val()==''))
			{
				alert(opts.emailMsg);
				jQuery('#email').focus();
				return false;
			}
			if (echeck(emailID.val())==false)
			{
				jQuery('#email').val('');
				jQuery('#email').focus();
				return false;
			}
			
			// everything checks out - submit the form and play like we are doing real ajax here...
			return true;
		});
	
	// simple email validation
	function echeck(str) 
	{
		var at='@';
		var dot='.';
		var lat=str.indexOf(at);
		var lstr=str.length;
		var ldot=str.indexOf(dot);
		
		if (str.indexOf(at)==-1)
		{
			alert(opts.emailWrong);
			return false;
		}
		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr)
		{
			alert(opts.emailWrong);
			return false;
		}
		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr)
		{
			alert(opts.emailWrong);
			return false;
		}
		if (str.indexOf(at,(lat+1))!=-1)
		{
			alert(opts.emailWrong);
			return false;
		}
		if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot)
		{
			alert(opts.emailWrong);
			return false;
		}
		if (str.indexOf(dot,(lat+2))==-1)
		{
			alert(opts.emailWrong);
			return false;
		}
		if (str.indexOf(' ')!=-1)
		{
			alert(opts.emailWrong);
			return false;
		}
		return true;			
	}
	
	// simple capitalizing script for first and last name
	function capitalizeMe(obj)
	{
		val = obj.value;
		newVal = '';
		val = val.split(' ');
		for(var c=0; c < val.length; c++) 
		{
		newVal += val[c].substring(0,1).toUpperCase() +
		val[c].substring(1,val[c].length) + '';
		}
		obj.value = newVal;
	}			
}

