feat: 添加应用详情窗口和更新检查功能

- 实现全新的应用详情窗口,包含统计信息、基本信息和描述展示
- 添加应用更新检查功能到CLI工具
- 优化版本列表页面的文件路径处理逻辑
- 升级GUI版本至Beta 0.4
- 增强公告详情页面的链接处理能力
This commit is contained in:
2025-09-24 21:58:25 +08:00
parent c72b25cd0b
commit e553768c1d
6 changed files with 778 additions and 315 deletions

View File

@@ -141,29 +141,28 @@ while ($row = $result->fetch_assoc()) {
<h5 class="card-title">版本 <?php echo htmlspecialchars($version['version']); ?></h5>
<h6 class="card-subtitle mb-2 text-muted">发布日期: <?php echo date('Y-m-d', strtotime($version['created_at'])); ?></h6>
<div class="card-text markdown-content"><?php echo htmlspecialchars($version['changelog']); ?></div>
</div>
<div class="card-footer bg-transparent d-flex justify-content-between align-items-center">
<?php
// 安全地处理文件大小和路径避免open_basedir限制问题
$fileName = trim($version['file_path']);
$fileSize = false;
<?php
// 安全地处理文件大小和路径
$filePath = trim($version['file_path']);
$fileSize = false;
// 使用__DIR__构建安全的绝对路径与version_control.php保持一致
$uploadDir = __DIR__ . '/../files/';
$absoluteFilePath = $uploadDir . $fileName;
// 使用__DIR__构建安全的绝对路径与version_control.php保持一致
$absoluteFilePath = __DIR__ . '/' . $filePath;
// 尝试安全地获取文件大小处理open_basedir限制
if (file_exists($absoluteFilePath)) {
$fileSize = filesize($absoluteFilePath);
}
// 尝试安全地获取文件大小
if (file_exists($absoluteFilePath)) {
$fileSize = filesize($absoluteFilePath);
}
$sizeText = formatFileSize($fileSize);
$sizeText = formatFileSize($fileSize);
// 构建安全的下载链接
$downloadUrl = '/files/' . $fileName;
?>
<a href="<?php echo htmlspecialchars($downloadUrl); ?>" class="btn btn-primary" download>下载(大小:<?php echo $sizeText; ?>)</a>
// 构建安全的下载链接
$downloadUrl = '/' . $filePath;
?>
<a href="<?php echo htmlspecialchars($downloadUrl); ?>" class="btn btn-primary" download>下载(大小:<?php echo $sizeText; ?>)</a>
</div>
</div>
</div>
<?php endforeach; ?>