if (!window.sSelectedImg) { document.write("<SCR"+"IPT language=javascript src=http://www.msnbc.msn.com/js/std.js></SCR"+"IPT>"); }

var sSpacer = "<SPACER TYPE=block WIDTH=1>";
var emailField = -1;

function isEmailValid(oForm,nField) {
	var oField = (nField < 0) ? oForm.FromEmail : eval("oForm.extraField[" +nField+ "]"); 
	if (validateEmail(oField.value)) {
		oForm.submit();
	} else {
		alert("Please enter a valid e-mail address.");
	}
}


function MailbagDefaults(oData) {
	// detect query parameters
	var aQuery = getQueryParams();
	margin = (aQuery["margin"]) ? aQuery["margin"] : 0;

	if (!oData.ID) { oData.ID = (oData.sName) ? oData.sName : "mailbag"; }
	if (aQuery["bg"]) { oData.appBG = aQuery["bg"]; } else if (!oData.appBG) { oData.appBG=""; }
	if (!oData.navsectionID) { oData.navsectionID = 3032091; }
	if (aQuery["w"]) { oData.appWidth = aQuery["w"]-margin; }
	else if (!oData.appWidth) { oData.appWidth=360; }
	
	if (!oData.appHeader) { oData.appHeader=""; }
	if (!oData.sTitle) { oData.sTitle = (oData.sSubject) ? oData.sSubject : ""; }

	if (!oData.HeaderIcon) { oData.HeaderIcon =  "../../i/msnbc/Components/ColorBoxes/Styles/ColorBoxImages_GlobalOnlyPlease/mail_icon.html"; }
	oData.HeaderIcon = "<img src=\"http://msnbcmedia.msn.com" +oData.HeaderIcon+ "\" vspace=0 hspace=0>";

	if (!oData.appDeck) { oData.appDeck=""; }
	if (!oData.sTBHead) { oData.sTBHead=""; }
	if (!oData.sHedStyle) { oData.sHedStyle=""; }
	if (!oData.sDeckStyle) { oData.sDeckStyle=""; }
	if (!oData.sBodyFont) { oData.sBodyFont=""; }
	if (!oData.sResponseUrl) { oData.sResponseUrl=""; }

	if (oData.sSubmitImg) { oData.butSubmit = oData.sSubmitImg; }
	else if (!oData.butSubmit) { oData.butSubmit = "../../../media.msnbc.msn.com/i/msnbc/Components/Art/SITEWIDE/buttons/send.gif"; } 

	// box2 = multi-row entry field
	if (document.layers) {
		box1 = parseInt(oData.appWidth/12,0)
		box2 = parseInt(oData.appWidth/13,0)
	} else {
		box1 = parseInt(oData.appWidth/7.4,0);
		box2 = parseInt(oData.appWidth/10.5,0);
	}

}


function MailbagYB(oData) { MailbagWB3(oData); }
function Mailbag(oData) { MailbagWB3(oData); }

