(function($){$.timeago=function(timestamp){if(timestamp instanceof Date)return inWords(timestamp);else if(typeof timestamp=="string")return inWords($.timeago.parse(timestamp));else return inWords($.timeago.datetime(timestamp));};var $t=$.timeago;$.extend($.timeago,{settings:{refreshMillis:60000,allowFuture:false,strings:{prefixAgo:null,prefixFromNow:null,suffixAgo:"ago",suffixFromNow:"from now",ago:null,fromNow:null,seconds:"less than a minute",minute:"about a minute",minutes:"%d minutes",hour:"about an hour",hours:"about %d hours",day:"a day",days:"%d days",month:"about a month",months:"%d months",year:"about a year",years:"%d years"}},inWords:function(distanceMillis){var $l=this.settings.strings;var prefix=$l.prefixAgo;var suffix=$l.suffixAgo||$l.ago;if(this.settings.allowFuture){if(distanceMillis<0){prefix=$l.prefixFromNow;suffix=$l.suffixFromNow||$l.fromNow;}
distanceMillis=Math.abs(distanceMillis);}
var seconds=distanceMillis/1000;var minutes=seconds/60;var hours=minutes/60;var days=hours/24;var years=days/365;var words=seconds<45&&substitute($l.seconds,Math.round(seconds))||seconds<90&&substitute($l.minute,1)||minutes<45&&substitute($l.minutes,Math.round(minutes))||minutes<90&&substitute($l.hour,1)||hours<24&&substitute($l.hours,Math.round(hours))||hours<48&&substitute($l.day,1)||days<30&&substitute($l.days,Math.floor(days))||days<60&&substitute($l.month,1)||days<365&&substitute($l.months,Math.floor(days/30))||years<2&&substitute($l.year,1)||substitute($l.years,Math.floor(years));return $.trim([prefix,words,suffix].join(" "));},parse:function(iso8601){var s=$.trim(iso8601);s=s.replace(/-/,"/").replace(/-/,"/");s=s.replace(/T/," ").replace(/Z/," UTC");s=s.replace(/([\+-]\d\d)\:?(\d\d)/," $1$2");return new Date(s);},datetime:function(elem){var isTime=$(elem).get(0).tagName.toLowerCase()=="time";var iso8601=isTime?$(elem).attr("datetime"):$(elem).attr("title");return $t.parse(iso8601);}});$.fn.timeago=function(){var self=this;self.each(refresh);var $s=$t.settings;if($s.refreshMillis>0){setInterval(function(){self.each(refresh);},$s.refreshMillis);}
return self;};function refresh(){var data=prepareData(this);if(!isNaN(data.datetime)){$(this).text(inWords(data.datetime));}
return this;}
function prepareData(element){element=$(element);if(!element.data("timeago")){element.data("timeago",{datetime:$t.datetime(element)});var text=$.trim(element.text());if(text.length>0)element.attr("title",text);}
return element.data("timeago");}
function inWords(date){return $t.inWords(distance(date));}
function distance(date){return(new Date().getTime()-date.getTime());}
function substitute(stringOrFunction,value){var string=$.isFunction(stringOrFunction)?stringOrFunction(value):stringOrFunction;return string.replace(/%d/i,value);}
document.createElement("abbr");document.createElement("time");})(jQuery);


Cufon.replace('#header li a, .cf, #story .bigNav li, #story h1, #story h3, #left h1, #sidebar h2, .blog #right h2, ul.menu li a, .cf, .blog a.more', {
	hoverables: { a: true }
});


$(document).ready(function() {
	$(".toggle a, .expand .title a").click(function(e) {
		var toggle = $(this).parents('.item').find('.toggle').find('a');

		if(!toggle.hasClass('open')) {
			e.preventDefault();
			$('.expand .content').hide();
			
			$(this).parents('.item').find(".content").slideDown(1000);
			$('.toggle a').removeClass('open');
			toggle.addClass('open');
		} else {
			$(this).parents('.item').find(".content").slideUp(1000);
			$('.toggle a').removeClass('open');
		}

	});
	
	$('.expand .content').slideUp();
	
	$('.rating').stars({
		oneVoteOnly: true,
		callback: function(ui, type, value) {
			console.info(ui.element);
			
			var ratingId = $(ui.element).attr('id').split('-')[2];
			$.ajax({
				url: '/recipes/rate',
				data: {
					id: ratingId,
					rating: value
				},
				dataType: 'json',
				success: function(json) {
					ui.element.append('<span class="message">'+json.message+'</span>');
					ui.element.parent().find('.message').fadeOut(4000);
				}
			});
		}
	});
	   
	
	// Used in kitchen section
	//http://www.mail-archive.com/jquery-en@googlegroups.com/msg68685.html
	$('#featuredSlider').cycle({
		fx: 'scrollLeft',
		timeout: 7000,
		speed: 'slow',
        pager:  '#slideNav',
        pause: true,
		cleartypeNoBg: true
	}); 
	
	$('#photoUploader').submit(function() {
	    $(this).find('#submit').append($('<p>Generating PDF... Please be Patient!</p>'));
	    return true;
	});
	
	buildTabs();    
	
	// setup timers
	if ($("abbr.timeago").length) {
        $("abbr.timeago").timeago();
	};
});
     

var buildTabs = function() {
	var tabs = $('.tab');
	var containers = $('.container>div');

	if(tabs.length > 0) {
		//setup events
		$('.tab').click(function(evt) {
			tabs.removeClass('active');
			$(this).addClass('active');	
			containers.hide();
                 
            var id = $(this).attr('href');  
			$(id).show();

			return false;
		});

		containers.hide();
		
		
		var tabActive = false;
		tabs.each(function(i) {
			if($(this).hasClass('active')) {
				var id = $(this).attr('href');
				var tabId = id.split('#')[1];
				
				$('#'+tabId).show();
				tabActive = true;
				return;
			}
		});
		
		if(!tabActive) {
			tabs.eq(0).addClass('active');
			containers.eq(0).show();
		}

	}

}



