$.fn.removeOption = function()
{
	var a = arguments;
	if(a.length == 0) return this;
	var ta = typeof(a[0]);
	var v, index;
	// has to be a string or regular expression (object in IE, function in Firefox)
	if(ta == "string" || ta == "object" || ta == "function" )
	{
		v = a[0];
		// if an array, remove items
		if(v.constructor == Array)
		{
			var l = v.length;
			for(var i = 0; i<l; i++)
			{
				this.removeOption(v[i], a[1]); 
			}
			return this;
		}
	}
	else if(ta == "number") index = a[0];
	else return this;
	this.each(
		function()
		{
			if(this.nodeName.toLowerCase() != "select") return;
			// clear cache
			if(this.cache) this.cache = null;
			// does the option need to be removed?
			var remove = false;
			// get options
			var o = this.options;
			if(!!v)
			{
				// get number of options
				var oL = o.length;
				for(var i=oL-1; i>=0; i--)
				{
					if(v.constructor == RegExp)
					{
						if(o[i].value.match(v))
						{
							remove = true;
						}
					}
					else if(o[i].value == v)
					{
						remove = true;
					}
					// if the option is only to be removed if selected
					if(remove && a[1] === true) remove = o[i].selected;
					if(remove)
					{
						o[i] = null;
					}
					remove = false;
				}
			}
			else
			{
				// only remove if selected?
				if(a[1] === true)
				{
					remove = o[index].selected;
				}
				else
				{
					remove = true;
				}
				if(remove)
				{
					this.remove(index);
				}
			}
		}
	);
	return this;
};


$(document).ready(function(){ 
	
	//$("form#webform-client-form-10").validate();
	$("form#webform-client-form-10 input").addClass("require");
	$("form#webform-client-form-10 input#edit-submitted-best-time-to-call").removeClass("require");
	$("form#webform-client-form-10 textarea").addClass("require");
	$("form#webform-client-form-10 input#edit-submitted-email").addClass("email");
	$("form#webform-client-form-10 input#edit-submitted-phone").addClass("number");
	$("select#edit-submitted-select").removeOption("");
	
	$('form#webform-client-form-10').submit(function() {
		var valid = true;
		
		$(this).find('input.require').css("border", "");
		$(this).find('.require').each(function() {
			if ($(this).val() == "") {
				$(this).css("border", "1px solid red");
				valid = false;
			} else if ($(this).hasClass('email') && !checkemail($(this).val())) {
				$(this).css("border", "1px solid red");
				valid = false;
			} else if ($(this).hasClass('number') && !checknum($(this).val())) {
			    $(this).css("border", "1px solid red");
		    	valid = false;
		  	}
		});
		
		if (!valid) {
			return false;
		}
	});

	
	$("select#edit-submitted-select").change(function () {
          var str = "";
          var selectOptionID = $("select#edit-submitted-select option:selected").val();
          if(selectOptionID == "I Have a Question") {
          	$("div#webform-component-question").slideToggle("slow");
          } else {
          	$("div#webform-component-question").hide("slow");
          }
        });
	
});

function checkemail(e){
	var emailfilter = /^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i
	return emailfilter.test(e);
}
function checknum(e) {
 //var filter = /^\D?(\d{3})\D?\D?(\d{3})\D?(\d{4})$/
 
 	if(isNaN(e)) {
 		return false; 
 	} else {
 		return true;
 	}
 return filter.test(e);
}
