function formatNumberObj(field, decimal)    {     
    field.value = formatNumberValue(field.value, decimal);    
}        

function formatNumberValue(value, decimal)    {     
    if (/\.[0-9][0-9]?$/.test(value))
        value = value.toString().replace(/\./,",");
    var num = new NumberFormat();     
    var decimalPlaces = '-1';          
    if(parseInt(decimal) > 0)      
        decimalPlaces = decimal;           
    num.setInputDecimal(',');     
    num.setNumber(value);      
    num.setPlaces(decimalPlaces);     
    num.setCurrency(false);     
    num.setSeparators(true, '.', ',');     
    return num.toFormatted();    
}

function formatNumberFromRaw(value, decimal)    {     
    /* is it really a raw number? */
    if (/,/.test(value))
        return value;
    var num = new NumberFormat();     
    var decimalPlaces = '-1';          
    if(parseInt(decimal) > 0)      
        decimalPlaces = decimal;           
    num.setInputDecimal('.');     
    num.setNumber(value);      
    num.setPlaces(decimalPlaces);     
    num.setCurrency(false);     
    num.setSeparators(true, '.', ',');     
    return num.toFormatted();    
}

function getNumberFromFormat(value) {
    return (value+"").replace(/\./g,"").replace(/,/,".");
}
