/**
 * Copyright 2008, 2009 networkteam - creative webprojects.
 *
 **/
var NJS = NJS || {};
NJS.Center = new Class({
	Implements: Options,
	options: {
		// Minimum margin top
		minMarginTop: 0
	},
	initialize: function(element, base, options) {
		this.setOptions(options);
		var center = function () {
			var inner = $(element);
			if (!inner) return;
			var outer = $(base) || window;
			var pixel = Math.max(this.options.minMarginTop,
				(outer.getSize().y - inner.getSize().y) / 2);
			inner.setStyle('margin-top', pixel + 'px');
		}.bind(this);
		window.addEvent('resize', center);
		window.addEvent('load', center);
		window.addEvent('scroll', center);
	}
});


NJS.InputFocus = new Class({
	Implements: Options,
	options: {
		// Default class for focused input and label
		focusClass: 'focused',
		// Whether to focus on corresponding label element
		focusLabels: true
	},
	initialize: function(options) {
		var that = this;
		this.setOptions(options);
		$$('input').addEvent('focus', function(event) {
			this.addClass(that.options.focusClass);
			if(that.options.focusLabels) {
				$$("label[for='" + this.id + "']").addClass('focused');
			}
		});
		$$('input').addEvent('blur', function(event) {
			this.removeClass(that.options.focusClass);
			if(that.options.focusLabels) {
				$$("label[for='" + this.id + "']").removeClass('focused');
			}
		});
	}
});
window.addEvent('domready', function() {
	if ((navigator.userAgent.indexOf('iPhone') == -1) && (navigator.userAgent.indexOf('iPod') == -1)) {
		$$('body').addClass('jsenabled');
	}
});