function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function validateSubscriptionForm(form, renew) {
	
	var strMessage = '';
	var bolReturn = true;
		
	if (renew) {
		if (form.strSubscriptionNumber.value.length <= 0) {
				strMessage = strMessage + 'Please enter a Subscription Number.\n';
		}		
	}
	if (form.strFname.value.length <= 0) {
			strMessage = strMessage + 'Please enter a First Name.\n';
	}
	if (form.strLname.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Last Name.\n';
	}	
	if (form.strJobTitle.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Job Title.\n';
	}		
	if (form.strCompanyName.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Company Name.\n';
	}			
	if (form.strAddress.value.length <= 0) {
			strMessage = strMessage + 'Please enter an Address.\n';
	}			
	if (form.strCity.value.length <= 0) {
			strMessage = strMessage + 'Please enter a City.\n';
	}			
	if (form.strState.value.length <= 0) {
			strMessage = strMessage + 'Please enter a State.\n';
	}			
	if (form.strZip.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Zip/Postal Code.\n';
	}				
	if (form.strCountry.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Country.\n';
	}	
	if (form.strPhone.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Phone Number.\n';
	}				

	if (!form.numProductID[0].checked && !form.numProductID[1].checked && !form.numProductID[2].checked) {
		strMessage = strMessage + 'Please Select a Subscription Term.\n';
	}
	
	if (form.strEmail.value.length <= 0) {
			strMessage = strMessage + 'Please enter an Email Address.\n';		
	} else if  (form.strEmail.value.length > 0) {
		if (form.strEmail.value != form.strConfirmEmail.value) {
			strMessage = strMessage + 'Email Address does not match.\n';
		}
	}
	
	if (form.strPayNumber.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Credit Card #.\n';
	}			
	if (form.strSecurityNumber.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Security Number.\n';
	}		
	if (form.strNameOnCard.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Cardholder Name.\n';
	}				
	if (strMessage != '') {
		alert(strMessage);
		bolReturn = false;
	}	
	return bolReturn;
}

function validateDirectoryForm(form) {
	
	var strMessage = '';
	var bolReturn = true;
		
	if (form.strFname.value.length <= 0) {
			strMessage = strMessage + 'Please enter a First Name.\n';
	}
	if (form.strLname.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Last Name.\n';
	}	
	if (form.strJobTitle.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Job Title.\n';
	}		
	if (form.strCompanyName.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Company Name.\n';
	}			
	if (form.strAddress.value.length <= 0) {
			strMessage = strMessage + 'Please enter an Address.\n';
	}			
	if (form.strCity.value.length <= 0) {
			strMessage = strMessage + 'Please enter a City.\n';
	}			
	if (form.strState.value.length <= 0) {
			strMessage = strMessage + 'Please enter a State.\n';
	}			
	if (form.strZip.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Zip/Postal Code.\n';
	}				
	if (form.strCountry.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Country.\n';
	}				

	/*if (!form.numProductID[0].checked && !form.numProductID[1].checked && !form.numProductID[2].checked) {
		strMessage = strMessage + 'Please Select a Subscription Term.\n';
	}*/
	
	if (form.strEmail.value.length > 0) {
		if (form.strEmail.value != form.strConfirmEmail.value) {
			strMessage = strMessage + 'Email Address does not match.\n';
		}
	}
	
	if (form.strPayNumber.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Credit Card #.\n';
	}			
	if (form.strSecurityNumber.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Security Number.\n';
	}		
	if (form.strNameOnCard.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Cardholder Name.\n';
	}				
	if (strMessage != '') {
		alert(strMessage);
		bolReturn = false;
	}	
	return bolReturn;
}

function validateBGForm(form) {
	var strMessage = '';
	var bolReturn = true;
	
	if (trim(form.strName.value).length <= 0) {
			strMessage = strMessage + 'Please enter a Company Name.\n';
	}			
	
	if (strMessage != '') {
		alert(strMessage);
		bolReturn = false;
	}	
	return bolReturn;	
}

function validateBGCheckoutForm(form) {
	var strMessage = '';
	var bolReturn = true;
	
	if (form.strFname.value.length <= 0) {
			strMessage = strMessage + 'Please enter a First Name.\n';
	}
	if (form.strLname.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Last Name.\n';
	}	
	if (form.strJobTitle.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Job Title.\n';
	}		
	if (form.strCompanyName.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Company Name.\n';
	}			
	if (form.strAddress.value.length <= 0) {
			strMessage = strMessage + 'Please enter an Address.\n';
	}			
	if (form.strCity.value.length <= 0) {
			strMessage = strMessage + 'Please enter a City.\n';
	}			
	if (form.strState.value.length <= 0) {
			strMessage = strMessage + 'Please enter a State.\n';
	}			
	if (form.strZip.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Zip/Postal Code.\n';
	}				
	if (form.numCountry.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Country.\n';
	}	
	if (form.strPhone.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Phone Number.\n';
	}		
	
	if (form.strEmail.value.length <= 0) {
			strMessage = strMessage + 'Please enter an Email Address.\n';		
	} else if  (form.strEmail.value.length > 0) {
		if (form.strEmail.value != form.strConfirmEmail.value) {
			strMessage = strMessage + 'Email Address does not match.\n';
		}
	}
	
	if (form.strPayNumber.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Credit Card #.\n';
	}			
	if (form.strSecurityNumber.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Security Number.\n';
	}		
	if (form.strNameOnCard.value.length <= 0) {
			strMessage = strMessage + 'Please enter a Cardholder Name.\n';
	}				
	if (strMessage != '') {
		alert(strMessage);
		bolReturn = false;
	}	
	return bolReturn;
	
}

function checkQuantity(qty) {
	
	var lstQtys = '';
	var lstPers = '';
	var numTotal = 0;
	var numShipping = 0;

	lstQtys = new String(document.getElementById('lstAllQtys').value);
	lstPers = new String(document.getElementById('lstAllPercentages').value);

	var numWeight = document.getElementById('numWeightPrice').value;
	var numBase = document.getElementById('numBasePrice').value;


	var aryQtys = new Array(0);
	var aryPers = new Array(0);
	
	aryQtys = lstQtys.split(",");
	aryPers = lstPers.split(",");
	
	var numPrice = document.getElementById('strProductPrice').value;
	var numNewPrice = numPrice * qty;
	if (qty > 250) {
		document.getElementById('numQty').value = 250;
		alert('Please call for a special discount on orders over 250 copies.');
	} else {
		var qInx = -1;
		for (qI=0; qI <= aryQtys.length; qI++) {
			
			if (parseInt(aryQtys[qI]) <= parseInt(qty)) {
				qInx = qI;
				break;
			}
		}

		if (qInx > -1) {
			numNewPrice = aryPers[qInx] * (numPrice * qty);
		}
	}
	
	numShipping = parseInt(numBase) + (parseInt(numWeight) * parseInt(qty));
	numTotal = numShipping + numNewPrice;
	
	document.getElementById('numPriceDisplay').innerHTML = currency(numNewPrice);
	document.getElementById('numShippingDisplay').innerHTML = currency(numShipping);
	document.getElementById('numTotalDisplay').innerHTML = currency(numTotal);
}

function currency( num )
{
   var prefix = "$";
   var suffix = "";
   if ( num < 0 )
   {
       prefix = "($";
       suffix = ")";
       num = - num;
   }
       var temp = Math.round( num * 100.0 ); // convert to pennies!
       if ( temp < 10 ) return prefix + "0.0" + temp + suffix;
       if ( temp < 100 ) return prefix + "0." + temp + suffix;
       temp = prefix + temp; // convert to string!
       return temp.substring(0,temp.length-2) + "." + temp.substring(temp.length-2) + suffix;
} 

function trim(s) {
  while (s.substring(0,1) == ' ') {
    s = s.substring(1,s.length);
  }
  while (s.substring(s.length-1,s.length) == ' ') {
    s = s.substring(0,s.length-1);
  }
  return s;
}