文件分享 访问页面优化
This commit is contained in:
parent
f17af958e2
commit
71f0d9d519
@ -2,6 +2,7 @@
|
||||
|
||||
namespace app\models;
|
||||
|
||||
use Yii;
|
||||
use yii\db\ActiveQuery;
|
||||
use yii\db\ActiveRecord;
|
||||
|
||||
@ -99,6 +100,20 @@ class Share extends ActiveRecord
|
||||
{
|
||||
$this->dl_count += 1;
|
||||
$this->save(true, ['dl_count']);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Give me the file name of the shared file/folder.
|
||||
* @return string
|
||||
*/
|
||||
public function getShareFileName(): string
|
||||
{
|
||||
return basename($this->getAbsoluteFilePath());
|
||||
}
|
||||
|
||||
public function getAbsoluteFilePath(): string
|
||||
{
|
||||
return Yii::getAlias(Yii::$app->params['dataDirectory']) . '/' . $this->sharer_id . '/' . $this->file_relative_path;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -231,4 +231,18 @@ class FileSizeHelper
|
||||
return max(0, (int)$valueInMB);
|
||||
}
|
||||
|
||||
public static function getFormatFSize(string $absolutePath): string
|
||||
{
|
||||
//detect path is file or folder or not exist
|
||||
if (!file_exists($absolutePath)) {
|
||||
return 'ERROR 文件/文件夹不存在';
|
||||
}
|
||||
|
||||
if (is_dir($absolutePath)) {
|
||||
return self::formatBytes(self::getDirectorySize($absolutePath));
|
||||
} else {
|
||||
return self::formatBytes(filesize($absolutePath));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
@ -2,17 +2,25 @@
|
||||
/** @var yii\web\View $this */
|
||||
/** @var app\models\Share $model */
|
||||
/** @var bool $isDirectory */
|
||||
|
||||
/** @var string $sharerUsername */
|
||||
|
||||
use app\assets\FontAwesomeAsset;
|
||||
use app\utils\FileSizeHelper;
|
||||
use yii\bootstrap5\Html;
|
||||
use yii\helpers\Url;
|
||||
|
||||
$this->title = '文件信息';
|
||||
FontAwesomeAsset::register($this);
|
||||
$this->title = '分享信息';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="share-file-info">
|
||||
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<h1>
|
||||
<i class="fa-solid fa-share-from-square"></i>
|
||||
<?= Html::encode($this->title) ?>
|
||||
</h1>
|
||||
<p><?= ($isDirectory ? '文件夹' : '文件') . ': ' . $model->getShareFileName() ?></p>
|
||||
<p>大小: <?= FileSizeHelper::getFormatFSize($model->getAbsoluteFilePath())?></p>
|
||||
<p>分享者: <?= Html::encode($sharerUsername) ?></p> <!-- 显示分享者的用户名 -->
|
||||
<p>分享创建日期: <?= Html::encode($model->creation_date) ?></p>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user