Skip to content
This repository has been archived by the owner on Sep 12, 2023. It is now read-only.

Commit

Permalink
feat(user): make email unverified instead of reloading
Browse files Browse the repository at this point in the history
  • Loading branch information
KennethTrecy committed Nov 14, 2022
1 parent bd3ca23 commit 4ec2272
Showing 1 changed file with 18 additions and 9 deletions.
27 changes: 18 additions & 9 deletions pages/user/read.page.vue
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,9 @@
</div>
<Suspensible :is-loaded="hasSubmittedUser">
<button type="submit" class="update-user-btn btn btn-primary">
update user
</button>
</Suspensible>
update user
</button>
</form>

<form
Expand Down Expand Up @@ -156,13 +155,10 @@ import type { DeserializedDepartmentResource } from "$/types/documents/departmen
import Fetcher from "$@/fetchers/user"
import RoleFetcher from "$@/fetchers/role"
import assignPath from "$@/external/assign_path"
import specializePath from "$/helpers/specialize_path"
import DepartmentFetcher from "$@/fetchers/department"
import convertForSentence from "$/string/convert_for_sentence"
import extractAllErrorDetails from "$@/helpers/extract_all_error_details"
import { READ_USER } from "$/constants/template_page_paths"
import { user as permissionGroup } from "$/permissions/permission_list"
import {
RESET_PASSWORD,
Expand Down Expand Up @@ -275,7 +271,7 @@ const textFieldStatus = ref<FieldStatus>(mayUpdateUser.value ? "enabled" : "disa
const mayNotSelect = computed<boolean>(() => !mayUpdateUser.value)
const emailVerified = computed<string>(() => {
let verifyEmail = ""
const verification = userProfile.data.emailVerifiedAt !== null
const verification = user.value.data.emailVerifiedAt !== null
if (verification) {
verifyEmail = "E-mail: Verified ✓"
} else {
Expand Down Expand Up @@ -310,9 +306,22 @@ async function updateUser() {
"name": user.value.data.name,
"prefersDark": user.value.data.prefersDark ? user.value.data.prefersDark : false
})
.then(() => assignPath(specializePath(READ_USER, {
"id": user.value.data.id
})))
.then(() => {
if (user.value.data.emailVerifiedAt) {
const oldEmail = pageProps.user.data.email
const newEmail = user.value.data.email
if (oldEmail !== newEmail) {
user.value = {
...user.value,
"data": {
...user.value.data,
"emailVerifiedAt": null
}
}
}
}
})
.catch(response => extractAllErrorDetails(response, receivedErrors, successMessages))
hasSubmittedUser.value = true
}
Expand Down

0 comments on commit 4ec2272

Please sign in to comment.