(function($) {
	
	$.fn.formatCurrency = function(settings) {
		settings = jQuery.extend({
		    name: "formatCurrency",
		    useHtml: false,
		    returnVarOnly: false,
		    global: true,
		    lang: 'FR'
		}, settings);
		////console.log(this);
		var data = this.each(function() {
		    var num = "0";
		    num = $(this)[settings.useHtml ? 'html' : 'val']();
			////
			
		    num = num.replace(/\$|\.|\,/g, '');
		    if (isNaN(num))
		        num = "0";
		    sign = (num == (num = Math.abs(num)));
		    num = Math.floor(num * 100 + 0.50000000001);
		    cents = num % 100;
		    num = Math.floor(num / 100).toString();
		    if (cents < 10)
		        cents = "0" + cents;
		    for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)
		        num = num.substring(0, num.length - (4 * i + 3)) + ',' + num.substring(num.length - (4 * i + 3));
				////				
			//console.log(this.formatedcurrency);
			if(settings.lang=='FR'){
				//this.formatedcurrency =  (((sign) ? '' : '-') + num + '.' + cents) + '$';
				this.formatedcurrency =  (((sign) ? '' : '-') + num.replace(/,/,' ') ) + '$';
			}else{
				//this.formatedcurrency =  (((sign) ? '' : '-') + '$' + num + '.' + cents);
				this.formatedcurrency =  (((sign) ? '' : '-') + '$' + num );
			}
			if(settings.returnVarOnly){
				return this.formatedcurrency;
			}else{
				$(this)[settings.useHtml ? 'html' : 'val'](this.formatedcurrency);
				//console.log(this.formatedcurrency);
			}
		});
		//		//console.log(data);
		return data;
		
	};

})(jQuery);
