Files
analytics/app/Models/Visitor.php
T
2026-03-18 10:56:35 +02:00

64 lines
1.3 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
class Visitor extends Model
{
use HasFactory;
protected $fillable = [
'website_id',
'uid',
'first_seen_at',
'last_seen_at',
'device_type',
'browser',
'browser_version',
'os',
'os_version',
'screen_resolution',
'language',
'country',
'region',
'city',
];
protected function casts(): array
{
return [
'first_seen_at' => 'datetime',
'last_seen_at' => 'datetime',
];
}
public function website(): BelongsTo
{
return $this->belongsTo(Website::class);
}
public function sessions(): HasMany
{
return $this->hasMany(AnalyticsSession::class);
}
public function pageViews(): HasMany
{
return $this->hasMany(PageView::class);
}
public function events(): HasMany
{
return $this->hasMany(Event::class);
}
public function goalConversions(): HasMany
{
return $this->hasMany(GoalConversion::class);
}
}