40 lines
1.3 KiB
PHP
40 lines
1.3 KiB
PHP
<?php
|
|||
|
|
declare(strict_types=1);
|
||
|
|
|
||
|
|
header('Content-Type: application/json; charset=utf-8');
|
||
|
|
header('Cache-Control: no-store');
|
||
|
|
|
||
|
|
require __DIR__ . '/im_web_bootstrap.php';
|
||
|
|
|
||
|
|
$defaultName = 'Web IM';
|
||
|
|
$defaultLogo = '/img/logo.png';
|
||
|
|
|
||
|
|
try {
|
||
|
|
$statement = imAppDb()->prepare(
|
||
|
|
'select `conf_name`, `conf_value`, `updated_at` from `system_conf` where `conf_name` in (?, ?)'
|
||
|
|
);
|
||
|
|
$statement->execute(['PlatformName', 'sys_logo']);
|
||
|
|
|
||
|
|
$config = [];
|
||
|
|
$updatedAtValues = [];
|
||
|
|
foreach ($statement->fetchAll() as $row) {
|
||
|
|
$config[(string)$row['conf_name']] = trim((string)($row['conf_value'] ?? ''));
|
||
|
|
$updatedAtValues[] = (string)($row['updated_at'] ?? '');
|
||
|
|
}
|
||
|
|
|
||
|
|
$platformName = $config['PlatformName'] ?? '';
|
||
|
|
$logo = $config['sys_logo'] ?? '';
|
||
|
|
$version = implode('|', array_values(array_filter($updatedAtValues ?? [])));
|
||
|
|
|
||
|
|
respond(0, 'success', [
|
||
|
|
'platformName' => $platformName !== '' ? $platformName : $defaultName,
|
||
|
|
'logo' => $logo !== '' ? $logo : $defaultLogo,
|
||
|
|
'version' => $version,
|
||
|
|
]);
|
||
|
|
} catch (Throwable $error) {
|
||
|
|
respond(500, $error->getMessage() ?: '平台配置加载失败', [
|
||
|
|
'platformName' => $defaultName,
|
||
|
|
'logo' => $defaultLogo,
|
||
|
|
]);
|
||
|
|
}
|