function Mailbag_old(oData) {
	MailbagDefaults(oData);

	document.write("<STYLE type=\"TEXT/CSS\">");
	document.write("	.hed" +oData.ID+ " { color:#CC0000; font-weight:bold; font-family:Times roman; font-size:16px;"  +oData.sHedStyle+ " }");
	document.write("	.font1" +oData.ID+ " { font-family:verdana,arial; font-size:10px; font-weight:bold;"  +oData.sBodyFont+ " }");
	document.write("	.deck" +oData.ID+ " { font-weight:bold; font-family:arial, helvetica; font-size:12px;"  +oData.sDeckStyle+ " }");
	document.write("	.entrybox" +oData.ID+ " { width:" +oData.appWidth+ "px; }");
	document.write("</STYLE>");
	
	document.write("<a name=anc_" +oData.ID+ "></a><table border=0 cellpadding=0 cellspacing=0 width=" +oData.appWidth+ " class=app" +oData.ID+ ">");

	if (oData.appHeader) {
		document.write("<tr valign=center><td><font class=hed" +oData.ID+ ">" +oData.appHeader+ "</font></td></tr>");
		document.write("<tr><td height=5>" +sSpacer+ "</td></tr>");
	}

	if (oData.appDeck) {
		document.write("<tr valign=top><td><font class=deck" +oData.ID+ ">" +oData.appDeck+ "</font></td></tr><tr><td height=5>" +sSpacer+ "</td></tr>");
	}

	var sFormat = (oData.sResponseUrl == "self") ? "dw" : ""; 

	var sTitle = document.title;
	var sHref = top.location.href;
	if (window.opener && sFormat=="dw") {
		sTitle = window.opener.document.title;
		sHref = window.opener.location.href;
	}

	document.write("<tr><td><FORM name=mailbag ACTION=\"http://www.msnbc.com/modules/feedback/mailbag_submit.aspx\" method=POST><input type=hidden name=navid value=" +oData.navsectionID+ "><input type=hidden name=subject value=\"" +oData.sTitle+ " (re: " +sTitle +" -- "+sHref+ ")\"><input type=hidden name=ToEmail value=\"" +oData.sMailTo+ "\"><input type=hidden name=bHtml value=\"" +oData.bHtml+ "\"><input type=hidden name=\"format\" value=" +sFormat+ "><FONT class=font1" +oData.ID+ ">");
	
	if (oData.aRetLink) {
		document.write("<input type=hidden name=retlink value=\"" +oData.aRetLink[0]+ "\">");
		document.write("<input type=hidden name=retlinktxt value=\"" +oData.aRetLink[1]+ "\">");
	}

	if (oData.sTBHead) {
		document.write(oData.sTBHead +"<BR>");
	}

	if (!oData.fields) {
		document.write("<textarea name=feedback class=entrybox" +oData.ID+ " rows=5 cols=" + box2 + "></textarea>");

		document.write("<p>Your name<BR><input type=text size=" + box1 + " name=realname class=entrybox" +oData.ID+ " maxlength=255>");

		if (oData.bTown) {
			document.write("<br>Your city & state<BR><input type=text size=" + box1 + " name=town class=entrybox" +oData.ID+ " maxlength=255>");
		}

		if (oData.bPhone) {
			document.write("<br>Your phone number<BR><input type=text size=" + box1 + " name=phone class=entrybox" +oData.ID+ " maxlength=255>");
		}

		document.write("<br>Your e-mail address<BR><input type=text size=" + box1 + " name=FromEmail class=entrybox" +oData.ID+ " maxlength=255><br>");

	} else {
		var sHeaders = "";
		var fieldCntr=0;
		for (i=0;i<oData.fields.length;i++) {
			if (oData.fields[i]) {
				if (oData.fields[i][1] && oData.fields[i][1] > 1) {
					if (oData.fields[i][0]) { oData.fields[i][0] +=  "<BR>"; }
					document.write("<br>" + oData.fields[i][0]+ "<textarea cols=" + box2 + " rows=" +oData.fields[i][1]+ " name=extraField class=entrybox" +oData.ID+ "></textarea>");
				} else if (oData.fields[i][2]) {  // short text box
					document.write(oData.fields[i][0]+ "&nbsp;&nbsp;<input type=text size=" + oData.fields[i][2] + " name=extraField maxlength=255>&nbsp;&nbsp;");
				} else {  // 1-line text box
					if (oData.fields[i][0].toLowerCase().indexOf("e-mail") > -1) { emailField = fieldCntr; }

					document.write("<br>"+oData.fields[i][0]+ "<br><input type=text size=" + box1 + " class=entrybox" +oData.ID + " name=extraField maxlength=255>");
				}
				sHeaders += oData.fields[i][0];
				if (oData.fields.length > 1) { sHeaders += "|"; }
				fieldCntr++;
			}
		}
		if (oData.bTown) {
			document.write("<br><font class=textSmallBlackBold>Your town/city</font><BR><input type=text size=" + box1 + " name=town class=entrybox" +oData.ID+ " maxlength=255>");
		}

		if (oData.bPhone) {
			document.write("<br><font class=textSmallBlackBold>Your phone number</font><BR><input type=text size=" + box1 + " name=phone class=entrybox" +oData.ID+ " maxlength=255>");
		}
		if (oData.bReqEmail && emailField == -1) {
			document.write("<br><font class=textSmallBlackBold>Your e-mail address</font><BR><input type=text size=" + box1 + " name=FromEmail class=entrybox" +oData.ID+ " maxlength=255>");
		}
		document.write("<input type=hidden name=extraFieldHed value=\"" +sHeaders+ "\"><br>");
	}

	// CONSTRUCT href
	var sendHref = (oData.bReqEmail) ? "javascript:isEmailValid(document.mailbag,"+emailField+ ");" : "javascript:document.mailbag.submit();";
	
	// CONSTRUCT send button
  	var butSubmit = "<br><BUTTON onclick=" +sendHref+ ">" + oData.butSubmit + "</BUTTON>";
	if (oData.butSubmit.indexOf("http://") == 0) { 
		butSubmit = "<a href=\"" +sendHref+ "\"><img src=" + oData.butSubmit + " name=b_" +oData.ID+ " border=0 onmouseover=SwapImage('b_" +oData.ID+ "',1); onmouseout=SwapImage('b_" +oData.ID+ "',0); vspace=8></a>"; 
	} else if (oData.butSubmit.indexOf("<") == 0) { 
		butSubmit = "<a href=\"" +sendHref+ "\">" + oData.butSubmit+"</a>"; 
	}
	
	document.write(butSubmit);

	document.write("<br><font class=credit>Your e-mail address and/or phone number will not be published.  Leave your name or hometown blank if you do not want it published. </font>"); 

	if (oData.appFooter) {
		document.write("<br>"+oData.appFooter);
	}
	document.write("</FONT></td></tr></form></table>");
}


