var Invendium = new function () {
	
	/*
	 * UI phasers.
	 */
	var temp = document.createElement ( "temp" );
	var dashes = "<em>\\\\</em>";
	var dimses = "<strong><i></i><i></i></strong>";
	var arrows = "<em>»</em>";
	
	/*
	 * Blasting away.
	 */
	this.handleEvent = function () {
		
		/*
		 * Google Analytics.
		 */
		window._gaq = window._gaq || [];
		_gaq.push ([ "_setAccount", "UA-391926-1" ]);
		_gaq.push ([ "_trackPageview" ]);
		
		( function() {
			var ga = document.createElement ( "script" ); ga.type = "text/javascript"; ga.async = true;
			ga.src = ( "https:" == document.location.protocol ? "https://ssl" : "http://www" ) + ".google-analytics.com/ga.js";
			( document.getElementsByTagName ( "head" )[ 0 ] || document.getElementsByTagName ( "body" )[ 0 ]).appendChild( ga );
		})();
	
		/*
		 * Navigation.
		 */
		var nav = document.getElementById ( "nav" );
		var spans = nav.getElementsByTagName ( "span" );
		var span, i = 0;
		while (( span = spans.item ( i++ )) != null ) {
			span.innerHTML = "<u>" + span.firstChild.data + "</u>" + dashes;
		}
		
		/*
		 * Selected navigation.
		 */
		var markup = dimses;
		var link = document.getElementById ( "selected" );
		if ( link != null ) {
			temp.innerHTML = markup;
			link.appendChild ( temp.firstChild );
			link.className = "injected";
		}
		
		/*  
		 * Spot headings.
		 */
		temp.innerHTML = dashes;
		var headings = document.getElementsByTagName ( "h2" );
		var heading, i = 0; 
		while (( heading = headings.item ( i++ )) != null ) {
			if ( heading.parentNode.className.indexOf ( "spot" ) >-1 && heading.className.indexOf ( "nav" ) ==-1 ) {
				heading.insertBefore ( temp.firstChild.cloneNode ( true ), heading.firstChild );
			}
		}
		
		/*
		 * Nav lists.
		 */
		temp.innerHTML = arrows;
		var uls = document.getElementsByTagName ( "ul" );
		var ul, i = 0;
		while (( ul = uls.item ( i++ )) != null ) {
			if ( ul.className.indexOf ( "nl" ) >-1 ) {
				var lis = ul.getElementsByTagName ( "li" );
				var li, j = 0;
				while (( li = lis.item ( j++ )) != null ) {
					li.insertBefore ( temp.firstChild.cloneNode ( true ), li.firstChild )
				}
			}
		}
	}
}

/*
 * Setup stuff. Note that IE is handled by Assitant.js
 */
if ( !document.all ) {
	window.addEventListener ( "DOMContentLoaded", Invendium, false );
}
