// WSIU PI Javascript
// 20080205
window.station="WSIU_FM";
window.localize=true;


// add slashes

function addslashes(str) {
str=str.replace(/\\/g,'\\\\');
str=str.replace(/\'/g,' apostrophe ');
str=str.replace(/\"/g,'\\&#34; ');
str=str.replace(/\0/g,'\\0');
return str;
}




function My_Form_Validator(form)
{
	var premiumPart;
	var tempstr;
	var premiumPos;
	var premiumPos2;
	var premiumAmount;
	var premium;
    var agree;

	
        if(document.PledgeForm.totalamount.value == 0)
		{
			alert('Pledge Amount Error - please enter a dollar amount in at least one fund before clicking the "Continue Donation" button.');
			return false;
		}
		
	// see if the premium contains a '/' character (if so, then a minimum amount is coded in)
	// premium is formatted as ACCOUNT/MINIMUM_AMOUNT/DESCRIPTION
	premium = document.PledgeForm.PREMIUM[document.PledgeForm.PREMIUM.selectedIndex].value;
	premiumPos = premium.search('/');
	
	if (premiumPos > -1) // if amount is coded in
		{  
			tempstr = premium.substr(premiumPos + 1); // get rest of string after first '/'
			premiumPos2 = tempstr.search('/');  // look for second '/'
			
		if (premiumPos2 == -1) // if second '/' not found assume the rest of the string
			{   
				premiumPos2 = tempstr.length;
			}
			
			premiumPart = tempstr.substr(0,premiumPos2); // get the amount string out of the premium code
			premiumAmount = parseInt(premiumPart);  // convert it to a number
			
			if (premiumAmount > 0 && premiumAmount > form.totalamount.value)  // if we haven't met the minimum ...
				{
				alert('Gift Selection Error - the selected thank you gift requires a minimum pledge of $' + premiumPart + '.  Please verify your pledge amount or choose a different gift.');
				
return false;
                                
				}
		}
		
	if(document.PledgeForm.totalamount.value < 35) // if we haven't met the minimum ...
		{ 
			alert('Reminder - A one year subscription to Previews (our TV Member Guide) is only available for a pledge of $35 or more.');
		}	
// Read on Air (check page code to verify show/hide status)	
// Begin comment here to remove "Read on Air" function
	 // if (document.PledgeForm.readName.checked) 
		{
			agree = 'Yes';
		}
		// else 
		{
			agree = 'No';

		}
	
	
       // rdnm = 'Read name(s) on-air: '+agree;  
	//document.PledgeForm.comments2.value=document.PledgeForm.comments2.value+'\n===========\n'+rdnm+'\n===========\n';
	//document.PledgeForm.comments.value=document.PledgeForm.comments2.value;

        // End comment here to remove "Read on Air" function

	
//check for membercard quantity
	
		if(document.PledgeForm.membercardqty.value == 0 && document.PledgeForm.MEMBER_CARD.value== 0) {
			
		}
		
		else {
			
			membercard = "I would like " + document.PledgeForm.membercardqty.value + " Membercard(s)";
			
			document.PledgeForm.comments2.value=document.PledgeForm.comments2.value + membercard;
			document.PledgeForm.comments.value = document.PledgeForm.comments2.value;
		}
		
// end membercard qty

		amount=parseFloat(document.PledgeForm.totalamount.value);
		
		var form_qty = document.PledgeForm.membercardqty.value;
				    	
		var needed = parseFloat(form_qty * 60.00);
		
		if(document.PledgeForm.totalamount.value < needed) {
			alert('The Total Pledge amount does not equal the necessary amount for the number of Membercards requested. Please verify the amount(s) and quantities');
			return false
		}

}// End of My_Form_Validator




function CalcDisplayAmount(amt)
{
	var displayAmt;
	var amtValue;
	
	number = amt;
	
	if (isNaN(amt)==true) //not a valid number
		{ 
			displayAmt = '0.00';
			displayAmt = number.replace(",","");
			return displayAmt;		
		}

	if (amt.length==0) // no value at all
    	{
			displayAmt = '0.00';
			
			return displayAmt;	
		}

	// round to 2 places after the decimal point
	
	
	
	amtValue = parseFloat(amt);
	amtValue = Math.round(amtValue * 100) / 100;
	
	
	//	if user enters in value less than 0, make it 0
	if (amtValue < 0) 
			amtValue = 0;
	
	//	if it doesn't contain decimal point, add it 
	if (amtValue == Math.round(amtValue))
		{
			displayAmt = amtValue + '.00';
		}
		
	// else if it only contains one place after the decimal, add one more
	else if (amtValue * 10 == Math.round(amtValue * 10)) 
		{
			displayAmt = amtValue + '0';
		}

	// else it contains 2 places after the decimal, just return it
	else 
		{
			displayAmt = amtValue;
		}
		
	return displayAmt;
}


function checktot()
{
	
    amount=parseFloat(document.PledgeForm.totalamount.value);
		
	var form_qty = document.PledgeForm.membercardqty.value;
				    	
	var needed = parseFloat(form_qty * 60.00);
	
	for (var i=0; i < document.PledgeForm.chkmmbcard.length; i++)
   		{
   			if (document.PledgeForm.chkmmbcard[i].checked)
      			{
      				var rad_val = document.PledgeForm.chkmmbcard[i].value;
      
					if (rad_val == 1) 
						{ 
							if (amount < 60.00)
								{
									alert('The WSIU Membercard is only available for a pledge of $60 or more.  Please verify the dollar amount(s) entered.');
	    							return false;
								}
							else
								if (form_qty == 0)
									{
									document.PledgeForm.MEMBER_CARD.value='Yes';
									document.PledgeForm.membercardqty.value='1';
									}
								else
									
									if (amount < needed)
										{
										alert('The Total Pledge amount does not equal the necessary amount for the number of Membercards requested. Please verify the amount(s) and quantities');
										return false;
										}
								
						}
						
					
				}
				
				else { //its unchecked
					if(document.PledgeForm.membercardqty.value !=0) {
						document.PledgeForm.chkmmbcard[0].checked=true;
						document.PledgeForm.MEMBER_CARD.value='Yes';
					}
				}
   		}
}


function amountchange()
{
	var total;

	//change display format
	
	
	document.PledgeForm.GIFT_AMOUNT1.value=CalcDisplayAmount(document.PledgeForm.GIFT_AMOUNT1.value);
	document.PledgeForm.GIFT_AMOUNT2.value=CalcDisplayAmount(document.PledgeForm.GIFT_AMOUNT2.value);
	document.PledgeForm.GIFT_AMOUNT3.value=CalcDisplayAmount(document.PledgeForm.GIFT_AMOUNT3.value);	
    document.PledgeForm.GIFT_AMOUNT5.value=CalcDisplayAmount(document.PledgeForm.GIFT_AMOUNT5.value);
	
	//Calc total 
	total=parseFloat(document.PledgeForm.GIFT_AMOUNT1.value)+ 
	parseFloat(document.PledgeForm.GIFT_AMOUNT2.value)+
	parseFloat(document.PledgeForm.GIFT_AMOUNT3.value)+
	parseFloat(document.PledgeForm.GIFT_AMOUNT5.value);
	
	total = Math.round(total * 100) / 100;
	
	document.PledgeForm.totalamount.value=CalcDisplayAmount(total);	
	
	checktot();
}
// End CalcDisplayAmount


function get_radio_value()
{
	for (var i=0; i < document.PledgeForm.chkmmbcard.length; i++)
   		{
   			if (document.PledgeForm.chkmmbcard[i].checked)
      			{
     			 	var rad_val = document.PledgeForm.chkmmbcard[i].value;
     			}
   		}
}
// End get_radio_value
//
//
//LIOTA Order Form Javascript Functions - START Copy for Insert
var global_amount;
function calculate(field)
{
	var floornum;
	var totalamount;
	var amount1,amount2,amount3;
	
	if (isNaN(eval("document.FrontPage_Form1."+field+".value")))
	{ 
		eval("document.FrontPage_Form1."+field+".value=0")
		eval("document.FrontPage_Form1."+field+".focus();")
	}
	else
	{
		floornum=Math.floor(eval("document.FrontPage_Form1."+field+".value"))
		eval("document.FrontPage_Form1."+field+".value="+floornum);
		amount1=(document.FrontPage_Form1.txtop1.value*60)+(document.FrontPage_Form1.txthp1.value*45)+(document.FrontPage_Form1.txtop1a.value*100)+(document.FrontPage_Form1.txtop1s.value*60)+(document.FrontPage_Form1.txthp1s.value*45)+(document.FrontPage_Form1.txtop1as.value*100)
amount2=(document.FrontPage_Form1.txtop2.value*60)+(document.FrontPage_Form1.txthp2.value*45)+(document.FrontPage_Form1.txtop2a.value*100)+(document.FrontPage_Form1.txtop2s.value*60)+(document.FrontPage_Form1.txthp2s.value*45)+(document.FrontPage_Form1.txtop2as.value*100)
amount3=(document.FrontPage_Form1.txtop3.value*60)+(document.FrontPage_Form1.txthp3.value*45)+(document.FrontPage_Form1.txtop3a.value*100)+(document.FrontPage_Form1.txtop3s.value*60)+(document.FrontPage_Form1.txthp3s.value*45)+(document.FrontPage_Form1.txtop3as.value*100)
totalamount=amount1+amount2+amount3;
document.FrontPage_Form1.totalamount.value=formatCurrency(totalamount);
document.FrontPage_Form1.gift_amount1.value=formatCurrency(totalamount);
	}	
}
function formatCurrency(num)
{
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num)) num = "0";
	cents = Math.floor((num * 100 + 0.5) % 100);
	num = Math.floor((num * 100 + 0.5) / 100).toString();
	if(cents < 10) cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)
	num = num.substring(0,num.length - (4 * i + 3))+','+num.substring(num.length-(4 * i + 3));
	return ("$" + num + "." + cents);
}
function go_submit()
{
	var order1,order2,order3;
	if (document.FrontPage_Form1.gift_amount1.value == 0)
	{
		alert("Please enter one order before submitting.");
		document.FrontPage_Form1.txtop1.focus();
		return false;
	}
	else
	{
		// clean the cardbox

document.FrontPage_Form1.txtgreet1.value = addslashes(document.FrontPage_Form1.txtgreet1.value);
document.FrontPage_Form1.txtgreet2.value = addslashes(document.FrontPage_Form1.txtgreet2.value);
document.FrontPage_Form1.txtgreet3.value = addslashes(document.FrontPage_Form1.txtgreet3.value);

//cardbox1 = document.FrontPage_Form1.txtgreet1.value;
//cardbox2 = document.FrontPage_Form1.txtgreet2.value;
//cardbox3 = document.FrontPage_Form1.txtgreet3.value;

//cardbox1 = cardbox1.replace(/'/g," apostrophe ");
//cardbox1 = cardbox1.replace(/"/g," quotation mark ");
//cardbox2 = cardbox2.replace(/'/g," apostrophe ");
//cardbox2 = cardbox2.replace(/"/g," quotation mark ");
//cardbox3 = cardbox3.replace(/'/g," apostrophe ");
//cardbox3 = cardbox3.replace(/"/g," quotation mark ");
 
//document.FrontPage_Form1.txtgreet1.value = cardbox1;
//document.FrontPage_Form1.txtgreet2.value = cardbox2;
//document.FrontPage_Form1.txtgreet3.value = cardbox3;


                document.FrontPage_Form1.comments.value=""
		order1="ORDER ONE, "+document.FrontPage_Form1.txtop1.value+", (one-pound box FMV $14), \nORDER ONE, "+document.FrontPage_Form1.txthp1.value+", (half-pound box FMV $9), \nORDER ONE, "+document.FrontPage_Form1.txtop1a.value+", (two-pound box FMV $26), \nORDER ONE, "+document.FrontPage_Form1.txtop1s.value+", (Sugar-Free one-pound box FMV $17), \nORDER ONE, "+document.FrontPage_Form1.txthp1s.value+", (Sugar-Free half-pound box FMV $11), \nORDER ONE, "+document.FrontPage_Form1.txtop1as.value+", (Sugar-Free two-pound box FMV $31), \n"				
		order1=order1+document.FrontPage_Form1.txtname1.value+", "+document.FrontPage_Form1.txtadd1.value+", "+document.FrontPage_Form1.txtcity1.value+", "+document.FrontPage_Form1.txtstate1.value+", "+document.FrontPage_Form1.txtzip1.value+", "+document.FrontPage_Form1.txtphone1.value+", "+document.FrontPage_Form1.txtgreet1.value;  

		order2="ORDER TWO, "+document.FrontPage_Form1.txtop2.value+", (one-pound box FMV $14), \nORDER TWO, "+document.FrontPage_Form1.txthp2.value+", (half-pound box FMV $9), \nORDER TWO, "+document.FrontPage_Form1.txtop2a.value+", (two-pound box FMV $26), \nORDER TWO, "+document.FrontPage_Form1.txtop2s.value+", (Sugar-Free one-pound box FMV $17), \nORDER TWO, "+document.FrontPage_Form1.txthp2s.value+", (Sugar-Free half-pound box FMV $11), \nORDER TWO, "+document.FrontPage_Form1.txtop2as.value+", (Sugar-Free two-pound box FMV $31), \n"				
		order2=order2+document.FrontPage_Form1.txtname2.value+", "+document.FrontPage_Form1.txtadd2.value+", "+document.FrontPage_Form1.txtcity2.value+", "+document.FrontPage_Form1.txtstate2.value+", "+document.FrontPage_Form1.txtzip2.value+", "+document.FrontPage_Form1.txtphone2.value+", "+document.FrontPage_Form1.txtgreet2.value;  

		order3="ORDER THREE, "+document.FrontPage_Form1.txtop3.value+", (one-pound box FMV $14), \nORDER THREE, "+document.FrontPage_Form1.txthp3.value+", (half-pound box FMV $9), \nORDER THREE, "+document.FrontPage_Form1.txtop3a.value+", (two-pound box FMV $26), \nORDER THREE, "+document.FrontPage_Form1.txtop3s.value+", (Sugar-Free one-pound box FMV $17), \nORDER THREE, "+document.FrontPage_Form1.txthp3s.value+", (Sugar-Free half-pound box FMV $11), \nORDER THREE, "+document.FrontPage_Form1.txtop3as.value+", (Sugar-Free two-pound box FMV $31), \n"				
		order3=order3+document.FrontPage_Form1.txtname3.value+", "+document.FrontPage_Form1.txtadd3.value+", "+document.FrontPage_Form1.txtcity3.value+", "+document.FrontPage_Form1.txtstate3.value+", "+document.FrontPage_Form1.txtzip3.value+", "+document.FrontPage_Form1.txtphone3.value+", "+document.FrontPage_Form1.txtgreet3.value;  
		document.FrontPage_Form1.comments.value=order1+"\n========================================\n"+order2+"\n========================================\n"+order3
	}
}
function focus_amount()
{
	global_amount=document.FrontPage_Form1.totalamount.value;
	return false;
}
function disable_amount()
{
	document.FrontPage_Form1.totalamount.value=global_amount;
	return false;
}
//End LIOTA Order Form Javascript Functions - END Copy for insert
//Begin Adobe Active Content Script
var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;

