 var viewportwidth;
 var viewportheight;
 
 // the more standards compliant browsers (mozilla/netscape/opera/IE7) use window.innerWidth and window.innerHeight
 
 if (typeof window.innerWidth != 'undefined')
 {
      viewportwidth = window.innerWidth,
      viewportheight = window.innerHeight
 }
 
// IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)

 else if (typeof document.documentElement != 'undefined'
     && typeof document.documentElement.clientWidth !=
     'undefined' && document.documentElement.clientWidth != 0)
 {
       viewportwidth = document.documentElement.clientWidth,
       viewportheight = document.documentElement.clientHeight
 }
 
 // older versions of IE
 
 else
 {
       viewportwidth = document.getElementsByTagName('body')[0].clientWidth,
       viewportheight = document.getElementsByTagName('body')[0].clientHeight
 }
//document.write('<p>Your viewport width is '+viewportwidth+'x'+viewportheight+'</p>');

function getOverflow()
{
	//alert(viewportwidth + " x " + viewportheight);
	if(viewportheight < 440)
	{
		document.body.style.overflow = 'auto';
		document.getElementById('splash').style.top = "-175px";
		document.getElementById('splash').style.marginTop = "0px";
		document.getElementById('splash').style.marginBottom = "440px";
	}
	else
	{
		document.body.style.overflow = 'hidden';
	}
}

function showHide(div1, div2) {
	var thediv1 = document.getElementById(div1);
	var thediv2 = document.getElementById(div2);
	
	if(thediv1.style.display == 'none') {
		thediv1.style.display = '';
		thediv2.styel.display = 'none';
	}
	else {
		thediv1.style.display = 'none';
		thediv2.style.display = '';
	}
}

// VALIDATE EMAIL FORM
function validateEmailForm() {
	var rname = document.emailform.rname;
	var remail = document.emailform.remail;
	var sname = document.emailform.sname;
	var semail = document.emailform.semail;
	
	if(rname.value == '') {
		alert('Please provide a recipient name...');
		rname.focus();
		return false;
	}
	if(remail.value == '') {
		alert('Please provide a recipient email address...');
		remail.focus();
		return false;
	}
	if(sname.value == '') {
		alert('Please provide a your name...');
		sname.focus();
		return false;
	}
	if(semail.value == '') {
		alert('Please provide a your email address...');
		semail.focus();
		return false;
	}
	return true;
}

// VALIDATE CONTACT FORM
function validateContactForm() {
	var first = document.contact.first;
	var last = document.contact.last;
	var email = document.contact.email;
	var address = document.contact.address1;
	var city = document.contact.city;
	var state = document.contact.state;
	var zip = document.contact.zip;
	var other = document.contact.other;
	var comments = document.contact.comments;
	
	if(first.value == '') {
		alert('Please provide your first name...');
		first.focus();
		return false;
	}
	if(last.value == '') {
		alert('Please provide your last name...');
		last.focus();
		return false;
	}
	if(email.value == '') {
		alert('Please provide your email address...');
		email.focus();
		return false;
	}
	var x = email.value;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!(filter.test(x))) {
		alert("\"" + x + "\" is not a valid email address. Please provide a valid email address...");
		email.focus();
		return false;
	}
	if(address.value == '') {
		alert('Please provide an address...');
		address.focus();
		return false;
	}
	if(city.value == '') {
		alert('Please provide a city...');
		city.focus();
		return false;
	}
	if(state.value == '') {
		alert('Please provide a state...');
		state.focus();
		return false;
	}
	if(zip.value == '') {
		alert('Please provide a ZIP (Postal) Code...');
		zip.focus();
		return false;
	}
	if(comments.value == '') {
		alert('Please provide a message...');
		comments.focus();
		return false;
	}
}

// VALIDATE SUBSCRIBE FORM
function validateSubscribeForm() {
	var first = document.subscribe.first;
	var last = document.subscribe.last;
	var email = document.subscribe.email;
	var printed = document.subscribe.printed;
	var address = document.subscribe.address;
	var city = document.subscribe.city;
	var state = document.subscribe.state;
	var zip = document.subscribe.zip;
	
	if(first.value == '') {
		alert('Please provide your first name...');
		first.focus();
		return false;
	}
	if(last.value == '') {
		alert('Please provide your last name...');
		last.focus();
		return false;
	}
	if(email.value == '') {
		alert('Please provide your email address...');
		email.focus();
		return false;
	}
	var x = email.value;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!(filter.test(x))) {
		alert("\"" + x + "\" is not a valid email address. Please provide a valid email address...");
		email.focus();
		return false;
	}
	if(printed.checked)
	{
		if(address.value == '')
		{
			alert('Please provide your address...');
			address.focus();
			return false;
		}
		if(city.value == '')
		{
			alert('Please provide your city...');
			city.focus();
			return false;
		}
		if(state.value == '')
		{
			alert('Please provide your state...');
			state.focus();
			return false;
		}
		if(zip.value == '')
		{
			alert('Please provide your zip code...');
			zip.focus();
			return false;
		}
	}
}

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

// VALIDATE UNSUBSCRIBE FORM
function validateUnsubscribeForm() {
	var email = document.unsubscribe.email;
	if(email.value == '') {
		alert('Please provide your email address...');
		email.focus();
		return false;
	}
	var x = email.value;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!(filter.test(x))) {
		alert("\"" + x + "\" is not a valid email address. Please provide a valid email address...");
		email.focus();
		return false;
	}
}

// EMAIL THIS PAGE
function emailThisPage() {

	// GET FORM VARS
	var rname = document.emailform.rname.value;
	var remail = document.emailform.remail.value;
	var sname = document.emailform.sname.value;
	var semail = document.emailform.semail.value;
	var number = document.emailform.number.value;
	var the_title = document.emailform.the_title.value;
	var the_url = document.emailform.the_url.value;
	
	// DISABLE THE FORM FIELDS
	document.emailform.rname.disabled=true;
	document.emailform.remail.disabled=true;
	document.emailform.sname.disabled=true;
	document.emailform.semail.disabled=true;
	document.emailform.cancel.disabled=true;
	document.emailform.submit.disabled=true;
	
	// AJAX STUFF
	var xmlhttp=false;
	try {
		xmlhttp = new ActiveXObject('Msxml2.XMLHTTP');
	}
	catch (e) {
		try {
			xmlhttp = new
			ActiveXObject('Microsoft.XMLHTTP');
		}
		catch (E) {
			xmlhttp = false;
		}
	}
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
	}
	var file = "_inc/emailpage.php?rname=" + rname + "&remail=" + remail + "&sname=" + sname + "&semail=" + semail + "&the_title=" + the_title + "&the_url=" + the_url + "&number=" + number;
    xmlhttp.open('GET', file, true);
    xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4) {
			var content = xmlhttp.responseText;
			if( content ) {
			
				// CLEAR THE FORM
				document.emailform.reset();
				
				// ALERT THE MESSAGE
				//alert(content);
				
				// RE-ENABLE THE FORM FIELDS
				document.emailform.rname.disabled=false;
				document.emailform.remail.disabled=false;
				document.emailform.sname.disabled=false;
				document.emailform.semail.disabled=false;
				document.emailform.cancel.disabled=false;
				document.emailform.submit.disabled=false;
				
				// SWAP THE DIVS
				document.getElementById('messagediv').innerHTML = content;
				document.getElementById('emaildiv').style.display = 'none';
				document.getElementById('messagediv').style.display = '';
			}
        }
	}
	xmlhttp.send(null) //Nullify the XMLHttpRequest
	return;
}

// FILE DESCRIPTION
function fileDesc(mydiv, theid, thestate)
{
	// AJAX STUFF
	var xmlhttp=false;
	try {
		xmlhttp = new ActiveXObject('Msxml2.XMLHTTP');
	}
	catch (e) {
		try {
			xmlhttp = new
			ActiveXObject('Microsoft.XMLHTTP');
		}
		catch (E) {
			xmlhttp = false;
		}
	}
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
	}
	
	if(thestate == "open")
	{
		//mydiv.style.color = '#ae8160';
		mydiv.style.cursor = 'default';
		mydiv.innerHTML = "[loading]";
	}
	if(thestate == "close")
	{
		//mydiv.style.color = '#ae8160';
		mydiv.style.cursor = 'default';
		mydiv.innerHTML = "[...]";
	}
	
	var file = "_inc/filedesc.php?id=" + theid + "&state=" + thestate;
    xmlhttp.open('GET', file, true);
    xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4) {
			var content = xmlhttp.responseText;
			if( content ) {
				document.getElementById("desc" + theid).innerHTML = content;
			}
        }
	}
	xmlhttp.send(null) //Nullify the XMLHttpRequest
	return;
}

// PARTNER DESCRIPTION
function partnerDesc(mydiv, theid, thestate)
{
	// AJAX STUFF
	var xmlhttp=false;
	try {
		xmlhttp = new ActiveXObject('Msxml2.XMLHTTP');
	}
	catch (e) {
		try {
			xmlhttp = new
			ActiveXObject('Microsoft.XMLHTTP');
		}
		catch (E) {
			xmlhttp = false;
		}
	}
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
	}
	
	if(thestate == "open")
	{
		//mydiv.style.color = '#ae8160';
		mydiv.style.cursor = 'default';
		mydiv.innerHTML = "[loading]";
	}
	if(thestate == "close")
	{
		//mydiv.style.color = '#ae8160';
		mydiv.style.cursor = 'default';
		mydiv.innerHTML = "[...]";
	}
	
	var file = "_inc/partner_desc.php?id=" + theid + "&state=" + thestate;
    xmlhttp.open('GET', file, true);
    xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4) {
			var content = xmlhttp.responseText;
			if( content ) {
				document.getElementById("desc" + theid).innerHTML = content;
			}
        }
	}
	xmlhttp.send(null) //Nullify the XMLHttpRequest
	return;
}

// NEWSLETTER DESCRIPTION
function newsletterDesc(mydiv, theid, thestate)
{
	// AJAX STUFF
	var xmlhttp=false;
	try {
		xmlhttp = new ActiveXObject('Msxml2.XMLHTTP');
	}
	catch (e) {
		try {
			xmlhttp = new
			ActiveXObject('Microsoft.XMLHTTP');
		}
		catch (E) {
			xmlhttp = false;
		}
	}
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
	}
	
	if(thestate == "open")
	{
		//mydiv.style.color = '#ae8160';
		mydiv.style.cursor = 'default';
		mydiv.innerHTML = "[loading]";
	}
	if(thestate == "close")
	{
		//mydiv.style.color = '#ae8160';
		mydiv.style.cursor = 'default';
		mydiv.innerHTML = "[...]";
	}
	
	var file = "_inc/newsletter_desc.php?id=" + theid + "&state=" + thestate;
    xmlhttp.open('GET', file, true);
    xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4) {
			var content = xmlhttp.responseText;
			if( content ) {
				document.getElementById("desc" + theid).innerHTML = content;
			}
        }
	}
	xmlhttp.send(null) //Nullify the XMLHttpRequest
	return;
}

/////////////////////////	FOR RANDOM IMAGE GENERATOR	///////////////////////

function getrandom()
{
	document.getElementById('number').value = '';
	var randnum = Math.floor(Math.random()*11);
	return randnum;
}
function noenter()
{
	return !(window.event && window.event.keyCode == 13);
}