update multicurrencies functionality on global level

This commit is contained in:
dwindown
2025-08-25 19:55:38 +07:00
parent 38b6b5cddb
commit ccb2b1aea1
21 changed files with 1240 additions and 476 deletions

View File

@@ -33,6 +33,71 @@ function formipay_currency_array() {
}
function formipay_is_multi_currency_active() {
$formipay_settings = get_option('formipay_settings');
$is_active = $formipay_settings['enable_multicurrency'];
return (bool) $is_active;
}
function formipay_default_currency($return='raw') {
$formipay_settings = get_option('formipay_settings');
$default_currency = $formipay_settings['default_currency'];
switch ($return) {
case 'symbol':
$output = formipay_get_currency_data_by_value($default_currency, 'symbol');
break;
case 'title':
$output = formipay_get_currency_data_by_value($default_currency, 'title');
break;
case 'decimal_digits':
$output = $formipay_settings['default_currency_decimal_digits'];
break;
case 'decimal_symbol':
$output = $formipay_settings['default_currency_decimal_symbol'];
break;
case 'thousand_separator':
$output = $formipay_settings['default_currency_thousand_separator'];
break;
default:
$output = $formipay_settings['default_currency'];
break;
}
return $output;
}
function formipay_global_currency_options() {
$formipay_settings = get_option('formipay_settings');
// $currencies = (false !== boolval($formipay_settings['enable_multicurrency'])) ? formipay_default_currency() : [];
$currencies = [];
if(false !== boolval($formipay_settings['enable_multicurrency']) && !empty($formipay_settings['multicurrencies'])) {
foreach($formipay_settings['multicurrencies'] as $currency){
$currency_value = $currency['currency'];
$currency_label = formipay_get_currency_data_by_value($currency_value, 'title');
$currencies[$currency_value] = $currency_label;
}
}
// if(empty($currencies)){
// $currencies[formipay_default_currency()] = formipay_default_currency('title');
// }
return $currencies;
}
function formipay_country_array() {
$json = file_get_contents(FORMIPAY_PATH . 'admin/assets/json/country.json');
@@ -137,42 +202,6 @@ function formipay_get_currency_data_by_value($value, $data='') {
}
function formipay_default_currency($return='raw') {
$formipay_settings = get_option('formipay_settings');
$default_currency = $formipay_settings['payment_default_currency'];
switch ($return) {
case 'symbol':
$output = formipay_get_currency_data_by_value($default_currency, 'symbol');
break;
case 'title':
$output = formipay_get_currency_data_by_value($default_currency, 'title');
break;
case 'decimal_digits':
$output = $formipay_settings['payment_default_currency_decimal_digits'];
break;
case 'decimal_symbol':
$output = $formipay_settings['payment_default_currency_decimal_symbol'];
break;
case 'thousand_separator':
$output = $formipay_settings['payment_default_currency_thousand_separator'];
break;
default:
$output = $formipay_settings['payment_default_currency'];
break;
}
return $output;
}
function formipay_get_post_meta($post_id, $metakey) {
$value = get_post_meta($post_id, $metakey, true);
@@ -875,11 +904,4 @@ function formipay_thankyoupage_allowed_html() {
'td' => [],
'br' => []
];
}
// add_action('admin_notices', function() {
// global $current_screen;
// echo '<pre>';
// print_r($current_screen);
// echo '</pre>';
// });
}