// Prevent errors if firebug not installed - remove from production
if (window.console === undefined)
{
	window.console = {log: function(){}};
}

/**
 * Global Variables
 */


var featureTimer;
var featureTime = 8000;
var featureCount;


/**
 * Event binding/initial setup
 */
	$(document).ready(function()
	{
		$('#feature_content .pagination a').click(timedFeatureSwitch);
		$('.procedure .inner_content').scrollbar({scrollInterval: 5});
		
		// Handle all tab nav in the site
		$('#tab_bar li a').click(function(ev) {
			$('#tab_bar li').removeClass("selected");
			$('.tab_contents > div').hide();
			$(this).parents("li").addClass("selected");
			href = $(this).attr("href").substr(1);
			$('#' + href).show();
			return false;
		});
		
		// Homepage video nav
		$('.video_nav a').not('.more_videos').click(function(ev) {
			$('.video_nav a').removeClass("selected");
			$(this).addClass("selected");
			$("#home_video_embed").load("http://www.cosmeticsurg.net/ajax/get-home-video/?id=" + $(this).attr("href").substr(1));
			return false;
		});
		
		featureCount = $('#feature_content .pagination a').length - 1;
		featureTimer = setTimeout('timedFeatureSwitch()', featureTime);
		
		$('.logos a.logo').attr('target', '_blank'); //open footer links in a new window
	});

	
/**
 * Event handlers
 */
	function switchFeature(index)
	{	
		var feature = $('.feature').eq(index);
		$('.feature.selected').removeClass('selected');
		feature.addClass('selected');
		
		var image_src = feature.find('img.photo').attr('src');
		var lead_in = feature.find('p.lead-in').html();
		var copy = feature.find('p.copy').html();
		var link = feature.find('a.link').attr('href');
		
		$('#feature_content p.lead-in, #feature_content p.copy, #feature_content .view_more').fadeOut(function()
		{
			$('#feature img.main_photo').fadeOut(function()
			{
				$(this).attr('src', image_src);
				$(this).fadeIn(function()
				{
					$('#feature_content p.lead-in').html(lead_in).fadeIn();
					$('#feature_content p.copy').html(copy).fadeIn();
					$('#feature_content .view_more').attr('href', link).fadeIn();
				});
			});
		});
		
		return false;
	}
	
	
	function timedFeatureSwitch(event)
	{		
		var index = $('#feature_content .pagination a').index($('#feature_content .pagination a.selected'));
		$('#feature_content .pagination a.selected').removeClass('selected');
		
		if(index == featureCount)
			index = -1; //reset the rotation
	
		if(event === undefined)
		{		
			$('#feature_content .pagination a').eq(index+1).addClass('selected');
			clearTimeout(featureTimer);
			featureTimer = setTimeout('timedFeatureSwitch()', featureTime);
			switchFeature(index+1);
		}
		else
		{
			if (!$(this).hasClass('selected'))
			{
				$(this).addClass('selected');
				index = $('#feature_content .pagination a').index($(this));
				clearTimeout(featureTimer);
				switchFeature(index);
			}
		}
	}


/**
 * Callbacks
 */



/**
 * General functions
 */


// Load newest tweet
function loadTweets(searchTerms)
{
	searchTerms = searchTerms.split(',');
	var searchString = '';	
	$.each(searchTerms, function(i, terms) {
		if(searchString.length < 120)
		{
			searchString += encodeURIComponent(terms.replace(/^\s+|\s+$/g, '')) + '+OR+';
		}
	});
	searchString = (searchString.substring(0, searchString.length - 4)).substring(0, 140);
	$.getJSON("http://search.twitter.com/search.json?q=" + searchString + "&show_user=true&rpp=5&callback=?", function(data){ 
		$("#load_tweets").find('img.loading').remove();
		$.each(data.results, function(i, item) {
			$("#load_tweets").append('<div class="tweet"><img src="' + item.profile_image_url + '" class="left" width="22" height="22" alt="' + item.from_user + '" /><p><span class="username">' + item.from_user + '</span><br />' + checkForLink(item.text) + '</p><span class="timestamp">' + calcRelativeTime(item.created_at) + '</span></div>'); 
		}); 
	});
	$("#load_tweets a").live('click', function() {
		window.open($(this).attr('href'));
		return false;
	});
}

// Search tweet for http:// and make it a link!
function checkForLink(text)
{
	return text.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/, function(t) {
		return t.link(t);
	});
}
// Figure out relative time of tweet
function calcRelativeTime(time_value) {
	var values = time_value.split(" ");
	time_value = values[2] + " " + values[1] + ", " + values[3];
	var parsed_date = Date.parse(time_value);
	var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
	var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
	delta = delta + (relative_to.getTimezoneOffset() * 60);

	var r = '';
	if (delta < 60) {
		r = 'a minute ago';
	} else if(delta < 120) {
		r = 'couple of minutes ago';
	} else if(delta < (45*60)) {
		r = (parseInt(delta / 60)).toString() + ' minutes ago';
	} else if(delta < (90*60)) {
		r = 'an hour ago';
	} else if(delta < (24*60*60)) {
		r = '' + (parseInt(delta / 3600)).toString() + ' hours ago';
	} else if(delta < (48*60*60)) {
		r = '1 day ago';
	} else {
		r = (parseInt(delta / 86400)).toString() + ' days ago';
	}
	  
	return r;
}





/* Deprecated Functions */

function myexec(theValue) {
	if (theValue != '0') {
		this.location.href = theValue;
	}
}

function openWindow(url,name,width,height){
	var newWin = '';
	newWin = window.open('' + url + '','' + name + '','width=' + width + ',height=' + height + ',scrollbars=1,resizable=1,status=1,menubar=0');
	if (!newWin.opener) newWin.opener = self;
}

function quizWin(file,window,width,height) {
	if(!w)
		var w = open(file,window,'resizable=yes,scrollbars=1,width=' + width + ',height=' + height);
	else
		w = false;
		w.focus();
}