restore composer.json, add mysqli extension

This commit is contained in:
2026-04-15 17:02:52 +05:00
commit 77cf56a348
4317 changed files with 1397107 additions and 0 deletions

85
app/Models/File.php Executable file
View File

@@ -0,0 +1,85 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\Date;
use Illuminate\Support\Facades\Storage;
/**
* Class File
* @property string|null $name
* @property string|null $path
* @property string|null $path_thumb
* @property float|null $size
* @mixin Model
*/
class File extends Model
{
/**
* @var array
*/
protected $fillable = [
'name', 'path', 'path_thumb', 'size'
];
/**
* @var array
*/
protected $casts = [
'name' => 'string',
'path' => 'string',
'path_thumb' => 'string',
'size' => 'float'
];
/**
* @return string
*/
public function getName(): string
{
return (string) $this->name;
}
/**
* @return string|null
*/
public function getPath()
{
if (!empty($this->path)) {
if (in_array(env('FILESYSTEM_DISK'), ['s3', 'minio'])) {
return Storage::temporaryUrl(
$this->path, Date::now()->addMinutes(5)
);
}
return (string) $this->path;
}
return null;
}
/**
* @return string|null
*/
public function getPathThumb()
{
if (!empty($this->path_thumb)) {
if (in_array(env('FILESYSTEM_DISK'), ['s3', 'minio'])) {
return Storage::temporaryUrl(
$this->path_thumb, Date::now()->addMinutes(5)
);
}
return (string) $this->path_thumb;
}
return null;
}
/**
* @return float
*/
public function getSize(): float
{
return (float) $this->size;
}
}