mirror of
https://github.com/seanmorley15/AdventureLog.git
synced 2025-07-23 06:49:37 +02:00
search ui fixes
This commit is contained in:
parent
fc782d9354
commit
e093be31af
3 changed files with 32 additions and 7 deletions
|
@ -157,8 +157,8 @@ class AdventureViewSet(viewsets.ModelViewSet):
|
|||
(Q(user_id=request.user.id) | Q(is_public=True))
|
||||
)
|
||||
queryset = self.apply_sorting(queryset)
|
||||
adventures = self.paginate_and_respond(queryset, request)
|
||||
return adventures
|
||||
serializer = self.get_serializer(queryset, many=True)
|
||||
return Response(serializer.data)
|
||||
|
||||
def paginate_and_respond(self, queryset, request):
|
||||
paginator = self.pagination_class()
|
||||
|
|
|
@ -25,10 +25,7 @@ export const load = (async (event) => {
|
|||
|
||||
return {
|
||||
props: {
|
||||
adventures: data.results as Adventure[],
|
||||
nextPage: data.next,
|
||||
prevPage: data.previous,
|
||||
total: data.count,
|
||||
adventures: data,
|
||||
query
|
||||
}
|
||||
};
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
import type { Adventure, OpenStreetMapPlace } from '$lib/types';
|
||||
import { onMount } from 'svelte';
|
||||
import type { PageData } from './$types';
|
||||
import { page } from '$app/stores';
|
||||
import EditAdventure from '$lib/components/EditAdventure.svelte';
|
||||
|
||||
export let data: PageData;
|
||||
|
||||
|
@ -41,8 +41,35 @@
|
|||
if (data.props) {
|
||||
adventures = data.props.adventures;
|
||||
}
|
||||
|
||||
let adventureToEdit: Adventure;
|
||||
let isEditModalOpen: boolean = false;
|
||||
let isShowingCreateModal: boolean = false;
|
||||
|
||||
function editAdventure(event: CustomEvent<Adventure>) {
|
||||
adventureToEdit = event.detail;
|
||||
isEditModalOpen = true;
|
||||
}
|
||||
|
||||
function saveEdit(event: CustomEvent<Adventure>) {
|
||||
adventures = adventures.map((adventure) => {
|
||||
if (adventure.id === event.detail.id) {
|
||||
return event.detail;
|
||||
}
|
||||
return adventure;
|
||||
});
|
||||
isEditModalOpen = false;
|
||||
}
|
||||
</script>
|
||||
|
||||
{#if isEditModalOpen}
|
||||
<EditAdventure
|
||||
{adventureToEdit}
|
||||
on:close={() => (isEditModalOpen = false)}
|
||||
on:saveEdit={saveEdit}
|
||||
/>
|
||||
{/if}
|
||||
|
||||
{#if adventures.length === 0 && osmResults.length === 0}
|
||||
<NotFound error={data.error} />
|
||||
{/if}
|
||||
|
@ -56,6 +83,7 @@
|
|||
type={adventure.type}
|
||||
{adventure}
|
||||
on:delete={deleteAdventure}
|
||||
on:edit={editAdventure}
|
||||
/>
|
||||
{/each}
|
||||
</div>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue