Untitled
$(document).on('submit', '.settingsForm', function(e) { e.preventDefault(); var data = new FormData(this); var route = $(this).attr('data-route'); var submitButton = e.originalEvent ? $(e.originalEvent.submitter) : null; var submitButtonExists = submitButton && submitButton.length > 0; $.ajax({ method: 'post', url: route, dataType: 'json', cache: false, processData: false, contentType: false, data: data, beforeSend: function() { if (submitButtonExists) { submitButton.find(".note-btn-spinner").remove(); submitButton.append(`<div class="ms-1 spinner-border spinner-border-sm text-white note-btn-spinner" role="status"> <span class="visually-hidden"></span> </div>`); } if ($('#add-ticket-field').hasClass('show')) { $('#cardloader').removeClass('d-none'); } }, success: function(response) { if ($('#add-ticket-field').hasClass('show')) { $('#add-ticket-field').modal('hide'); } if (response.cards_html) { $('#ticketAddform').trigger("reset"); $('#ticketInputCards').html(response.cards_html); } if (response.errors) { $.each(response.errors, function(key, value) { toastr(value, 'danger'); }); } if (response.message) { var className = response.status ? 'success' : 'danger'; toastr(response.message, className); } }, error: function(error) { if (error && error.responseJSON) { if (error.responseJSON.errors) { for (let i in error.responseJSON.errors) { toastr(error.responseJSON.errors[i][0], 'danger'); } } else { toastr(error.responseJSON.message || error.responseJSON.error, 'danger'); } } else { toastr(error.message, 'danger'); } }, complete: function() { if (submitButtonExists) { submitButton.find(".note-btn-spinner").remove(); } $('#cardloader').addClass('d-none'); }, }); });
Leave a Comment