adds upload cron && fixes date formatting

This commit is contained in:
Christian Beutel
2024-03-28 18:36:59 +01:00
parent 15dcc2a629
commit 1d8520fa67
11 changed files with 83 additions and 34 deletions

View File

@@ -1,6 +1,6 @@
<script lang="ts">
import type { SummitLog } from "$lib/models/summit_log";
import { format, parse } from "date-fns";
import { parse } from "date-fns";
import { _ } from "svelte-i18n";
import Dropdown, { type DropdownItem } from "../base/dropdown.svelte";

View File

@@ -6,11 +6,10 @@
import { createForm } from "$lib/vendor/svelte-form-lib/index";
import { util } from "$lib/vendor/svelte-form-lib/util";
import { _ } from "svelte-i18n";
import { date, object, string } from "yup";
import Datepicker from "../base/datepicker.svelte";
import Modal from "../base/modal.svelte";
import TextField from "../base/text_field.svelte";
import { date, object, string } from "yup";
import { parse } from "date-fns";
export let openModal: (() => void) | undefined = undefined;
export let closeModal: (() => void) | undefined = undefined;
@@ -18,13 +17,7 @@
const summitLogSchema = object<SummitLog>({
id: string().optional(),
date: date()
.transform((value, originalValue, context) => {
if (context.isType(value)) return value;
return parse(originalValue, "dd.MM.yyyy", new Date());
})
.required("Required")
.typeError($_("invalid-date")),
date: date().required("Required").typeError($_("invalid-date")),
text: string().optional(),
});
@@ -37,6 +30,7 @@
},
});
$: form.set(util.cloneDeep($summitLog));
$: console.log($summitLog);
</script>
<Modal

View File

@@ -2,7 +2,7 @@ import { SummitLog } from "$lib/models/summit_log";
import { ClientResponseError } from "pocketbase";
import { writable, type Writable } from "svelte/store";
export const summitLog: Writable<SummitLog> = writable(new SummitLog(new Date().toISOString()));
export const summitLog: Writable<SummitLog> = writable(new SummitLog(new Date().toISOString().substring(0, 10)));
export async function summit_logs_create(summitLog: SummitLog) {
const r = await fetch('/api/v1/summit-log', {

View File

@@ -167,7 +167,7 @@ export async function trails_search_bounding_box(northEast: LatLng, southWest: L
export async function trails_show(id: string, loadGPX?: boolean, f: (url: RequestInfo | URL, config?: RequestInit) => Promise<Response> = fetch) {
const r = await f(`/api/v1/trail/${id}?` + new URLSearchParams({
expand: "category,waypoints,summit_logs,lists_via_trails",
expand: "category,waypoints,summit_logs",
}), {
method: 'GET',
})

View File

@@ -40,7 +40,6 @@
import "$lib/vendor/leaflet-elevation/src/index.css";
import { createForm } from "$lib/vendor/svelte-form-lib";
import cryptoRandomString from "crypto-random-string";
import { format } from "date-fns";
import type { GPX, Icon, LeafletEvent, Map } from "leaflet";
import "leaflet.awesome-markers/dist/leaflet.awesome-markers.css";
import "leaflet/dist/leaflet.css";
@@ -384,14 +383,8 @@
savedWaypoint.marker = marker;
}
function beforeSummitLogModalOpen() {
summitLog.set(new SummitLog(format(new Date(), "yyyy-MM-dd")));
openSummitLogModal();
}
function saveSummitLog(e: CustomEvent<SummitLog>) {
const savedSummitLog = e.detail;
savedSummitLog.date = format(savedSummitLog.date, "yyyy-MM-dd");
let editedSummitLogIndex = $form.expand.summit_logs.findIndex(
(s) => s.id == savedSummitLog.id,
);
@@ -413,7 +406,6 @@
e: CustomEvent<{ text: string; value: string }>,
) {
if (e.detail.value === "edit") {
currentSummitLog.date = format(currentSummitLog.date, "yyyy-MM-dd");
summitLog.set(currentSummitLog);
openSummitLogModal();
} else if (e.detail.value === "delete") {
@@ -618,7 +610,7 @@
<button
class="btn-secondary"
type="button"
on:click={beforeSummitLogModalOpen}
on:click={openSummitLogModal}
><i class="fa fa-plus mr-2"></i>{$_("add-entry")}</button
>
{#if $lists.length}