var _submit_accepted = false;

function checkEmail(email) {
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]+)\.)+([a-zA-Z0-9]{2,4})$/;
	if (filter.test(email)) { return true; } else { return false; }
}

function formValidator(requiredFields){
	$('.form_error').removeClass("form_error");
	var check = true;

	for(x = 0; x < requiredFields.length; x++){
		if($('#' + requiredFields[x][0]).val() == ""){
			$('#' + requiredFields[x][0]).addClass("form_error");
			$('#' + requiredFields[x][0] + '_form_error').addClass("form_error");

			check = false;
		}
		else if(requiredFields[x][0] == "email" && !checkEmail($('#' + requiredFields[x][0]).val())){
			$('#' + requiredFields[x][0]).addClass("form_error");
			$('#' + requiredFields[x][0] + '_form_invalid').addClass("form_error");

			check = false;
		}
	}
	return check;
}

function _do_submit(frm)
{

    var _rnl_chat;
    if (_submit_accepted)  return false; // prevents NN4 resubmission

	var requiredFields = Array(
		// Array('fieldName','NameForUser'[,'validationRequirement[:arg1,arg2]']),
		//Array('cat_index','Select your support issue'),
		//Array('optionaldata11','Question or problem', 'length:1,1000'),
		Array('optionaldata11','Question or problem'),
		Array('fname','First Name'),
		Array('lname','Last Name'),
		Array('email','E-mail Address','email')
	);

	// check the di field - make another attempt to set it
	/*if (frm.di.value == '') {
		frm.di.value = getChannelProperty(getProductFamily(contactProduct), contactProduct.substring(0,3), getContactBucket(convertTopicToken2Name (contactTopic)), 'chatDept');
	}*/

	// fieldBGColor = Array('defaultBGColor','errorBGColor');
	fieldBGColor = Array('#FFFFFF','#FFFFCC');
	//var validate = formValidator(frm, requiredFields, true);
	var validate = formValidator(requiredFields);
	if (validate != true) {
		//alert(validate);
		return false;
	}

	// Omniture Tracking
	//trackPageClick("Contact 3", "Chat - Instant Service");


	// Track TINA
	/*if (frm.optionaldata24.value == "" && customerClickedOnTINA) {
		frm.optionaldata24.value = "true";
	}*/

    //_submit_accepted = true;
	//document.getElementById('submit_btn').disabled = true;

	//if (navigator.javaEnabled()) {
		// Map the RN fields to the ISC fields
		var frmChat = document._chat;

		// Populate the products
		/*var oProds = frmChat.p_prodnames.value;
		var optionalDataCount = 5;
		if (oProds != "") {
			oProds = oProds.split(",");
			for (i=0; i<oProds.length; i++) {
				frmChat["optionaldata" + (optionalDataCount + i)].value = oProds[i];
			}
		}*/

		_rnl_chat = window.open('/blank.html', '_is_user', 'resizable=yes,scrollbars=no,width=600,height=600');
	/*} else {
		alert("This browser does not support Java or its use is currently disabled. You can download free Java software from http://www.java.com. You may be able to enable Java by lowering your browser security level.");
	}*/

	if (navigator.appName == "Microsoft Internet Explorer" || parseInt(navigator.appVersion) >= 5) {
		if (_rnl_chat.document.title.length == 0)
			frm.submit();
		else
			_rnl_chat.focus();
	} else {
		frm.submit();
	}
    return(false);
}
