342fdfdfg

modal blade

Sep 4th, 2025
23
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 10.99 KB | None | 0 0
  1. @extends('admin.layouts.app')
  2.  
  3. @section('content')
  4.     <div class="card">
  5.         <div class="card-body">
  6.             <div class="ic-datatable">
  7.                 {!! $dataTable->table([], true) !!}
  8.             </div>
  9.         </div>
  10.     </div>
  11.  
  12.     <!-- Enrolled Students Email Modal -->
  13.     <div class="modal fade" id="emailModal" tabindex="-1" aria-labelledby="emailModalLabel"
  14.         aria-hidden="true">
  15.         <div class="modal-dialog modal-lg">
  16.             <div class="modal-content">
  17.                 <div class="modal-header">
  18.                     <h5 class="modal-title" id="emailModalLabel">Enrolled Student Email</h5>
  19.                     <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
  20.                 </div>
  21.                 <form action="{{ route('enrolled-student.send-email') }}" class="form" method="POST">
  22.                     @csrf
  23.                     <input type="hidden" name="course_id" value="{{ $courseId }}">
  24.                     <input type="hidden" name="student_id">
  25.                     <div class="modal-body">
  26.                         <div class="row">
  27.                             @foreach ($templates as $template)
  28.                                 <div class="col-3 mb-2">
  29.                                     <button type="button" class="btn btn-light" onclick="useTemplate({{ $loop->index }}, '#enrolledStudentEmailModal')">
  30.                                         <span class="badge bg-light text-dark">{{ $template->name }}</span>
  31.                                     </button>
  32.                                 </div>
  33.                             @endforeach
  34.                         </div>
  35.  
  36.                         <div class="select-types">
  37.                             @include('admin.datatable.enrolled-students.partials.types', ['for' => 'email'])
  38.                         </div>
  39.  
  40.                         <div class="form-group">
  41.                             <label class="form-label">Subject</label>
  42.                             <input name="subject" type="text" required class="form-control">
  43.                         </div>
  44.                         <div class="form-group">
  45.                             <label class="form-label">Body</label>
  46.                             <textarea name="body" class="form-control ic_summernote"></textarea>
  47.                         </div>
  48.                     </div>
  49.                     <div class="modal-footer">
  50.                         <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
  51.                         <button type="submit" class="btn btn-primary">Send</button>
  52.                     </div>
  53.                 </form>
  54.             </div>
  55.         </div>
  56.     </div>
  57.     <!-- Enrolled Students SMS Modal -->
  58.     <div class="modal fade" id="smsModal" tabindex="-1" aria-labelledby="smsModalLabel"
  59.         aria-hidden="true">
  60.         <div class="modal-dialog modal-lg">
  61.             <div class="modal-content">
  62.                 <div class="modal-header">
  63.                     <h5 class="modal-title" id="smsModalLabel">Enrolled Student Email</h5>
  64.                     <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
  65.                 </div>
  66.                 <form action="{{ route('enrolled-student.send-sms') }}" class="form" method="POST">
  67.                     @csrf
  68.                     <input type="hidden" name="course_id" value="{{ $courseId }}">
  69.                     <input type="hidden" name="student_id">
  70.                     <div class="modal-body">
  71.                         <div class="select-types d-none">
  72.                             @include('admin.datatable.enrolled-students.partials.types', ['for' => 'sms'])
  73.                         </div>
  74.                         <div class="form-group">
  75.                             <label class="form-label">Body</label>
  76.                             <textarea name="body" class="form-control norweo" rows="5"></textarea>
  77.                         </div>
  78.                     </div>
  79.                     <div class="modal-footer">
  80.                         <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
  81.                         <button type="submit" class="btn btn-primary">Send</button>
  82.                     </div>
  83.                 </form>
  84.             </div>
  85.         </div>
  86.     </div>
  87.  
  88.     <!-- Students Email Modal -->
  89.     <div class="modal fade" id="studentEmailModal" tabindex="-1" aria-labelledby="studentEmailModalLabel"
  90.         aria-hidden="true">
  91.         <div class="modal-dialog modal-lg">
  92.             <div class="modal-content">
  93.                 <div class="modal-header">
  94.                     <h5 class="modal-title" id="studentEmailModalLabel">Send Email</h5>
  95.                     <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
  96.                 </div>
  97.                 <form action="{{ route('enrolled-student.send-email') }}" class="form" method="POST">
  98.                     @csrf
  99.                     <input type="hidden" name="course_id" value="{{ $courseId }}">
  100.                     <input type="hidden" name="student_id">
  101.                     <div class="modal-body">
  102.                         <div class="row">
  103.                             @foreach ($templates as $template)
  104.                                 <div class="col-3 mb-2">
  105.                                     <button type="button" class="btn btn-light" onclick="useTemplate({{ $loop->index }}, '#studentEmailModal')">
  106.                                         <span class="badge bg-light text-dark">{{ $template->name }}</span>
  107.                                     </button>
  108.                                 </div>
  109.                             @endforeach
  110.                         </div>
  111.                         <div class="form-group">
  112.                             <label class="form-label">Subject</label>
  113.                             <input name="subject" type="text" required class="form-control">
  114.                         </div>
  115.                         <div class="form-group">
  116.                             <label class="form-label">Body</label>
  117.                             <textarea name="body" class="form-control ic_summernote"></textarea>
  118.                         </div>
  119.                     </div>
  120.                     <div class="modal-footer">
  121.                         <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
  122.                         <button type="submit" class="btn btn-primary">Send</button>
  123.                     </div>
  124.                 </form>
  125.             </div>
  126.         </div>
  127.     </div>
  128.     <!-- Students SMS Modal -->
  129.     <div class="modal fade" id="studentSMS" tabindex="-1" aria-labelledby="studentSMSLabel"
  130.         aria-hidden="true">
  131.         <div class="modal-dialog modal-lg">
  132.             <div class="modal-content">
  133.                 <div class="modal-header">
  134.                     <h5 class="modal-title" id="studentSMSLabel">Enrolled Student Email</h5>
  135.                     <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
  136.                 </div>
  137.                 <form action="{{ route('enrolled-student.send-sms') }}" class="form" method="POST">
  138.                     @csrf
  139.                     <input type="hidden" name="course_id" value="{{ $courseId }}">
  140.                     <input type="hidden" name="student_id">
  141.                     <div class="modal-body">
  142.                         <div class="form-group">
  143.                             <label class="form-label">Body</label>
  144.                             <textarea name="body" class="form-control norweo" rows="5"></textarea>
  145.                         </div>
  146.                     </div>
  147.                     <div class="modal-footer">
  148.                         <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
  149.                         <button type="submit" class="btn btn-primary">Send</button>
  150.                     </div>
  151.                 </form>
  152.             </div>
  153.         </div>
  154.     </div>
  155. @endsection
  156.  
  157. @push('style')
  158.     @include('admin.layouts.partials.datatableCss')
  159. @endpush
  160.  
  161. @push('script')
  162.     @include('admin.layouts.partials.dataTablejs')
  163.  
  164.     <script>
  165.         $(document).ready(function() {
  166.             $('#emailModal .ic_summernote').summernote({
  167.                 height: 200,
  168.                 toolbar: [
  169.                     ['style', ['bold', 'italic', 'underline', 'clear']],
  170.                     ['font', ['strikethrough', 'superscript', 'subscript']],
  171.                     ['fontsize', ['fontsize']],
  172.                     ['color', ['color']],
  173.                     ['para', ['ul', 'ol', 'paragraph']],
  174.                     ['height', ['height']],
  175.                     ['insert', ['link', 'picture']],
  176.                     ['view', ['fullscreen', 'codeview', 'help']],
  177.                 ]
  178.             });
  179.  
  180.             // Reset modal when hidden
  181.             $('#emailModal, #smsModal').on('hidden.bs.modal', function () {
  182.                 $(this).find('input[name="student_id"]').val('');
  183.                 $(this).find('input[name="type"]').first().prop('checked', true);
  184.                 $(this).find('input[name="subject"]').val('');
  185.                 $(this).find('textarea[name="body"]').summernote
  186.                     ? $(this).find('textarea[name="body"]').summernote('code', '')
  187.                     : $(this).find('textarea[name="body"]').val('');
  188.                 $(this).find('.select-types').removeClass('d-none');
  189.             });
  190.  
  191.            
  192.            
  193.             /* $('#enrolledStudentSMS').on('hidden.bs.modal', function(event) {
  194.                 $('#enrolledStudentSMS input[name="type"]').first().prop('checked', true);
  195.                 $('#enrolledStudentSMS textarea[name="body"]').val('');
  196.             });
  197.  
  198.             $('#studentEmailModal').on('hidden.bs.modal', function(event) {
  199.                 $('#studentEmailModal input[name="type"]').first().prop('checked', true);
  200.                 fillEmailForm('#studentEmailModal');
  201.                 $('#studentEmailModal input[name="student_id"]').val('');
  202.             });
  203.  
  204.             $('#studentSMS').on('hidden.bs.modal', function(event) {
  205.                 $('#studentSMS input[name="type"]').first().prop('checked', true);
  206.                 $('#studentSMS textarea[name="body"]').val('');
  207.                 $('#studentSMS input[name="student_id"]').val('');
  208.             }); */
  209.         });
  210.  
  211.         var template = null;
  212.         var emailTemplates = @json($templates);
  213.  
  214.         function useTemplate(index) {
  215.             template = emailTemplates[index];
  216.             fillEmailForm(template.subject, template.body);
  217.         }
  218.  
  219.         function fillEmailForm(subject = '', body = '') {
  220.             $('#emailModal input[name="subject"]').val(subject);
  221.             $('#emailModal textarea[name="body"]').summernote('code', body);
  222.         }
  223.  
  224.         function setStudentId(id, selector) {
  225.             $(`${selector} input[name="student_id"]`).val(id);
  226.             $('.select-types').addClass('d-none');
  227.         }
  228.     </script>
  229. @endpush
  230.  
Advertisement
Add Comment
Please, Sign In to add comment