// Original Script by Brothercake -- http://www.brothercake.com/
//** Section can be modified **
var message = "Updated:";   
var fontF = "verdana";   
var fontS = "10";   
var fontC = "#333333";  
var fontW = "normal";  
var format = "longUSend";   
var showyear = true;   
//***************************
var selector = new Array(
	'shortUK',
	'shortUS',
	'longUK',
	'longUS',
	'longUKend',
	'longUSend',
	'sentence',
	'daysUK',
	'daysUS',
	'bluntUK',
	'bluntUS',
	'sentenceUK',
	'sentenceUS',
	'biblical',
	'casual',
	'mysterious',
	'literal'
	);
var mNAMES = new Array('January',
	'February',
	'March',
	'April',
	'May',
	'June',
	'July',
	'August',
	'September',
	'October',
	'November',
	'December'
	);
var dNAMES = new Array(
	'Monday',
	'Tuesday',
	'Wednesday',
	'Thursday',
	'Friday',
	'Saturday',
	'Sunday'
	);
var units = new Array(
	'one',
	'two',
	'three',
	'four',
	'five',
	'six',
	'seven',
	'eight',
	'nine',
	'ten',
	'eleven',
	'twelve',
	'thirteen',
	'fourteen',
	'fifteen',
	'sixteen',
	'seventeen',
	'eighteen',
	'nineteen',
	'twenty'
	);
var unitsend = new Array(
	'first',
	'second',
	'third',
	'fourth',
	'fifth',
	'sixth',
	'seventh',
	'eight',
	'ninth',
	'tenth',
	'eleventh',
	'twelfth',
	'thirteenth',
	'fourteenth',
	'fifteenth',
	'sixteenth',
	'seventeenth',
	'eighteenth',
	'nineteenth',
	'twentieth',
	'thirtieth'
	);
var tens = new Array(
	'twenty',
	'thirty',
	'forty',
	'fifty',
	'sixty',
	'seventy',
	'eighty',
	'ninety'
	);
