fix(register): phone number verification
This commit is contained in:
parent
f1d552ce64
commit
d5eefbb5e2
@ -144,9 +144,9 @@
|
||||
<input v-model="userdetails.phone" name="phone" id="phone" autocomplete="off"
|
||||
:placeholder="[[$t('phone_number')]]" type="text" :class="{
|
||||
'border-red-500':
|
||||
!isMobilePhone(userdetails.phone) && userdetails.phone.trim(),
|
||||
!isPhoneOkay(userdetails.phone),
|
||||
'border-green-300':
|
||||
isMobilePhone(userdetails.phone) && userdetails.phone.trim(),
|
||||
isPhoneOkay(userdetails.phone),
|
||||
}" class="
|
||||
dark:bg-gray-800
|
||||
mt-1
|
||||
@ -160,7 +160,7 @@
|
||||
rounded-md
|
||||
p-2
|
||||
" />
|
||||
<p v-if="!isMobilePhone(userdetails.phone) && userdetails.phone.trim()" class="text-sm">
|
||||
<p v-if="!isPhoneOkay(userdetails.phone)" class="text-sm">
|
||||
{{ $t("this_is_not_a_valid_international_phone_number") }}
|
||||
</p>
|
||||
<!-- -->
|
||||
@ -173,7 +173,7 @@
|
||||
</div>
|
||||
<div class="ml-3 text-sm">
|
||||
<label for="address_activated" class="font-medium text-gray-600 select-none">{{ $t("provide_address")
|
||||
}}</label>
|
||||
}}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="provide_address === true" class="col-span-6">
|
||||
@ -369,6 +369,21 @@ let userdetails = ref({
|
||||
phone: "",
|
||||
address: { street: "", address2: "", city: "", zipcode: "" },
|
||||
});
|
||||
function isPhoneOkay() {
|
||||
if (userdetails.value.phone === "") {
|
||||
return true
|
||||
}
|
||||
if (userdetails.value.phone.includes(" ")) {
|
||||
return false
|
||||
}
|
||||
if (!userdetails.value.phone.includes("+")) {
|
||||
return false
|
||||
}
|
||||
if (isMobilePhone(userdetails.value.phone)) {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
let provide_address = ref(false);
|
||||
let agb_accepted = ref(false);
|
||||
let data_confirmed = ref(false);
|
||||
@ -382,8 +397,7 @@ const state = reactive({
|
||||
() =>
|
||||
agb_accepted.value === true &&
|
||||
data_confirmed.value === true &&
|
||||
(isMobilePhone(userdetails.value.phone) ||
|
||||
!userdetails.value.phone.trim()) &&
|
||||
isPhoneOkay() &&
|
||||
isEmail(userdetails.value.mail) &&
|
||||
userdetails.value.firstname &&
|
||||
userdetails.value.lastname &&
|
||||
@ -396,25 +410,23 @@ const state = reactive({
|
||||
});
|
||||
const toast = useToast();
|
||||
function login() {
|
||||
userdetails = userdetails.value;
|
||||
if (userdetails?.phone === "" || isMobilePhone(userdetails.phone)) {
|
||||
if (isEmail(userdetails.mail)) {
|
||||
// userdetails = userdetails.value;
|
||||
if (isPhoneOkay()) {
|
||||
if (isEmail(userdetails.value.mail)) {
|
||||
let postdata = {
|
||||
email: userdetails.mail,
|
||||
firstname: userdetails.firstname,
|
||||
middlename: userdetails.middlename,
|
||||
lastname: userdetails.lastname,
|
||||
email: userdetails.value.mail,
|
||||
firstname: userdetails.value.firstname,
|
||||
middlename: userdetails.value.middlename,
|
||||
lastname: userdetails.value.lastname,
|
||||
phone: userdetails.value.phone,
|
||||
address: {},
|
||||
};
|
||||
if (isMobilePhone(userdetails.phone)) {
|
||||
postdata.phone = userdetails.phone;
|
||||
}
|
||||
if (provide_address.value === true) {
|
||||
postdata.address = {
|
||||
address1: userdetails.address.street,
|
||||
address2: userdetails.address.address2 || "",
|
||||
city: userdetails.address.city,
|
||||
postalcode: userdetails.address.zipcode,
|
||||
address1: userdetails.value.address.street,
|
||||
address2: userdetails.value.address.address2 || "",
|
||||
city: userdetails.value.address.city,
|
||||
postalcode: userdetails.value.address.zipcode,
|
||||
country: "DE",
|
||||
};
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user