修复客户平台图标加载
This commit is contained in:
@@ -1,15 +1,85 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
|
||||
const IM_ADMIN_URL = 'http://127.0.0.1:18080';
|
||||
const IM_ADMIN_SECRET = '123456';
|
||||
const IM_DB_DSN = 'mysql:host=127.0.0.1;port=3306;dbname=wfchat;charset=utf8mb4';
|
||||
const IM_DB_USER = 'winchen';
|
||||
const IM_DB_PASSWORD = 'winchen@0904';
|
||||
const IM_APP_DB_DSN = 'mysql:host=127.0.0.1;port=3306;dbname=appdata;charset=utf8mb4';
|
||||
const IM_APP_DB_USER = 'winchen';
|
||||
const IM_APP_DB_PASSWORD = 'winchen@0904';
|
||||
const IM_DB_TIMEZONE = 'Asia/Bangkok';
|
||||
function webImEnv(string $key, string $fallback = ''): string
|
||||
{
|
||||
$runtimeValue = getenv($key);
|
||||
if ($runtimeValue !== false && $runtimeValue !== '') {
|
||||
return $runtimeValue;
|
||||
}
|
||||
|
||||
static $env = null;
|
||||
if ($env === null) {
|
||||
$env = [];
|
||||
$paths = array_filter([
|
||||
getenv('JC_WEB_IM_ENV_FILE') ?: '',
|
||||
dirname(__DIR__, 2) . '/.env',
|
||||
'/var/www/im-admin/.env',
|
||||
'/var/www/im/.env',
|
||||
]);
|
||||
|
||||
foreach ($paths as $path) {
|
||||
if (!is_readable($path)) {
|
||||
continue;
|
||||
}
|
||||
foreach (file($path, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES) ?: [] as $line) {
|
||||
$line = trim($line);
|
||||
if ($line === '' || strpos($line, '#') === 0 || strpos($line, '=') === false) {
|
||||
continue;
|
||||
}
|
||||
[$name, $value] = array_map('trim', explode('=', $line, 2));
|
||||
if ($name === '') {
|
||||
continue;
|
||||
}
|
||||
$value = trim($value);
|
||||
if (
|
||||
strlen($value) >= 2
|
||||
&& (($value[0] === '"' && substr($value, -1) === '"') || ($value[0] === "'" && substr($value, -1) === "'"))
|
||||
) {
|
||||
$value = substr($value, 1, -1);
|
||||
}
|
||||
$env[$name] = $value;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return $env[$key] ?? $fallback;
|
||||
}
|
||||
|
||||
function webImFirstEnv(array $keys, string $fallback = ''): string
|
||||
{
|
||||
foreach ($keys as $key) {
|
||||
$value = webImEnv($key);
|
||||
if ($value !== '') {
|
||||
return $value;
|
||||
}
|
||||
}
|
||||
return $fallback;
|
||||
}
|
||||
|
||||
function webImMysqlDsn(string $host, string $port, string $database): string
|
||||
{
|
||||
return sprintf('mysql:host=%s;port=%s;dbname=%s;charset=utf8mb4', $host, $port, $database);
|
||||
}
|
||||
|
||||
define('IM_ADMIN_URL', webImEnv('JC_WEB_IM_ADMIN_URL', 'http://127.0.0.1:18080'));
|
||||
define('IM_ADMIN_SECRET', webImFirstEnv(['JC_WEB_IM_ADMIN_SECRET', 'SecretKey'], '123456'));
|
||||
define('IM_DB_DSN', webImMysqlDsn(
|
||||
webImEnv('JC_WEB_IM_DB_HOST', webImEnv('DB_HOST', '127.0.0.1')),
|
||||
webImEnv('JC_WEB_IM_DB_PORT', webImEnv('DB_PORT', '3306')),
|
||||
webImEnv('JC_WEB_IM_DB_DATABASE', webImEnv('DB_DATABASE', 'wfchat'))
|
||||
));
|
||||
define('IM_DB_USER', webImEnv('JC_WEB_IM_DB_USER', webImEnv('DB_USERNAME', 'winchen')));
|
||||
define('IM_DB_PASSWORD', webImEnv('JC_WEB_IM_DB_PASSWORD', webImEnv('DB_PASSWORD', 'winchen@0904')));
|
||||
define('IM_APP_DB_DSN', webImMysqlDsn(
|
||||
webImFirstEnv(['JC_WEB_IM_APP_DB_HOST', 'DB_HOST_2', 'DB_HOST2_2'], webImEnv('DB_HOST', '127.0.0.1')),
|
||||
webImFirstEnv(['JC_WEB_IM_APP_DB_PORT', 'DB_PORT_2', 'DB_PORT2_2'], webImEnv('DB_PORT', '3306')),
|
||||
webImFirstEnv(['JC_WEB_IM_APP_DB_DATABASE', 'DB_DATABASE_2', 'DB_DATABASE2_2'], webImEnv('DB_DATABASE', 'appdata'))
|
||||
));
|
||||
define('IM_APP_DB_USER', webImFirstEnv(['JC_WEB_IM_APP_DB_USER', 'DB_USERNAME_2', 'DB_USERNAME2_2'], webImEnv('DB_USERNAME', 'winchen')));
|
||||
define('IM_APP_DB_PASSWORD', webImFirstEnv(['JC_WEB_IM_APP_DB_PASSWORD', 'DB_PASSWORD_2', 'DB_PASSWORD2_2'], webImEnv('DB_PASSWORD', 'winchen@0904')));
|
||||
define('IM_DB_TIMEZONE', webImEnv('JC_WEB_IM_DB_TIMEZONE', 'Asia/Bangkok'));
|
||||
|
||||
function respond(int $code, string $message, array $result = []): void
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user