function wc()
{
	if(window.console)
	{
		for(var i = 0; i < arguments.length; i++)
		{
			window.console.log(arguments[i]);
		}
	}
}

// ----------------------------------------------------------------------------

$(document).ready(function()
{
	if(GA_CODE)
	{
		//wc(GA_CODE);
		
		$.ga(GA_CODE);
	}
	
	// ----------------------------------------------------------------------------
	
	$('a:has(img)', $('div.content div.media')).fancybox(getFancyboxConfig());
	
	// ----------------------------------------------------------------------------
	
	$('p:first', '.list .information.infopanel').truncate(120);
	
	$('p:gt(0):not(.readmore)', '.list .information.infopanel').hide();
	
	// ----------------------------------------------------------------------------
	
	$('.information', '.project.list, .project.large')
		
		.css({ cursor: 'pointer' })
		
		.click(function(){

			document.location = $('h1 > a', this).attr('href');
		
			return false;
		})
	;
	
	// ----------------------------------------------------------------------------
	
	// cycle div.scrollview
	var cycle_options = {

		fx: 'fade',
		speed: 800,
		
		fx: 'scrollLeft',
		speed: 600,
		
		slideExpr: 'div.datarecord',
		
		//cleartype: false,
		//cleartypeNoBg: true,
		
		//before: slideUpInformation(),
		//after: slideUpInformation(),
		
		pause: true,
		
		timeout: 8000,
		
		pager: '.pager',
		
		prev: '.prev',
		
		next: '.next',
		
		foo: 'bar'
	};
	
	var hs = $('#page.homepage div.scrollview')
				.css({ overflow: 'hidden' })
				//.prepend('<div class="prev">&#8249;</div>')
				//.prepend('<div class="next">&#8250;</div>')
				.prepend('<div class="pager">')
	;

	$('div.container', hs).css({ width: 'auto' }).cycle(cycle_options);
	
	//$('.information p:last:not(.readmore)', hs).truncate(120);
	
	// ----------------------------------------------------------------------------
	// twitter banner
	
	$('div.banner.twitter ul').cycle({ 
		
		slideExpr: 'li.tweet',
		speed: 300,
		timeout: 8000,
		pause: true,
		cleartypeNoBg: true
	});
	
	// ----------------------------------------------------------------------------
	// keypeople stuff
	
	var s = $('#page.facebookpage div.scrollview').css({ height: 350, overflow: 'hidden' });
	
	if(s.length)
	{
		var c = $('div.container', s);
		
		var info = $('<div id="employee-information" class="information infopanel" />').hide();//.fadeTo(0, 0);
		
		info.pinned = false;
		
		var clicked = null;
		
		
		var num_emps = $('> div.datarecord', c).removeClass('no-js').length;
		
		//wc(num_emps); return false;
		
		if(num_emps > 7)
		{
			s.scrollah({
				autoMode: 'loop',
				pauseOnHover: false,
				startOnLoad: true
			});
		}
		
		s.before(info);
		
		s.delegate('.container', 'hover', function(event){
		
			wc(' --- scrollview hover', event.type);
			
			if(event.type == 'mouseover' && !info.pinned)
			{			
				info.clearQueue().fadeTo(400, 0.85);
			}
			
			if(event.type == 'mouseout' && !info.pinned)
			{
				info.clearQueue().fadeTo(400, 0);
			}
			
		}).delegate('.datarecord', 'hover', function(event){
					
			var emp = $(this); //.$(event.target).parents('.datarecord');
			
			var name = $.trim($('.information h1', emp).text());
			
			emp.css({ cursor: 'pointer' });
			
			wc(' --- datarecord hover on ' + name);
			
			if( ! info.pinned)
			{
				showInfo(emp);
				
				if($.galog)
				{
					$.galog.event('Employees', 'Hover', 'Hovered over ' + name);
				}
			}
			
		}).delegate('.datarecord', 'OFF___click', function(event){
			
			var emp = $(this);
			
			var img = $('img', emp);
			
			var name = $.trim($('.information h1', emp).text());
			
			wc(' --- datarecord click on ' + name);
			
			if(emp.hasClass('clicked'))
			{
				info.pinned = false;
				
				emp.removeClass('clicked');
				
				swapSrc(img);
				
				clicked = null;
			}
			else
			{
				if(clicked)
				{
					clicked.removeClass('clicked');
					
					swapSrc($('img', clicked));
				}
				
				info.pinned = true;
						
				emp.addClass('clicked');
				
				swapSrc(img);
						
				showInfo(emp);
				
				if($.galog)
				{
					// wc('Sending an event to GA.');
					
					$.galog.event('Employees', 'Click', 'More info about ' + name);
				}
				
				clicked = emp;
			}
		
			return false;
			
		});
	}
	
	function swapSrc(img)
	{
		var alt_src = img.attr('rel');
		
		if( ! alt_src)
		{
			img.toggleClass('highlight');
			
			return false;
		}
		
		//
		var src = img.attr('src');
				
		img.attr('src', alt_src);
		img.attr('rel', src);
		
		return true;
	}
	
	function showInfo(emp)
	{
		//wc(emp);
		
		var p = emp.position();
				
		var pos_css = (p.left < (s.width()/2)) ? { right: 0, left: null } : { left: 0, right: null };
		
		info.css(pos_css).html( $('.information', emp).html() );
		
		
	}
	
	// ----------------------------------------------------------------------------
	
	var clients = $('div.client-dataobject, div.cartoon-dataobject');//.css({height: 200});

	if(clients.length)
	{
		$('.datarecord > h1, .datarecord > p', clients).hide();
		
		var clientinfo = $('<div id="client-information" class="information infopanel" />');
		
		var clientsscroller = $('div.scrollview', clients)
		
				.css({ overflow: 'hidden' })
				
				.before(clientinfo)
				
				.scrollah({
				
					autoMode: 'loop',
					
					pauseOnHover: true,
					
					startOnLoad: true
				})
		;
				
		clientsscroller.delegate('.datarecord', 'hover', function(event){
					
			var client = $(this); //.$(event.target).parents('.datarecord');
			
			var name = $.trim($('h1', client).text());
			
			client.css({ cursor: 'pointer' });
			
			wc(' --- datarecord hover on ' + name);
			
			showClientInfo( $(client).html(), clientinfo);
			
			
		});
		
		// show first client on page load
		showClientInfo($('.datarecord:first', clients).html(), clientinfo);
	}

});

// ----------------------------------------------------------------------------

function showClientInfo(html, clientinfo)
{
	clientinfo.html(html);
	
	$('img', clientinfo).hide();
	$('h1, p', clientinfo).show();
}

// ----------------------------------------------------------------------------

function getFancyboxConfig()
{
	return {
		'hideOnContentClick':	false,
		'cyclic'			:	true,
		'margin'			:	20,
		'centerOnScroll'	:	true,
		'overlayOpacity'	:	0.6,
		'overlayColor'		:	'#000',
		'speedIn'			:	600, 
		'speedOut'			:	200, 
		'overlayShow'		:	true,
		'showCloseButton'	:	true,
		'titlePosition' 	:	'inside',
		'titleFormat'		:	fancyTitle,
		'foo': 'bar'
	};
}

// ----------------------------------------------------------------------------

function fancyTitle(title, currentArray, currentIndex, currentOpts)
{
	return '<div id="fancydescription">' + (title && title.length ? '<h4>' + title + '</h4>' : '' ) + '</div>';
}
