*/ public array $default = [ 'DSN' => '', 'hostname' => 'localhost', 'username' => 'admin', 'password' => 'pointofsale', 'database' => 'ospos', 'DBDriver' => 'MySQLi', 'DBPrefix' => 'ospos_', 'pConnect' => false, 'DBDebug' => (ENVIRONMENT !== 'production'), 'charset' => 'utf8mb4', 'DBCollat' => 'utf8mb4_general_ci', 'swapPre' => '', 'encrypt' => false, 'compress' => false, 'strictOn' => false, 'failover' => [], 'port' => 3306, 'dateFormat' => [ 'date' => 'Y-m-d', 'datetime' => 'Y-m-d H:i:s', 'time' => 'H:i:s', ], ]; /** * This database connection is used when running PHPUnit database tests. * * @var array */ public array $tests = [ 'DSN' => '', 'hostname' => 'localhost', 'username' => 'admin', 'password' => 'pointofsale', 'database' => 'ospos', 'DBDriver' => 'MySQLi', 'DBPrefix' => 'ospos_', 'pConnect' => false, 'DBDebug' => (ENVIRONMENT !== 'production'), 'charset' => 'utf8mb4', 'DBCollat' => 'utf8mb4_general_ci', 'swapPre' => '', 'encrypt' => false, 'compress' => false, 'strictOn' => false, 'failover' => [], 'port' => 3306, 'foreignKeys' => true, 'busyTimeout' => 1000, 'dateFormat' => [ 'date' => 'Y-m-d', 'datetime' => 'Y-m-d H:i:s', 'time' => 'H:i:s', ], ]; /** * This database connection is used when developing against non-production data. * * @var array */ public $development = [ 'DSN' => '', 'hostname' => 'localhost', 'username' => 'admin', 'password' => 'pointofsale', 'database' => 'ospos', 'DBDriver' => 'MySQLi', 'DBPrefix' => 'ospos_', 'pConnect' => false, 'DBDebug' => (ENVIRONMENT !== 'production'), 'charset' => 'utf8mb4', 'DBCollat' => 'utf8mb4_general_ci', 'swapPre' => '', 'encrypt' => false, 'compress' => false, 'strictOn' => false, 'failover' => [], 'port' => 3306, 'foreignKeys' => true, 'busyTimeout' => 1000, 'dateFormat' => [ 'date' => 'Y-m-d', 'datetime' => 'Y-m-d H:i:s', 'time' => 'H:i:s', ], ]; public function __construct() { parent::__construct(); // Ensure that we always set the database group to 'tests' if // we are currently running an automated test suite, so that // we don't overwrite live data on accident. switch (ENVIRONMENT) { case 'testing': $this->defaultGroup = 'tests'; break; case 'development'; $this->defaultGroup = 'development'; break; } foreach ([&$this->development, &$this->tests, &$this->default] as &$config) { $config['hostname'] = !getenv('MYSQL_HOST_NAME') ? $config['hostname'] : getenv('MYSQL_HOST_NAME'); $config['username'] = !getenv('MYSQL_USERNAME') ? $config['username'] : getenv('MYSQL_USERNAME'); $config['password'] = !getenv('MYSQL_PASSWORD') ? $config['password'] : getenv('MYSQL_PASSWORD'); $config['database'] = !getenv('MYSQL_DB_NAME') ? $config['database'] : getenv('MYSQL_DB_NAME'); } } }