You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
179 lines
5.1 KiB
179 lines
5.1 KiB
<template>
|
|
<div class="tw-w-3/4">
|
|
<div class="element tw-mt-[16px]">
|
|
<div class="element tw-grid tw-grid-cols-1 md:tw-grid-cols-[112px_auto] xl:tw-grid-cols-[112px_auto] tw-gap-[10px]">
|
|
<div class="tw-flex tw-items-center">
|
|
<label class="tw-font-normal ">
|
|
<span>{{ $t("First Name")}}</span><span class="required">*</span>
|
|
</label>
|
|
</div>
|
|
<ElementInputNew
|
|
:input="{
|
|
id: 'FirstName',
|
|
required: false,
|
|
type: 'text',
|
|
}"
|
|
:validation="validation.first_name"
|
|
@change="formData.first_name = $event"
|
|
></ElementInputNew>
|
|
</div>
|
|
</div>
|
|
<div class="element tw-mt-[16px]">
|
|
<div class="element tw-grid tw-grid-cols-1 md:tw-grid-cols-[112px_auto] xl:tw-grid-cols-[112px_auto] tw-gap-[10px]">
|
|
<div class="tw-flex tw-items-center">
|
|
<label class="tw-font-normal ">
|
|
<span>{{ $t("E-mail for contact")}}</span><span class="required">*</span>
|
|
</label>
|
|
</div>
|
|
<ElementInputNew
|
|
:input="{
|
|
id: 'Country',
|
|
required: false,
|
|
type: 'text',
|
|
}"
|
|
:validation="validation.last_name"
|
|
@change="formData.last_name = $event"
|
|
>
|
|
</ElementInputNew>
|
|
</div>
|
|
</div>
|
|
<div class="element tw-mt-[16px]">
|
|
<div class="element tw-grid tw-grid-cols-1 md:tw-grid-cols-[112px_auto] xl:tw-grid-cols-[112px_auto] tw-gap-[10px]">
|
|
<div class="tw-flex tw-items-center">
|
|
<label class="tw-font-normal ">
|
|
<span>{{ $t("Email")}}</span><span class="required">*</span>
|
|
</label>
|
|
</div>
|
|
<ElementInputNew
|
|
:input="{
|
|
id: 'Email',
|
|
required: false,
|
|
type: 'email',
|
|
}"
|
|
:validation="validation.email"
|
|
@change="formData.email = $event"
|
|
>
|
|
</ElementInputNew>
|
|
</div>
|
|
</div>
|
|
<div class="element tw-mt-[16px]">
|
|
<div class="element tw-grid tw-grid-cols-1 md:tw-grid-cols-[112px_auto] xl:tw-grid-cols-[112px_auto] tw-gap-[10px]">
|
|
<div class="tw-flex tw-items-center">
|
|
<label class="tw-font-normal ">
|
|
<span>{{ $t("Phone")}}</span><span class="required">*</span>
|
|
</label>
|
|
</div>
|
|
<ElementInputNew
|
|
:input="{
|
|
id: 'Phone',
|
|
required: false,
|
|
type: 'text',
|
|
}"
|
|
:validation="validation.phone_number"
|
|
@change="formData.phone_number = $event"
|
|
>
|
|
</ElementInputNew>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
<script>
|
|
import ElementInputNew from "@/components/newComponent/form/ElementInputNew";
|
|
import is from "is_js";
|
|
export default {
|
|
name: "Contact",
|
|
components: {
|
|
ElementInputNew,
|
|
is,
|
|
},
|
|
data() {
|
|
return {
|
|
formData: {
|
|
first_name: "",
|
|
last_name: "",
|
|
email: "",
|
|
country_code: "",
|
|
phone_number: "",
|
|
},
|
|
validation: {
|
|
first_name: true,
|
|
last_name: true,
|
|
email: true,
|
|
phone_number: true,
|
|
},
|
|
errors: null,
|
|
};
|
|
},
|
|
mounted() {},
|
|
methods: {
|
|
reset() {
|
|
this.formData = {
|
|
first_name: "",
|
|
last_name: "",
|
|
email: "",
|
|
country_code: "",
|
|
phone_number: "",
|
|
};
|
|
},
|
|
save() {
|
|
this.validators();
|
|
if (this.validators()) {
|
|
const patchData = JSON.parse(JSON.stringify(this.formData));
|
|
// this.$axios
|
|
// .post(
|
|
// `/member/contacts?jwt=${
|
|
// this.$auth.$storage.getUniversal("jwt").token
|
|
// }`,
|
|
// patchData
|
|
// )
|
|
// .then((result) => {
|
|
// if (result.status == 200) {
|
|
// this.$emit("update", true);
|
|
// this.reset();
|
|
// this.$modal.hide("add-contact-modal");
|
|
// }
|
|
// })
|
|
// .catch((err) => {
|
|
// console.log(err);
|
|
// });
|
|
}
|
|
},
|
|
validators() {
|
|
// if (is.empty(this.formData.first_name)) {
|
|
// this.validation.first_name = false;
|
|
// } else {
|
|
// this.validation.first_name = true;
|
|
// }
|
|
// if (is.empty(this.formData.last_name)) {
|
|
// this.validation.last_name = false;
|
|
// } else {
|
|
// this.validation.last_name = true;
|
|
// }
|
|
// if (is.empty(this.formData.email) || is.not.email(this.formData.email)) {
|
|
// this.validation.email = false;
|
|
// } else {
|
|
// this.validation.email = true;
|
|
// }
|
|
// if (
|
|
// is.empty(this.formData.phone_number) &&
|
|
// is.number(this.formData.phone_number)
|
|
// ) {
|
|
// this.validation.phone_number = false;
|
|
// } else {
|
|
// this.validation.phone_number = true;
|
|
// }
|
|
// this.errors = Object.entries(this.validation).filter(
|
|
// (e) => e[1] == false
|
|
// );
|
|
// if (this.errors.length > 0) {
|
|
// return false;
|
|
// } else {
|
|
// return true;
|
|
// }
|
|
},
|
|
},
|
|
};
|
|
</script>
|
|
<style lang="scss" scoped>
|
|
</style>
|
|
|