NambAnand commited on
Commit
712ee84
·
verified ·
1 Parent(s): 0b003f0

make it such that mail send from website itself, and user doesnt have to open any email service provider to send the mail - Follow Up Deployment

Browse files
Files changed (1) hide show
  1. index.html +50 -15
index.html CHANGED
@@ -139,7 +139,7 @@
139
 
140
  <div class="flex flex-col md:flex-row items-center gap-8">
141
  <div class="md:w-1/3 mb-8 md:mb-0 fade-in delay-1">
142
- <div class="bg-gray-100 p-6 rounded-xl shadow-md">
143
  <h3 class="text-xl font-semibold text-blue-500 mb-4">Education</h3>
144
  <div class="space-y-4">
145
  <div>
@@ -162,7 +162,7 @@
162
  </div>
163
 
164
  <div class="md:w-1/3 fade-in delay-2">
165
- <div class="bg-gray-100 p-6 rounded-xl shadow-md">
166
  <h3 class="text-xl font-semibold text-blue-500 mb-4">Experience</h3>
167
  <div class="space-y-4">
168
  <div>
@@ -468,7 +468,8 @@
468
 
469
  <div class="flex flex-col md:flex-row gap-8">
470
  <div class="md:w-1/2 fade-in delay-2">
471
- <form class="space-y-6">
 
472
  <div>
473
  <label for="name" class="block text-sm font-medium text-gray-700 mb-1">Name</label>
474
  <input type="text" id="name" name="name" class="w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-blue-500 focus:border-blue-500">
@@ -659,25 +660,59 @@
659
  });
660
 
661
  // Form submission
662
- const contactForm = document.querySelector('form');
 
 
663
  if (contactForm) {
664
- contactForm.addEventListener('submit', (e) => {
665
  e.preventDefault();
666
 
667
  // Get form values
668
- const name = document.getElementById('name').value;
669
- const email = document.getElementById('email').value;
670
- const subject = document.getElementById('subject').value;
671
- const message = document.getElementById('message').value;
 
 
672
 
673
- // Here you would typically send the data to a server
674
- console.log({ name, email, subject, message });
 
 
675
 
676
- // Show success message
677
- alert('Thank you for your message! I will get back to you soon.');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
678
 
679
- // Reset form
680
- contactForm.reset();
 
 
681
  });
682
  }
683
  </script>
 
139
 
140
  <div class="flex flex-col md:flex-row items-center gap-8">
141
  <div class="md:w-1/3 mb-8 md:mb-0 fade-in delay-1">
142
+ <div class="bg-gray-100 p-6 rounded-xl shadow-md h-full">
143
  <h3 class="text-xl font-semibold text-blue-500 mb-4">Education</h3>
144
  <div class="space-y-4">
145
  <div>
 
162
  </div>
163
 
164
  <div class="md:w-1/3 fade-in delay-2">
165
+ <div class="bg-gray-100 p-6 rounded-xl shadow-md h-full">
166
  <h3 class="text-xl font-semibold text-blue-500 mb-4">Experience</h3>
167
  <div class="space-y-4">
168
  <div>
 
468
 
469
  <div class="flex flex-col md:flex-row gap-8">
470
  <div class="md:w-1/2 fade-in delay-2">
471
+ <form id="contactForm" class="space-y-6">
472
+ <div id="formStatus" class="hidden"></div>
473
  <div>
474
  <label for="name" class="block text-sm font-medium text-gray-700 mb-1">Name</label>
475
  <input type="text" id="name" name="name" class="w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-blue-500 focus:border-blue-500">
 
660
  });
661
 
662
  // Form submission
663
+ const contactForm = document.getElementById('contactForm');
664
+ const formStatus = document.getElementById('formStatus');
665
+
666
  if (contactForm) {
667
+ contactForm.addEventListener('submit', async (e) => {
668
  e.preventDefault();
669
 
670
  // Get form values
671
+ const formData = {
672
+ name: document.getElementById('name').value,
673
+ email: document.getElementById('email').value,
674
+ subject: document.getElementById('subject').value,
675
+ message: document.getElementById('message').value
676
+ };
677
 
678
+ // Show loading state
679
+ formStatus.classList.remove('hidden');
680
+ formStatus.textContent = 'Sending message...';
681
+ formStatus.className = 'text-blue-500 p-4 rounded-lg bg-blue-50';
682
 
683
+ try {
684
+ // Send to server endpoint (you'll need to implement this)
685
+ const response = await fetch('https://your-server.com/send-email', {
686
+ method: 'POST',
687
+ headers: {
688
+ 'Content-Type': 'application/json',
689
+ },
690
+ body: JSON.stringify({
691
+ to: 'me230003046@iiti.ac.in',
692
+ ...formData
693
+ })
694
+ });
695
+
696
+ const result = await response.json();
697
+
698
+ if (response.ok) {
699
+ // Success message
700
+ formStatus.textContent = 'Message sent successfully!';
701
+ formStatus.className = 'text-green-500 p-4 rounded-lg bg-green-50';
702
+ contactForm.reset();
703
+ } else {
704
+ throw new Error(result.message || 'Failed to send message');
705
+ }
706
+ } catch (error) {
707
+ // Error message
708
+ formStatus.textContent = `Error: ${error.message}`;
709
+ formStatus.className = 'text-red-500 p-4 rounded-lg bg-red-50';
710
+ }
711
 
712
+ // Hide status after 5 seconds
713
+ setTimeout(() => {
714
+ formStatus.classList.add('hidden');
715
+ }, 5000);
716
  });
717
  }
718
  </script>