// Recommend to a Friend popup functions
function $(elemID)
{
	return document.getElementById(elemID);	
}

function submitRTF()
{
	if($('friends_email') && $('my_email') && $('copy_me'))
	{
		var emailMatch = /^([0-9a-z]([-.\w]*[0-9a-z])*@([0-9a-z][-\w]*[0-9a-z]\.)+[a-z]{2,9})$/i;
		var validFriendsEmail = emailMatch.exec($('friends_email').value);
		var validMyEmail = emailMatch.exec($('my_email').value);
		if(validFriendsEmail == null)
		{
			alert('Please enter a valid "Friend\'s email"');
		}
		else
		{
			if(validMyEmail == null)
			{
				alert('Please enter a valid "My email"');
			}
			else
			{
				var params = '?fmail=' + encodeURIComponent($('friends_email').value) + '&mmail=' + encodeURIComponent($('my_email').value) + '&ccme=' + encodeURIComponent($('copy_me').checked) + '&page=' + encodeURIComponent(window.location);
				interstitialBox.ajaxconnect('/rtf-send.html' + params, interstitialBox.interContainer, 'POST');
			}	
		}
	}
	else
	{
		alert('Sorry, a required field was missing. Please contact support to have this resolved.');
	}
}

/***********************************************
* Interstitial Content Box- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

//Interstitial Content Box v1.1- http://www.dynamicdrive.com/dynamicindex17/interstitial.htm
//Last modified: Nov 26th, 06' (New: disable webpage scrollbar, auto hide after x seconds options, 

// Slimmed down and optimized for Pixel Driven - 02-10-2009

var interstitialBox={
	// bust caching of pages fetched via Ajax?
	ajaxbustcache: true,
	
	// Disable browser scrollbars while interstitial is shown (Only applicable in IE7/Firefox/Opera8+. IE6 will just auto scroll page to top)?
	disablescrollbars: true,
	
	// Auto hide Interstitial Box after x seconds (0 for no)?
	autohidetimer: 0,
	
	////No need to edit beyond here//////////////////////////////////
	
	ie7: window.XMLHttpRequest && document.all && !window.opera,
	ie7offline: this.ie7 && window.location.href.indexOf("http")==-1, //check for IE7 and offline
	launch:false,
	scrollbarwidth: 16,
	
	ajaxconnect:function(url, thediv, usepost)
	{
		var method = usepost != null ? 'POST' : 'GET';
		var page_request = false
		var bustcacheparameter=""
		if (window.XMLHttpRequest && !this.ie7offline) // if Mozilla, IE7 online, Safari etc
			page_request = new XMLHttpRequest();
		else if (window.ActiveXObject)
		{ // if IE6 or below, or IE7 offline (for testing purposes)
			try {
				page_request = new ActiveXObject("Msxml2.XMLHTTP")
			} 
			catch (e)
			{
				try
				{
					page_request = new ActiveXObject("Microsoft.XMLHTTP")
				}
				catch (e)
				{
					alert('Error! XMLHttpRequest is not available on your browser.');
				}
			}
		}
		else
			return false
		page_request.onreadystatechange=function()
		{
			interstitialBox.loadpage(page_request, thediv)
		}

		var params = '';
		if(method == 'POST' && url.indexOf("?" != -1))
		{
			params = url.substr(url.indexOf("?") + 1);
			url = url.substr(0, url.indexOf("?"));
		}
		if (this.ajaxbustcache) //if bust caching of external page
			bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()

		page_request.open(method, url+bustcacheparameter, true)
		var data = null;
		if(method == 'POST')
		{
			page_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			page_request.setRequestHeader("Content-length", params.length);
			page_request.setRequestHeader("Connection", "close");
			data = params;
		}
		page_request.send(data)
	},
		
	loadpage:function(page_request, thediv)
	{
		if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
		{
			document.getElementById("interContent").innerHTML=page_request.responseText
		}
	},
	
	createcontainer:function()
	{
		//write out entire HTML for Interstitial Box:
		//document.write('<div id="interContainer">'+this.defineheader+'<div id="interContent"></div></div><div id="interVeil"></div>')
		$('outerContainer').style.display = 'block';
		this.interContainer=document.getElementById("interContainer") //reference interstitial container
		this.interVeil=document.getElementById("interVeil") //reference veil
		this.standardbody=(document.compatMode=="CSS1Compat")? document.documentElement : document.body //create reference to common "body" across doctypes
		this.interContainer.style.visibility='visible';
		this.interContainer.style.display='block';
	},
	
	
	showcontainer:function()
	{
		if (this.interContainer.style.display=="none")
			return //if interstitial box has already closed, just exit (window.onresize event triggers function)
		var ie=document.all && !window.opera
		var dom=document.getElementById
		var scroll_top=(ie)? this.standardbody.scrollTop : window.pageYOffset
		var scroll_left=(ie)? this.standardbody.scrollLeft : window.pageXOffset
		var docwidth=(ie)? this.standardbody.clientWidth : window.innerWidth-this.scrollbarwidth
		var docheight=(ie)? this.standardbody.clientHeight: window.innerHeight
		var docheightcomplete=(this.standardbody.offsetHeight>this.standardbody.scrollHeight)? this.standardbody.offsetHeight : this.standardbody.scrollHeight
		var objwidth=this.interContainer.offsetWidth
		var objheight=this.interContainer.offsetHeight
	},
	
	
	closeit:function()
	{
		$('outerContainer').style.display = 'none';
		this.interContainer.style.display="none"
		if (this.disablescrollbars && window.XMLHttpRequest) //if disablescrollbars enabled and modern browsers- IE7, Firefox, Safari, Opera 8+ etc
			this.standardbody.style.overflow="auto"
		if (typeof this.timervar!="undefined")
			clearTimeout(this.timervar)
	},
	
	getscrollbarwidth:function()
	{
		var scrollbarwidth=window.innerWidth-(this.interVeil.offsetLeft+this.interVeil.offsetWidth) //http://www.howtocreate.co.uk/emails/BrynDyment.html
		this.scrollbarwidth=(typeof scrollbarwidth=="number")? scrollbarwidth : this.scrollbarwidth
	},
	
	hidescrollbar:function(){
		if (this.disablescrollbars)
		{ //if disablescrollbars enabled
			if (window.XMLHttpRequest) //if modern browsers- IE7, Firefox, Safari, Opera 8+ etc
				this.standardbody.style.overflow="hidden"
			else //if IE6 and below, just scroll to top of page to ensure interstitial is in focus
				window.scrollTo(0,0)
		}
	},
	
	dotask:function(target, functionref, tasktype)
	{ //assign a function to execute to an event handler (ie: onunload)
		var tasktype=(window.addEventListener)? tasktype : "on"+tasktype
		if (target.addEventListener)
			target.addEventListener(tasktype, functionref, false)
		else if (target.attachEvent)
			target.attachEvent(tasktype, functionref)
	},
	
	initialize:function()
	{
		this.createcontainer() //write out interstitial container
		this.ajaxconnect('/rtf-form.html', this.interContainer) //load page into content via ajax
		this.dotask(window, function(){interstitialBox.hidescrollbar(); interstitialBox.getscrollbarwidth(); setTimeout("interstitialBox.showcontainer()", 100)}, "load")
		this.dotask(window, function(){interstitialBox.showcontainer()}, "resize")
	}
}
