From e5ec98bf6f599fe7fcf53065666cff880e0d5dfd Mon Sep 17 00:00:00 2001 From: Philipp Dormann Date: Sat, 9 Jan 2021 18:26:14 +0100 Subject: [PATCH] basic AddUserModal ui ref #12 --- src/components/AddUserModal.svelte | 132 ++++++++++++++++++++++++----- 1 file changed, 111 insertions(+), 21 deletions(-) diff --git a/src/components/AddUserModal.svelte b/src/components/AddUserModal.svelte index 4d8d98bb..dc2f3447 100644 --- a/src/components/AddUserModal.svelte +++ b/src/components/AddUserModal.svelte @@ -3,23 +3,33 @@ import { clickOutside } from "./outsideclick"; import { focusTrap } from "svelte-focus-trap"; import { tracks as tracksstore } from "../store.js"; - import { TrackService } from "@odit/lfk-client-js"; + import { TrackService, 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 trackname_input; + let firstname_input; + let lastname_input; + let middlename_input; + let password_input; + let email_input; function focus(el) { el.focus(); } - $: trackname_input_value = ""; + $: middlename_input_value = ""; + $: password_input_value = ""; + $: email_input_value = ""; + $: lastname_input_value = ""; + $: firstname_input_value = ""; $: track_min_duration = 0; $: tracklength = 0; $: processed_last_submit = true; - $: smart_track_min_duration_placeholder = parseInt(tracklength || 0) * 0.369; - $: isFirstnameValid = trackname_input_value.trim().length === 0; - $: isTracklengthValid = tracklength <= 0; - $: trackMintimevalid = track_min_duration >= 0; - $: createbtnenabled = !isFirstnameValid && !isTracklengthValid; + $: 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; (function () { document.onkeydown = function (e) { e = e || window.event; @@ -38,22 +48,23 @@ if (processed_last_submit === true) { processed_last_submit = false; const toast = Toastify({ - text: $_("track-is-being-added"), + text: "User is being added...", duration: -1, }).showToast(); - TrackService.trackControllerPost({ - distance: parseInt(tracklength), - name: trackname_input_value, - minimumLapTime: track_min_duration, + UserService.userControllerPost({ + firstname: firstname_input_value, + lastname: lastname_input_value, + middlename: middlename_input_value, + email:email_input_value,password:password_input_value }) .then((result) => { - trackname_input_value = ""; - track_min_duration = 0; - tracklength = 0; + firstname_input_value = ""; + lastname_input_value = ""; + middlename_input_value = ""; modal_open = false; // Toastify({ - text: $_("track-added"), + text: "User added", duration: 500, backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)", }).showToast(); @@ -125,7 +136,7 @@
{#if isFirstnameValid} {/if}
+
+ + +
+
+ + + {#if isLastnameValid} + + Last Name is required + + {/if} +
+
+ + + {#if isPasswordValid} + + Password is required + + {/if} +
+
+ + + {#if !isEmailValid} + + valid email is required + + {/if} +