/**
 * @author cody
 */

Date.prototype.is_within = function(seconds)
{
	/* BEGIN ADJUSTING DATE TO EASTERN TIME */
	var dTime = new Date(this+'');
	var userDate = new Date();
	//var zto = (((userDate.getTimezoneOffset() * 60) * 1000) * -1)
	//dTime.setTime(dTime.getTime() + zto);
	/* END TIME ADJUST */
	var month = dTime.getMonth() + 1;
	var day = dTime.getDate();
	var year = dTime.getFullYear();
	var hour = dTime.getHours();
	var displayHour = (hour == 0) ? '12' : (hour >= 13) ? hour - 12 : hour;
	var amPm = (hour < 12) ? 'AM' : 'PM';
	var minute = dTime.getMinutes();

	
	var posted_time = dTime.getTime();
	var current_time = userDate.getTime();
	var difference = (current_time - posted_time) / 1000;
	
	return difference < seconds;
}

Date.prototype.time_ago_in_words = function()
{

	/* BEGIN ADJUSTING DATE TO EASTERN TIME */
	var dTime = new Date(this+'')
	var userDate = new Date();
	//var zto = (((userDate.getTimezoneOffset() * 60) * 1000) * -1)
	//dTime.setTime(dTime.getTime() + zto);
	/* END TIME ADJUST */
	var month = dTime.getMonth() + 1;
	var day = dTime.getDate();
	var year = dTime.getFullYear();
	var hour = dTime.getHours();
	var displayHour = (hour == 0) ? '12' : (hour >= 13) ? hour - 12 : hour;
	var amPm = (hour < 12) ? 'AM' : 'PM';
	var minute = dTime.getMinutes();

	
	var posted_time = dTime.getTime();
	var current_time = userDate.getTime();
	var difference = (current_time - posted_time) / 1000;
	var result = '';
	
	if (difference < 0)
	{
		result = 'Just now';
	}
	else if ( difference < 60)
	{
		result = 'Less than a minute ago';
	}
	else if ( difference < 3600 )
	{
		result = Math.round(difference/60) + ' minutes ago';
	}
	else if ( difference < 86400 )
	{
		result = Math.round(difference/3600) + ' hours ago';
	}
	else if ( difference < 604800)
	{
		result = Math.round(difference/86400) + ' days ago';
	}
	else if ( difference < 2629743)
	{
		result = Math.round(difference/604800) + ' weeks ago';
	}
	else if ( difference <  31556926)
	{
		result = Math.round(difference/2629743) + ' months ago';
	}
	else
	{
		result = Math.round(difference/31556926) + ' years ago';
	}
	
	result = ' ' + result;

	
	result = result.replace(' 1 years',' 1 year');
	result = result.replace(' 1 months',' 1 month');
	result = result.replace(' 1 days',' 1 day');
	result = result.replace(' 1 hours',' 1 hour');
	result = result.replace(' 1 minutes',' 1 minute');
	result = result.replace(' 1 weeks',' 1 week');
	
	return result;
}

Date.prototype.date_time_to_local = function()
{
	var date = this;
	/* BEGIN ADJUSTING DATE TO EASTERN TIME */
	var dTime = date.getTime();
	var userDate = new Date();
	///var zto = (((userDate.getTimezoneOffset() * 60) * 1000) * -1)
	//date.setTime(dTime + zto);
	/* END TIME ADJUST */
	var month = date.getMonth() + 1;
	var day = date.getDate();
	var year = date.getFullYear();
	var hour = date.getHours();
	var displayHour = (hour == 0) ? '12' : (hour >= 13) ? hour - 12 : hour;
	var amPm = (hour < 12) ? 'AM' : 'PM';
	var minute = date.getMinutes();
	minute = (minute < 10) ? '0' + minute : minute;
	var displayDate = month + '/' + day + '/' + year + ' at ' + displayHour + ':' + minute + ' ' + amPm;
	
	return displayDate;
}