add login and register logic
This commit is contained in:
parent
b05cb202b6
commit
46a127c217
7 changed files with 82 additions and 47 deletions
|
|
@ -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 {
|
||||
|
|
|
|||
|
|
@ -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,
|
||||
};
|
||||
},
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in a new issue