function LimitToDecimal(field) {
	
	var val = field.value;
	val = val.replace(/,/g, '.');
	val = val.replace(/[^0-9\.]/g, '');
	field.value = val;
	
}


function comaField(champ) {
	var valeur = champ.value;
	pos = valeur.indexOf(",");
	if (pos >= 0) {
		valeur = valeur.substr(0, pos) + "." + valeur.substr(pos+1);
	}
	champ.value = valeur;
}

function Post(url, args) {
	var id = 'frmpostid' + Math.random();
	var html = '<form action="'+url+'" method="post" id="'+id+'">';
	for (key in args) {
		html += '<input type="hidden" name="'+key+'" value="'+args[key]+'" />';
	}
	html += '</form>';
	$('body').append(html);
	document.getElementById(id).submit();
}

function Get(url, args){
	url += "?";
	for (key in args)	url += "&" + key + "=" + args[key];
	document.location = url;
}

function submitForm() {
	
    var jQueryObject = $(this);               
    var jQueryParentObject = $(this).parent();//l'element HTML declencheur doit etre seul dans sa balise parente
	var method = jQueryObject.attr("method") != undefined ? jQueryObject.attr("method"): "POST";
	var action = jQueryObject.attr("action");
	var confirmStr = jQueryObject.attr("confirm");
	var ajax = jQueryObject.attr('ajax');
	eval("var fields = " + jQueryObject.attr("fields"));
	
	if (confirmStr) if (!confirm(confirmStr)) return false;

	jQueryObject.trigger('beforeformpost');
	setLoading(jQueryObject.parents('td:first'), "", true);
	
	if(ajax != undefined){
		switch(method){
			case "POST":												
			case "post":												
				$.post(action, fields, function(data){
					doneLoading(jQueryParentObject);
					jQueryParentObject.html(data);
				});					
				break;
			case "GET":
			case "get":
				$.get(action, fields, function(data){
					doneLoading(jQueryParentObject);
					jQueryParentObject.html(data);
				});
				break;
		}
	}else{			
		switch(method){
			case "POST":
			case "post":
				Post(action, fields);
				break;
			case "GET":
			case "get":
				Get(action, fields);
				break;
		}						
	}			

}

function changeOnEnter(jQueryObject){
	jQueryObject.find("input[type=text]").keydown(function(key){
		if(key.keyCode == 13 && $(this).attr("changeOnEnter") != undefined)	$(this).trigger('change');
    });
}

$(function() {
	afterLoad($('body'));
});

function afterLoad(jQueryObject) {
	
	jQueryObject.find("a.form").click(submitForm);
	jQueryObject.find("input[type=text].form").change(submitForm);
	jQueryObject.find("input.form").not("[type=text]").click(submitForm);    
	jQueryObject.find("select.form").change(submitForm);
	
	/*
	jQueryObject.find('.date, .datepicker').datepicker({
        buttonText: 'Calendrier',
        buttonImage: 'img/cupertino/calendar.gif',
        buttonImageOnly: true,
        showOn: 'both',
        firstDay: 1,
        yearRange: '1900:2010'
    });
    */

	jQueryObject.find('a.lightbox').each(function() {
    	$(this).lightBox({imageLoading:'/img/ajax-loader-FFFFFF.gif',imageBtnClose:'/img/fermer-zoom.gif', imageBtnPrev:'', imageBtnNext:'', keyToPrev:'', keyToNext:'', keyToClose:''});
    });
	
	jQueryObject.find('[tip]').tooltip({
	    bodyHandler: function() {
	        return $(this).attr('tip'); 
	    }, 
  		showURL: false
	});

	jQueryObject.find('a.thickbox').each(function() {
	    var href = $(this).attr('href');
	    tb_show(null, href, false);
	    return false;
	});

}


