1
0
Fork 0
mirror of https://github.com/seanmorley15/AdventureLog.git synced 2025-08-05 13:15:18 +02:00

Merge pull request #160 from seanmorley15/development

Development
This commit is contained in:
Sean Morley 2024-08-04 22:00:04 -04:00 committed by GitHub
commit 885112f168
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 123 additions and 92 deletions

View file

@ -74,6 +74,9 @@ MIDDLEWARE = (
)
# disable verifications for new users
ACCOUNT_EMAIL_VERIFICATION = 'none'
# For backwards compatibility for Django 1.8
MIDDLEWARE_CLASSES = MIDDLEWARE

View file

@ -61,6 +61,7 @@
) + 1}{' '}
days
</p>{/if}
<div class="badge badge-neutral">{collection.is_public ? 'Public' : 'Private'}</div>
<div class="card-actions justify-end">
{#if type != 'link'}
<button on:click={deleteCollection} class="btn btn-secondary"

View file

@ -28,17 +28,15 @@
const searchGo = async (e: Event) => {
e.preventDefault();
let reload: boolean = false;
if ($page.url.pathname === '/search') {
reload = true;
let url = new URL(window.location.href);
url.searchParams.set('query', query);
goto(url.toString(), { invalidateAll: true });
}
if (query) {
await goto(`/search?query=${query}`);
if (reload) {
window.location.reload();
}
goto(`/search?query=${query}`);
}
};
</script>

View file

@ -33,6 +33,9 @@
>
<div class="card-body">
<h2 class="card-title overflow-ellipsis">{note.name}</h2>
{#if note.links && note.links.length > 0}
<p>{note.links.length} links</p>
{/if}
<div class="card-actions justify-end">
<!-- <button class="btn btn-neutral mb-2" on:click={() => goto(`/notes/${note.id}`)}
><Launch class="w-6 h-6" />Open Details</button
@ -45,7 +48,7 @@
id="delete_adventure"
data-umami-event="Delete Adventure"
class="btn btn-warning"
on:click={deleteNote}><TrashCan class="w-6 h-6" />Delete</button
on:click={deleteNote}><TrashCan class="w-6 h-6" /></button
>
{/if}
</div>

View file

@ -164,11 +164,11 @@
{#if newNote.links.length > 0}
<ul class="list-none">
{#each newNote.links as link, i}
<li class="mb-1">
<a href={link} target="_blank">{link}</a>
<li class="mb-4">
<a href={link} class="link link-primary" target="_blank">{link}</a>
<button
type="button"
class="btn btn-sm btn-error"
class="btn btn-sm btn-error absolute right-0 mr-4"
on:click={() => {
newNote.links = newNote.links.filter((_, index) => index !== i);
}}
@ -199,11 +199,11 @@
</div>
{/if}
<button class="btn btn-primary" on:click={save}>Save</button>
<button class="btn btn-primary mr-1" on:click={save}>Save</button>
<button class="btn btn-neutral" on:click={close}>Close</button>
{#if collection.is_public}
<div role="alert" class="alert alert-info mt-4">
<div role="alert" class="alert mt-4">
<svg
xmlns="http://www.w3.org/2000/svg"
fill="none"

View file

@ -412,6 +412,9 @@
{#if collection.name}
<h1 class="text-center font-extrabold text-4xl mb-2">{collection.name}</h1>
{/if}
{#if collection.description}
<p class="text-center text-lg mb-2">{collection.description}</p>
{/if}
{#if adventures.length > 0}
<div class="flex items-center justify-center mb-4">
<div class="stats shadow bg-base-300">

View file

@ -6,7 +6,7 @@
import type { PageData } from './$types';
import EditAdventure from '$lib/components/EditAdventure.svelte';
import { appVersion } from '$lib/config';
import { goto, invalidate } from '$app/navigation';
import { goto } from '$app/navigation';
export let data: PageData;
@ -110,61 +110,61 @@
{#if myAdventures.length !== 0 && publicAdventures.length !== 0}
<h2 class="text-center font-bold text-2xl mb-4">AdventureLog Results</h2>
{/if}
<div class="flex items-center justify-center mt-2 mb-2">
<div class="join">
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="All"
id="all"
checked
on:change={() => (property = 'all')}
/>
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="Name"
id="name"
on:change={() => (property = 'name')}
/>
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="Type"
id="type"
on:change={() => (property = 'type')}
/>
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="Location"
id="location"
on:change={() => (property = 'location')}
/>
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="Description"
id="description"
on:change={() => (property = 'description')}
/>
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="Activity Types"
id="activity_types"
on:change={() => (property = 'activity_types')}
/>
<div class="flex items-center justify-center mt-2 mb-2">
<div class="join">
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="All"
id="all"
checked
on:change={() => (property = 'all')}
/>
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="Name"
id="name"
on:change={() => (property = 'name')}
/>
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="Type"
id="type"
on:change={() => (property = 'type')}
/>
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="Location"
id="location"
on:change={() => (property = 'location')}
/>
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="Description"
id="description"
on:change={() => (property = 'description')}
/>
<input
class="join-item btn"
type="radio"
name="filter"
aria-label="Activity Types"
id="activity_types"
on:change={() => (property = 'activity_types')}
/>
</div>
<button class="btn btn-primary ml-2" type="button" on:click={filterByProperty}>Filter</button>
</div>
<button class="btn btn-primary ml-2" type="button" on:click={filterByProperty}>Filter</button>
</div>
{/if}
{#if myAdventures.length > 0}
<h2 class="text-center font-bold text-2xl mb-4">My Adventures</h2>
@ -199,7 +199,7 @@
<div class="divider"></div>
{/if}
{#if osmResults.length > 0}
<h2 class="text-center font-bold text-2xl mb-4">Online Results</h2>
<h2 class="text-center font-bold mt-2 text-2xl mb-4">Online Results</h2>
<div class="flex flex-wrap gap-4 mr-4 justify-center content-center">
{#each osmResults as result}
<div class="bg-base-300 rounded-lg shadow-md p-4 w-96 mb-2">

View file

@ -1,5 +1,6 @@
<script lang="ts">
import { enhance } from '$app/forms';
import { goto } from '$app/navigation';
import { page } from '$app/stores';
import type { PageData } from './$types';
@ -7,29 +8,51 @@
</script>
<h1 class="text-center font-bold text-4xl mb-4">Change Password</h1>
<form action="?/reset" method="post" use:enhance>
<input type="hidden" name="uid" value={data.props.uid} />
<input type="hidden" name="token" value={data.props.token} />
<div class="flex items-center justify-center gap-4">
<input
type="password"
class="input input-bordered w-full max-w-xs"
id="new_password1"
name="new_password1"
placeholder="New Password"
/>
<input
type="password"
class="input input-bordered w-full max-w-xs"
id="new_password2"
name="new_password2"
placeholder="Confirm Password"
/>
<button type="submit" class="btn btn-primary"> Submit </button>
{#if $page.form?.message}
<div class="text-center text-error mt-4">
{$page.form?.message}
{#if data.props.token && data.props.uid}
<p class="text-center">You will then be redirected to the login page.</p>
<div
class="modal-action items-center"
style="display: flex; flex-direction: column; align-items: center; width: 100%;"
>
<form action="?/reset" method="post" use:enhance>
<input type="hidden" name="uid" value={data.props.uid} />
<input type="hidden" name="token" value={data.props.token} />
<div class="mb-2 w-full">
<input
type="password"
class="input input-bordered w-full"
id="new_password1"
name="new_password1"
placeholder="New Password"
/>
</div>
{/if}
<div class="mb-2 w-full">
<input
type="password"
class="input input-bordered w-full"
id="new_password2"
name="new_password2"
placeholder="Confirm Password"
/>
</div>
<button type="submit" class="btn btn-primary w-full">Submit</button>
{#if $page.form?.message}
<div class="text-center text-error mt-4">
{$page.form?.message}
</div>
{/if}
</form>
</div>
</form>
{:else}
<div class="flex justify-center">
<div class="items-center justify-center">
<p class="text-center">Token and UID are required for password reset.</p>
<button class="btn btn-neutral" on:click={() => goto('/settings/forgot-password')}>
Reset Password
</button>
</div>
</div>
{/if}