Merge pull request 'add link to sections' (#49) from waffle.lord/forge:fix/view-all-filtering into develop

Reviewed-on: SPT/forge#49
This commit is contained in:
Refringe 2024-09-11 18:29:24 +00:00
commit 2932e48c7f
4 changed files with 6 additions and 14 deletions

View File

@ -8,7 +8,6 @@ use Illuminate\Contracts\View\View;
use Illuminate\Database\Eloquent\Collection;
use Illuminate\Support\Facades\Cache;
use Livewire\Attributes\Computed;
use Livewire\Attributes\Session;
use Livewire\Attributes\Url;
use Livewire\Component;
use Livewire\WithPagination;
@ -21,28 +20,24 @@ class Index extends Component
* The search query value.
*/
#[Url]
#[Session]
public string $query = '';
/**
* The sort order value.
*/
#[Url]
#[Session]
public string $order = 'created';
/**
* The SPT versions filter value.
*/
#[Url]
#[Session]
public array $sptVersions = [];
/**
* The featured filter value.
*/
#[Url]
#[Session]
public string $featured = 'include';
/**
@ -102,9 +97,6 @@ class Index extends Component
$this->query = '';
$this->sptVersions = $this->getLatestMinorVersions()->pluck('version')->toArray();
$this->featured = 'include';
// Clear local storage
$this->dispatch('clear-filters');
}
/**

View File

@ -88,16 +88,19 @@ class ModListSection extends Component
'title' => __('Featured Mods'),
'mods' => $this->modsFeatured,
'versionScope' => 'latestVersion',
'link' => '/mods?featured=only',
],
[
'title' => __('Newest Mods'),
'mods' => $this->modsLatest,
'versionScope' => 'latestVersion',
'link' => '/mods',
],
[
'title' => __('Recently Updated Mods'),
'mods' => $this->modsUpdated,
'versionScope' => 'lastUpdatedVersion',
'link' => '/mods?order=updated',
],
];
}

View File

@ -1,10 +1,6 @@
@props(['mods', 'versionScope', 'title'])
@props(['mods', 'versionScope', 'title', 'link'])
<div class="mx-auto max-w-7xl px-4 pt-16 sm:px-6 lg:px-8">
{{--
TODO: The button-link should be dynamic based on the versionScope. Eg. Featured `View All` button should take
the user to the mods page with the `featured` query parameter set.
--}}
<x-page-content-title :title="$title" button-text="View All" button-link="/mods" />
<x-page-content-title :title="$title" button-text="View All" :button-link="$link" />
<x-mod-list :mods="$mods" :versionScope="$versionScope" />
</div>

View File

@ -3,5 +3,6 @@
'title' => $section['title'],
'mods' => $section['mods'],
'versionScope' => $section['versionScope'],
'link' => $section['link']
])
@endforeach