Files
2024-11-23 22:14:01 +03:30

51 lines
1.4 KiB
PHP

<?php
namespace App\Models;
use App\Services\Media\HasMediaTrait;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Spatie\Image\Exceptions\InvalidManipulation;
use Spatie\MediaLibrary\HasMedia;
use Spatie\MediaLibrary\MediaCollections\Models\Media;
class TestResult extends Model implements HasMedia
{
use HasMediaTrait,HasFactory;
public $fillable = ['result', 'verified', 'test_type_id', 'user_id', 'device_id', 'cycle_number', 'date'];
public function test_type(): BelongsTo
{
return $this->belongsTo(TestType::class);
}
public function user(): BelongsTo
{
return $this->belongsTo(User::class);
}
public function input_values(): HasMany
{
return $this->hasMany(InputValue::class);
}
public function registerMediaCollections(): void
{
$this->addMediaCollection('files')
->useFallbackUrl('/files/default_pastry.jpg')
->useFallbackPath(public_path('/files/default_pastry.jpg'));
}
public function registerMediaConversions(Media $media = null): void
{
$this->addMediaConversion('thumbnail')
->width(480)
->height(640)
->nonQueued()
->performOnCollections('files');
}
}