trying to add score updates

This commit is contained in:
2026-05-06 20:00:30 +01:00
parent 94c139c7b8
commit fdfbd4c7c7
7 changed files with 32 additions and 642 deletions

View File

@@ -19,10 +19,6 @@ export const eventAttributions = sqliteTable('eventAttributions', {
.notNull(),
playerID: integer('playerID')
.references(() => players.id)
.notNull(),
placement: integer('placement')
.references(() => scoringPresets.placement)
.default(0)
.notNull()
});
@@ -84,8 +80,8 @@ export const ledgerScores = sqliteTable('ledgerScores', {
ledgerID: integer('ledgerID')
.references(() => ledger.id)
.notNull(),
team: integer('team')
.references(() => teams.id)
player: integer('player')
.references(() => players.id)
.notNull(),
placement: integer('placement').references(() => scoringPresets.placement),
points: integer('points').notNull().default(0)
@@ -100,6 +96,6 @@ export const teamScoresView = sqliteView('teamScoresView').as((qb) => {
totalPoints: sql<number>`sum(${ledgerScores.points})`.mapWith(Number).as('totalPoints')
})
.from(teams)
.leftJoin(ledgerScores, eq(teams.id, ledgerScores.team))
.leftJoin(ledgerScores, eq(teams.id, ledgerScores.player))
.groupBy(teams.id);
});

View File

@@ -1,13 +1,20 @@
import { db } from '$lib/server/db';
import * as schema from '$lib/server/db/schema';
export class House {
name: string = '';
color: string = 'white';
points: number = $state(0);
}
import type { Actions } from './$types';
export const load = async () => {
return await getTeams();
};
export const actions = {
addEntry: async (event) => {
console.log('something');
}
} satisfies Actions;
let testScore = 0;
export async function getTeams() {
const allTeams = await db.select().from(schema.teamScoresView);
console.log(allTeams);
return {
@@ -15,7 +22,7 @@ export const load = async () => {
...team,
name: team.teamName,
color: team.teamColor,
points: team.totalPoints || 0
points: team.totalPoints || testScore
}))
};
};
}

View File

@@ -1,5 +1,5 @@
<script lang="ts">
import type { PageData } from './$types';
import { enhance } from '$app/forms';
let { data }: { data: import('./$types').PageData } = $props();
let leaderboard = $derived([...data.teams].sort((a, b) => b.points - a.points));
@@ -19,6 +19,8 @@
{/each}
</div>
<form method="POST" action="?/addEntry" use:enhance><button>click</button></form>
<style>
@import url('https://cdn.jsdelivr.net/npm/@catppuccin/palette/css/catppuccin.css');
.score-box {