Files
hossein-por-shop/frontend/pages/contact-us.vue
T
2026-02-01 10:09:25 +03:30

164 lines
6.5 KiB
Vue
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<script setup lang="ts">
// state
useSeoMeta({
title: "ارتباط با ما",
});
const contactInfo = ref({
name: "",
email: "",
phone: "",
requestType: undefined,
message: "",
});
const requestTypes = ref(["انتقادات", "پیشنهادات", "پیگیری سفارش"]);
const contactWays = ref<{ title: string; ways: { type: "text" | "link"; title: string; path?: string }[] }[]>([
{
title: "آدرس",
ways: [
{
type: "text",
title: `استان فارس,شهرستان شيراز,بخش مركزى, شهر
شيراز, گلستان، بلوار سما,خيابان شهيد طهماسبى ،پلاك ١٩٨ ,طبقه همكف`,
},
{
type: "text",
title: "کد پستی :7145746584",
},
],
},
{
title: "شماره تماس",
ways: [
{
type: "link",
title: "09026663488",
path: "tell:09026663488",
},
{
type: "link",
title: "09022202311",
path: "tell:09022202311",
},
],
},
{
title: "ایمیل شرکت",
ways: [
{
type: "link",
title: "npsayna@gmail.com",
path: "mailto:npsayna@gmail.com",
},
],
},
]);
</script>
<template>
<div class="w-full container flex flex-col">
<div class="w-full flex-center py-[5rem]">
<div class="flex flex-col items-center gap-3 text-black w-full">
<h1 class="typo-h-6 max-sm:text-xl md:typo-h-5 lg:typo-h-4">ارتباط با ما</h1>
<p class="text-slate-500 text-center max-w-[750px] max-lg:text-sm leading-[175%]">
ما اینجا هستیم تا کمک کنیم. برای پشتیبانی، بازخورد یا هر سوالی که ممکن است داشته باشید تماس بگیرید.
</p>
</div>
</div>
<div class="w-full flex flex-col-reverse max-lg:-mt-14 lg:flex-row items-start justify-between">
<div class="w-full lg:w-8/12 flex flex-col items-start gap-10">
<div class="grid grid-cols-1 md:grid-cols-2 gap-[.6rem] w-full">
<div class="flex flex-col items-start w-full">
<Input
class="w-full"
placeholder="نام و نام خانوادگی"
/>
</div>
<div class="flex flex-col items-start w-full">
<Input
class="w-full"
placeholder="پست الکترونیکی"
/>
</div>
<div class="flex flex-col items-start w-full">
<Input
class="w-full"
placeholder="شماره تلفن"
/>
</div>
<div class="flex flex-col items-start w-full relative">
<Select
v-model="contactInfo.requestType"
:options="requestTypes"
placeholder="نوع درخواست"
/>
</div>
<div class="flex flex-col items-start col-span-1 md:col-span-2 h-[10rem] max-h-[12rem]">
<textarea
placeholder="پیغام شما"
class="w-full flex items-center resize-none bg-slate-50 border-slate-200 hover:border-black focus:border-black h-[10rem] max-h-[12rem] text-black justify-between cursor-text transition-all border-[1.5px] gap-3 typo-label-md px-4 py-3.5 selection:bg-slate-100 rounded-100 outline-none flex-1 !text-sm placeholder-slate-400 placeholder:text-xs lg:placeholder:text-sm placeholder:font-normal"
></textarea>
</div>
</div>
<div class="w-full flex-center pb-10 border-b border-slate-200">
<!-- @click="handleSubmit"
:loading="createTicketIsPending || uploadAttachmentIsPending" -->
<Button
class="rounded-full w-[14rem] h-11"
size="md"
>
<!-- <Icon
v-if="createTicketIsPending"
:name="createTicketIsPending ? 'svg-spinners:3-dots-bounce' : 'bi:send'"
/> -->
<span>ارسال پیغام</span>
</Button>
</div>
<div class="flex max-sm:flex-col gap-8 w-full lg:gap-20">
<div
v-for="(way, index) in contactWays"
:key="index"
class="flex flex-col gap-3"
>
<span class="text-slate-500 max-lg:text-sm">
{{ way.title }}
</span>
<div
v-for="(item, index) in way.ways"
:key="index"
class="flex flex-col"
>
<a
v-if="item.type === 'link'"
:href="item.path!"
class="text-black underline max-lg:text-xs lg:text-sm"
>
{{ item.title }}
</a>
<p
v-else
class="leading-[175%]! max-lg:text-xs lg:text-sm max-w-100"
>
{{ item.title }}
</p>
</div>
</div>
</div>
</div>
<div class="w-full lg:w-4/12 h-full flex-center">
<NuxtImg
src="/img/heymlz/heymlz-contact-us.gif"
class="size-2/3 -mt-5 lg:scale-150 drop-shadow-2xl"
/>
</div>
</div>
</div>
</template>
<style scoped></style>