/**
*	Description: 	Clear content for specific inputfields on focus
*					Reset on blur if nothing has changed.
*
*					Important!!! Inputfields must have an id to reset to
*					the default-value.
*/
var inputDefaultValues = {};

function prepareForms() {
	var inputfields = $$("input.reset");
	if ( inputfields ) {
		inputfields.each( function( field ) {

				// Save defaultvalues.
				inputDefaultValues[ field.id ] = field.value;
	
				field.onfocus = function() {
					if ( this.value == "" || this.value == inputDefaultValues[ field.id ] ) {
						this.value = "";
					}
				};
				
				field.onblur = function() {
					if ( ! field.id == "" && this.value == "" ) {
						this.value = inputDefaultValues[ field.id ];
					}
				};
			}
		);
	}
}


/**
*	Description: 	Highlight table rows on hover.
*
*/
function prepareTables() {
	
	// Select 
	var trs = $$("table.list tbody tr");
	
	
	if ( trs ) {
		trs.each( function( tr ) {

				var tableclass = tr.parentNode.parentNode.className;
				var links = tr.getElementsByTagName("a");

				if ( links.length > 0 ){
					if ( links.length == 1 && tableclass.indexOf("nolink") == -1 ) {
						tr.onclick = function() {
							window.location.href = links[0];
						};
						
						tr.onmouseover = function() {
							this.className += " fixhover";
							this.className += " link";
							return false;
						};
					} else {
						tr.onmouseover = function() {
							this.className += " fixhover";
							return false;
						};
					}
					
					tr.onmouseout = function() {
						//this.className = this.className.replace( new RegExp(" fixhover"), "" );
						this.className = this.className.indexOf("booked") != -1 ? "booked" : "";
						return false;
					};
				}
			}
		);
	}
}



/**
*	Description: 	evaluates all links on page, and assigns special behaviour to those that need it.
*
*/ 
function prepareLinks() {
	var links = $$("a");
	
	// find all pdf links
	var pdflinks = links.findAll(
		function( link ) { return link.rel == "pdf" }
	);
	
	// mark pdflinks with classname and make sure they open in a new window
	pdflinks.each(
		function( link ) {
			link.target = "_blank";
			Element.addClassName( link, "pdf" );
		}
	);
	
	// find alle word-documents.
	var wordlinks = links.findAll(
		function( link ) { return link.rel == "word" }
	);
	
	wordlinks.each(
		function( link ) {
			link.target = "_blank";
			Element.addClassName( link, "word" );
		}
	);
	
}

function prepareCufon () {
	Cufon.replace('h1', { fontFamily: 'semler', hover: true });

}


addInitEvent( prepareCufon );
addInitEvent( prepareLinks );
addInitEvent( prepareForms );
