add login and register logic

This commit is contained in:
Enrique Hernandez 2021-02-10 20:46:10 -06:00
commit 46a127c217
7 changed files with 82 additions and 47 deletions

View file

@ -49,10 +49,14 @@ export default defineComponent({
email: email.value,
password: password.value
};
await invoke(payload);
console.log('testing incoke', data.value)
setToken(data.value, rememberMe.value);
router.push({ name: "home" });
try {
await invoke(payload);
console.log('testing incoke', data.value)
setToken(data.value, rememberMe.value);
router.push({ name: "home" });
} catch(e){
console.log('Error loging in.')
}
};
return {

View file

@ -1,19 +1,28 @@
<template>
<div id="login">
<!-- login title -->
<div id="loginTitle">Login</div>
<div id="loginTitle">Register</div>
<!-- username and password forms -->
<div id="loginBox">
<!-- username -->
<input class="input" type="text" v-model="login.username" placeholder="username" />
<input class="input" type="text" v-model="email" placeholder="email" />
<!-- password -->
<input class="input" type="password" v-model="login.password" placeholder="Password" />
<input class="input" type="password" v-model="password" placeholder="Password" />
<!-- firstName -->
<input class="input" type="text" v-model="firstName" placeholder="First name" />
<!-- lastName -->
<input class="input" type="text" v-model="lastName" placeholder="Last name" />
<input type="checkbox" id="checkbox" v-model="rememberMe" />
<label for="checkbox">Remember Me</label>
</div>
<!-- submit button -->
<button class="button" @click="submitCreds">Submit</button>
<button class="button" @click="submit">Submit</button>
</div>
</template>
@ -40,31 +49,39 @@ interface RegisterPayload {
export default defineComponent({
name: "Register",
setup() {
const payload = reactive<RegisterPayload>({
email: undefined,
password: undefined,
firstName: undefined,
lastName: undefined,
});
const { error, loading, invoke, data, errorMessage } = useIpc(
"auth-register"
);
const email = ref("");
const password = ref("");
const firstName = ref("");
const lastName = ref("");
const rememberMe = ref("");
const { invoke, data,} = useIpc("auth-user");
const { setToken } = useAuth();
const router = useRouter();
const payload: RegisterPayload = {
email: email.value,
password: password.value,
firstName: firstName.value,
lastName: lastName.value,
};
const submit = async () => {
await invoke(payload);
setToken(data.value, true);
router.push({ name: "home" });
try {
await invoke(payload);
setToken(data.value, true);
router.push({ name: "home" });
} catch(e) {
console.log('Failed to register.')
}
};
return {
...toRefs(payload),
email,
password,
firstName,
lastName,
submit,
loading,
errorMessage,
};
},
});