<?php
namespace App\Models;
use App\Carbon;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class FileDisk extends Model
{
use HasFactory;
public const DISK_TYPE_SYSTEM = 'SYSTEM';
public const DISK_TYPE_REMOTE = 'REMOTE';
protected $guarded = [
'id',
];
protected function casts(): array
{
return [
'set_as_default' => 'boolean',
];
}
public function setCredentialsAttribute($value)
{
$this->attributes['credentials'] = json_encode($value);
}
public function scopeWhereOrder($query, $orderByField, $orderBy)
{
$query->orderBy($orderByField, $orderBy);
}
public function scopeFileDisksBetween($query, $start, $end)
{
return $query->whereBetween(
'file_disks.created_at',
[$start->format('Y-m-d'), $end->format('Y-m-d')]
);
}