$('#contact-table').DataTable().clear().destroy(); var table_table = $('#contact-table').DataTable({ initComplete: function () { this.api().columns([0]).every(function () { var column = this; var select = $('') .appendTo($(column.footer()).empty()) .on('change', function () { var val = $.fn.dataTable.util.escapeRegex( $(this).val() ); column .search(val ? '^' + val + '$' : '', true, false) .draw(); }); column.data().unique().sort().each(function (d, j) { select.append(''); $('select').selectpicker('refresh'); }); }); }, responsive: true, fixedHeader: { header: true, footer: true }, processing: true, serverSide: true, ajax: { url: "{{ route('contacts.show',$employee->id) }}", }, columns: [ { data: 'contact_name', name: 'contact_name', }, { data: 'relation', name: 'relation', }, { data: 'personal_email', name: 'personal_email', }, { data: 'personal_phone', name: 'personal_phone', }, { data: 'action', name: 'action', orderable: false } ], "order": [], 'language': { 'lengthMenu': '_MENU_ {{__('records per page')}}', "info": '{{trans("file.Showing")}} _START_ - _END_ (_TOTAL_)', "search": '{{trans("file.Search")}}', 'paginate': { 'previous': '{{trans("file.Previous")}}', 'next': '{{trans("file.Next")}}' } }, 'columnDefs': [ { "orderable": false, 'targets': [0, 4], }, ], 'select': {style: 'multi', selector: 'td:first-child'}, 'lengthMenu': [[10, 25, 50, -1], [10, 25, 50, "All"]], }); new $.fn.dataTable.FixedHeader(table_table); $('#create_contact_record').click(function () { $('.modal-title').text("Add New Contact"); $('#contact_action_button').val('{{trans('file.Add')}}'); $('#contact_action').val('{{trans('file.Add')}}'); $('#ContactformModal').modal('show'); }); $('#contact_sample_form').on('submit', function (event) { event.preventDefault(); if ($('#contact_action').val() == '{{trans('file.Add')}}') { $.ajax({ url: "{{ route('contacts.store',$employee->id) }}", method: "POST", data: new FormData(this), contentType: false, cache: false, processData: false, dataType: "json", success: function (data) { var html = ''; if (data.errors) { html = '
'; for (var count = 0; count < data.errors.length; count++) { html += '

' + data.errors[count] + '

'; } html += '
'; } if (data.success) { html = '
' + data.success + '
'; $('#contact_sample_form')[0].reset(); $('select').selectpicker('refresh'); $('#contact-table').DataTable().ajax.reload(); } $('#contact_form_result').html(html).slideDown(300).delay(5000).slideUp(300); } }); } if ($('#contact_action').val() == '{{trans('file.Edit')}}') { $.ajax({ url: "{{ route('contacts.update') }}", method: "POST", data: new FormData(this), contentType: false, cache: false, processData: false, dataType: "json", success: function (data) { var html = ''; if (data.errors) { html = '
'; for (var count = 0; count < data.errors.length; count++) { html += '

' + data.errors[count] + '

'; } html += '
'; } if (data.error) { html = '
' + data.error + '
'; } if (data.success) { html = '
' + data.success + '
'; setTimeout(function () { $('#ContactformModal').modal('hide'); $('select').selectpicker('refresh'); $('#contact-table').DataTable().ajax.reload(); $('#contact_sample_form')[0].reset(); }, 2000); } $('#contact_form_result').html(html).slideDown(300).delay(5000).slideUp(300); } }); } }); $(document).on('click', '.contact_edit', function () { var id = $(this).attr('id'); var target = "{{ route('contacts.index') }}/" + id + '/edit'; $.ajax({ url: target, dataType: "json", success: function (html) { let id = html.data.id; $('#contact_name').val(html.data.contact_name); $('#contact_work_email').val(html.data.work_email); $('#contact_personal_email').val(html.data.personal_email); $('#contact_address_1').val(html.data.address1); $('#contact_address_2').val(html.data.address2); $('#contact_work_phone').val(html.data.work_phone); $('#contact_work_phone_ext').val(html.data.work_phone_ext); $('#contact_personal_phone').val(html.data.personal_phone); $('#contact_home_phone').val(html.data.home_phone); $('#contact_city').val(html.data.city); $('#contact_state').val(html.data.state); $('#contact_zip').val(html.data.zip); if (html.data.is_primary == 1) { $('#contact_is_primary').prop('checked', true); } else { $('#contact_is_primary').prop('checked', false); } if (html.data.is_dependent == 1) { $('#contact_is_dependent').prop('checked', true); } else { $('#contact_is_dependent').prop('checked', false); } $('#contact_relation').selectpicker('val', html.data.relation_type_id); $('#contact_country').selectpicker('val', html.data.country_id); $('#contact_hidden_id').val(html.data.id); $('.modal-title').text('{{trans('file.Edit')}}'); $('#contact_action_button').val('{{trans('file.Edit')}}'); $('#contact_action').val('{{trans('file.Edit')}}'); $('#ContactformModal').modal('show'); } }) }); let contact_delete_id; $(document).on('click', '.contact_delete', function () { contact_delete_id = $(this).attr('id'); $('.confirmModal').modal('show'); $('.modal-title').text('{{__('DELETE Record')}}'); $('.contact-ok').text('{{trans('file.OK')}}'); }); $('.contact-close').click(function () { $('#contact_sample_form')[0].reset(); $('select').selectpicker('refresh'); $('.confirmModal').modal('hide'); $('#contact-table').DataTable().ajax.reload(); }); $('.contact-ok').click(function () { let target = "{{ route('contacts.index') }}/" + contact_delete_id + '/delete'; $.ajax({ url: target, beforeSend: function () { $('.contact-ok').text('{{trans('file.Deleting...')}}'); }, success: function (data) { setTimeout(function () { $('.confirmModal').modal('hide'); $('#contact-table').DataTable().ajax.reload(); }, 2000); } }) });