/* Fonctions javascript du site groupe-lauriere.com */

/* Initialisation de la page */
window.addEvent('domready',function(){
	/* Menu */
	new Menu('menu');
	/* Champs date */
	$$(".date").each(function(element){
		element.setAttribute('autocomplete','off');
		element.onclick = function (event){DatePicker(this,event?event:window.event)};
	});
	/* Accueil : Liens sur les bandeaux et actualites */
	var accueil = $('accueil');
	if (accueil){
		accueil.getElements('ul.bandeaux li,div.actualite').each(function(element){
			var lien = element.getElement('a');
			element.addEvent('click',function(event){
				event.stop();
				location.href=lien.getAttribute('href');
			});
		});
	}
	/* Ouverture/fermeture du formulaire de contact */
	var contact = {form : $('contact-form'), buttons : $$('a[href$=contact-form]')};
	if (contact.buttons.length>0 && contact.form){
		contact.buttons.addEvent('click',function(event){
			event.stop();
			if (contact.form.hasClass('closed')){
				contact.form.morph('.opened');
			}else{
				contact.form.morph('.closed');
			}
			contact.form.getElement('a.close').addEvent('click',function(event){
				event.stop();
				contact.form.morph('.closed');
			});
		});
	}
	/* Photos (dans les Actualités) */
	var photos = {ul : $$('ul.photos'), img : $$('img.photo')};
	if (photos.ul.length>0 && photos.ul.length==photos.img.length){
		photos.ul.each(function(ul,i){
			ul.getElements('li a').each(function(lien){
				lien.addEvent('click',function(event){
					event.stop();
					photos.img[i].setAttribute('src',lien.getAttribute('href'));
				});
			});
		});
	}
	/* Editeurs textes */
	if (typeof('nicEditor')!='undefined'){
		$$('textarea.editable').each(function(textarea){
			var div = new Element('div',{'class':'editable'});
			textarea.getParent().grab(div);
			div.grab(textarea);
			new nicEditor().panelInstance(textarea.id);
		});
	}
	/* Liens pour ouvrir des popups */
	$$('a[rel^=popup]').each(function(lien){
		lien.addEvent('click',function(event){
			var dim = lien.getAttribute('rel').match(/popup\[([0-9]+)x([0-9]+)\]/);
			event.stop();
			document.popup = window.open(lien.getAttribute('href'),'popup','width='+dim[1]+',height='+dim[2]);
			document.popup.focus();
		});
	});
	/* Tableaux triables */
	$$('table.sortable').each(function(table){
		new HtmlTable(table, {
			sortIndex: null,
			sortable: true
		});
	});
	/* Validation des formulaires */
	MooTools.lang.setLanguage("fr-FR");
	$$('form').each(function(form){
		form.errors = '';
		new Form.Validator(form, {
				useTitles: true,
				onElementValidate: function(isValid, field, className, warn){
					var validator = this.getValidator(className);
					if (!isValid && validator.getError(field)){
							form.errors+= '- '+field.name+' : '+validator.getError(field)+'\n';
					}
				},
				onFormValidate: function(passed, myform, event) {
						if (!passed){
							alert(form.errors);
							form.errors = '';
						}
						event.preventDefault();
				}
		});
	});
});
