From 264e0d7ed98c5000da543af154d6e36a6b956e4a Mon Sep 17 00:00:00 2001 From: Philipp Dormann Date: Sat, 9 Jan 2021 18:55:54 +0100 Subject: [PATCH] AddUserModal - data validation ref #12 --- src/components/AddUserModal.svelte | 41 +++++++++++++++--------------- 1 file changed, 20 insertions(+), 21 deletions(-) diff --git a/src/components/AddUserModal.svelte b/src/components/AddUserModal.svelte index dc2f3447..6761df9e 100644 --- a/src/components/AddUserModal.svelte +++ b/src/components/AddUserModal.svelte @@ -3,11 +3,10 @@ import { clickOutside } from "./outsideclick"; import { focusTrap } from "svelte-focus-trap"; import { tracks as tracksstore } from "../store.js"; - import { TrackService, UserService } from "@odit/lfk-client-js"; + import { UserService } from "@odit/lfk-client-js"; import isEmail from "validator/es/lib/isEmail"; import Toastify from "toastify-js"; import "toastify-js/src/toastify.css"; - import About from "./About.svelte"; export let modal_open; let firstname_input; let lastname_input; @@ -22,14 +21,13 @@ $: email_input_value = ""; $: lastname_input_value = ""; $: firstname_input_value = ""; - $: track_min_duration = 0; - $: tracklength = 0; $: processed_last_submit = true; - $: isPasswordValid = password_input_value.trim().length === 0; + $: isPasswordValid = password_input_value.trim().length !== 0; $: isEmailValid = isEmail(email_input_value); - $: isLastnameValid = lastname_input_value.trim().length === 0; - $: isFirstnameValid = firstname_input_value.trim().length === 0; - $: createbtnenabled = !isFirstnameValid && !isLastnameValid; + $: isLastnameValid = lastname_input_value.trim().length !== 0; + $: isFirstnameValid = firstname_input_value.trim().length !== 0; + $: createbtnenabled = + isFirstnameValid && isLastnameValid && isEmailValid && isPasswordValid; (function () { document.onkeydown = function (e) { e = e || window.event; @@ -55,7 +53,8 @@ firstname: firstname_input_value, lastname: lastname_input_value, middlename: middlename_input_value, - email:email_input_value,password:password_input_value + email: email_input_value, + password: password_input_value, }) .then((result) => { firstname_input_value = ""; @@ -142,15 +141,15 @@ use:focus autocomplete="off" placeholder="First Name" - class:border-red-500={isFirstnameValid} - class:focus:border-red-500={isFirstnameValid} - class:focus:ring-red-500={isFirstnameValid} + class:border-red-500={!isFirstnameValid} + class:focus:border-red-500={!isFirstnameValid} + class:focus:ring-red-500={!isFirstnameValid} bind:value={firstname_input_value} bind:this={firstname_input} type="text" name="firstname" class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2" /> - {#if isFirstnameValid} + {#if !isFirstnameValid} First Name is required @@ -177,15 +176,15 @@ - {#if isLastnameValid} + {#if !isLastnameValid} Last Name is required @@ -199,15 +198,15 @@ - {#if isPasswordValid} + {#if !isPasswordValid} Password is required