|
@@ -66,7 +66,7 @@
|
|
|
</div>
|
|
|
<!-- <div class="ptc-form">
|
|
|
<div class="ptc-form-item">
|
|
|
- <button class="ptc-button" @click="next">GO</button>
|
|
|
+ <button class="ptc-button">GO</button>
|
|
|
</div>
|
|
|
</div> -->
|
|
|
</div>
|
|
@@ -101,7 +101,7 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup lang="ts">
|
|
|
-import { reactive } from 'vue'
|
|
|
+import { reactive, ref, watch } from 'vue'
|
|
|
import { useRoute, useRouter } from 'vue-router'
|
|
|
import { state } from '@/store'
|
|
|
import {
|
|
@@ -119,16 +119,16 @@ const props = defineProps<{ action: 'change' | 'reset' }>()
|
|
|
const router = useRouter()
|
|
|
const { query } = useRoute() as any
|
|
|
const fromPath = history.state.back
|
|
|
-const step = query.step ? +(query.step as string) : 0
|
|
|
+const step = ref(query.token ? 2 : 0)
|
|
|
const { values, handleSubmit } = useForm<ApiUser.PasswordChange.Request>({
|
|
|
schema: {
|
|
|
- old_password: string().required(),
|
|
|
- new_password: string().required(),
|
|
|
- new_password_confirmation: string().required(),
|
|
|
+ old_password: string().required('Please enter old password'),
|
|
|
+ new_password: string().required('Please enter new password'),
|
|
|
+ new_password_confirmation: string().required('Please repeat new password'),
|
|
|
},
|
|
|
})
|
|
|
const resetForm = reactive<ApiUser.PasswordReset.Request>({
|
|
|
- email: step === 2 ? query.email : '',
|
|
|
+ email: step.value === 2 ? query.email : '',
|
|
|
token: query.token || '',
|
|
|
password: '',
|
|
|
password_confirmation: '',
|
|
@@ -136,12 +136,7 @@ const resetForm = reactive<ApiUser.PasswordReset.Request>({
|
|
|
|
|
|
state.bgWhite = true
|
|
|
|
|
|
-function next() {
|
|
|
- router.push({
|
|
|
- path: '',
|
|
|
- query: { step: step + 1 },
|
|
|
- })
|
|
|
-}
|
|
|
+watch(step, () => window.scrollTo(0, 0))
|
|
|
|
|
|
async function applyChange() {
|
|
|
const { message } = await changePassword(values as any)
|
|
@@ -157,7 +152,7 @@ async function sendEmail() {
|
|
|
.required('email is required')
|
|
|
.validate(resetForm.email)
|
|
|
await sendPasswordEmail(resetForm.email)
|
|
|
- next()
|
|
|
+ step.value++
|
|
|
} catch (err) {
|
|
|
Toast(err.message)
|
|
|
}
|
|
@@ -168,7 +163,7 @@ async function applyReset() {
|
|
|
await string().required('password is required').validate(resetForm.password)
|
|
|
resetForm.password_confirmation = resetForm.password
|
|
|
await resetPassword(resetForm)
|
|
|
- next()
|
|
|
+ step.value++
|
|
|
} catch (err) {
|
|
|
Toast(err.message)
|
|
|
}
|