27 lines
675 B
PHP
27 lines
675 B
PHP
<?php
|
|
|
|
namespace Laravel\Nova\Query;
|
|
|
|
use Laravel\Nova\TrashedStatus;
|
|
|
|
class ApplySoftDeleteConstraint
|
|
{
|
|
/**
|
|
* Apply the trashed state constraint to the query.
|
|
*
|
|
* @param \Illuminate\Database\Eloquent\Builder|\Laravel\Scout\Builder $query
|
|
* @param string $withTrashed
|
|
* @return \Illuminate\Database\Eloquent\Builder|\Laravel\Scout\Builder
|
|
*/
|
|
public function __invoke($query, $withTrashed)
|
|
{
|
|
if ($withTrashed == TrashedStatus::WITH) {
|
|
$query = $query->withTrashed();
|
|
} elseif ($withTrashed == TrashedStatus::ONLY) {
|
|
$query = $query->onlyTrashed();
|
|
}
|
|
|
|
return $query;
|
|
}
|
|
}
|