class bluditAjax { // Autosave works only when the content has more than 100 characters // callBack function need to be showAlert(), this function is for display alerts to the user, defined in alert.php autosave(uuid, title, content, callBack) { var ajaxRequest; if (ajaxRequest) { ajaxRequest.abort(); } if (content.length<100) { return false; } ajaxRequest = $.ajax({ type: "POST", data: { tokenCSRF: tokenCSRF, // token from env variables uuid: uuid, title: title, content: content }, url: "ajax/save-as-draft" }); ajaxRequest.done(function (response, textStatus, jqXHR) { console.log("Bludit AJAX: autosave(): done handler"); callBack("Autosave success"); }); ajaxRequest.fail(function (jqXHR, textStatus, errorThrown) { console.log("Bludit AJAX: autosave(): fail handler"); callBack("Autosave failure"); }); ajaxRequest.always(function () { console.log("Bludit AJAX: autosave(): always handler"); }); } // Alert the user when the user is not logged userLogged(callBack) { var ajaxRequest; if (ajaxRequest) { ajaxRequest.abort(); } console.log("[INFO] Bludit AJAX: userLogged(): running"); ajaxRequest = $.ajax({ type: "POST", data: { tokenCSRF: tokenCSRF // token from env variables }, url: "ajax/user-logged" }); ajaxRequest.done(function (response, textStatus, jqXHR) { console.log("[INFO] Bludit AJAX: userLogged(): done handler"); }); ajaxRequest.fail(function (jqXHR, textStatus, errorThrown) { // The fail is produced by admin.php when the user is not logged the ajax request is not possible and returns 401 console.log("[INFO] Bludit AJAX: userLogged(): fail handler"); if (jqXHR.status==401) { callBack("Your are not more logged, Bludit can't save your settings and content."); } }); ajaxRequest.always(function () { console.log("[INFO] Bludit AJAX: userLogged(): always handler"); }); } generateSlug(text, parentKey, currentKey, callBack) { var ajaxRequest; if (ajaxRequest) { ajaxRequest.abort(); } ajaxRequest = $.ajax({ type: "POST", data: { tokenCSRF: tokenCSRF, text: text, parentKey: parentKey, currentKey: currentKey }, url: "" }); ajaxRequest.done(function (response, textStatus, jqXHR) { console.log("Bludit AJAX: generateSlug(): done handler"); callBack.val(response["slug"]); }); ajaxRequest.fail(function (jqXHR, textStatus, errorThrown) { console.log("Bludit AJAX: generateSlug(): fail handler"); }); ajaxRequest.always(function () { console.log("Bludit AJAX: generateSlug(): always handler"); }); } }