$.format = {
	
	money: function(money, addSymbol) {
		var symbol = (addSymbol===false) ? '' : '&#8364;';
		return $().number_format(money, {numberOfDecimals: 2, decimalSeparator: ',', thousandSeparator: '.', symbol: symbol});
	},
	
	phone: function(number, spaces) {

		if(number.substr(0, 2) == '00') {
			number = number.substring(2);
		}

		if(spaces) {
			var tmp = '';
			for(var i=0;i<12;i++) {
				tmp += number.charAt(i);
				if(i==1||i==3||i==5|i==7)	tmp += ' ';
			}
			number = tmp;
		}
		
		return number;
	},

	date: function(timestamp) {
		return $.strftime('%d-%m-%Y', new Date(timestamp));
	},
	
	time: function(timestamp) {
		return $.strftime('%H:%M', new Date(timestamp));
	},
		
	mysql_to_date: function(mysql_timestamp) {
		var regex	= /^([0-9]{2,4})-([0-1][0-9])-([0-3][0-9]) (?:([0-2][0-9]):([0-5][0-9]):([0-5][0-9]))?$/;
    var parts	= mysql_timestamp.replace(regex,"$1 $2 $3 $4 $5 $6").split(' ');
    var js_timestamp = new Date(parts[0],parts[1]-1,parts[2],parts[3],parts[4],parts[5]);
		return $.strftime('%d-%m-%Y', new Date(js_timestamp));
	}, 
	
	mysql_to_time: function(mysql_timestamp) {
		var regex	= /^([0-9]{2,4})-([0-1][0-9])-([0-3][0-9]) (?:([0-2][0-9]):([0-5][0-9]):([0-5][0-9]))?$/;
    var parts	= mysql_timestamp.replace(regex,"$1 $2 $3 $4 $5 $6").split(' ');
    var js_timestamp = new Date(parts[0],parts[1]-1,parts[2],parts[3],parts[4],parts[5]);
		return $.strftime('%H:%M', new Date(js_timestamp));
	}, 

	mysql_to_datetime: function(mysql_timestamp) {
		var regex	= /^([0-9]{2,4})-([0-1][0-9])-([0-3][0-9]) (?:([0-2][0-9]):([0-5][0-9]):([0-5][0-9]))?$/;
    var parts	= mysql_timestamp.replace(regex,"$1 $2 $3 $4 $5 $6").split(' ');
    var js_timestamp = new Date(parts[0],parts[1]-1,parts[2],parts[3],parts[4],parts[5]);
		return $.strftime('%d-%m-%Y %H:%M', new Date(js_timestamp));
	}, 
	
	clock: function(sec) {
		var t = parseInt(sec, 10);
	  var h = Math.floor(t / 3600);
	  t %= 3600;
	  var m = Math.floor(t / 60);
	  var s = Math.floor(t % 60);
	  
	  if(h<10) h = '0' + h;
	  if(m<10) m = '0' + m;
	  if(s<10) s = '0' + s;
	    
	  return h + ':' + m + ':' + s;
	},

	readable_list: function(items, I18n) {		
		var defaults = { seperator: ',', end: '.', and:"&", no_results: "no one"};
		var language = $.extend(defaults, I18n);
				
		var string	= "";
		var count 	= 0;

		for(var i in items) {
			string += items[i];
			if(count == items.length - 2)	{ string += ' ' + language.and + ' ' 	}
			if(count  < items.length - 2)	{ string += language.seperator + ' '	}
			count ++;
		}
		
		if(count==0) { string = language.no_results + language.end } else { string += language.end }
		
		return string;
	}
};
