function close_slider(link){
	var slider = $(link).up().up().up();
	Effect.BlindUp(slider);
	Effect.Fade(slider, { from: 1, to: 0, afterFinish: function(){slider.up().up().hide();} });
	slider.removeClassName('opened');
}



Event.observe(window, 'load', function(){
	$$('a.slider_opener').each(function(opener){
		opener.observe('click', function(){
			// the containing <tr> - need to show it
			var ntr = this.up().up().next();
			ntr.show();
			// the slider div
			var slider = ntr.down().down();
			if(!slider.hasClassName('opened')){
				slider.addClassName('opened');
				Effect.BlindDown(slider);
				Effect.Fade(slider, { from: 0, to: 1 });
			}
		});
	});

	form_to_check1 = new form_to_check();

	var form = $("validateFiltres");
	if(form != null) {
		form.observe('click', function(){
			$("filtres").submit();
		});
	}
});




var form_to_check = Class.create(Validate,{

	initialize: function($super, options){
		$super();
		this.reqire_fields = {};
		this.reqire_fields.presence_of = {};
		this.in_form = 'the_form';
		this.form =$(this.in_form);
		this.btn_submit = $('form1_submit');
		this.btn_submit.observe('click', function (_ev){
			_ev.stop();

			var optionalTelReg = /^(()|([0-9]{10}))$/;

			this.reqire_fields.presence_of = {};
			this.reqire_fields.format_of = {};
			this.reqire_fields.at_least_one_of = {};
			this.reqire_fields.confirm_mail_of = {};
			this.reqire_fields.input_file_document_type_of = {};

			this.reqire_fields.presence_of = {
				file_cv: {message: 'Merci de fournir votre CV'},
				file_motiv: {message: 'Merci de fournir votre lettre de motivation'},

				emailCandidacy: {message: 'Le format de votre adresse e-mail n\'est pas correct'},
				email2: {message: 'Le format de votre adresse e-mail n\'est pas correct'},
				prenom: {message: 'Merci de renseigner votre pr\u00E9nom'},
				nom: {message: 'Merci de renseigner votre nom'},
				civilite: {message: 'Merci de renseigner votre civilit\u00E9'}
			};
			this.reqire_fields.format_of = {
				fixe					:	{use: optionalTelReg, message: 'Un numero de t\u00E9l\u00E9phone est compos\u00E9 de 10 chiffres.'},
				portable				:	{use: optionalTelReg, message: 'Un numero de t\u00E9l\u00E9phone est compos\u00E9 de 10 chiffres.'},
				professionnel			:	{use: optionalTelReg, message: 'Un numero de t\u00E9l\u00E9phone est compos\u00E9 de 10 chiffres.'}
			};

			this.reqire_fields.at_least_one_of = {
				fixe					:	{tabElem: [$('fixe'), $('portable'), $('professionnel')], message: 'Merci de renseigner au moins un num\u00E9ro de t\u00E9l\u00E9phone'}
			}

			this.reqire_fields.confirm_mail_of = {
				email2					:	{checkWith: $('emailCandidacy'), message: 'La confirmation de l\'email a \u00E9chou\u00E9.'}
			}

			this.reqire_fields.input_file_document_type_of = {
				file_cv					:	{extensions: ['doc','rtf','pdf'], message: 'Votre CV est obligatoire.<br/> Vous ne pouvez envoyer que des fichiers .doc, .rtf, .pdf'},
				file_motiv				:	{extensions: ['doc','rtf','pdf'], message: 'Votre lettre de motivation est obligatoire.<br/> Vous ne pouvez envoyer que des fichiers .doc, .rtf, .pdf'}
			}

			this.check_form();


		}.bind(this));
	}
});


/* Ouvre la popin permettant de postuler */
function openPopin (id, date, libelle, lieu)
{
	var popinId = 'popupRecrutement';
	var popin = $(popinId);
	if(popin) {
		$('dateOffre').innerHTML = date;
		$('libelleOffre').innerHTML = libelle;
		$('lieuOffre').innerHTML = lieu;
		$('IdOffre').value = id;

		showPopin(popinId);
	}
}

function showPopin(popinId) {
	var popin = $(popinId);
	if(popin) {
		/* on cache les select ( bugIE 6) */
		if($('select1')) {
			$('select1').hide();
		}
		if($('select2')) {
			$('select2').hide();
		}

		var xy = _getScroll();
		var dimensions = popin.getDimensions();

		var _top = xy[1] + 400 - dimensions.height/2 + 'px';
		popin.setStyle({'display': 'block', 'top': _top});
		$('fog').setStyle({display: 'block'});
	}
}

/* Affiche les select qui ont �t� cach�s lors de l'ouverture de la popin ( bugIE 6) */
function displaySelect() {
	$('select1').show();
	$('select2').show();
}