function MailbagWB3(oData) {
	MailbagDefaults(oData);

	var sFormat = (oData.sResponseUrl == "self" || (!oData.sResponseUrl && window.name.indexOf("textframe") > -1)) ? "dw" : ""; 
	var sTitle = document.title;
	var sHref = location.href;
	var tablePad=""; var iconW = 25;
	if (sFormat=="dw") {
		oData.BoxStyle = ""; oData.HeaderIcon = ""; iconW=0;
		tablePad = " style=margin-left:" +margin+ "px;"
		if (window.opener) {
			sTitle = window.opener.document.title;
			sHref = window.opener.location.href;
		}
	}
	if (oData.BoxStyle) {
		if (!window.cssList) { cssList = new Array(); }
		if (window.getCSS) { getCSS(oData.BoxStyle); }
	}

	document.write("<STYLE type=\"TEXT/CSS\"> .entrybox" +oData.ID+ " { width:" +(oData.appWidth-30)+ "px; } </STYLE>");

	document.write("<a name=anc_" +oData.ID+ "></a><table border=0 cellpadding=0 cellspacing=0 width=" +oData.appWidth+ tablePad + "><tr><td>");

	if (oData.appHeader) {
		document.write("<table width=" +oData.appWidth+ " cellspacing=0 cellpadding=0 class=boxH_" +oData.BoxStyle+ "><tr><td class=boxHI_" +oData.BoxStyle+ " width=1%>"  +oData.HeaderIcon+ "</td><td width=* nowrap=true class=boxHC_" +oData.BoxStyle+ "><DIV class=\"textSmallBold\">" +oData.appHeader+ "</DIV></td></tr></table>");
	}

	document.write("<table width="+oData.appWidth+" cellspacing=0 cellpadding=0 class=boxB_" +oData.BoxStyle+ "><FORM name=mailbag ACTION=\"http://www.msnbc.com/modules/feedback/mailbag_submit.aspx\" method=POST><tr><td class=boxBI_" +oData.BoxStyle+ ">");

	if (oData.appDeck) {
		document.write("<font class=textMed><b>" +oData.appDeck+ "</b></font><br>");
	}

	document.write("<input type=hidden name=navid value=" +oData.navsectionID+ "><input type=hidden name=subject value=\"" +oData.sTitle+ " (re: " +sTitle +" -- "+sHref+ ")\"><input type=hidden name=ToEmail value=\"" +oData.sMailTo+ "\"><input type=hidden name=bHtml value=\"" +oData.bHtml+ "\"><input type=hidden name=\"format\" value=" +sFormat+ ">");
	
	if (oData.aRetLink) {
		document.write("<input type=hidden name=retlink value=\"" +oData.aRetLink[0]+ "\">");
		document.write("<input type=hidden name=retlinktxt value=\"" +oData.aRetLink[1]+ "\">");
	}

	if (oData.sTBHead) {
		document.write("<br><b class=textSmallBlack>"+oData.sTBHead +"</b><br>");
	}

	if (!oData.fields) {
		document.write("<textarea name=feedback class=entrybox" +oData.ID+ " rows=5 cols=" + box2 + "></textarea>");

		document.write("<br><font class=textSmallBlackBold>Your name</font><BR><input type=text size=" + box1 + " name=realname class=entrybox" +oData.ID+ " maxlength=255>");

		if (oData.bTown) {
			document.write("<br><font class=textSmallBlackBold>Your city & state</font><BR><input type=text size=" + box1 + " name=town class=entrybox" +oData.ID+ " maxlength=255>");
		}

		if (oData.bPhone) {
			document.write("<br><font class=textSmallBlackBold>Your phone number</font><BR><input type=text size=" + box1 + " name=phone class=entrybox" +oData.ID+ " maxlength=255>");
		}

		document.write("<br><font class=textSmallBlackBold>Your e-mail address</font><BR><input type=text size=" + box1 + " name=FromEmail class=entrybox" +oData.ID+ " maxlength=255><br>");

	} else {
		var sHeaders = "";
		var fieldCntr=0;
		for (i=0;i<oData.fields.length;i++) {
			if (oData.fields[i]) {
				if (oData.fields[i][1] && oData.fields[i][1] > 1) {
					if (oData.fields[i][0]) { oData.fields[i][0] +=  "<BR>"; }
					document.write("<br><font class=textSmallBlackBold>" + oData.fields[i][0]+ "</font><textarea cols=" + box2 + " rows=" +oData.fields[i][1]+ " name=extraField class=entrybox" +oData.ID+ "></textarea>");
				} else if (oData.fields[i][2]) {  // short text box
					document.write("<font class=textSmallBlackBold>" + oData.fields[i][0]+ "</font>&nbsp;&nbsp;<input type=text size=" + oData.fields[i][2] + " name=extraField maxlength=255>&nbsp;&nbsp;");
				} else {  // 1-line text box
					if (oData.fields[i][0].toLowerCase().indexOf("e-mail") > -1) { emailField = fieldCntr; }

					document.write("<br><font class=textSmallBlackBold>"+oData.fields[i][0]+ "</font><br><input type=text size=" + box1 + " class=entrybox" +oData.ID + " name=extraField maxlength=255>");
				}
				sHeaders += oData.fields[i][0];
				if (oData.fields.length > 1) { sHeaders += "|"; }
				fieldCntr++;
			}
		}
		if (oData.bTown) {
			document.write("<br><font class=textSmallBlackBold>Your town/city</font><BR><input type=text size=" + box1 + " name=town class=entrybox" +oData.ID+ " maxlength=255>");
		}

		if (oData.bPhone) {
			document.write("<br><font class=textSmallBlackBold>Your phone number</font><BR><input type=text size=" + box1 + " name=phone class=entrybox" +oData.ID+ " maxlength=255>");
		}
		if (oData.bReqEmail && emailField == -1) {
			document.write("<br><font class=textSmallBlackBold>Your e-mail address</font><BR><input type=text size=" + box1 + " name=FromEmail class=entrybox" +oData.ID+ " maxlength=255>");
		}

		document.write("<input type=hidden name=extraFieldHed value=\"" +sHeaders+ "\"><br>");
	}

	// CONSTRUCT href
	var sendHref = (oData.bReqEmail) ? "javascript:isEmailValid(document.mailbag,"+emailField+ ");" : "javascript:document.mailbag.submit();";
	
	// CONSTRUCT send button
  	var butSubmit = "<br><BUTTON onclick=" +sendHref+ ">" + oData.butSubmit + "</BUTTON>";
	if (oData.butSubmit.indexOf("http://") == 0) { 
		butSubmit = "<a href=\"" +sendHref+ "\"><img src=" + oData.butSubmit + " name=b_" +oData.ID+ " border=0 onmouseover=SwapImage('b_" +oData.ID+ "',1); onmouseout=SwapImage('b_" +oData.ID+ "',0); vspace=8></a>"; 
	} else if (oData.butSubmit.indexOf("<") == 0) { 
		butSubmit = "<a href=\"" +sendHref+ "\">" + oData.butSubmit+"</a>"; 
	}
	
	document.write(butSubmit);
	
	document.write("<br><font class=credit>Your e-mail address and/or phone number will not be published.  Leave your name or hometown blank if you do not want it published. </font>"); 

	if (oData.appFooter) {
		document.write("<br><span class=boxF_" +oData.BoxStyle+ ">"+oData.appFooter+"</span>");
	}
	document.write("</td></tr></form></table></td></tr></table>");

}

function getQueryParams() {
	// COMMON function
	var sQuery = location.search.substring(1);
	var aTmp = new Array();
	if (sQuery) {
		aTmp = sQuery.split("&");
		for (var i=0;i<aTmp.length;i++) {
			var aTmp2 = aTmp[i].split("=");
			aTmp[aTmp2[0].toLowerCase()] = aTmp2[1];
		}
	} 
	return aTmp;
}
