if (window.addEventListener) window.addEventListener( 'load', prettyTimeLoop, false );
else if (window.attachEvent) window.attachEvent( 'onload', prettyTimeLoop );

if (!document.getElementsByClassName) document.getElementsByClassName = function(cl) {
	var elements = [];
	var cl_re = new RegExp('\\b'+cl+'\\b');
	for (var i = 0; i < this.all.length; ++i) if (cl_re.test(this.all[i].className)) elements.push(this.all[i]);
	return elements;
};

function prettyTime(ts) {
	var diff = ( new Date() ) / 1e3 - ts,
		u = [ "seconds", "minutes", "hours", "days", "weeks", "months", "years" ],
		s = [ 1, 60, 60, 24, 7, 4.333, 12, 1e9],
		tense = ( diff<0 ? " from now" : " ago" );
	diff = Math.abs(diff);
	if (diff<120) return "just now";
	for (var i in s) if ( (diff/=s[i]) < 2 ) return ~~(diff*=s[i])+" "+u[i-1]+tense;
}

function prettyTimeLoop() {
	var el = document.getElementsByClassName("blogdate");
	for (var i = 0; i < el.length; ++i) {
		el[i].title = el[i].innerHTML.replace(/<[^>]+>/g, " ").replace(/\s+/g, " ");
		el[i].innerHTML = prettyTime(el[i].id);
	}
}

