check if password and repeat match

This commit is contained in:
Julian Krauser 2025-05-06 09:02:55 +02:00
parent b39198c935
commit f65b3108ee
5 changed files with 62 additions and 6 deletions

View file

@ -56,16 +56,19 @@
placeholder="Passwort"
class="rounded-b-none!"
autocomplete="new-password"
:class="notMatching ? 'border-red-600!' : ''"
/>
<input
id="passwordrep"
name="passwordrep"
id="password_rep"
name="password_rep"
type="password"
required
placeholder="Passwort wiederholen"
class="rounded-t-none!"
autocomplete="new-password"
:class="notMatching ? 'border-red-600!' : ''"
/>
<p v-if="notMatching">Passwörter stimmen nicht überein</p>
</div>
<div class="flex flex-row gap-2">
@ -110,6 +113,7 @@ export default defineComponent({
username: "" as string,
inviteStatus: undefined as undefined | "loading" | "success" | "failed",
inviteError: "" as string,
notMatching: false as boolean,
};
},
mounted() {
@ -138,6 +142,8 @@ export default defineComponent({
if (this.tab == "totp") secret = this.totp(e);
else secret = await this.password(e);
if (secret == "") return;
this.inviteStatus = "loading";
this.inviteError = "";
this.$http
@ -166,6 +172,15 @@ export default defineComponent({
},
async password(e: any) {
let formData = e.target.elements;
let new_pw = await hashString(formData.password.value);
let new_rep = await hashString(formData.password_rep.value);
if (new_pw != new_rep) {
this.notMatching = true;
return "";
}
this.notMatching = false;
return await hashString(formData.password.value);
},
},