From 7529daab3e75e9fcf0ddeefa11c0af06de9fefa8 Mon Sep 17 00:00:00 2001 From: Matt Bannon Date: Thu, 16 Nov 2023 17:03:29 +1100 Subject: [PATCH] Format currency in users locale --- endpoints/subscriptions/get.php | 8 +++--- includes/currency_formatter.php | 20 +++++++++++++++ includes/header.php | 1 + includes/list_subscriptions.php | 4 +-- index.php | 7 +++--- scripts/stats.js | 4 +-- stats.php | 44 ++++++++------------------------- 7 files changed, 42 insertions(+), 46 deletions(-) create mode 100644 includes/currency_formatter.php diff --git a/endpoints/subscriptions/get.php b/endpoints/subscriptions/get.php index 5c47754..bb6f256 100644 --- a/endpoints/subscriptions/get.php +++ b/endpoints/subscriptions/get.php @@ -2,6 +2,7 @@ require_once '../../includes/connect_endpoint.php'; session_start(); + require_once '../../includes/currency_formatter.php'; require_once '../../includes/getdbkeys.php'; include_once '../../includes/list_subscriptions.php'; @@ -44,7 +45,7 @@ $frequency = $subscription['frequency']; $print[$id]['billing_cycle'] = getBillingCycle($cycle, $frequency); $paymentMethodId = $subscription['payment_method_id']; - $print[$id]['currency'] = $currencies[$subscription['currency_id']]['symbol']; + $print[$id]['currency_code'] = $currencies[$subscription['currency_id']]['code']; $currencyId = $subscription['currency_id']; $print[$id]['next_payment'] = date('M d, Y', strtotime($subscription['next_payment'])); $print[$id]['payment_method_icon'] = "images/uploads/icons/" . $payment_methods[$paymentMethodId]['icon']; @@ -55,16 +56,15 @@ if (isset($_COOKIE['convertCurrency']) && $_COOKIE['convertCurrency'] === 'true' && $currencyId != $mainCurrencyId) { $print[$id]['price'] = getPriceConverted($print[$id]['price'], $currencyId, $db); - $print[$id]['currency'] = $currencies[$mainCurrencyId]['symbol']; + $print[$id]['currency_code'] = $currencies[$mainCurrencyId]['code']; } if (isset($_COOKIE['showMonthlyPrice']) && $_COOKIE['showMonthlyPrice'] === 'true') { $print[$id]['price'] = getPricePerMonth($cycle, $frequency, $print[$id]['price']); } - $print[$id]['price'] = number_format($print[$id]['price'], 2, ".", ""); } if (isset($print)) { - printSubscriptons($print, $sort, $categories, $members); + printSubscriptions($print, $sort, $categories, $members); } if (count($subscriptions) == 0) { diff --git a/includes/currency_formatter.php b/includes/currency_formatter.php new file mode 100644 index 0000000..a1b3268 --- /dev/null +++ b/includes/currency_formatter.php @@ -0,0 +1,20 @@ +formatCurrency($amount, $currency); + } +} diff --git a/includes/header.php b/includes/header.php index f81e87d..5fa2a26 100644 --- a/includes/header.php +++ b/includes/header.php @@ -2,6 +2,7 @@ require_once 'connect.php'; require_once 'checkuser.php'; require_once 'checksession.php'; + require_once 'currency_formatter.php'; if ($userCount == 0) { $db->close(); diff --git a/includes/list_subscriptions.php b/includes/list_subscriptions.php index a8893cc..697a262 100644 --- a/includes/list_subscriptions.php +++ b/includes/list_subscriptions.php @@ -54,7 +54,7 @@ } } - function printSubscriptons($subscriptions, $sort, $categories, $members) { + function printSubscriptions($subscriptions, $sort, $categories, $members) { if ($sort === "price") { usort($subscriptions, function($a, $b) { return $a['price'] < $b['price'] ? 1 : -1; @@ -89,7 +89,7 @@ - +