// JavaScript Document

/*--------------------------------------------------------------------------*/

Object.extend(Element, {
	getBox: function(element){
		element=$(element);
		var dim=Element.getDimensions(element);
		var pos=Position.cumulativeOffset(element);
		return {width:dim.width,height:dim.height,x:pos[0],y:pos[1]}
	}
});

Object.extend(Position, {
	getBox: function(element){
		return Element.getBox(element);
	},
	
	top:function(element,val){
		element=$(element);
		element.style.top=val;
	},
	
	left:function(element,val){
		element=$(element);
		element.style.left=val;
	},

	left:function(element,val){
		element=$(element);
		element.style.left=val;
	},

	right:function(element,val){
		element=$(element);
		element.style.right=val;
	},
	
	width:function(element,val){
		element=$(element);
		element.style.width=val;
	},

	height:function(element,val){
		element=$(element);
		element.style.height=val;
	}
});


Object.extend(Form,{
	checkMail:function(form){
		var mailReg = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		var fields=$A(Form.getElements(form));
		err=false;
		fields.each(function(el){
			if(el.getAttribute('email')=='true'){
				el.removeClassName('oblig');
				el.removeClassName('oblig_ok');
				el.__title = el.getAttribute('title');
				el.title = el.getAttribute('__title');
				if(!mailReg.test(el.value)){
					el.addClassName('oblig');
					el.title='Adresse mail non valide';
					err=true;
				}
				else
					el.addClassName('oblig_ok');
			}
		});
		return(!err);

	},
	checkOblig:function(form,oblig){
	    if(oblig=='') oblig='oblig';
		var fields=$A(Form.getElements(form));
		err=false;
		fields.each(function(el){
			if(el.getAttribute('oblig')=='true'){
				el.removeClassName('oblig');
				el.removeClassName('oblig_ok');
				el.__title = el.getAttribute('title');
				el.title = el.getAttribute('__title');
				if(el.value==''){
					el.addClassName('oblig');
					el.title='Cette donnée est obligatoire';
					err=true;
				}
				else
					el.addClassName('oblig_ok');
			}
		});
		return(!err);
	}
});

