Wedding Invitation
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

rsvp-modal.blade.php 2.9KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <dialog id="rsvp" class="modal">
  2. <div class="modal-box w-11/12 max-w-5xl">
  3. <h3 class="text-lg font-bold">RSVP</h3>
  4. <form id="rsvpForm">
  5. @csrf
  6. <label class="form-control w-full max-w-xs">
  7. <div class="label">
  8. <span class="label-text">Nama</span>
  9. </div>
  10. <input type="text" name="name" placeholder="Taip disini" class="input input-bordered input-sm input-accent w-full max-w-xs" />
  11. </label>
  12. <label class="form-control w-full max-w-xs">
  13. <div class="label">
  14. <span class="label-text">Bilangan</span>
  15. </div>
  16. <input type="number" name="member" placeholder="Taip disini" class="input input-bordered input-sm input-accent w-full max-w-xs" />
  17. </label>
  18. <label class="form-control w-full max-w-xs">
  19. <div class="label">
  20. <span class="label-text">No. Tel</span>
  21. </div>
  22. <input type="number" name="phone" placeholder="Taip disini" class="input input-bordered input-sm input-accent w-full max-w-xs" />
  23. </label>
  24. </form>
  25. <div class="modal-action">
  26. <form method="dialog" id="closeRsvpForm"></form>
  27. <button type="button" class="btn bg-babybluedark" id="submitRsvpForm">Hantar</button>
  28. <button type="button" class="btn" id="submitCloseRsvpForm">Tutup</button>
  29. </div>
  30. </div>
  31. </dialog>
  32. @push('script')
  33. <script>
  34. $(document).ready(function() {
  35. $('#submitCloseRsvpForm').click(function(e) {
  36. $('#closeRsvpForm').submit();
  37. });
  38. $('#submitRsvpForm').click(function(e) {
  39. e.preventDefault();
  40. var formData = $('#rsvpForm').serialize();
  41. $.ajax({
  42. url: '{{ route('rsvp.save') }}',
  43. type: 'POST',
  44. data: formData,
  45. success: function(response) {
  46. $('#closeRsvpForm').submit();
  47. if ('{{ session('success') }}') {
  48. showSuccessMessage('{{ session('success') }}');
  49. }
  50. },
  51. error: function(xhr, status, error) {
  52. console.error('Error submitting form:', error);
  53. }
  54. });
  55. });
  56. });
  57. function showSuccessMessage(message) {
  58. // Create a dynamic success message element
  59. var successAlert = $('<div class="bg-green-100 border border-green-400 text-green-700 px-4 py-3 rounded relative" role="alert">' +
  60. '<span class="block sm:inline">' + message + '</span>' +
  61. '</div>');
  62. // Append the message to a suitable container in your HTML (e.g., modal, form, or body)
  63. $('#alert-success').append(successAlert);
  64. // Automatically remove the message after 3 seconds
  65. setTimeout(function() {
  66. successAlert.fadeOut('slow', function() {
  67. $(this).remove();
  68. });
  69. }, 3000); // 3 seconds
  70. }
  71. </script>
  72. @endpush