switch year

This commit is contained in:
Benjamin Takats
2022-12-15 19:28:04 +01:00
parent 04b28b924d
commit 1857269b38
4 changed files with 25 additions and 13 deletions

View File

@@ -9,25 +9,32 @@ use Livewire\Component;
class BitcoinEventTable extends Component class BitcoinEventTable extends Component
{ {
public Country $country; public Country $country;
public ?int $year = null;
protected $queryString = ['year'];
public function render() public function render()
{ {
return view('livewire.bitcoin-event.bitcoin-event-table', [ return view('livewire.bitcoin-event.bitcoin-event-table', [
'events' => BitcoinEvent::query() 'events' => BitcoinEvent::query()
->get() ->get()
->map(fn($event) => [ ->map(fn($event) => [
'id' => $event->id, 'id' => $event->id,
'startDate' => $event->from, 'startDate' => $event->from,
'endDate' => $event->to, 'endDate' => $event->to,
'location' => $event->title, 'location' => $event->title,
'description' => $event->description, 'description' => $event->description,
]), ]),
]); ]);
} }
public function popover($content, $ids) public function popover($content, $ids)
{ {
return to_route('bitcoinEvent.table.bitcoinEvent', [ return to_route('bitcoinEvent.table.bitcoinEvent', [
'country' => $this->country->code, 'table' => [ 'country' => $this->country->code,
'year' => $this->year,
'table' => [
'filters' => [ 'filters' => [
'byid' => $ids, 'byid' => $ids,
] ]

View File

@@ -74,8 +74,9 @@ class BitcoinEventTable extends DataTableComponent
public function builder(): Builder public function builder(): Builder
{ {
return BitcoinEvent::query() return BitcoinEvent::query()
->where(fn($query) => $query->whereHas('venue.city.country', ->where(fn($query) => $query
fn($query) => $query->where('code', $this->country)) ->whereHas('venue.city.country',
->orWhere('show_worldwide', true)); fn($query) => $query->where('code', $this->country))
->orWhere('show_worldwide', true));
} }
} }

View File

@@ -8,7 +8,7 @@
], ],
"license": "MIT", "license": "MIT",
"require": { "require": {
"php": "^8.1", "php": "^8.2",
"akuechler/laravel-geoly": "^1.0", "akuechler/laravel-geoly": "^1.0",
"archtechx/enums": "^0.3.1", "archtechx/enums": "^0.3.1",
"ebess/advanced-nova-media-library": "dev-master#2d7151d8b2159d28e1d73fcc7fe23992e327b7df", "ebess/advanced-nova-media-library": "dev-master#2d7151d8b2159d28e1d73fcc7fe23992e327b7df",

View File

@@ -44,7 +44,11 @@
new Calendar(this.$refs.calendar, { new Calendar(this.$refs.calendar, {
style: 'background', style: 'background',
language: 'de', language: 'de',
startYear: {{ $year }},
dataSource: events, dataSource: events,
yearChanged: function(e) {
@this.set('year', e.currentYear);
},
clickDay: function(e) { clickDay: function(e) {
if(e.events.length > 0) { if(e.events.length > 0) {
var content = ''; var content = '';