55 lines
1.6 KiB
PHP
55 lines
1.6 KiB
PHP
<?php
|
|
|
|
if (!function_exists('settings')) {
|
|
function settings() {
|
|
$settings = cache()->remember('settings', 24*60, function () {
|
|
return \Modules\Setting\Entities\Setting::firstOrFail();
|
|
});
|
|
|
|
return $settings;
|
|
}
|
|
}
|
|
|
|
if (!function_exists('format_currency')) {
|
|
function format_currency($value, $format = true) {
|
|
if (!$format) {
|
|
return $value;
|
|
}
|
|
|
|
$settings = settings();
|
|
$position = $settings->default_currency_position;
|
|
$symbol = $settings->currency->symbol;
|
|
$decimal_separator = $settings->currency->decimal_separator;
|
|
$thousand_separator = $settings->currency->thousand_separator;
|
|
|
|
if ($position == 'prefix') {
|
|
$formatted_value = $symbol . number_format((float) $value, 2, $decimal_separator, $thousand_separator);
|
|
} else {
|
|
$formatted_value = number_format((float) $value, 2, $decimal_separator, $thousand_separator) . $symbol;
|
|
}
|
|
|
|
return $formatted_value;
|
|
}
|
|
}
|
|
|
|
if (!function_exists('array_merge_numeric_values')) {
|
|
function array_merge_numeric_values() {
|
|
$arrays = func_get_args();
|
|
$merged = array();
|
|
foreach ($arrays as $array) {
|
|
foreach ($array as $key => $value) {
|
|
if (!is_numeric($value)) {
|
|
continue;
|
|
}
|
|
if (!isset($merged[$key])) {
|
|
$merged[$key] = $value;
|
|
} else {
|
|
$merged[$key] += $value;
|
|
}
|
|
}
|
|
}
|
|
|
|
return $merged;
|
|
}
|
|
}
|