summaryrefslogtreecommitdiff
path: root/ui/routes
diff options
context:
space:
mode:
authorOwen Jacobson <owen@grimoire.ca>2024-10-30 18:01:48 -0400
committerOwen Jacobson <owen@grimoire.ca>2024-10-30 18:01:48 -0400
commit1eec6338e1146439b1dbc6207843fbc44dd13088 (patch)
treecfa42de569384f2ea09002450df08b766f57506c /ui/routes
parent73f58f2c648a48019c611a4659d882223e4432d4 (diff)
Don't leave field binding vars uninitialized.
This was causing problems for changing passwords: if the user didn't type anything in the "original password" field, the code path to sending that field to the server was just straight-up omitting the field from the message, rather than setting it to empty string, causing a 422 Unprocessable Entity. On investigation we had latent bugs related to this in a bunch of spots.
Diffstat (limited to 'ui/routes')
-rw-r--r--ui/routes/(app)/me/+page.svelte2
-rw-r--r--ui/routes/(login)/invite/[invite]/+page.svelte10
-rw-r--r--ui/routes/(login)/login/+page.svelte10
-rw-r--r--ui/routes/(login)/setup/+page.svelte10
4 files changed, 16 insertions, 16 deletions
diff --git a/ui/routes/(app)/me/+page.svelte b/ui/routes/(app)/me/+page.svelte
index 7559dbe..82af3c7 100644
--- a/ui/routes/(app)/me/+page.svelte
+++ b/ui/routes/(app)/me/+page.svelte
@@ -3,7 +3,7 @@
import Invites from '$lib/components/Invites.svelte';
- let currentPassword, newPassword, confirmPassword, passwordForm;
+ let currentPassword = "", newPassword = "", confirmPassword = "", passwordForm;
let pending = false;
$: valid = (newPassword === confirmPassword) && (newPassword !== currentPassword);
$: disabled = pending || !valid;
diff --git a/ui/routes/(login)/invite/[invite]/+page.svelte b/ui/routes/(login)/invite/[invite]/+page.svelte
index 798dfb7..7ae388a 100644
--- a/ui/routes/(login)/invite/[invite]/+page.svelte
+++ b/ui/routes/(login)/invite/[invite]/+page.svelte
@@ -6,19 +6,19 @@
export let data;
- let disabled;
- let username;
- let password;
+ let username = "", password = "";
+ let pending = false;
+ $: disabled = pending;
async function onSubmit() {
- disabled = true;
+ pending = true;
const response = await acceptInvite(data.invite.id, username, password);
if (200 <= response.status && response.status < 300) {
username = '';
password = '';
goto('/');
}
- disabled = false;
+ pending = false;
}
</script>
diff --git a/ui/routes/(login)/login/+page.svelte b/ui/routes/(login)/login/+page.svelte
index 29dba54..0387e4a 100644
--- a/ui/routes/(login)/login/+page.svelte
+++ b/ui/routes/(login)/login/+page.svelte
@@ -4,19 +4,19 @@
import LogIn from '$lib/components/LogIn.svelte';
- let disabled;
- let username;
- let password;
+ let username = "", password = "";
+ let pending = false;
+ $: disabled = pending;
async function onSubmit() {
- disabled = true;
+ pending = true;
const response = await logIn(username, password);
if (200 <= response.status && response.status < 300) {
username = '';
password = '';
goto('/');
}
- disabled = false;
+ pending = false;
}
</script>
diff --git a/ui/routes/(login)/setup/+page.svelte b/ui/routes/(login)/setup/+page.svelte
index 2503502..a1974b8 100644
--- a/ui/routes/(login)/setup/+page.svelte
+++ b/ui/routes/(login)/setup/+page.svelte
@@ -4,19 +4,19 @@
import LogIn from '$lib/components/LogIn.svelte';
- let disabled;
- let username;
- let password;
+ let username = "", password = "";
+ let pending = false;
+ $: disabled = pending;
async function onSubmit() {
- disabled = true;
+ pending = true;
const response = await setup(username, password);
if (200 <= response.status && response.status < 300) {
username = '';
password = '';
goto('/');
}
- disabled = false;
+ pending = false;
}
</script>