fiee-official-website/src/views/email-alerts/size375/index.vue

76 lines
3.6 KiB
Vue
Raw Normal View History

<script setup>
import { ref } from 'vue';
const form = ref({
firstName: '',
lastName: '',
email: '',
company: '',
phone: '',
alertType: 'all',
});
const submitted = ref(false);
function handleSubmit(e) {
e.preventDefault();
submitted.value = true;
}
</script>
<template>
<main class="min-h-60vh flex flex-col items-center justify-center relative px-4 py-8">
<!-- Card -->
<div class="w-full max-w-90vw p-4 bg-white/95 rounded-2xl shadow-lg animate-bounce-in">
<template v-if="!submitted">
<h2 class="text-xl font-bold text-#8A5AFB mb-2 text-center tracking-wide">E-Mail Alerts</h2>
<p class="text-xs text-gray-500 mb-4 text-center">* Required Fields</p>
<form class="flex flex-col gap-3" @submit="handleSubmit">
<div>
<label class="block text-gray-700 font-semibold mb-1 text-sm">* First Name</label>
<input v-model="form.firstName" type="text" class="w-full px-3 py-2 rounded-lg border border-gray-300 outline-none bg-white/90 text-sm" />
</div>
<div>
<label class="block text-gray-700 font-semibold mb-1 text-sm">* Last Name</label>
<input v-model="form.lastName" type="text" class="w-full px-3 py-2 rounded-lg border border-gray-300 outline-none bg-white/90 text-sm" />
</div>
<div>
<label class="block text-gray-700 font-semibold mb-1 text-sm">* Email</label>
<input v-model="form.email" type="email" class="w-full px-3 py-2 rounded-lg border border-gray-300 outline-none bg-white/90 text-sm" />
</div>
<div>
<label class="block text-gray-700 font-semibold mb-1 text-sm">* Company</label>
<input v-model="form.company" type="text" class="w-full px-3 py-2 rounded-lg border border-gray-300 outline-none bg-white/90 text-sm" />
</div>
<div>
<label class="block text-gray-700 font-semibold mb-1 text-sm">Phone</label>
<input v-model="form.phone" type="tel" class="w-full px-3 py-2 rounded-lg border border-gray-300 outline-none bg-white/90 text-sm" />
</div>
<button type="submit" class="w-full py-3 rounded-xl bg-#8A5AFB text-white font-bold text-base active:scale-95 transition-all duration-200 animate-bounce-in animate-delay-200 mt-2">
Submit
</button>
</form>
</template>
<template v-else>
<div class="flex flex-col items-center justify-center min-h-[200px] animate-bounce-in">
<span class="i-mdi:check-circle-outline text-green-500 text-4xl mb-3"></span>
<h2 class="text-lg font-bold text-#8A5AFB mb-2">Submitted successfully!</h2>
<div class="text-gray-700 text-sm mb-3">The information you submitted is as follows:</div>
<div class="w-full bg-white/90 rounded-xl shadow p-3 space-y-1 text-gray-800 text-sm">
<div><span class="font-semibold">First Name</span>{{ form.firstName }}</div>
<div><span class="font-semibold">Last Name</span>{{ form.lastName }}</div>
<div><span class="font-semibold">Email</span>{{ form.email }}</div>
<div><span class="font-semibold">Company</span>{{ form.company }}</div>
<div><span class="font-semibold">Phone</span>{{ form.phone || '(Not filled)' }}</div>
<div><span class="font-semibold">Alert Type</span>{{ form.alertType === 'all' ? 'All Alerts' : 'Customize Alerts' }}</div>
</div>
</div>
</template>
</div>
</main>
</template>
<style scoped lang="scss">
/* Keep mobile background simple */
</style>