window.addEvent('domready', function(){
	if ($('job_search')) {
		$('job_search').getElements('input').each(function(input){
			if (input.getProperty('name') == 'keywords') {
				input.addEvent('change', function(){
					if (input.getProperty('value') == 'Keywords (Job title, etc)') {
						input.setProperty('value', '').addClass('specified');
					} else if (input.getProperty('value') == '') {
						input.setProperty('value', 'Keywords (Job title, etc)').removeClass('specified');
					}
				}).addEvent('focus', function(){
					if (input.getProperty('value') == 'Keywords (Job title, etc)') {
						input.setProperty('value', '').addClass('specified');
					}
				}).addEvent('blur', function(){
					if (input.getProperty('value') == '') {
						input.setProperty('value', 'Keywords (Job title, etc)').removeClass('specified');
					}
				});
				if (input.getProperty('value') == 'Keywords (Job title, etc)' || input.getProperty('value') == '') {
					input.setProperty('value', 'Keywords (Job title, etc)').removeClass('specified');
				}
			}
		});
		$('job_search').getElements('select').each(function(select){
			select.addEvent('change', function(){
				if (select.getProperty('value') != '') {
					select.addClass('specified');
				} else {
					select.removeClass('specified');
				}
			}).addEvent('blur', function(){
				if (select.getProperty('value') != '') {
					select.addClass('specified');
				} else {
					select.removeClass('specified');
				}
			});
			if (select.getProperty('value') != '') {
				select.addClass('specified');
			} else {
				select.removeClass('specified');
			}
		});
		var toggle = new Element('a').addClass('toggle').setProperties({
			'href': '#'
		}).addEvent('click', function(e){
			new Event(e).stop();
			if ($('job_search').hasClass('contracted')) {
				$('job_search').removeClass('contracted').addClass('expanded');
				$('job_search').getElements('select').each(function(select){
					if (select.getProperty('name') == 'type' || select.getProperty('name') == 'region' || select.getProperty('name') == 'sector') {
						select.setStyle('display', 'block');
					}
				});
				toggle.set('text', 'Reduced Search');
			} else {
				$('job_search').removeClass('expanded').addClass('contracted');
				$('job_search').getElements('select').each(function(select){
					if (select.getProperty('name') == 'type' || select.getProperty('name') == 'region' || select.getProperty('name') == 'sector') {
						select.setStyle('display', 'none').setProperty('value', '');
					}
				});
				toggle.set('text', 'Advanced Search');
			}
		}).inject($('job_search').getElement('p'));
		if ($('job_search').hasClass('contracted')) {
			$('job_search').getElements('select').each(function(select){
				if (select.getProperty('name') == 'type' || select.getProperty('name') == 'region' || select.getProperty('name') == 'sector') {
					select.setStyle('display', 'none');
				}
			});
			toggle.set('text', 'Advanced Search');
		} else {
			$('job_search').addClass('expanded');
			toggle.set('text', 'Reduced Search');
		}
	}
});
