/**
* Returns the value of the selected radio button in the radio group, null if
* none are selected, and false if the button group doesn't exist
*
* @param {radio Object} or {radio id} el
* OR
* @param {form Object} or {form id} el
* @param {radio group name} radioGroup
*/
var BECOMEUTILS = {};
String.prototype.compactNum = function () {
	return this.replace(/[\s\(\)-]/g, "");
}
String.prototype.trim = function () {
    return this.replace(/^\s*/, "").replace(/\s*$/, "");
}

function $RF(radioGroup) {
	return $("input[@name='" + radioGroup +"']:checked").val();
}

function $RF1(radioGroup) {
	return $("input[name='" + radioGroup +"']:checked").val();
}

BECOMEUTILS.emailRegEx = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
function validEmail(str){
	return BECOMEUTILS.emailRegEx.test(str);
}

BECOMEUTILS.zipcodeRegEx = /^\d{5}$/;
function validZipcode(str){
	return BECOMEUTILS.zipcodeRegEx.test(str);
}

// To match any of the following regex, first strip all the spaces.
BECOMEUTILS.phoneNumFormat1 = /^\(\d\d\d\)\d\d\d-\d\d\d\d$/; // 1(408)9889988 or (408)9889988
BECOMEUTILS.phoneNumFormat2 = /^\d{10}$/; 	// 4089889988
BECOMEUTILS.phoneNumFormat3 = /^\d{3}-\d{3}-\d{4}$/; // 408-988-9988
BECOMEUTILS.phoneNumFormat4 = /^\d{3}\.\d{3}\.\d{4}$/;
function validPhoneNumber(str){
	var str = str.compactNum();
	return (BECOMEUTILS.phoneNumFormat1.test(str) || 
		BECOMEUTILS.phoneNumFormat2.test(str) || 
		BECOMEUTILS.phoneNumFormat3.test(str) || 
		BECOMEUTILS.phoneNumFormat4.test(str));
}

BECOMEUTILS.invalidNamePattern1 = /([a-zA-Z])\1\1/;
function validName(str) {
	if (BECOMEUTILS.invalidNamePattern1.test(str)) return false;
	return (str == null || str == "" || str.length < 2) ? false : true;
}

function validCity(str) {
	return (str == null || str == "") ? false : true
}

function validState(str) {
	return (str == null || str == "") ? false : true
}

function validAddress(str) {
	return (str == null || str == "" || str.length < 6) ? false : true
}

function commonInit() {
	$("#capellaAcc").click(function() { $("#capellaAcc").hide(); });
	$(".capAcc span").click(function() { $("#capellaAcc").show(); });
	$(".disclaimerLink").each(function(n) {
		var contentId = '#' + this.id + 'c';
		this.onclick = function() {
			$(contentId).toggle();
		};
		$(contentId + ' .disclaimerPopupClose').click(function() {
			$(contentId).hide();
		});
	});
	
		
}
