Filterbar on Concert page

This commit is contained in:
2024-10-22 20:26:35 +02:00
parent 70227329f2
commit b1eea15bac
7 changed files with 84 additions and 7 deletions

View File

@@ -14,7 +14,10 @@ function itemProps(item: GenreModel) {
</script>
<template>
<card-view :title="$t('filtering')">
<card-view
:title="$t('filtering')"
icon="mdi-filter"
>
<v-row>
<v-col>
<v-select

View File

@@ -0,0 +1,51 @@
<script setup lang="ts">
import cardView from '@/components/basics/cardView.vue';
import outlinedButton from '@/components/basics/outlinedButton.vue';
import { CityModel } from '@/data/models/locations/cityModel';
import { LocationModel } from '@/data/models/locations/locationModel';
import { useConcertStore } from '@/stores/concert.store';
import { useLocationStore } from '@/stores/location.store';
const concertStore = useConcertStore()
const locationStore = useLocationStore()
locationStore.getLocations()
function itemProps(item: CityModel) {
return {
title: item.name
}
}
</script>
<template>
<card-view
:title="$t('filtering')"
icon="mdi-filter"
>
<v-row>
<v-col>
<v-select
v-model="concertStore.filteredCities"
:items="locationStore.cities"
variant="outlined"
:label="$t('city', 2)"
:item-props="itemProps"
chips
clearable
hide-details
multiple
/>
</v-col>
<v-col cols="auto">
<outlined-button
@click="concertStore.getConcerts"
height="100%"
>
{{ $t('filtering') }}
</outlined-button>
</v-col>
</v-row>
</card-view>
</template>

View File

@@ -3,6 +3,7 @@ import { useConcertStore } from '@/stores/concert.store';
import concertListItem from '@/components/pageParts/concertListItem.vue';
import cardViewHorizontal from '@/components/basics/cardViewHorizontal.vue';
import sectionDivider from '@/components/basics/sectionDivider.vue';
import concertFilterbar from './concertFilterbar.vue';
const concertStore = useConcertStore()
@@ -17,8 +18,7 @@ concertStore.getConcerts()
<v-col cols="10">
<v-row>
<v-col>
Filterbar
<!-- todo: Filterbar? -->
<concert-filterbar />
</v-col>
</v-row>