Skip to content
Snippets Groups Projects
Commit ee55c738 authored by Titus Netland's avatar Titus Netland
Browse files

Merge branch 'NewPassword' into 'main'

New password view created and Login view fixed

See merge request !5
parents 9b015ac0 29d96431
No related branches found
No related tags found
1 merge request!5New password view created and Login view fixed
Pipeline #175210 passed
<!--suppress HtmlDeprecatedAttribute -->
<template>
<div>
<v-col align="center" justify="space-around">
<v-col align="center" justify="space-around" class="mt-16">
<v-img
max-width="45%"
:src="require('../assets/logo3.svg')"
......@@ -12,8 +13,8 @@
<v-col>
<v-text-field
v-model="user.email"
:rules="emailRules"
label="E-mail"
:rules="[rules.email]"
label="Epost"
required
></v-text-field>
</v-col>
......@@ -25,7 +26,7 @@
:rules="[rules.required, rules.min]"
:type="showPassword ? 'text' : 'password'"
name="input-10-1"
label="Password"
label="Passord"
counter
@click:append="showPassword = !showPassword"
></v-text-field>
......@@ -50,7 +51,6 @@
</div>
</v-col>
</v-form>
<label>{{ message }}</label>
</div>
</template>
......@@ -75,19 +75,17 @@ export default {
showPassword: false,
valid: true,
emailRules: [
(v) => !!v || "E-mail is required",
(v) => /.+@.+\..+/.test(v) || "E-mail must be valid",
],
rules: {
required: (value) => !!value || "Required.",
min: (v) => v.length >= 8 || "Min 8 characters",
required: (value) => !!value || "Feltet er påkrevd",
min: (v) => v.length >= 8 || "Minimum 8 tegn",
email: (v) => /.+@.+\..+/.test(v) || "Epost adressen må være gyldig",
},
};
},
methods: {
async loginClicked() {
console.log(this.user.email + " " + this.user.password);
const loginRequest = {
email: this.user.email,
password: this.user.password,
......@@ -95,7 +93,7 @@ export default {
const loginResponse = await doLogin(loginRequest);
if (loginResponse === "Failed login") {
this.message = "kunne ikke logge inn";
this.message = "Feil brukernavn/passord";
this.$store.commit("logout");
return;
}
......
<template>
<div>
<v-col align="center" justify="space-around" class="mt-16">
<v-img
max-width="45%"
:src="require('../assets/logo3.svg')"
align="center"
/>
</v-col>
<v-form ref="form" v-model="valid" lazy-validation class="mt-8">
<v-text-field
v-model="user.password"
:rules="[rules.required, rules.min]"
:type="'password'"
name="input-10-1"
label="Passord"
counter
></v-text-field>
<v-text-field
v-model="user.rePassword"
:rules="[rules.required, rules.min, rules.passwordConfirmation]"
:type="'password'"
name="input-10-1"
label="Confirm Password"
counter
></v-text-field>
<v-col justify="space-around" align="center">
<v-btn
:disabled="!valid"
color="success"
class="mb-4 mt-4"
width="50%"
height="40px"
@click="setNewPassword"
>
Endre passord
</v-btn>
</v-col>
</v-form>
</div>
</template>
<script>
export default {
name: "NewPasswordForm.vue",
data() {
return {
user: {
password: "",
rePassword: "",
},
valid: true,
rules: {
required: (value) => !!value || "Feltet er påkrevd",
min: (v) => v.length >= 8 || "Minimum 8 tegn",
passwordConfirmation: (v) => v === this.user.password || "Passordene må være like"
},
};
},
methods: {
async setNewPassword() {
},
validate() {
this.$refs.form.validate();
},
},
};
</script>
import { createRouter, createWebHistory } from "vue-router";
import HomeView from "../views/HomeView.vue";
import LoginView from "../views/LoginView.vue";
import NewPasswordView from "../views/NewPasswordView";
const routes = [
{
......@@ -30,8 +31,12 @@ const routes = [
path: "/",
name: "login",
component: LoginView,
}
},
{
path: "/newPassword",
name: "newPassword",
component: NewPasswordView,
},
];
const router = createRouter({
......
<template>
<div class="newPasswordPage">
<NewPasswordForm></NewPasswordForm>
</div>
</template>
<script>
import NewPasswordForm from "@/components/NewPasswordForm";
export default {
name: "NewPasswordView.vue",
components: {
NewPasswordForm,
},
};
</script>
<style scoped>
.newPasswordPage {
background-color: white;
height: 100%;
overflow: auto;
}
</style>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment