*/ use HasFactory; protected $fillable = [ 'press_release_id', 'user_id', 'placement', 'days', 'credits_charged', 'starts_at', 'ends_at', ]; protected function casts(): array { return [ 'placement' => BoostPlacement::class, 'days' => 'integer', 'credits_charged' => 'integer', 'starts_at' => 'datetime', 'ends_at' => 'datetime', ]; } public function pressRelease(): BelongsTo { return $this->belongsTo(PressRelease::class); } public function user(): BelongsTo { return $this->belongsTo(User::class); } /** * Boosts, deren Platzierung gerade aktiv ist (läuft noch). */ public function scopeActive(Builder $query): Builder { return $query->where('ends_at', '>', now()); } public function scopeForPlacement(Builder $query, BoostPlacement $placement): Builder { return $query->where('placement', $placement); } }