From e03abc1a64c92cdafaaba90900c9e2c224e380ba Mon Sep 17 00:00:00 2001 From: Nabeel Shahzad Date: Wed, 28 Feb 2018 13:54:14 -0600 Subject: [PATCH] Moved away from the phpmoney library since it requires intl extension --- app/Services/FinanceService.php | 3 +- app/Support/Money.php | 45 +- composer.json | 2 +- composer.lock | 338 +++-- config/money.php | 1808 +++++++++++++++++++++++++ config/phpvms.php | 3 +- modules/Installer/Config/config.php | 1 - resources/stubs/installer/config.stub | 3 +- 8 files changed, 1999 insertions(+), 204 deletions(-) create mode 100644 config/money.php diff --git a/app/Services/FinanceService.php b/app/Services/FinanceService.php index d7aa7de9..efdde1a4 100644 --- a/app/Services/FinanceService.php +++ b/app/Services/FinanceService.php @@ -71,8 +71,9 @@ class FinanceService extends BaseService * Get the user's payment amount for a PIREP * @param Pirep $pirep * @return Money - * @throws \Money\Exception\UnknownCurrencyException + * @throws \UnexpectedValueException * @throws \InvalidArgumentException + * @throws \Money\Exception\UnknownCurrencyException */ public function getPilotPilotPay(Pirep $pirep) { diff --git a/app/Support/Money.php b/app/Support/Money.php index 77e453ce..6dd7ecef 100644 --- a/app/Support/Money.php +++ b/app/Support/Money.php @@ -5,10 +5,8 @@ namespace App\Support; -use Money\Currencies\ISOCurrencies; -use Money\Currency; -use Money\Formatter\DecimalMoneyFormatter; -use Money\Money as MoneyBase; +use Akaunting\Money\Currency; +use Akaunting\Money\Money as MoneyBase; /** * Compositional wrapper to MoneyPHP with some helpers @@ -25,6 +23,7 @@ class Money /** * @param $amount * @return MoneyBase + * @throws \UnexpectedValueException * @throws \InvalidArgumentException */ public static function create($amount) @@ -36,20 +35,16 @@ class Money * Convert a whole unit into it's subunit, e,g: dollar to cents * @param $amount * @return float|int - * @throws \Money\Exception\UnknownCurrencyException */ public static function convertToSubunit($amount) { - if (!self::$subunit_multiplier) { - self::$iso_currencies = new ISOCurrencies(); - static::$subunit_multiplier = 10 ** self::$iso_currencies->subunitFor(static::currency()); - } - - return $amount * static::$subunit_multiplier; + $currency = config('phpvms.currency'); + return $amount * config('money.'.$currency.'.subunit'); } /** * @return Currency + * @throws \OutOfBoundsException */ public static function currency() { @@ -59,7 +54,7 @@ class Money /** * Money constructor. * @param $amount - * @throws \Money\Exception\UnknownCurrencyException + * @throws \UnexpectedValueException * @throws \InvalidArgumentException */ public function __construct($amount) @@ -68,6 +63,14 @@ class Money $this->money = static::create($amount); } + /** + * @return string + */ + public function getAmount() + { + return $this->money->getValue(); + } + /** * @return MoneyBase */ @@ -77,12 +80,11 @@ class Money } /** - * @return string + * @return int */ - public function getAmount() + public function getPrecision() { - $moneyFormatter = new DecimalMoneyFormatter(self::$iso_currencies); - return $moneyFormatter->format($this->money); + return $this->money->getCurrency()->getPrecision(); } /** @@ -91,8 +93,7 @@ class Money */ public function __toString() { - // TODO: Implement __toString() method. - return $this->money->getAmount(); + return $this->money->format(); } /** @@ -107,6 +108,7 @@ class Money /** * @param $percent * @return $this + * @throws \OutOfBoundsException * @throws \InvalidArgumentException */ public function addPercent($percent) @@ -124,6 +126,7 @@ class Money * Subtract an amount * @param $amount * @return Money + * @throws \InvalidArgumentException */ public function subtract($amount) { @@ -135,6 +138,8 @@ class Money * Multiply by an amount * @param $amount * @return Money + * @throws \OutOfBoundsException + * @throws \InvalidArgumentException */ public function multiply($amount) { @@ -146,6 +151,8 @@ class Money * Divide by an amount * @param $amount * @return Money + * @throws \OutOfBoundsException + * @throws \InvalidArgumentException */ public function divide($amount) { @@ -156,7 +163,7 @@ class Money /** * @param $money * @return bool - * @throws \Money\Exception\UnknownCurrencyException + * @throws \UnexpectedValueException * @throws \InvalidArgumentException */ public function equals($money) diff --git a/composer.json b/composer.json index 3d5e0659..850cb759 100755 --- a/composer.json +++ b/composer.json @@ -36,7 +36,7 @@ "vierbergenlars/php-semver": "3.0.x", "php-units-of-measure/php-units-of-measure": "2.1.x", "markrogoyski/math-php": "^0.38.0", - "moneyphp/money": "^3.1" + "akaunting/money": "^1.0" }, "require-dev": { "phpunit/phpunit": "~7.0", diff --git a/composer.lock b/composer.lock index 27a26c95..2f010ea7 100644 --- a/composer.lock +++ b/composer.lock @@ -4,8 +4,69 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "content-hash": "3537cd8fc6b9ca36d3d6f7bb9080a130", + "content-hash": "fbfbc4dcf0b6ac78e6aa35c15736fd34", "packages": [ + { + "name": "akaunting/money", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/akaunting/money.git", + "reference": "a39d0e18e1e56da8d82760528376fb797c161552" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/akaunting/money/zipball/a39d0e18e1e56da8d82760528376fb797c161552", + "reference": "a39d0e18e1e56da8d82760528376fb797c161552", + "shasum": "" + }, + "require": { + "illuminate/support": ">=5.1", + "illuminate/view": ">=5.1", + "php": ">=5.5.9" + }, + "require-dev": { + "mockery/mockery": "~0.9", + "phpunit/phpunit": "~4.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Akaunting\\Money\\Provider" + ] + } + }, + "autoload": { + "psr-4": { + "Akaunting\\Money\\": "./src" + }, + "files": [ + "src/helpers.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Denis Duliçi", + "email": "info@akaunting.com", + "homepage": "https://akaunting.com", + "role": "Developer" + } + ], + "description": "Currency formatting and conversion package for Laravel.", + "keywords": [ + "convert", + "currency", + "format", + "laravel", + "money" + ], + "time": "2017-12-09T07:25:06+00:00" + }, { "name": "arrilot/laravel-widgets", "version": "3.9.0", @@ -120,7 +181,7 @@ } ], "description": "Common classes for PSR-6 adapters", - "homepage": "http://www.php-cache.com/en/latest/", + "homepage": "https://www.php-cache.com/en/latest/", "keywords": [ "cache", "psr-6", @@ -188,7 +249,7 @@ } ], "description": "A PSR-6 cache implementation using a php array. This implementation supports tags", - "homepage": "http://www.php-cache.com/en/latest/", + "homepage": "https://www.php-cache.com/en/latest/", "keywords": [ "array", "cache", @@ -250,7 +311,7 @@ } ], "description": "A helper trait and interface to your PSR-6 cache to support hierarchical keys.", - "homepage": "http://www.php-cache.com/en/latest/", + "homepage": "https://www.php-cache.com/en/latest/", "keywords": [ "cache", "hierarchical", @@ -305,7 +366,7 @@ } ], "description": "Framework interoperable interfaces for tags", - "homepage": "http://www.php-cache.com/en/latest/", + "homepage": "https://www.php-cache.com/en/latest/", "keywords": [ "cache", "psr", @@ -354,17 +415,17 @@ { "name": "Nils Adermann", "email": "naderman@naderman.de", - "homepage": "http://www.naderman.de" + "homepage": "https://www.naderman.de" }, { "name": "Jordi Boggiano", "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" + "homepage": "https://seld.be" }, { "name": "Rob Bast", "email": "rob.bast@gmail.com", - "homepage": "http://robbast.nl" + "homepage": "https://robbast.nl" } ], "description": "Semver library that offers utilities, version constraint parsing and validation.", @@ -434,7 +495,7 @@ } ], "description": "Common String Manipulations with regard to casing and singular/plural rules.", - "homepage": "http://www.doctrine-project.org", + "homepage": "https://www.doctrine-project.org", "keywords": [ "inflection", "pluralize", @@ -490,7 +551,7 @@ } ], "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.", - "homepage": "http://www.doctrine-project.org", + "homepage": "https://www.doctrine-project.org", "keywords": [ "lexer", "parser" @@ -605,16 +666,16 @@ }, { "name": "erusev/parsedown", - "version": "1.6.4", + "version": "1.7.0", "source": { "type": "git", "url": "https://github.com/erusev/parsedown.git", - "reference": "fbe3fe878f4fe69048bb8a52783a09802004f548" + "reference": "6678d59be48c4be64eaca6ce70bea48a09488cc2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/erusev/parsedown/zipball/fbe3fe878f4fe69048bb8a52783a09802004f548", - "reference": "fbe3fe878f4fe69048bb8a52783a09802004f548", + "url": "https://api.github.com/repos/erusev/parsedown/zipball/6678d59be48c4be64eaca6ce70bea48a09488cc2", + "reference": "6678d59be48c4be64eaca6ce70bea48a09488cc2", "shasum": "" }, "require": { @@ -637,16 +698,16 @@ { "name": "Emanuil Rusev", "email": "hello@erusev.com", - "homepage": "http://erusev.com" + "homepage": "https://erusev.com" } ], "description": "Parser for Markdown.", - "homepage": "http://parsedown.org", + "homepage": "https://parsedown.org", "keywords": [ "markdown", "parser" ], - "time": "2017-11-14T20:44:03+00:00" + "time": "2018-02-28T11:41:37+00:00" }, { "name": "firebase/php-jwt", @@ -747,7 +808,7 @@ "Apache-2.0" ], "description": "Client library for Google APIs", - "homepage": "http://developers.google.com/api-client-library/php", + "homepage": "https://developers.google.com/api-client-library/php", "keywords": [ "google" ], @@ -784,7 +845,7 @@ "Apache-2.0" ], "description": "Client library for Google APIs", - "homepage": "http://developers.google.com/api-client-library/php", + "homepage": "https://developers.google.com/api-client-library/php", "keywords": [ "google" ], @@ -829,7 +890,7 @@ "Apache-2.0" ], "description": "Google Auth Library for PHP", - "homepage": "http://github.com/google/google-auth-library-php", + "homepage": "https://github.com/google/google-auth-library-php", "keywords": [ "Authentication", "google", @@ -890,7 +951,7 @@ } ], "description": "Guzzle is a PHP HTTP client library", - "homepage": "http://guzzlephp.org/", + "homepage": "https://guzzlephp.org/", "keywords": [ "client", "curl", @@ -1070,7 +1131,7 @@ } ], "description": "Generate short, unique, non-sequential ids (like YouTube and Bitly) from numbers", - "homepage": "http://hashids.org/php", + "homepage": "https://hashids.org/php", "keywords": [ "bitly", "decode", @@ -1383,22 +1444,22 @@ }, { "name": "laravel/framework", - "version": "v5.6.5", + "version": "v5.6.7", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "2e68209991e15aca1382ef9a3443d13f2e0d8755" + "reference": "18402cd4b83fd1d944f3baa0d8cc26d7dfcce333" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/2e68209991e15aca1382ef9a3443d13f2e0d8755", - "reference": "2e68209991e15aca1382ef9a3443d13f2e0d8755", + "url": "https://api.github.com/repos/laravel/framework/zipball/18402cd4b83fd1d944f3baa0d8cc26d7dfcce333", + "reference": "18402cd4b83fd1d944f3baa0d8cc26d7dfcce333", "shasum": "" }, "require": { "doctrine/inflector": "~1.1", "dragonmantank/cron-expression": "~2.0", - "erusev/parsedown": "~1.6", + "erusev/parsedown": "~1.7", "ext-mbstring": "*", "ext-openssl": "*", "league/flysystem": "~1.0", @@ -1475,6 +1536,7 @@ "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (~1.0).", "league/flysystem-cached-adapter": "Required to use Flysystem caching (~1.0).", "league/flysystem-rackspace": "Required to use the Flysystem Rackspace driver (~1.0).", + "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (~1.0).", "nexmo/client": "Required to use the Nexmo transport (~1.0).", "pda/pheanstalk": "Required to use the beanstalk queue driver (~3.0).", "predis/predis": "Required to use the redis cache and queue drivers (~1.0).", @@ -1514,7 +1576,7 @@ "framework", "laravel" ], - "time": "2018-02-22T19:21:38+00:00" + "time": "2018-02-28T14:50:53+00:00" }, { "name": "laravelcollective/html", @@ -1723,12 +1785,12 @@ { "name": "Antoine Corcy", "email": "contact@sbin.dk", - "homepage": "http://sbin.dk", + "homepage": "https://sbin.dk", "role": "Developer" } ], "description": "Geo-related tools PHP 7.0+ library", - "homepage": "http://geotools-php.org/", + "homepage": "https://geotools-php.org/", "keywords": [ "async", "batch", @@ -1861,86 +1923,6 @@ ], "time": "2017-12-11T05:05:12+00:00" }, - { - "name": "moneyphp/money", - "version": "v3.1.3", - "source": { - "type": "git", - "url": "https://github.com/moneyphp/money.git", - "reference": "5e6a3c98ba2cb190d48d35656967eacf30716034" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/moneyphp/money/zipball/5e6a3c98ba2cb190d48d35656967eacf30716034", - "reference": "5e6a3c98ba2cb190d48d35656967eacf30716034", - "shasum": "" - }, - "require": { - "php": ">=5.6" - }, - "require-dev": { - "cache/taggable-cache": "^0.4.0", - "doctrine/instantiator": "^1.0.5", - "ext-bcmath": "*", - "ext-gmp": "*", - "ext-intl": "*", - "florianv/swap": "^3.0", - "leanphp/phpspec-code-coverage": "^3.0 || ^4.0", - "moneyphp/iso-currencies": "^3.0", - "php-http/message": "^1.4", - "php-http/mock-client": "^0.3.3", - "phpspec/phpspec": "^3.0", - "phpunit/phpunit": "^5", - "psr/cache": "^1.0", - "sllh/php-cs-fixer-styleci-bridge": "^2.1", - "symfony/phpunit-bridge": "^4" - }, - "suggest": { - "ext-bcmath": "Calculate without integer limits", - "ext-gmp": "Calculate without integer limits", - "ext-intl": "Format Money objects with intl", - "florianv/swap": "Exchange rates library for PHP", - "psr/cache-implementation": "Used for Currency caching" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "psr-4": { - "Money\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mathias Verraes", - "email": "mathias@verraes.net", - "homepage": "http://verraes.net" - }, - { - "name": "Frederik Bosch", - "email": "f.bosch@genkgo.nl" - }, - { - "name": "Márk Sági-Kazár", - "email": "mark.sagi-kazar@gmail.com" - } - ], - "description": "PHP implementation of Fowler's Money pattern", - "homepage": "http://verraes.net/2011/04/fowler-money-pattern-in-php/", - "keywords": [ - "Value Object", - "money", - "vo" - ], - "time": "2018-02-16T11:04:16+00:00" - }, { "name": "monolog/monolog", "version": "1.23.0", @@ -2007,11 +1989,11 @@ { "name": "Jordi Boggiano", "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" + "homepage": "https://seld.be" } ], "description": "Sends your logs to files, sockets, inboxes, databases and various web services", - "homepage": "http://github.com/Seldaek/monolog", + "homepage": "https://github.com/Seldaek/monolog", "keywords": [ "log", "logging", @@ -2055,25 +2037,25 @@ }, { "name": "nesbot/carbon", - "version": "1.22.1", + "version": "1.23.0", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "7cdf42c0b1cc763ab7e4c33c47a24e27c66bfccc" + "reference": "4a874a39b2b00d7e0146cd46fab6f47c41ce9e65" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/7cdf42c0b1cc763ab7e4c33c47a24e27c66bfccc", - "reference": "7cdf42c0b1cc763ab7e4c33c47a24e27c66bfccc", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4a874a39b2b00d7e0146cd46fab6f47c41ce9e65", + "reference": "4a874a39b2b00d7e0146cd46fab6f47c41ce9e65", "shasum": "" }, "require": { "php": ">=5.3.0", - "symfony/translation": "~2.6 || ~3.0" + "symfony/translation": "~2.6 || ~3.0 || ~4.0" }, "require-dev": { "friendsofphp/php-cs-fixer": "~2", - "phpunit/phpunit": "~4.0 || ~5.0" + "phpunit/phpunit": "^4.8.35 || ^5.7" }, "type": "library", "extra": { @@ -2094,17 +2076,17 @@ { "name": "Brian Nesbitt", "email": "brian@nesbot.com", - "homepage": "http://nesbot.com" + "homepage": "https://nesbot.com" } ], "description": "A simple API extension for DateTime.", - "homepage": "http://carbon.nesbot.com", + "homepage": "https://carbon.nesbot.com", "keywords": [ "date", "datetime", "time" ], - "time": "2017-01-16T07:55:07+00:00" + "time": "2018-02-28T09:22:05+00:00" }, { "name": "nikic/php-parser", @@ -2255,7 +2237,7 @@ "lib/random.php" ] }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -2300,7 +2282,7 @@ }, "suggest": { "php-http/message": "Allow to use Guzzle, Diactoros or Slim Framework factories", - "puli/composer-plugin": "Sets up Puli which is recommended for Discovery to work. Check http://docs.php-http.org/en/latest/discovery.html for more details." + "puli/composer-plugin": "Sets up Puli which is recommended for Discovery to work. Check https://docs.php-http.org/en/latest/discovery.html for more details." }, "type": "library", "extra": { @@ -2324,7 +2306,7 @@ } ], "description": "Finds installed HTTPlug implementations and PSR-7 message factories", - "homepage": "http://php-http.org", + "homepage": "https://php-http.org", "keywords": [ "adapter", "client", @@ -2374,7 +2356,7 @@ { "name": "Jonathan Hanson", "email": "jonathan@jonathan-hanson.org", - "homepage": "http://www.jonathan-hanson.org/", + "homepage": "https://www.jonathan-hanson.org/", "role": "Developer" } ], @@ -2457,7 +2439,7 @@ } ], "description": "PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.", - "homepage": "http://phpseclib.sourceforge.net", + "homepage": "https://phpseclib.sourceforge.net", "keywords": [ "BigInteger", "aes", @@ -2688,7 +2670,7 @@ "Prettus\\Validator\\": "src/Prettus/Validator/" } }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "authors": [ { "name": "Anderson Andrade", @@ -2738,7 +2720,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for caching libraries", @@ -2777,14 +2759,14 @@ "Psr\\Container\\": "src/" } }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common Container Interface (PHP FIG PSR-11)", @@ -2833,7 +2815,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP messages", @@ -2883,7 +2865,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for logging libraries", @@ -2923,14 +2905,14 @@ "Psr\\SimpleCache\\": "src/" } }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interfaces for simple caching", @@ -3162,7 +3144,7 @@ "authors": [ { "name": "Santiago Garcia", - "homepage": "http://santigarcor.me" + "homepage": "https://santigarcor.me" } ], "description": "This package provides a flexible way to add Role-based Permissions to Laravel", @@ -3332,7 +3314,7 @@ "lib/swift_required.php" ] }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -3346,7 +3328,7 @@ } ], "description": "Swiftmailer, free feature-rich PHP mailer", - "homepage": "http://swiftmailer.symfony.com", + "homepage": "https://swiftmailer.symfony.com", "keywords": [ "email", "mail", @@ -4283,33 +4265,33 @@ }, { "name": "symfony/translation", - "version": "v3.4.4", + "version": "v4.0.4", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "10b32cf0eae28b9b39fe26c456c42b19854c4b84" + "reference": "a9c4e4cc56f7eff0960c4f6c157da8f6b13211fc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/10b32cf0eae28b9b39fe26c456c42b19854c4b84", - "reference": "10b32cf0eae28b9b39fe26c456c42b19854c4b84", + "url": "https://api.github.com/repos/symfony/translation/zipball/a9c4e4cc56f7eff0960c4f6c157da8f6b13211fc", + "reference": "a9c4e4cc56f7eff0960c4f6c157da8f6b13211fc", "shasum": "" }, "require": { - "php": "^5.5.9|>=7.0.8", + "php": "^7.1.3", "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/config": "<2.8", + "symfony/config": "<3.4", "symfony/dependency-injection": "<3.4", "symfony/yaml": "<3.4" }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "~2.8|~3.0|~4.0", + "symfony/config": "~3.4|~4.0", "symfony/dependency-injection": "~3.4|~4.0", "symfony/finder": "~2.8|~3.0|~4.0", - "symfony/intl": "^2.8.18|^3.2.5|~4.0", + "symfony/intl": "~3.4|~4.0", "symfony/yaml": "~3.4|~4.0" }, "suggest": { @@ -4320,7 +4302,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.4-dev" + "dev-master": "4.0-dev" } }, "autoload": { @@ -4347,7 +4329,7 @@ ], "description": "Symfony Translation Component", "homepage": "https://symfony.com", - "time": "2018-01-18T22:16:57+00:00" + "time": "2018-01-18T22:19:33+00:00" }, { "name": "symfony/var-dumper", @@ -4601,7 +4583,7 @@ } ], "description": "A small utility library that detects the OS the server is running on", - "homepage": "http://tivie.github.com/php-os-detector/", + "homepage": "https://tivie.github.com/php-os-detector/", "keywords": [ "detection", "detector", @@ -4654,12 +4636,12 @@ { "name": "Antoine Corcy", "email": "contact@sbin.dk", - "homepage": "http://sbin.dk", + "homepage": "https://sbin.dk", "role": "Developer" } ], "description": "Geo-related tools PHP 5.3 library for Laravel 5", - "homepage": "http://geotools-php.org/", + "homepage": "https://geotools-php.org/", "keywords": [ "async", "batch", @@ -4765,7 +4747,7 @@ { "name": "Vance Lucas", "email": "vance@vancelucas.com", - "homepage": "http://www.vancelucas.com" + "homepage": "https://www.vancelucas.com" } ], "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", @@ -4880,7 +4862,7 @@ } ], "description": "Common files for PHP Geocoder", - "homepage": "http://geocoder-php.org", + "homepage": "https://geocoder-php.org", "keywords": [ "abstraction", "geocoder", @@ -5124,7 +5106,7 @@ } ], "description": "Docblock Annotations Parser", - "homepage": "http://www.doctrine-project.org", + "homepage": "https://www.doctrine-project.org", "keywords": [ "annotations", "docblock", @@ -5175,7 +5157,7 @@ { "name": "Marco Pivetta", "email": "ocramius@gmail.com", - "homepage": "http://ocramius.github.com/" + "homepage": "https://ocramius.github.com/" } ], "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", @@ -5280,7 +5262,7 @@ "Faker\\": "src/Faker/" } }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -5380,7 +5362,7 @@ { "name": "Jakub Onderka", "email": "jakub.onderka@gmail.com", - "homepage": "http://www.acci.cz" + "homepage": "https://www.acci.cz" } ], "time": "2014-04-08T15:00:19+00:00" @@ -5424,7 +5406,7 @@ { "name": "Jakub Onderka", "email": "acci@acci.cz", - "homepage": "http://www.acci.cz/" + "homepage": "https://www.acci.cz/" } ], "time": "2015-04-20T18:58:01+00:00" @@ -5470,16 +5452,16 @@ { "name": "Pádraic Brady", "email": "padraic.brady@gmail.com", - "homepage": "http://blog.astrumfutura.com" + "homepage": "https://blog.astrumfutura.com" }, { "name": "Dave Marshall", "email": "dave.marshall@atstsolutions.co.uk", - "homepage": "http://davedevelopment.co.uk" + "homepage": "https://davedevelopment.co.uk" } ], "description": "Mockery is a simple yet flexible PHP mock object framework for use in unit testing with PHPUnit, PHPSpec or any other testing framework. Its core goal is to offer a test double framework with a succinct API capable of clearly defining all possible object operations and interactions using a human readable Domain Specific Language (DSL). Designed as a drop in alternative to PHPUnit's phpunit-mock-objects library, Mockery is easy to integrate with PHPUnit and can operate alongside phpunit-mock-objects without the World ending.", - "homepage": "http://github.com/padraic/mockery", + "homepage": "https://github.com/padraic/mockery", "keywords": [ "BDD", "TDD", @@ -5632,7 +5614,7 @@ "src/" ] }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], @@ -5679,7 +5661,7 @@ "src/" ] }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], @@ -5736,7 +5718,7 @@ ] } }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -5747,7 +5729,7 @@ } ], "description": "Common reflection classes used by phpdocumentor to reflect the code structure", - "homepage": "http://www.phpdoc.org", + "homepage": "https://www.phpdoc.org", "keywords": [ "FQSEN", "phpDocumentor", @@ -5899,7 +5881,7 @@ { "name": "Konstantin Kudryashov", "email": "ever.zet@gmail.com", - "homepage": "http://everzet.com" + "homepage": "https://everzet.com" }, { "name": "Marcello Duarte", @@ -6499,7 +6481,7 @@ "src/" ] }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], @@ -6510,7 +6492,7 @@ } ], "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", + "homepage": "https://www.github.com/sebastianbergmann/environment", "keywords": [ "Xdebug", "environment", @@ -6551,7 +6533,7 @@ "src/" ] }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], @@ -6578,7 +6560,7 @@ } ], "description": "Provides the functionality to export PHP variables for visualization", - "homepage": "http://www.github.com/sebastianbergmann/exporter", + "homepage": "https://www.github.com/sebastianbergmann/exporter", "keywords": [ "export", "exporter" @@ -6619,7 +6601,7 @@ "src/" ] }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], @@ -6630,7 +6612,7 @@ } ], "description": "Snapshotting of global state", - "homepage": "http://www.github.com/sebastianbergmann/global-state", + "homepage": "https://www.github.com/sebastianbergmann/global-state", "keywords": [ "global state" ], @@ -6669,7 +6651,7 @@ "src/" ] }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], @@ -6714,7 +6696,7 @@ "src/" ] }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], @@ -6759,7 +6741,7 @@ "src/" ] }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], @@ -6778,7 +6760,7 @@ } ], "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", + "homepage": "https://www.github.com/sebastianbergmann/recursion-context", "time": "2017-03-03T06:23:57+00:00" }, { @@ -6948,7 +6930,7 @@ "src/" ] }, - "notification-url": "http://packagist.org/downloads/", + "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], @@ -7056,12 +7038,12 @@ { "name": "Robert Allen", "email": "zircote@gmail.com", - "homepage": "http://www.zircote.com" + "homepage": "https://www.zircote.com" }, { "name": "Bob Fanger", "email": "bfanger@gmail.com", - "homepage": "http://bfanger.nl" + "homepage": "https://bfanger.nl" } ], "description": "Swagger-PHP - Generate interactive documentation for your RESTful API using phpdoc annotations", diff --git a/config/money.php b/config/money.php new file mode 100644 index 00000000..f00de574 --- /dev/null +++ b/config/money.php @@ -0,0 +1,1808 @@ + [ + 'name' => 'UAE Dirham', + 'code' => 784, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'د.إ', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'AFN' => [ + 'name' => 'Afghani', + 'code' => 971, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '؋', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'ALL' => [ + 'name' => 'Lek', + 'code' => 8, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'L', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'AMD' => [ + 'name' => 'Armenian Dram', + 'code' => 51, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'դր.', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'ANG' => [ + 'name' => 'Netherlands Antillean Guilder', + 'code' => 532, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'ƒ', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'AOA' => [ + 'name' => 'Kwanza', + 'code' => 973, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Kz', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'ARS' => [ + 'name' => 'Argentine Peso', + 'code' => 32, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'AUD' => [ + 'name' => 'Australian Dollar', + 'code' => 36, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ' ', + ], + + 'AWG' => [ + 'name' => 'Aruban Florin', + 'code' => 533, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'ƒ', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'AZN' => [ + 'name' => 'Azerbaijanian Manat', + 'code' => 944, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₼', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BAM' => [ + 'name' => 'Convertible Mark', + 'code' => 977, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'КМ', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BBD' => [ + 'name' => 'Barbados Dollar', + 'code' => 52, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BDT' => [ + 'name' => 'Taka', + 'code' => 50, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '৳', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BGN' => [ + 'name' => 'Bulgarian Lev', + 'code' => 975, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'лв', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BHD' => [ + 'name' => 'Bahraini Dinar', + 'code' => 48, + 'precision' => 3, + 'subunit' => 1000, + 'symbol' => 'ب.د', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BIF' => [ + 'name' => 'Burundi Franc', + 'code' => 108, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'Fr', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BMD' => [ + 'name' => 'Bermudian Dollar', + 'code' => 60, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BND' => [ + 'name' => 'Brunei Dollar', + 'code' => 96, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BOB' => [ + 'name' => 'Boliviano', + 'code' => 68, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Bs.', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BOV' => [ + 'name' => 'Mvdol', + 'code' => 984, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Bs.', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BRL' => [ + 'name' => 'Brazilian Real', + 'code' => 986, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'R$', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'BSD' => [ + 'name' => 'Bahamian Dollar', + 'code' => 44, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BTN' => [ + 'name' => 'Ngultrum', + 'code' => 64, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Nu.', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BWP' => [ + 'name' => 'Pula', + 'code' => 72, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'P', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'BYR' => [ + 'name' => 'Belarussian Ruble', + 'code' => 974, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'Br', + 'symbol_first' => false, + 'decimal_mark' => ',', + 'thousands_separator' => ' ', + ], + + 'BZD' => [ + 'name' => 'Belize Dollar', + 'code' => 84, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'CAD' => [ + 'name' => 'Canadian Dollar', + 'code' => 124, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'CDF' => [ + 'name' => 'Congolese Franc', + 'code' => 976, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Fr', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'CHF' => [ + 'name' => 'Swiss Franc', + 'code' => 756, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'CHF', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'CLF' => [ + 'name' => 'Unidades de fomento', + 'code' => 990, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'UF', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'CLP' => [ + 'name' => 'Chilean Peso', + 'code' => 152, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'CNY' => [ + 'name' => 'Yuan Renminbi', + 'code' => 156, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '¥', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'COP' => [ + 'name' => 'Colombian Peso', + 'code' => 170, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'CRC' => [ + 'name' => 'Costa Rican Colon', + 'code' => 188, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₡', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'CUC' => [ + 'name' => 'Peso Convertible', + 'code' => 931, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'CUP' => [ + 'name' => 'Cuban Peso', + 'code' => 192, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'CVE' => [ + 'name' => 'Cape Verde Escudo', + 'code' => 132, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'CZK' => [ + 'name' => 'Czech Koruna', + 'code' => 203, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Kč', + 'symbol_first' => false, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'DJF' => [ + 'name' => 'Djibouti Franc', + 'code' => 262, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'Fdj', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'DKK' => [ + 'name' => 'Danish Krone', + 'code' => 208, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'kr', + 'symbol_first' => false, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'DOP' => [ + 'name' => 'Dominican Peso', + 'code' => 214, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'DZD' => [ + 'name' => 'Algerian Dinar', + 'code' => 12, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'د.ج', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'EGP' => [ + 'name' => 'Egyptian Pound', + 'code' => 818, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'ج.م', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'ERN' => [ + 'name' => 'Nakfa', + 'code' => 232, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Nfk', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'ETB' => [ + 'name' => 'Ethiopian Birr', + 'code' => 230, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Br', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'EUR' => [ + 'name' => 'Euro', + 'code' => 978, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '€', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'FJD' => [ + 'name' => 'Fiji Dollar', + 'code' => 242, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'FKP' => [ + 'name' => 'Falkland Islands Pound', + 'code' => 238, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '£', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'GBP' => [ + 'name' => 'Pound Sterling', + 'code' => 826, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '£', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'GEL' => [ + 'name' => 'Lari', + 'code' => 981, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'ლ', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'GHS' => [ + 'name' => 'Ghana Cedi', + 'code' => 936, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₵', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'GIP' => [ + 'name' => 'Gibraltar Pound', + 'code' => 292, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '£', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'GMD' => [ + 'name' => 'Dalasi', + 'code' => 270, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'D', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'GNF' => [ + 'name' => 'Guinea Franc', + 'code' => 324, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'Fr', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'GTQ' => [ + 'name' => 'Quetzal', + 'code' => 320, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Q', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'GYD' => [ + 'name' => 'Guyana Dollar', + 'code' => 328, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'HKD' => [ + 'name' => 'Hong Kong Dollar', + 'code' => 344, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'HNL' => [ + 'name' => 'Lempira', + 'code' => 340, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'L', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'HRK' => [ + 'name' => 'Croatian Kuna', + 'code' => 191, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'kn', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'HTG' => [ + 'name' => 'Gourde', + 'code' => 332, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'G', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'HUF' => [ + 'name' => 'Forint', + 'code' => 348, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Ft', + 'symbol_first' => false, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'IDR' => [ + 'name' => 'Rupiah', + 'code' => 360, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Rp', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'ILS' => [ + 'name' => 'New Israeli Sheqel', + 'code' => 376, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₪', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'INR' => [ + 'name' => 'Indian Rupee', + 'code' => 356, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₹', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'IQD' => [ + 'name' => 'Iraqi Dinar', + 'code' => 368, + 'precision' => 3, + 'subunit' => 1000, + 'symbol' => 'ع.د', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'IRR' => [ + 'name' => 'Iranian Rial', + 'code' => 364, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '﷼', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'ISK' => [ + 'name' => 'Iceland Krona', + 'code' => 352, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'kr', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'JMD' => [ + 'name' => 'Jamaican Dollar', + 'code' => 388, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'JOD' => [ + 'name' => 'Jordanian Dinar', + 'code' => 400, + 'precision' => 3, + 'subunit' => 100, + 'symbol' => 'د.ا', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'JPY' => [ + 'name' => 'Yen', + 'code' => 392, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => '¥', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'KES' => [ + 'name' => 'Kenyan Shilling', + 'code' => 404, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'KSh', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'KGS' => [ + 'name' => 'Som', + 'code' => 417, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'som', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'KHR' => [ + 'name' => 'Riel', + 'code' => 116, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '៛', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'KMF' => [ + 'name' => 'Comoro Franc', + 'code' => 174, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'Fr', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'KPW' => [ + 'name' => 'North Korean Won', + 'code' => 408, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₩', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'KRW' => [ + 'name' => 'Won', + 'code' => 410, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => '₩', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'KWD' => [ + 'name' => 'Kuwaiti Dinar', + 'code' => 414, + 'precision' => 3, + 'subunit' => 1000, + 'symbol' => 'د.ك', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'KYD' => [ + 'name' => 'Cayman Islands Dollar', + 'code' => 136, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'KZT' => [ + 'name' => 'Tenge', + 'code' => 398, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '〒', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'LAK' => [ + 'name' => 'Kip', + 'code' => 418, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₭', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'LBP' => [ + 'name' => 'Lebanese Pound', + 'code' => 422, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'ل.ل', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'LKR' => [ + 'name' => 'Sri Lanka Rupee', + 'code' => 144, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₨', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'LRD' => [ + 'name' => 'Liberian Dollar', + 'code' => 430, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'LSL' => [ + 'name' => 'Loti', + 'code' => 426, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'L', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'LTL' => [ + 'name' => 'Lithuanian Litas', + 'code' => 440, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Lt', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'LVL' => [ + 'name' => 'Latvian Lats', + 'code' => 428, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Ls', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'LYD' => [ + 'name' => 'Libyan Dinar', + 'code' => 434, + 'precision' => 3, + 'subunit' => 1000, + 'symbol' => 'ل.د', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MAD' => [ + 'name' => 'Moroccan Dirham', + 'code' => 504, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'د.م.', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MDL' => [ + 'name' => 'Moldovan Leu', + 'code' => 498, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'L', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MGA' => [ + 'name' => 'Malagasy Ariary', + 'code' => 969, + 'precision' => 2, + 'subunit' => 5, + 'symbol' => 'Ar', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MKD' => [ + 'name' => 'Denar', + 'code' => 807, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'ден', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MMK' => [ + 'name' => 'Kyat', + 'code' => 104, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'K', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MNT' => [ + 'name' => 'Tugrik', + 'code' => 496, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₮', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MOP' => [ + 'name' => 'Pataca', + 'code' => 446, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'P', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MRO' => [ + 'name' => 'Ouguiya', + 'code' => 478, + 'precision' => 2, + 'subunit' => 5, + 'symbol' => 'UM', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MUR' => [ + 'name' => 'Mauritius Rupee', + 'code' => 480, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₨', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MVR' => [ + 'name' => 'Rufiyaa', + 'code' => 462, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'MVR', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MWK' => [ + 'name' => 'Kwacha', + 'code' => 454, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'MK', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MXN' => [ + 'name' => 'Mexican Peso', + 'code' => 484, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MYR' => [ + 'name' => 'Malaysian Ringgit', + 'code' => 458, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'RM', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'MZN' => [ + 'name' => 'Mozambique Metical', + 'code' => 943, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'MTn', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'NAD' => [ + 'name' => 'Namibia Dollar', + 'code' => 516, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'NGN' => [ + 'name' => 'Naira', + 'code' => 566, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₦', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'NIO' => [ + 'name' => 'Cordoba Oro', + 'code' => 558, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'C$', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'NOK' => [ + 'name' => 'Norwegian Krone', + 'code' => 578, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'kr', + 'symbol_first' => false, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'NPR' => [ + 'name' => 'Nepalese Rupee', + 'code' => 524, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₨', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'NZD' => [ + 'name' => 'New Zealand Dollar', + 'code' => 554, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'OMR' => [ + 'name' => 'Rial Omani', + 'code' => 512, + 'precision' => 3, + 'subunit' => 1000, + 'symbol' => 'ر.ع.', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'PAB' => [ + 'name' => 'Balboa', + 'code' => 590, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'B/.', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'PEN' => [ + 'name' => 'Nuevo Sol', + 'code' => 604, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'S/.', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'PGK' => [ + 'name' => 'Kina', + 'code' => 598, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'K', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'PHP' => [ + 'name' => 'Philippine Peso', + 'code' => 608, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₱', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'PKR' => [ + 'name' => 'Pakistan Rupee', + 'code' => 586, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₨', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'PLN' => [ + 'name' => 'Zloty', + 'code' => 985, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'zł', + 'symbol_first' => false, + 'decimal_mark' => ',', + 'thousands_separator' => ' ', + ], + + 'PYG' => [ + 'name' => 'Guarani', + 'code' => 600, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => '₲', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'QAR' => [ + 'name' => 'Qatari Rial', + 'code' => 634, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'ر.ق', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'RON' => [ + 'name' => 'New Romanian Leu', + 'code' => 946, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Lei', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'RSD' => [ + 'name' => 'Serbian Dinar', + 'code' => 941, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'РСД', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'RUB' => [ + 'name' => 'Russian Ruble', + 'code' => 643, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₽', + 'symbol_first' => false, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'RWF' => [ + 'name' => 'Rwanda Franc', + 'code' => 646, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'FRw', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SAR' => [ + 'name' => 'Saudi Riyal', + 'code' => 682, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'ر.س', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SBD' => [ + 'name' => 'Solomon Islands Dollar', + 'code' => 90, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SCR' => [ + 'name' => 'Seychelles Rupee', + 'code' => 690, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₨', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SDG' => [ + 'name' => 'Sudanese Pound', + 'code' => 938, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '£', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SEK' => [ + 'name' => 'Swedish Krona', + 'code' => 752, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'kr', + 'symbol_first' => false, + 'decimal_mark' => ',', + 'thousands_separator' => ' ', + ], + + 'SGD' => [ + 'name' => 'Singapore Dollar', + 'code' => 702, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SHP' => [ + 'name' => 'Saint Helena Pound', + 'code' => 654, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '£', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SLL' => [ + 'name' => 'Leone', + 'code' => 694, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Le', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SOS' => [ + 'name' => 'Somali Shilling', + 'code' => 706, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Sh', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SRD' => [ + 'name' => 'Surinam Dollar', + 'code' => 968, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SSP' => [ + 'name' => 'South Sudanese Pound', + 'code' => 728, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '£', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'STD' => [ + 'name' => 'Dobra', + 'code' => 678, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Db', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SVC' => [ + 'name' => 'El Salvador Colon', + 'code' => 222, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₡', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SYP' => [ + 'name' => 'Syrian Pound', + 'code' => 760, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '£S', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'SZL' => [ + 'name' => 'Lilangeni', + 'code' => 748, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'E', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'THB' => [ + 'name' => 'Baht', + 'code' => 764, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '฿', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'TJS' => [ + 'name' => 'Somoni', + 'code' => 972, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'ЅМ', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'TMT' => [ + 'name' => 'Turkmenistan New Manat', + 'code' => 934, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'T', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'TND' => [ + 'name' => 'Tunisian Dinar', + 'code' => 788, + 'precision' => 3, + 'subunit' => 1000, + 'symbol' => 'د.ت', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'TOP' => [ + 'name' => 'Pa’anga', + 'code' => 776, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'T$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'TRY' => [ + 'name' => 'Turkish Lira', + 'code' => 949, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₺', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'TTD' => [ + 'name' => 'Trinidad and Tobago Dollar', + 'code' => 780, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'TWD' => [ + 'name' => 'New Taiwan Dollar', + 'code' => 901, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'TZS' => [ + 'name' => 'Tanzanian Shilling', + 'code' => 834, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Sh', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'UAH' => [ + 'name' => 'Hryvnia', + 'code' => 980, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '₴', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'UGX' => [ + 'name' => 'Uganda Shilling', + 'code' => 800, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'USh', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'USD' => [ + 'name' => 'US Dollar', + 'code' => 840, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'UYU' => [ + 'name' => 'Peso Uruguayo', + 'code' => 858, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'UZS' => [ + 'name' => 'Uzbekistan Sum', + 'code' => 860, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => null, + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'VEF' => [ + 'name' => 'Bolivar', + 'code' => 937, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'Bs F', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'VND' => [ + 'name' => 'Dong', + 'code' => 704, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => '₫', + 'symbol_first' => true, + 'decimal_mark' => ',', + 'thousands_separator' => '.', + ], + + 'VUV' => [ + 'name' => 'Vatu', + 'code' => 548, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'Vt', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'WST' => [ + 'name' => 'Tala', + 'code' => 882, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'T', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'XAF' => [ + 'name' => 'CFA Franc BEAC', + 'code' => 950, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'Fr', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'XAG' => [ + 'name' => 'Silver', + 'code' => 961, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'oz t', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'XAU' => [ + 'name' => 'Gold', + 'code' => 959, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'oz t', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'XCD' => [ + 'name' => 'East Caribbean Dollar', + 'code' => 951, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'XDR' => [ + 'name' => 'SDR (Special Drawing Right)', + 'code' => 960, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'SDR', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'XOF' => [ + 'name' => 'CFA Franc BCEAO', + 'code' => 952, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'Fr', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'XPF' => [ + 'name' => 'CFP Franc', + 'code' => 953, + 'precision' => 0, + 'subunit' => 1, + 'symbol' => 'Fr', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'YER' => [ + 'name' => 'Yemeni Rial', + 'code' => 886, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '﷼', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'ZAR' => [ + 'name' => 'Rand', + 'code' => 710, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'R', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'ZMW' => [ + 'name' => 'Zambian Kwacha', + 'code' => 967, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => 'ZK', + 'symbol_first' => false, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], + + 'ZWL' => [ + 'name' => 'Zimbabwe Dollar', + 'code' => 932, + 'precision' => 2, + 'subunit' => 100, + 'symbol' => '$', + 'symbol_first' => true, + 'decimal_mark' => '.', + 'thousands_separator' => ',', + ], +]; diff --git a/config/phpvms.php b/config/phpvms.php index 84b0e0da..4d0d31b9 100644 --- a/config/phpvms.php +++ b/config/phpvms.php @@ -22,8 +22,7 @@ return [ 'skin' => env('APP_SKIN', 'default'), /** - * The ISO "Currency Code" to use - * http://www.xe.com/iso4217.php + * The ISO "Currency Code" to use, the list is in config/money.php * * Note, do not change this after you've set it, unless you don't * care that the currencies aren't "exchanged" into the new format diff --git a/modules/Installer/Config/config.php b/modules/Installer/Config/config.php index 87ef623d..8f66bce2 100644 --- a/modules/Installer/Config/config.php +++ b/modules/Installer/Config/config.php @@ -8,7 +8,6 @@ return [ 'extensions' => [ 'openssl', 'pdo', - 'intl', 'mbstring', 'tokenizer', 'json', diff --git a/resources/stubs/installer/config.stub b/resources/stubs/installer/config.stub index 7f9a1cc8..f451fcf4 100644 --- a/resources/stubs/installer/config.stub +++ b/resources/stubs/installer/config.stub @@ -23,8 +23,7 @@ return [ 'vacentral_api_key' => '', /** - * The ISO "Currency Code" to use - * http://www.xe.com/iso4217.php + * The ISO "Currency Code" to use, the list is in config/money.php * * Note, do not change this after you've set it, unless you don't * care that the currencies aren't "exchanged" into the new format