lasthourcloud/app/Models/S3Storage.php
2023-08-22 17:44:49 +02:00

34 lines
739 B
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
class S3Storage extends BaseModel
{
use HasFactory;
protected $guarded = [];
protected $casts = [
'key' => 'encrypted',
'secret' => 'encrypted',
];
static public function ownedByCurrentTeam(array $select = ['*'])
{
$selectArray = collect($select)->concat(['id']);
return S3Storage::whereTeamId(currentTeam()->id)->select($selectArray->all())->orderBy('name');
}
public function awsUrl()
{
return "{$this->endpoint}/{$this->bucket}";
}
public function testConnection()
{
set_s3_target($this);
return \Storage::disk('custom-s3')->files();
}
}