Move all code to old/ to prepare for Nuxt rewrite
This commit is contained in:
parent
6007f4caeb
commit
51ff27c569
33 changed files with 0 additions and 1 deletions
93
old/ui/events-edit.tsx
Normal file
93
old/ui/events-edit.tsx
Normal file
|
@ -0,0 +1,93 @@
|
|||
"use client";
|
||||
import { createEvent, deleteEvent, modifyEvent } from "@/app/api/events/actions";
|
||||
import { useSchedule } from "@/app/schedule/context";
|
||||
import Form from "next/form";
|
||||
import { useState } from "react";
|
||||
|
||||
export function EventsEdit() {
|
||||
const schedule = useSchedule()!;
|
||||
const event = schedule.events[0];
|
||||
|
||||
return <details>
|
||||
<summary>Admin Edit</summary>
|
||||
<h3>Create Event</h3>
|
||||
<Form action={createEvent}>
|
||||
<label>
|
||||
Id:
|
||||
<input type="text" name="id" required />
|
||||
</label>
|
||||
<label>
|
||||
Name:
|
||||
<input type="text" name="name" required />
|
||||
</label>
|
||||
<label>
|
||||
Description:
|
||||
<textarea name="description" />
|
||||
</label>
|
||||
<label>
|
||||
Start:
|
||||
<input type="datetime-local" name="start" defaultValue="2025-07-20T18:00" />
|
||||
</label>
|
||||
<label>
|
||||
End:
|
||||
<input type="datetime-local" name="end" defaultValue="2025-07-20T20:00" />
|
||||
</label>
|
||||
<label>
|
||||
Location
|
||||
<select name="location">
|
||||
{schedule?.locations.map(location => <option key={location.id} value={location.id}>{location.name}</option>)}
|
||||
</select>
|
||||
</label>
|
||||
<button type="submit">Create</button>
|
||||
</Form>
|
||||
<h3>Edit Event</h3>
|
||||
<Form action={modifyEvent}>
|
||||
<label>
|
||||
Event
|
||||
<select name="id" onChange={(event) => {
|
||||
const newEvent = schedule.events.find(e => e.id === event.target.value)!;
|
||||
const form = event.target.form!;
|
||||
for (const element of form.elements as any) {
|
||||
if (element.name === "name") {
|
||||
element.value = newEvent.name;
|
||||
} else if (element.name === "description") {
|
||||
element.value = newEvent.description;
|
||||
} else if (element.name === "start") {
|
||||
element.value = newEvent.slots[0].start.replace("Z", "");
|
||||
} else if (element.name === "end") {
|
||||
element.value = newEvent.slots[0].end.replace("Z", "");
|
||||
} else if (element.name === "location") {
|
||||
element.value = newEvent.slots[0].locations[0];
|
||||
}
|
||||
}
|
||||
}}>
|
||||
{schedule?.events.map(event => <option key={event.id} value={event.id}>{event.name}</option>)}
|
||||
</select>
|
||||
</label>
|
||||
<label>
|
||||
Name:
|
||||
<input type="text" name="name" defaultValue={event.name} />
|
||||
</label>
|
||||
<label>
|
||||
Description:
|
||||
<textarea name="description" defaultValue={event.description} />
|
||||
</label>
|
||||
<label>
|
||||
Start:
|
||||
<input type="datetime-local" name="start" defaultValue={event.slots[0].start.replace("Z", "")} />
|
||||
</label>
|
||||
<label>
|
||||
End:
|
||||
<input type="datetime-local" name="end" defaultValue={event.slots[0].end.replace("Z", "")} />
|
||||
</label>
|
||||
<label>
|
||||
Location
|
||||
<select name="location">
|
||||
{schedule?.locations.map(location => <option key={location.id} value={location.id}>{location.name}</option>)}
|
||||
</select>
|
||||
</label>
|
||||
<button type="submit">Edit</button>
|
||||
<button type="submit" formAction={deleteEvent}>Delete</button>
|
||||
</Form>
|
||||
</details>;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue