var fi = {};

var Careers = Class.create({
	
	initialize: function() {
		this.addListeners();
		this.setupForm();
	},

	addListeners: function() {
		$('careers_position_dropdown').observe('change', function(event) {
			$('careers_position_dropdown_label').update(this.value);
		});

		$('careers_position_dropdown').observe('mouseover', function(event) {
			$('careers_position_dropdown_wrapper').addClassName('dropdown_over');
		});

		$('careers_position_dropdown').observe('mouseout', function(event) {
			$('careers_position_dropdown_wrapper').removeClassName('dropdown_over');
		});

		$('careers_form_message').observe('focus', this.setFocus);
		$('careers_form_message').observe('blur', this.removeFocus);
	},

	setupForm: function() {
		var inputs = $$("textarea#careers_form_message");
		var defaultText = new Array();
		inputs.each(function(item, index){
			defaultText.push($F(item));
			Event.observe(item, 'focus', function(){
				if ($F(item) == defaultText[index]) {
					item.clear();
				}
			}.bindAsEventListener(this));
			Event.observe(item, 'blur', function(){
				if (item.present() == false) {
					item.value = defaultText[index];
				}
			}.bindAsEventListener(this))
		}.bind(this));
	},


	setFocus:function() {
		Element.addClassName(this.parentNode.parentNode, 'focused');
	},

	removeFocus:function() {
		Element.removeClassName(this.parentNode.parentNode, 'focused');
	},

	submitForm: function(form_id) {
		$(form_id).request({
			onComplete: function(){
				fi.careers.showConfirmation();
			}
		});
	},

	showConfirmation: function() {
		$('careers_form').hide();
		$('careers_apply_now').hide();
		$('careers_form_confirmation').show();		
	}	
});


function initpage(){
	var numOfTsEntries = 8;
	fi.base = new Base(numOfTsEntries);
	fi.careers = new Careers();
	fi.formValidator = new FormValidator();
}

document.observe("dom:loaded",initpage);
