Skip to content

Commit

Permalink
fix filters on project list page
Browse files Browse the repository at this point in the history
  • Loading branch information
gheorghelupu17 committed Oct 20, 2023
1 parent bf9d184 commit 1d5a2e0
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 3 deletions.
1 change: 0 additions & 1 deletion app/Http/Controllers/ProjectController.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@
use App\Http\Sorts\ProjectDonationsSumSort;
use App\Models\Project;
use App\Models\Volunteer;
use Embed\Embed;
use Illuminate\Http\Request;
use Illuminate\Validation\ValidationException;
use Inertia\Inertia;
Expand Down
5 changes: 3 additions & 2 deletions app/Http/Filters/ProjectStatusFilter.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,13 @@ class ProjectStatusFilter implements Filter
{
public function __invoke(Builder $query, $status, string $property): Builder
{
// dd($status, $property, $query);
if ($status === 'active') {
return $query->isApproved();
return $query->whereIsOpen();
}

if ($status === 'inactive') {
return $query->isRejected();
return $query->whereIsClosed();
}

return $query;
Expand Down
10 changes: 10 additions & 0 deletions app/Models/Project.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
use App\Enums\ProjectStatus;
use App\Traits\HasProjectStatus;
use Embed\Embed;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
Expand Down Expand Up @@ -273,4 +274,13 @@ public function getEmbeddedVideosAttribute(): array

return $embeddedVideos;
}

public function scopeSearch(Builder $query, ?string $search): Builder {
if (empty($search)) {
return $query;
}
$search = trim($search);
$search = strip_tags($search);
return $query->where('name', 'like', "%{$search}%");
}
}
6 changes: 6 additions & 0 deletions app/Traits/HasProjectStatus.php
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,12 @@ public function scopeWhereIsOpen(Builder $query): Builder
->whereDate('end', '>=', now());
}

public function scopeWhereIsClosed(Builder $query): Builder
{
return $query->whereIsPublished()
->whereDate('end', '<', now());
}

public function scopeWhereStartsSoon(Builder $query): Builder
{
return $query->whereIsPublished()
Expand Down

0 comments on commit 1d5a2e0

Please sign in to comment.