/* FREESTYLEMTX.COM */
/* Javascript Functions
----------------------------------------------------------------------------- */


	$(document).ready(function() {
	
		markup();

	});

	$(window).load(function() {

		links();	
		tabs();
		forum();
		ie();
		$('#content').show();

	});
	

/* FUNCTION: MARKUP CHANGES
----------------------------------------------------------------------------- */


	function markup() {
	
	
/* Features */


		// GIVE FIRST ENTRY SPECIAL CLASS
		$('#features').children('ul.content').children('li:first-child').addClass('first');
		
		// MOVE COPY INTO DIV
		$('#features').children('ul.content').children('li:first-child').children('h4, span, em, div, ul').wrapAll('<div class="lead"></div>');

		// SWAP THUMBNAIL FOR ENLARGED IMAGE
		$('#features li.first a.image img').each(function() {
		
			$(this).attr('src', $(this).attr('src').replace('thumb_', 'img_'));
		
		});
		

/* Articles */


		// CONTAINER
		$('.module-editorial.display').each(function() {
		
			$(this).children('*:not(h3)').wrapAll('<div class="content"></div>');
		
		});
		
		// ALTERNATING BLOCKQUOTES
		$('.module-editorial.display .body blockquote').each(function() {
		
			//addClass('alt');
		
		});
		
	}
	

/* FUNCTION: LINK BEHAVIORS
----------------------------------------------------------------------------- */


	function links() {
	
	
/* Share Links */

	
		if ($('ul.share').length > 0) {
		
			var itemTitle = $('ul.share').parent().children('h4').text();
			$('ul.share .facebook a').attr('href', 'http://www.facebook.com/sharer.php?u=' + location.href);
			$('ul.share .delicious a').attr('href', 'http://del.icio.us/post?v=4&noui&jump=close&url=' + location.href + '&title=' + itemTitle);
			$('ul.share .stumbleupon a').attr('href', 'http://www.stumbleupon.com/submit?url=' + location.href + '&title=' + itemTitle);
			$('ul.share .digg a').attr('href', 'http://digg.com/submit?phase=2&url=' + location.href + '&title=' + itemTitle);

		}
		
		
/* Back Button */


		$('a[href=#back]').click(function() {
		
			history.go(-1);
			return false;
		
		});

	}
	
	
/* FUNCTION: FORUM
----------------------------------------------------------------------------- */


	function forum() {
	
		// EVENTS
		if ($('#events').length > 0) {
		
			$('#events > ul.content').load("/forum-events", function() {
		
				$(this).children('li:last-child').addClass('last');
		
			});
			
		}

			
	/* Unhide Content */
	
	
		$('body').ajaxStop(function() {
		
			$('#content').show();
		});
		
	}
	
	
/* FUNCTION: IE ALERT
----------------------------------------------------------------------------- */


	function ie() {
	
		var ie = (navigator.userAgent.match('MSIE 6') ? true : false);
		if (ie) $('body').prepend('<div class="alert"><h3>Please upgrade your browser</h3><p>This site no longer supports Internet Explorer 6. We recommend using <a href="http://www.google.com/chrome" target="_blank">Google Chrome</a> or <a href="http://www.getfirefox.com/" target="_blank">Mozilla Firefox</a>.</p></div>');
		
	}
	
	
/* FUNCTION: TABS
----------------------------------------------------------------------------- */

	
	function tabs() {
	
		$('.tabbed.ajax > ul.tabs').tabs({
			
			fxSlide: false
	
		});

	}
	

/* FUNCTION: TWITTER FEED
----------------------------------------------------------------------------- */

	
function twitterCallback2(twitters) {

  var statusHTML = [];
  for (var i = 0; i < twitters.length; i++){
    var username = twitters[i].user.screen_name;
    var status = twitters[i].text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
      return '<a href="'+url+'">'+url+'</a>';
    }).replace(/\B@([_a-z0-9]+)/ig, function(reply) {
      return  reply.charAt(0)+'<a href="http://twitter.com/'+reply.substring(1)+'">'+reply.substring(1)+'</a>';
    });
    statusHTML.push('<li><span>'+status+'</span> <a style="font-size:85%" href="http://twitter.com/'+username+'/statuses/'+twitters[i].id+'">'+relative_time(twitters[i].created_at)+'</a></li>');
  }
  document.getElementById('twitter_update_list').innerHTML = statusHTML.join('');

}

function relative_time(time_value) {

  var values = time_value.split(" ");
  time_value = values[1] + " " + values[2] + ", " + values[5] + " " + 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);

  if (delta < 60) {
    return 'less than a minute ago';
  } else if(delta < 120) {
    return 'about a minute ago';
  } else if(delta < (60*60)) {
    return (parseInt(delta / 60)).toString() + ' minutes ago';
  } else if(delta < (120*60)) {
    return 'about an hour ago';
  } else if(delta < (24*60*60)) {
    return 'about ' + (parseInt(delta / 3600)).toString() + ' hours ago';
  } else if(delta < (48*60*60)) {
    return '1 day ago';
  } else {
    return (parseInt(delta / 86400)).toString() + ' days ago';
  }
  
}

