mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-05 09:41:40 +09:00
Update rx_ajax to use Rhymix.ajax() underneath
This commit is contained in:
parent
688c9ea87c
commit
e7fbeee414
2 changed files with 23 additions and 23 deletions
|
|
@ -432,7 +432,7 @@ Rhymix.ajax = function(action, params, success, error) {
|
|||
dataType: 'json',
|
||||
url: url,
|
||||
data: params,
|
||||
processData: (action !== null),
|
||||
processData: (action !== null && !(params instanceof FormData)),
|
||||
headers : headers,
|
||||
success : function(data, textStatus, xhr) {
|
||||
Rhymix.ajaxSuccessHandler(xhr, textStatus, action, data, params, success, error);
|
||||
|
|
@ -841,6 +841,16 @@ $(function() {
|
|||
}
|
||||
$('#rhymix_alert').on('click', rhymix_alert_close);
|
||||
|
||||
/**
|
||||
* Intercept form submission and handle them with AJAX
|
||||
*/
|
||||
$(document).on('submit', 'form.rx_ajax', function(event) {
|
||||
if (!$(this).attr('target')) {
|
||||
event.preventDefault();
|
||||
Rhymix.ajaxForm(this);
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Editor preview replacement
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -375,41 +375,31 @@
|
|||
/**
|
||||
* Function for AJAX submission of arbitrary forms.
|
||||
*/
|
||||
XE.ajaxForm = function(form, callback_success, callback_error) {
|
||||
form = $(form);
|
||||
Rhymix.ajaxForm = function(form, callback_success, callback_error) {
|
||||
const $form = $(form);
|
||||
// Get success and error callback functions.
|
||||
if (typeof callback_success === 'undefined') {
|
||||
callback_success = form.data('callbackSuccess');
|
||||
if (callback_success && window[callback_success] && $.isFunction(window[callback_success])) {
|
||||
callback_success = $form.data('callbackSuccess');
|
||||
if (callback_success && $.isFunction(callback_success)) {
|
||||
// no-op
|
||||
} else if (callback_success && window[callback_success] && $.isFunction(window[callback_success])) {
|
||||
callback_success = window[callback_success];
|
||||
} else {
|
||||
callback_success = function(data) {
|
||||
if (data.message && data.message !== 'success') {
|
||||
rhymix_alert(data.message, data.redirect_url);
|
||||
}
|
||||
if (data.redirect_url) {
|
||||
redirect(data.redirect_url);
|
||||
}
|
||||
};
|
||||
callback_success = null;
|
||||
}
|
||||
}
|
||||
if (typeof callback_error === 'undefined') {
|
||||
callback_error = form.data('callbackError');
|
||||
if (callback_error && window[callback_error] && $.isFunction(window[callback_error])) {
|
||||
callback_error = $form.data('callbackError');
|
||||
if (callback_error && $.isFunction(callback_error)) {
|
||||
// no-op
|
||||
} else if (callback_error && window[callback_error] && $.isFunction(window[callback_error])) {
|
||||
callback_error = window[callback_error];
|
||||
} else {
|
||||
callback_error = null;
|
||||
}
|
||||
}
|
||||
window.exec_json('raw', new FormData(form[0]), callback_success, callback_error);
|
||||
Rhymix.ajax(null, new FormData($form[0]), callback_success, callback_error);
|
||||
};
|
||||
$(document).on('submit', 'form.rx_ajax', function(event) {
|
||||
// Abort if the form already has a 'target' attribute.
|
||||
if (!$(this).attr('target')) {
|
||||
event.preventDefault();
|
||||
XE.ajaxForm(this);
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Empty placeholder for beforeUnload handler.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue