// JavaScript Document

$(document).ready(function(){
	if($('#portalPanel').length){
		var po = new SWFObject("http://www.gold.org/common/swf/portal.swf", "portalswf", "100%", "60", "6", "#ffffff");
		if(portalZone != null){ // has portalZone been defined by the module?
			po.addVariable('portalZone', portalZone);
			po.addVariable('hostZone', hostZone);
			//alert(portalZone);
		}
		po.addParam('allowScriptAccess','always');
		po.addParam("wmode", "opaque");
		po.write("portalPanel");
	}
	//analytics tracking for downloads / external links
	$('a[href]').click(function(e)
	{
		href = $(this).attr('href');
		this_page = document.location.pathname;
		
		// first look for a download.
		filetypes = Array('.pdf','.doc','.xls','.docx','.xlsx');
		for(c=0;c<filetypes.length;c++)
		{
		   if (href.indexOf(filetypes[c]) !== -1)
		   {
			   if(href.indexOf('deliver.php') == -1)// protected downloads are tracked via the deliver.php script.
			   {   
					//e.preventDefault();
					//$('div#portalPanel').after('Download: '+href+'<br />');
					pageTracker._trackEvent("Publications", "Download", href);
					pageTracker._trackEvent("Publications", "Download Location", href+','+this_page);
					return;
			   }
			   else
			   {
					pageTracker._trackEvent("Publications", "Download Secure Location", href+','+this_page);
					return;
			   }
		   }
		}		
		
		// second look for external link
		if(href.indexOf('ttp://')!== -1)
		{
			//e.preventDefault();
			if(	
			   	href.indexOf('gold.org') !== -1 || 
				href.indexOf('utilisegold.com') !== -1 || 
				href.indexOf('goldinspirations.com') !== -1 || 
				href.indexOf('goldinnovationsblog.com') !== -1 
				)
			{
				//$('div#portalPanel').after('Outgoing Portal Link: '+href+'<br />');
				//pageTracker._trackEvent("Outgoing", "Portal", href);
				pageTracker._trackEvent("Outgoing", "Portal", href+','+this_page);
			}
			else
			{
				//$('div#portalPanel').after('Outgoing Link: '+href+'<br />');
				//pageTracker._trackEvent("Outgoing", "External", href);
				pageTracker._trackEvent("Outgoing", "External", href+','+this_page);
			}
			return;
		}
		
	});	
	//analytics tracking for external referers.
	referredBy();
	// show / hide the portal bar functionality
	$('a#portalMinimalPanelLink').click(function(e)
	{
		e.preventDefault();
		showPortalMaximised();
	});
});
 

function showPortalMaximised(){
	$('#portalTop').show();
	$('#portalMinimalPanel').height('60px');
   	var po = new SWFObject("http://www.gold.org/common/swf/portal.swf", "portalswf", "100%", "60", "6", "#ffffff");
	if(portalZone != null){ // has portalZone been defined by the module?
		po.addVariable('portalZone', portalZone);
		po.addVariable('hostZone', hostZone);
	}
	po.addParam('allowScriptAccess','always');
	po.addParam("wmode", "opaque");
  	po.write("portalMinimalPanel");	
}

function referredBy()
{
	//referral links will have #wgc_refer=some_value in the url
	if(document.location.hash)
	{
		temp = document.location.hash.substr(1,document.location.hash.length);
		if(temp.substr(0,9) == 'wgc_refer')
		{
			refer = temp.split('+');
			//alert(refer);
			if(refer[1].length)
			{
				//set a cookie with the refer value
				var date = new Date();
				days = 30;
				date.setTime(date.getTime()+(days*24*60*60*1000));				
				document.cookie = "wgc_refer="+refer[1]+"; expires="+date.toGMTString()+";domain=gold.org; path=/";
				//trigger a GA event
				if(typeof(pageTracker)!=='undefined')
				{
					pageTracker._trackEvent('Referred By ['+refer[1]+']', 'Incoming Link ['+refer[1]+']', document.location.href);
				}
			}
		}
	}
	// so we need to read the wgc_refer cookie and trigger a GA events with its value if it exists.
	var nameEQ = "wgc_refer=";
	var ca = document.cookie.split(';');
	var val = null;
	for(var i=0;i < ca.length;i++) 
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) val = c.substring(nameEQ.length,c.length);
	}		
	// ...just confirmed our email address.
	if (val != null && (document.location.href.indexOf('user/normal/activated') !== -1))
	{
		if(typeof(pageTracker)!=='undefined')
		{
			pageTracker._trackEvent('Referred By ['+refer[1]+']', 'User Registration Complete ['+refer[1]+']', document.location.href);
		}
	}		
	// ...just compeleted the reg form.
	if (val != null && (document.location.href.indexOf('user/normal/register/thanks') !== -1))
	{
		if(typeof(pageTracker)!=='undefined')
		{
			pageTracker._trackEvent('Referred By ['+refer[1]+']', 'User Registration Attempt ['+refer[1]+']', document.location.href);
		}
	}
}


