Skip to content
Snippets Groups Projects
Commit 271427ba authored by ForkBench's avatar ForkBench
Browse files

Removing event for new competitions, replacing it with subscriptions

parent 61044971
No related branches found
No related tags found
No related merge requests found
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
import Registrations from "./components/Seedings/Registrations.svelte"; import Registrations from "./components/Seedings/Registrations.svelte";
import * as Session from "../bindings/changeme/astro/services/session"; import * as Session from "../bindings/changeme/astro/services/session";
import { Competition } from "../bindings/changeme/astro/services/models"; import { Competition } from "../bindings/changeme/astro/services/models";
import { Competitions } from "./store";
let competitions: Competition[] = []; let competitions: Competition[] = [];
let loading = true; let loading = true;
...@@ -14,7 +15,7 @@ ...@@ -14,7 +15,7 @@
}); });
// Listen for the "need-to-update" event // Listen for the "need-to-update" event
window.addEventListener("need-to-update", async () => { Competitions.subscribe(async () => {
competitions = await Session.GetCompetitions(); competitions = await Session.GetCompetitions();
}); });
</script> </script>
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
RemoveCompetition, RemoveCompetition,
} from "../../bindings/changeme/astro/services/session"; } from "../../bindings/changeme/astro/services/session";
import { onMount } from "svelte"; import { onMount } from "svelte";
import { SelectedCompetition } from "../store"; import { SelectedCompetition, Competitions } from "../store";
let competitions: Competition[] = []; let competitions: Competition[] = [];
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
competitions = await GetCompetitions(); competitions = await GetCompetitions();
// Emit a signal to the parent component // Emit a signal to the parent component
dispatchEvent(new CustomEvent("need-to-update", {})); Competitions.set(competitions);
} }
onMount(loadCompetitions); onMount(loadCompetitions);
...@@ -37,9 +37,9 @@ ...@@ -37,9 +37,9 @@
<button <button
on:click={async () => { on:click={async () => {
await RemoveCompetition(competition.CompetitionID); await RemoveCompetition(competition.CompetitionID);
loadCompetitions();
SelectedCompetition.set(undefined); SelectedCompetition.set(undefined);
loadCompetitions();
}}>X</button }}>X</button
> >
</div> </div>
......
...@@ -9,7 +9,6 @@ ...@@ -9,7 +9,6 @@
let players: (Models.Player | null)[] = []; let players: (Models.Player | null)[] = [];
let filteredPlayers: (Models.Player | null)[] = []; let filteredPlayers: (Models.Player | null)[] = [];
let competition: Models.Competition | undefined; let competition: Models.Competition | undefined;
var playerNumber = 0;
SelectedCompetition.subscribe((value) => { SelectedCompetition.subscribe((value) => {
competition = value; competition = value;
...@@ -265,7 +264,8 @@ ...@@ -265,7 +264,8 @@
on:click={async () => { on:click={async () => {
var player = await GenerateRandomPlayer(); var player = await GenerateRandomPlayer();
if (player != null) { if (player != null) {
player.PlayerInitialRank = ++playerNumber; player.PlayerInitialRank =
players.length + 1;
} }
if (competition != undefined) if (competition != undefined)
......
...@@ -2,3 +2,4 @@ import { writable } from 'svelte/store'; ...@@ -2,3 +2,4 @@ import { writable } from 'svelte/store';
import type { Competition } from '../bindings/changeme/astro/services/models'; import type { Competition } from '../bindings/changeme/astro/services/models';
export const SelectedCompetition = writable<Competition | undefined>(undefined); export const SelectedCompetition = writable<Competition | undefined>(undefined);
export const Competitions = writable<(Competition | undefined)[]>([]);
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment