var blacklist = new Array(189);
blacklist[0] = 'tuyomail.com';
blacklist[1] = 'message.alltel.com';
blacklist[2] = 'ipnpaging.com';
blacklist[3] = 'mycricket.com';
blacklist[4] = 'page-us.com';
blacklist[5] = 'qwtext.com';
blacklist[6] = 'awsms.com';
blacklist[7] = 'epageme.com';
blacklist[8] = 'imcingular.com';
blacklist[9] = 'myawi.com';
blacklist[10] = 'guamcell.com';
blacklist[11] = 'advmms.com';
blacklist[12] = 'agw-atl.pdg.bellsouth.net';
blacklist[13] = 'airlinkmobile.com';
blacklist[14] = 'airmessage.net';
blacklist[15] = 'airpage.net';
blacklist[16] = 'alaskadigitel.com';
blacklist[17] = 'archwireless.net';
blacklist[18] = 'atlmmg1.glr.cingular.net';
blacklist[19] = 'attmobility.com';
blacklist[20] = 'attmobility.net';
blacklist[21] = 'bellsouthtms.com';
blacklist[22] = 'bellsouthtms.net';
blacklist[23] = 'bellsouthwirelessemail.com';
blacklist[24] = 'bellsouthwirelessemail.net';
blacklist[25] = 'blswe.com';
blacklist[26] = 'blswe.net';
blacklist[27] = 'breweloquiwireless.net';
blacklist[28] = 'c1usa.com';
blacklist[29] = 'c1wi.com';
blacklist[30] = 'calnorth.net';
blacklist[31] = 'cell1net.net';
blacklist[32] = 'cell1wv.net';
blacklist[33] = 'cellcompage.com';
blacklist[34] = 'cellcomsms.com';
blacklist[35] = 'cellonemail.com';
blacklist[36] = 'cellular.ameritech.com';
blacklist[37] = 'cellular1.net';
blacklist[38] = 'cellularone.blackberry.net';
blacklist[39] = 'centennialcom.com';
blacklist[40] = 'centennialwireless.com';
blacklist[41] = 'cingularme.com';
blacklist[42] = 'cingularme.net';
blacklist[43] = 'cingularme.us';
blacklist[44] = 'clearlydigital.com';
blacklist[45] = 'clearpath.acswireless.com';
blacklist[46] = 'cookmail.com';
blacklist[47] = 'corrcomm.com';
blacklist[48] = 'corrwireless.com';
blacklist[49] = 'corrwireless.net';
blacklist[50] = 'csouth1.com';
blacklist[51] = 'csouth1.net';
blacklist[52] = 'cwemail.com';
blacklist[53] = 'cwemail.net';
blacklist[54] = 'cwmail2.glr.cingular.com';
blacklist[55] = 'cwwsms.com';
blacklist[56] = 'dcswi.com';
blacklist[57] = 'digitaledge.acswireless.com';
blacklist[58] = 'edgehiptop.com';
blacklist[59] = 'edgehiptopmail.com';
blacklist[60] = 'edgemobile.net';
blacklist[61] = 'edgesend.com';
blacklist[62] = 'edgesend.net';
blacklist[63] = 'edgewireless.com';
blacklist[64] = 'eloqui.net';
blacklist[65] = 'email.swbw.com';
blacklist[66] = 'email.uscc.net';
blacklist[67] = 'epage.lrps.com';
blacklist[68] = 'firstcellular.net';
blacklist[69] = 'glr.sbms.sbc.com';
blacklist[70] = 'gocbw.com';
blacklist[71] = 'gwteletech.com';
blacklist[72] = 'hiptop.suncom.net';
blacklist[73] = 'info2go.com';
blacklist[74] = 'ivcdata.com';
blacklist[75] = 'ivcel.net';
blacklist[76] = 'ivctext.com';
blacklist[77] = 'iwarn.com';
blacklist[78] = 'iwspcs.com';
blacklist[79] = 'iwspcs.net';
blacklist[80] = 'leaco.net';
blacklist[81] = 'leaco.org';
blacklist[82] = 'mail.data1source.com';
blacklist[83] = 'mail.pagespringfield.com';
blacklist[84] = 'mail.westlinkcom.com';
blacklist[85] = 'messaging.nextel.com';
blacklist[86] = 'messaging.sprintpcs.com';
blacklist[87] = 'mid-texcellular.com';
blacklist[88] = 'midwestwireless.net';
blacklist[89] = 'minncommpaging.com';
blacklist[90] = 'mmode.com';
blacklist[91] = 'mms.dobson.net';
blacklist[92] = 'mms.farmerswireless.com';
blacklist[93] = 'mms.suncom.net';
blacklist[94] = 'mms.uscc.net';
blacklist[95] = 'mms.westlinkcom.com';
blacklist[96] = 'mmseloquiwireless.net';
blacklist[97] = 'mobilcom.net';
blacklist[98] = 'mobile.att.net';
blacklist[99] = 'mobile.c1-slo.com';
blacklist[100] = 'mobile.celloneusa.com';
blacklist[101] = 'mobile.cellularone-slo.com';
blacklist[102] = 'mobile.cellularoneslo.com';
blacklist[103] = 'mobile.centralcoastdata.com';
blacklist[104] = 'mobile.dobson.net';
blacklist[105] = 'mobile.dobsoncellular.com';
blacklist[106] = 'mobile.fivestarwireless.com';
blacklist[107] = 'mobilecomm.net';
blacklist[108] = 'mohavewireless.com';
blacklist[109] = 'mpot.com';
blacklist[110] = 'my2way.com';
blacklist[111] = 'myblue.com';
blacklist[112] = 'myboostmobile.com';
blacklist[113] = 'myc29.net';
blacklist[114] = 'mycellone.net';
blacklist[115] = 'mycellonephone.com';
blacklist[116] = 'mycingular.com';
blacklist[117] = 'mycingular.net';
blacklist[118] = 'mydcs1.com';
blacklist[119] = 'mylyrix.net';
blacklist[120] = 'mymetropcs.com';
blacklist[121] = 'mymmode.com';
blacklist[122] = 'mymmsmail.com';
blacklist[123] = 'omnicom-paging.com';
blacklist[124] = 'onelinkpcs.com';
blacklist[125] = 'pacbellpcs.net';
blacklist[126] = 'page-all.com';
blacklist[127] = 'page.mobilfone.com';
blacklist[128] = 'page.nextel.com';
blacklist[129] = 'pageallcom.com';
blacklist[130] = 'pageme.teletouch.com';
blacklist[131] = 'pageme.teletouch.net';
blacklist[132] = 'pagenet.net';
blacklist[133] = 'pagerpeople.com';
blacklist[134] = 'paging.acswireless.com';
blacklist[135] = 'paging.mobilfone.com';
blacklist[136] = 'paging.sbc.com';
blacklist[137] = 'paging.telebeep.com';
blacklist[138] = 'pics.cellcom.com';
blacklist[139] = 'pim.infospace.com';
blacklist[140] = 'pioneerenidcellular.com';
blacklist[141] = 'pix.cellularsouth.com';
blacklist[142] = 'prestopaging.com';
blacklist[143] = 'quiktxt.com';
blacklist[144] = 'qwestmessagepack.com';
blacklist[145] = 'qwestmessagepak.com';
blacklist[146] = 'qwestmp.com';
blacklist[147] = 'racomm.com';
blacklist[148] = 'radiocommpaging.com';
blacklist[149] = 'radiocontrolit.com';
blacklist[150] = 'radiopaging.com';
blacklist[151] = 'rccpaging.com';
blacklist[152] = 'redicall.com';
blacklist[153] = 'satellink.net';
blacklist[154] = 'sbc2way.com';
blacklist[155] = 'sbcemail.com';
blacklist[156] = 'sbcpaging.com';
blacklist[157] = 'sbycomm.com';
blacklist[158] = 'sccvmail.com';
blacklist[159] = 'simmetrypcs.com';
blacklist[160] = 'simmetrypcs.net';
blacklist[161] = 'sms-bscc.bellsouth.com';
blacklist[162] = 'sms.bellsouth.com';
blacklist[163] = 'sms.cleartalk.net';
blacklist[164] = 'sms.corrwireless.com';
blacklist[165] = 'sms.cvalley.net';
blacklist[166] = 'sms.farmerswireless.com';
blacklist[167] = 'sms.petrocom.net';
blacklist[168] = 'sms.snakeriverpcs.com';
blacklist[169] = 'smseloquiwireless.net';
blacklist[170] = 'southernlinc.com';
blacklist[171] = 'srtwireless.com';
blacklist[172] = 'stenocall.com';
blacklist[173] = 'suncom.blackberry.net';
blacklist[174] = 'text.simplefreedom.net';
blacklist[175] = 'tmomail.net';
blacklist[176] = 'tms.bellsouth.com';
blacklist[177] = 'tms.suncom.com';
blacklist[178] = 'ubetwireless.com';
blacklist[179] = 'usamobility.net';
blacklist[180] = 'uscc.textmsg.com';
blacklist[181] = 'utext.com';
blacklist[182] = 'viaeromail.com';
blacklist[183] = 'viaeromms.com';
blacklist[184] = 'viaerosms.com';
blacklist[185] = 'vtext.com';
blacklist[186] = 'wireless.bellsouth.com';
blacklist[187] = 'wwtext.net';
blacklist[188] = 'zsend.com';

// ------------------- THEY DID NOT SUBMIT YET

function trim(str)
{
	return str.replace(/^\s*|\s*$/g,"");
}

function checkBlacklist(subscriber_email)
{
	var domain;
	
	// get the domain from the email
	domain = subscriber_email.substring((subscriber_email.indexOf('@')+1), subscriber_email.length);

	// look for the domain in the list	
	for(i=0; i<blacklist.length; i++)
	{
		if(trim(blacklist[i]) == trim(domain))
		{
			return true;
		}
	}
		
	return false;
}

function validate_alert_form(f)
{
	if (!validate_alert_checkboxes(f))
		{
		alert('You must check an alert to subscribe');
		return false;
		}

	if (!validEmail(f.subscriber_email.value))
		{
		alert('The e-mail address you entered is invalid.  \nYou must enter a valid e-mail address (e.g. person@company.com) in the Enter your e-mail address: field.');
		f.subscriber_email.focus();
		return false;
		}
	if (typeof(blacklist) != "undefined")
	{
		if (checkBlacklist(f.subscriber_email.value))
			{
				alert('Wireless email declined.  \nThis wireless email cannot be subscribed to email alerts.');
				f.subscriber_email.focus();
				return false;		
			}
	}
	return true;
}

//See if there are any alerts listed.  If so, then we need to make sure the user has signed up for one
function validate_alert_checkboxes(f)
	{
	var form_has_checkboxes
	
	form_has_checkboxes = false;
	
	for (var i=0;i<f.elements.length;i++)
		{
		if (f.elements[i].type=='checkbox')
			{
			form_has_checkboxes=true;
			if (f.elements[i].checked==true)
				{
				return true; //we have a sign up
				}
			}
		}
	if (form_has_checkboxes)
		{
		return false;
		}
	else
		return true;
	}
	
	
function validEmail(email) 
{
	var invalidChars = " /:,;"; // NOTE - first char is a SPACE

	for (i = 0;  i < invalidChars.length; i++) { // does it contain any invalid characters?
		var badChar = invalidChars.charAt(i);
		if (email.indexOf(badChar, 0) > -1) return false;
	}

	var atPos = email.indexOf("@", 1);  // there must be one "@" symbol
	if (atPos == -1) return false;
	// and only one "@" symbol
	if (email.indexOf("@", atPos + 1) != -1) return false;

	periodPos = email.indexOf(".", atPos);
	// and at least one "." after the "@"
	if (periodPos == -1) return false;
	// must be at least 2 characters after the "."
	if (periodPos + 3 > email.length)  return false;

	return true;
}

function financial_news_warning(f)
{
	var news_field = 'RDEN_ir-news@joinmail.ccbn.com';
	var finnews_field = '';
	var news_label = 'Press Releases';
	var finnews_label = '';
	if (news_label.Length==0) news_label="News Alerts";
	if (finnews_label.Length==0) finnews_label="Financial News Alerts";
	var msg = 'You are already signed up to receive ' + news_label + ' for this company. By signing up for ' + news_label + ' you will receive ' + finnews_label + ' by default.'
	
	var news_is_on = false;
	var finnews_is_on = false;
	var finnews_object;
	// Loop through the items collection to see if both alert types are on.  We can't use the variable name directly because it contains a hypen and jscript equates that to a minus sign
	i=0
	do 
	{
		if (f.item(i).name==news_field||f.item(i).name==finnews_field)
		{
			if (f.item(i).checked)
			{
				if (f.item(i).name==news_field) news_is_on = true;
				if (f.item(i).name==finnews_field) 
				{
					finnews_is_on = true;
					finnews_object = f.item(i)
				}
			}			
		}
		i++
	} while (f.item(i)!=null)
	
	if (news_is_on&&finnews_is_on)
	{
		alert(msg);
		finnews_object.checked = false;
	}
}