fix: guard non-published listings for non-owners, locale-aware number format, accept all currencies as default
This commit is contained in:
@@ -265,13 +265,21 @@ export function formatXmr(amount) {
|
||||
*/
|
||||
export function formatFiat(amount, currency) {
|
||||
const symbol = CURRENCY_SYMBOLS[currency] || currency
|
||||
|
||||
const formatted = new Intl.NumberFormat('de-DE', {
|
||||
|
||||
let locale = 'en-US'
|
||||
try {
|
||||
const stored = localStorage.getItem('locale')
|
||||
const localeMap = { de: 'de-DE', en: 'en-US', fr: 'fr-FR', it: 'it-IT', es: 'es-ES', pt: 'pt-BR', ru: 'ru-RU' }
|
||||
locale = localeMap[stored] || 'en-US'
|
||||
} catch (e) {
|
||||
// Fallback
|
||||
}
|
||||
|
||||
const formatted = new Intl.NumberFormat(locale, {
|
||||
minimumFractionDigits: 2,
|
||||
maximumFractionDigits: 2
|
||||
}).format(amount)
|
||||
|
||||
// Symbol before or after amount
|
||||
if (['EUR', 'GBP', 'USD', 'BRL'].includes(currency)) {
|
||||
return `${symbol} ${formatted}`
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user