var amn = 
{
	_mobile : "",
	_specialty: "",
	_states : "",
	_discipline : "",	
	subscribe : function(type) {		
		amn._mobile = $("mobile").value.replace(/[\(\)\.\-\s,]/g, ""); 
		amn._specialty = amn.getMultiSelect($('specialty'));
		amn._states = amn.getMultiSelect($('states'));
		if($('discipline')) {
			amn._discipline = $("discipline").getValue();
		}
		
		if(amn.validateForm()) {	
			var url = "/widget/subscribe";
		
			new Ajax.Request(url, {
			method: 'post',
			parameters: { 'fname': $("fname").value,
				'lname':$("lname").value,
				'mobile':amn._mobile,
				'email':$("email").value,
				'specialty': amn._specialty,
				'discipline': amn._discipline,
				'states' : amn._states,
				'type': type},	
			onLoading: "",
			onSuccess: function(transport) {
				response = eval("(" + transport.responseText + ")");
				if(response.result) {
					message = amn.getResponse(type);
					if(response['subscribed'] != undefined && response['subscribed'] > 0) {
						if(response['new'] != undefined && response['new'] > 0) {
							message += '\nYou where added to ' + response['new'] + ' group(s).\nYou were already subscribed to ' + response['subscribed'] + ' group(s).';
						} else {
							message = 'You were already subscribed to all of the group(s) that you selected.';
						}
					}
				} else {
					message = response.message;
				}
				alert(message);
			}
			});
		}
	},
	validateForm : function()
	{
		var valid = true;
		cleanMobile = $("mobile").value.replace(/[\(\)\.\-\s,]/g, "");
		if($("fname").value == "First Name" || $("fname").value == ""){
				amn.throwMessage("Your First Name is Required");
				return false;
		}
	
		if($("lname").value == "Last Name" || $("lname").value == ""){
				amn.throwMessage("Your Last Name is Required");
				return false;
		}
		
		if(amn._mobile.length != 10){
				amn.throwMessage("Your Mobile Phone Number is Required");
				return false;
		}
		
		if(!amn.echeck($("email").value)){
			amn.throwMessage("Your Email Address is Required");
			return false;	
		}		
		
		if(amn._specialty == ""){
			amn.throwMessage("A Specialty Must be Selected");
			return false;	
		}
		
		if(amn._states == ""){
			amn.throwMessage("A State Must be Selected");
			return false;	
		}

		return valid;
	},
	getMultiSelect : function(ob)
	{
		str = "";
		 for (var i = 0; i < ob.options.length; i++) if (ob.options[ i ].selected){ 
			if(str == "")
				str += (ob.options[ i ].value);
				else
				str += "|"+(ob.options[ i ].value);
		}
		return str;		
	},	
	throwMessage : function(msg)
	{
		alert(msg);
	},
	echeck : function(str) {
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1)
		   return false
		

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr)
		   return false		

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr)
		    return false
		

		 if (str.indexOf(at,(lat+1))!=-1)
		    return false
		 

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot)
		    return false
		 

		 if (str.indexOf(dot,(lat+2))==-1)
		    return false
		 
		
		 if (str.indexOf(" ")!=-1)
		    return false
		 
 		 return true;
	},
	getResponse : function(type)
	{
		switch(type)
		{
			case "staffcare":
				group = "Staff Care";
				break;
			case "mhawkins":
				group = "Merritt Hawkins";
				break;
			case "americanmobile":
				group = "American Mobile Healthcare";
				break;
			case "medtravelers":
				group = "Med Travelers";
				break;				
			default:
				group = "Staff Care";
				break;
		}
		return "Thank you for signing up to receive text message job alerts with "+group+".  You can opt out at anytime by texting STOPALL to 91011";
	}

}



