//
// Scripts for Hireways.
//
// @author Tom Ryder <tom@prodev.co.nz>
// @copyright 2009 Professional Development
//

// Declare setup function.
var setup;

// Define setup function.
setup = function () {

	// Declare setup inner functions.
	var hover, focus;

	// Automatic hover class setup to compensate for IE's stupidities.
	hover = function () {
		var elements;
		elements = $$('a,input,li'); // Resist the temptation to just make this all elements; too slow.
		elements.each(function (element) {
			element.onmouseover = function () { // For some reason this works better in IE than Element.addEvent().
				this.addClass('hover');
			};
			element.onmouseout = function () { // As above.
				this.removeClass('hover');
			};
		});
	};

	// Focus class setup for the same reason.
	focus = function () {
		var elements;
		elements = $$('input,select'); // Any element you want to have the focus class for.
		elements.addEvent('focus', function () {
			this.addClass('focus');
		});
		elements.addEvent('blur', function () {
			this.removeClass('focus');
		});
	};

	// Sublist class setup for lists.
	sublist = function () {
		var elements;
		elements = $$('li');
		elements.each(function (element) {
			var sublist;
			sublist = element.getElement('ul');
			if (sublist) {
				element.addClass('sublist');
			}
		});
	};

	// Setup hover and focus functions.
	hover();
	focus();
	sublist();

};

// Run setup function as soon as the DOM is ready.
window.addEvent('domready', function () {
	setup();
});