var hundred = 'hundred';
var thousand = 'thousand';
var luSTR = '';
function getMOD() {
	var dateObj = 0; var cdateObj = 0;
		 // random format selector
		if (format == 'random') {
		var rnd = Math.round(16*Math.random());
		var Yrnd = Math.round(2*Math.random());
		if (Yrnd==1) { showyear = true; } else { showyear = false; }
		format = selector[rnd];
		if (format == "casual" || format == "mysterious") { showyear = true; }
		}
	 // get last modified date
	dateObj = new Date(document.lastModified);
	 // extract date values
	var year = dateObj.getYear();
	var month = dateObj.getMonth();
	var date = dateObj.getDate();
	var day = dateObj.getDay() - 1;
	if (day<0) { day = 6; }
	 // make date endings
	var endSUF = 'th';
	if (date == 1 || date == 21 || date == 31) { endSUF = 'st'; }
	if (date == 2 || date == 22) { endSUF = 'nd'; }
	if (date == 3 || date == 23) { endSUF = 'rd'; }
	 // make sentence includes
	var of = 'of ';
	var the = 'the ';
	 // save numeric values separately
	var monthNUM = month;
	var dateNUM = date;
	monthNUM+=0;
	dateNUM+=0;
	 // convert to two-digit strings
	month+=1;
	if (month<=9) { month = '0'+month; }
	if (date<=9) { date = '0'+date; }
	 // save long year number separately
	var longyear = year;
	longyear+=0;
	 // Y2K fix
	if (year <= 2000) { year+=1900; }if (year <= 2000) { year+=100; }
	if (longyear <= 2000) { longyear+=1900; }if (longyear <= 2000) { longyear+=100; }
	if (!showyear) { year = ''; }
	 // convert year to two-digit format
	year-=2000; if(year<=9) year="0"+year;
	if (!showyear) { year = ''; }
	 // choose format and compile
	var fslash = '/'; if (!showyear) { fslash = ''; }
	if (!showyear) { longyear = ''; }
	if (format == "shortUK") {
		luSTR = message + ' ' + date + '/' + month + fslash + year;
		}
	else if (format == "shortUS") {
		luSTR = message + ' ' + month + '/' + date + fslash + year;
		}
	else if (format == "longUK" || format == "longUKend" || format == "sentence" || format == "daysUK" || format == "bluntUK" || format == "sentenceUK") {
		if (format == "longUK" || format == "bluntUK") { endSUF = ''; }
		if (format != "sentence" && format != "sentenceUK") { of = ''; }
		if (format != "sentenceUK") { the = ''; }
		var dayWORD = ''; if (format == "daysUK" || format == "bluntUK" || format == "sentenceUK") { dayWORD = dNAMES[day] + ' '; }
		luSTR = message + ' ' + dayWORD + the + dateNUM + endSUF + ' ' + of + mNAMES[monthNUM] + ' ' + longyear;
		}
	else if (format == "longUS" || format == "longUSend" || format == "daysUS" || format == "bluntUS" || format == "sentenceUS") {
		if (format == "longUS" || format == "bluntUS") { endSUF = ''; }
		if (format != "sentenceUS") { the = ''; }
		var dayWORD = ''; if (format == "daysUS" || format == "bluntUS" || format == "sentenceUS") { dayWORD = dNAMES[day] + ' '; }
		luSTR = message + ' ' + dayWORD + mNAMES[monthNUM] + ' ' + the + dateNUM + endSUF + ' ' + longyear;
		}
	else if (format == "biblical") {
		dayWORD = dNAMES[day];
		if (dateNUM<=20) {
				dateNUM = unitsend[(dateNUM-1)];
				}
		else if (dateNUM>=21 && dateNUM<=29) {
				dateNUM = dateNUM - 20;
				dateNUM = tens[0] + '-' + unitsend[(dateNUM-1)];
				}
		else if (dateNUM==30) {	dateNUM = unitsend[20]; }
		else if (dateNUM==31) { dateNUM = tens[1] + '-' + unitsend[0]; }
		else if (dateNUM>=32) { dateNUM = 'final'; }
		luSTR = message + ' ' + dayWORD + ', ' + the + dateNUM + ' day of ' + mNAMES[monthNUM];
		if (showyear) {
			luSTR+= ', in the year of Our Lord ';
			var yFIRST = ''; var ySECOND = '';
			longyear = longyear - 2000;
			if (longyear>=0 && longyear<=99) {
					yFIRST = units[1] + ' ' + thousand;
					var shortyear = longyear;
					var sDIG = shortyear % 10;
					var fDIG = (shortyear - sDIG)/10;
					if (fDIG >= 2) { fDIG = tens[(fDIG-2)]; }
					else if (fDIG == 1) { fDIG = units[(sDIG+9)]; sDIG = 0; }
					else if (fDIG == 0) { fDIG = ''; }
					if (sDIG != 0) { sDIG = units[(sDIG-1)]; }
					else { sDIG = ''; }
					var blSP = ' '; if (fDIG == 0) { blSP = ''; }
					luSTR+= yFIRST + ' and ' + fDIG + blSP + sDIG;
					}
			else if (longyear<=999) {
					var shortyear = longyear % 100;
					var midyear = longyear - shortyear;
					midyear = midyear / 1;
					var sDIG = shortyear % 10;
					var fDIG = (shortyear - sDIG)/10;
					yFIRST = tens[0] + ' ';
					yFIRST+= units[((midyear/100)-1)] + ' ' + hundred;
					if (fDIG >= 2) { fDIG = tens[(fDIG-2)]; }
					else if (fDIG == 1) { fDIG = units[(sDIG+9)]; sDIG = 0; }
					else if (fDIG == 0) { fDIG = ''; }
					if (sDIG != 0) { sDIG = units[(sDIG-1)]; }
					else { sDIG = ''; }
					var blSP = ' '; if (fDIG <= 0) { blSP = ''; }
					var andd = ' and '; if (fDIG == 0 && sDIG == 0) { andd = ''; }
					luSTR+= yFIRST + andd + fDIG + blSP + sDIG;
					}
			else if (longyear >= 1000) {
					luSTR+= 'three thousand';
					}
			}
		}
	else if (format == "casual" || format == "mysterious" || format == "literal") {
		cdateObj = new Date();
		var cyear = cdateObj.getYear();
		var cmonth = cdateObj.getMonth();
		var cdate = cdateObj.getDate();
		 // Y2K fix
		if (cyear <= 2000) { cyear+=1900; }
		var yearVAR = cyear - longyear;
		var monthVAR = cmonth - monthNUM;
		var dateVAR = cdate - dateNUM;
		if (format == "casual") {
			var comments = new Array(
				'at some point in the future ... strangely enough',
				'today',
				'yesterday',
				'a few days ago',
				'last week',
				'earlier this month',
				'last month',
				'the month before last',
				'a few months ago',
				'last year'
				);
		} else {
			var comments = new Array(
				'in the morrow twinkling of an eternal neverness',
				'in the sacred space of our nowness',
				'when the bird flew in anticipation of this',
				'as the silver sky did wane in a fewness',
				'a mystic cycle of rotations fore',
				'when the two suns were high and there were dogs',
				'when the moon was as it is',
				'many a time and chance ago',
				'when the sun was as far as the eagle sees today',
				'in a pleasant and hazy nostalgia'
				);
		}
		if (format != "literal") {
			if (cyear < longyear) { luSTR = message + ' ' + comments[0]; }
			if (cyear == longyear) {
				if (cmonth < monthNUM) { luSTR = message + ' ' + comments[0]; }
				if (cmonth == monthNUM) {
					if (cdate < dateNUM) { luSTR = message + ' ' + comments[0]; }
					if (cdate == dateNUM) { luSTR = message + ' ' + comments[1]; }
					if (dateVAR == 1) { luSTR = message + ' ' + comments[2]; }
					if (dateVAR > 1 && dateVAR < 8) { luSTR = message + ' ' + comments[3]; }
					if (dateVAR >= 8  && dateVAR < 15 && monthVAR == 0) { luSTR = message + ' ' + comments[4]; }
					if (dateVAR >= 15  && monthVAR == 0) { luSTR = message + ' ' + comments[5]; }
					}
					else {
					if (monthVAR == 1 && yearVAR == 0) { luSTR = message + ' ' + comments[6]; }
					if (monthVAR == 2 && yearVAR == 0) { luSTR = message + ' ' + comments[7]; }
					if (monthVAR >= 3) { luSTR = message + ' ' + comments[8]; }
					}
				}
				else if (cyear > longyear) {
				luSTR = message + ' ' + comments[9];
				}
			} else {
			var ss = 's';
			var millisecsAGO = 0; var secsAGO = 0;
			var minsAGO = 0; var hoursAGO = 0;
			var daysAGO = 0; var weeksAGO = 0;
			millisecsAGO = cdateObj.getTime() - dateObj.getTime();
			millisecsAGO = millisecsAGO * 1;
			secsAGO = millisecsAGO / 1000;
			secsAGO = Math.round(secsAGO);
			millisecsAGO = millisecsAGO - (secsAGO * 1000);
			if (millisecsAGO <=0) { millisecsAGO = 0; }
			if (secsAGO >= 60) {
				minsAGO = Math.round(secsAGO / 60);
				secsAGO = secsAGO % 60;
				}
			if (minsAGO >= 60) {
				hoursAGO = Math.round(minsAGO / 60);
				minsAGO = minsAGO % 60;
				}
			if (hoursAGO >= 24) {
				daysAGO = Math.round(hoursAGO / 24);
				hoursAGO = hoursAGO % 24;
				}
			if (daysAGO >= 7) {
				weeksAGO = Math.round(daysAGO / 7);
				daysAGO = daysAGO % 7;
				}
			luSTR = message + ' ';
			if (weeksAGO != 0) {
				if (weeksAGO == 1) { ss = ''; } else { ss = 's'; }
				luSTR+= weeksAGO + ' week' + ss + ' ';
				}
			if (daysAGO != 0) {
				if (daysAGO == 1) { ss = ''; } else { ss = 's'; }
				luSTR+= daysAGO + ' day' + ss + ' ';
				}
			if (hoursAGO != 0) {
				if (hoursAGO == 1) { ss = ''; } else { ss = 's'; }
				luSTR+= hoursAGO + ' hour' + ss + ' ';
				}
			if (minsAGO != 0) {
				if (minsAGO == 1) { ss = ''; } else { ss = 's'; }
				luSTR+= minsAGO + ' minute' + ss + ' and ';
				}
			luSTR+= secsAGO + '.' + millisecsAGO + ' seconds ago';
			}
		}
	}
 // write it to the page
function writeMOD() {
var bTAG = ''; if (fontW == "bold") { bTAG = '<B>'; }
document.write('<font face="' + fontF + '" color="' + fontC + '"><span style="font-family:' + fontF + '\;font-size:' + fontS + 'px\;color:' + fontC + '\;">' + bTAG + luSTR + '</span></font>');
dateObj = 0; cdateObj = 0;
}
getMOD();
writeMOD();