function ControlVersion()
{
	var version;
	var axo;
	var e;

	// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry

	try {
		// version will be set for 7.X or greater players
		axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
		version = axo.GetVariable("$version");
	} catch (e) {
	}

	if (!version)
	{
		try {
			// version will be set for 6.X players only
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
			
			// installed player is some revision of 6.0
			// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
			// so we have to be careful. 
			
			// default to the first public version
			version = "WIN 6,0,21,0";

			// throws if AllowScripAccess does not exist (introduced in 6.0r47)		
			axo.AllowScriptAccess = "always";

			// safe to call for 6.0r47 or greater
			version = axo.GetVariable("$version");

		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 4.X or 5.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = axo.GetVariable("$version");
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 3.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = "WIN 3,0,18,0";
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 2.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
			version = "WIN 2,0,0,11";
		} catch (e) {
			version = -1;
		}
	}
	
	return version;
}

// JavaScript helper required to detect Flash Player PlugIn version information
function GetSwfVer(){
	// NS/Opera version >= 3 check for Flash plugin in plugin array
	var flashVer = -1;
	
	if (navigator.plugins != null && navigator.plugins.length > 0) {
		if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
			var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
			var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
			var descArray = flashDescription.split(" ");
			var tempArrayMajor = descArray[2].split(".");			
			var versionMajor = tempArrayMajor[0];
			var versionMinor = tempArrayMajor[1];
			var versionRevision = descArray[3];
			if (versionRevision == "") {
				versionRevision = descArray[4];
			}
			if (versionRevision[0] == "d") {
				versionRevision = versionRevision.substring(1);
			} else if (versionRevision[0] == "r") {
				versionRevision = versionRevision.substring(1);
				if (versionRevision.indexOf("d") > 0) {
					versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
				}
			}
			var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
		}
	}
	// MSN/WebTV 2.6 supports Flash 4
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
	// WebTV 2.5 supports Flash 3
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
	// older WebTV supports Flash 2
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
	else if ( isIE && isWin && !isOpera ) {
		flashVer = ControlVersion();
	}	
	return flashVer;
}

// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
{
	versionStr = GetSwfVer();
	if (versionStr == -1 ) {
		return false;
	} else if (versionStr != 0) {
		if(isIE && isWin && !isOpera) {
			// Given "WIN 2,0,0,11"
			tempArray         = versionStr.split(" "); 	// ["WIN", "2,0,0,11"]
			tempString        = tempArray[1];			// "2,0,0,11"
			versionArray      = tempString.split(",");	// ['2', '0', '0', '11']
		} else {
			versionArray      = versionStr.split(".");
		}
		var versionMajor      = versionArray[0];
		var versionMinor      = versionArray[1];
		var versionRevision   = versionArray[2];

        	// is the major.revision >= requested major.revision AND the minor version >= requested minor
		if (versionMajor > parseFloat(reqMajorVer)) {
			return true;
		} else if (versionMajor == parseFloat(reqMajorVer)) {
			if (versionMinor > parseFloat(reqMinorVer))
				return true;
			else if (versionMinor == parseFloat(reqMinorVer)) {
				if (versionRevision >= parseFloat(reqRevision))
					return true;
			}
		}
		return false;
	}
}

function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '';
  if (isIE && isWin && !isOpera)
  {
    str += '<object ';
    for (var i in objAttrs)
    {
      str += i + '="' + objAttrs[i] + '" ';
    }
    str += '>';
    for (var i in params)
    {
      str += '<param name="' + i + '" value="' + params[i] + '" /> ';
    }
    str += '</object>';
  }
  else
  {
    str += '<embed ';
    for (var i in embedAttrs)
    {
      str += i + '="' + embedAttrs[i] + '" ';
    }
    str += '> </embed>';
  }

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
      case "id":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}
//END Adobe Active Content script

//NPR localization link script

function localize_npr_links() {
/* find all unlocalized npr links and localize them */
  var anchors=document.body.getElementsByTagName('a');
  for (var i=0;i<anchors.length;i++) { 
    var a=anchors[i];
    var href=a.href;
    if (href && href.match(/^http\:\/\/(www\.) ?npr\.org/) 
        && (! href.match(/force_localization |\/dmg\//))) {
        var newhref=' http://www.npr.org/stations/force/force_localization.php?station=WSIU_FM&url=' + href;
        a.setAttribute('href', newhref);
    }
  }
}