Autosave and preview improves
This commit is contained in:
parent
de2cfeb66e
commit
18778226eb
|
@ -400,8 +400,8 @@ $(document).ready(function() {
|
||||||
var title = $("#jstitle").val();
|
var title = $("#jstitle").val();
|
||||||
var content = editorGetContent();
|
var content = editorGetContent();
|
||||||
var ajax = new bluditAjax();
|
var ajax = new bluditAjax();
|
||||||
bluditAjax.preview(uuid, title, content).then(function(data) {
|
bluditAjax.saveAsDraft(uuid, title, content).then(function(data) {
|
||||||
window.open("<?php echo DOMAIN_PAGES.'autosave-'.$uuid.'?preview='.md5('autosave-'.$uuid) ?>", "_blank");
|
window.open("<?php echo DOMAIN_PAGES.'autosave-'.$page->uuid().'?preview='.md5('autosave-'.$page->uuid()) ?>", "_blank");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -435,19 +435,21 @@ $(document).ready(function() {
|
||||||
});
|
});
|
||||||
|
|
||||||
// Autosave
|
// Autosave
|
||||||
// Autosave works when the content of the page is bigger than 100 characters
|
|
||||||
var currentContent = editorGetContent();
|
var currentContent = editorGetContent();
|
||||||
setInterval(function() {
|
setInterval(function() {
|
||||||
var uuid = $("#jsuuid").val();
|
var uuid = $("#jsuuid").val();
|
||||||
var title = $("#jstitle").val();
|
var title = $("#jstitle").val() + "[<?php $L->p('Autosave') ?>]";
|
||||||
var content = editorGetContent();
|
var content = editorGetContent();
|
||||||
var ajax = new bluditAjax();
|
// Autosave when content has at least 100 characters
|
||||||
// Call autosave only when the user change the content
|
if (content.length<100) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
// Autosave only when the user change the content
|
||||||
if (currentContent!=content) {
|
if (currentContent!=content) {
|
||||||
currentContent = content;
|
currentContent = content;
|
||||||
bluditAjax.autosave(uuid, title, content).then(function(data) {
|
bluditAjax.saveAsDraft(uuid, title, content).then(function(data) {
|
||||||
if (data.status==0) {
|
if (data.status==0) {
|
||||||
showAlert("Autosave success");
|
showAlert("<?php $L->p('Autosave') ?>");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -349,7 +349,7 @@ $(document).ready(function() {
|
||||||
var uuid = $("#jsuuid").val();
|
var uuid = $("#jsuuid").val();
|
||||||
var title = $("#jstitle").val();
|
var title = $("#jstitle").val();
|
||||||
var content = editorGetContent();
|
var content = editorGetContent();
|
||||||
bluditAjax.preview(uuid, title, content).then(function(data) {
|
bluditAjax.saveAsDraft(uuid, title, content).then(function(data) {
|
||||||
window.open("<?php echo DOMAIN_PAGES.'autosave-'.$uuid.'?preview='.md5('autosave-'.$uuid) ?>", "_blank");
|
window.open("<?php echo DOMAIN_PAGES.'autosave-'.$uuid.'?preview='.md5('autosave-'.$uuid) ?>", "_blank");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -372,18 +372,21 @@ $(document).ready(function() {
|
||||||
});
|
});
|
||||||
|
|
||||||
// Autosave
|
// Autosave
|
||||||
// Autosave works when the content of the page is bigger than 100 characters
|
|
||||||
var currentContent = editorGetContent();
|
var currentContent = editorGetContent();
|
||||||
setInterval(function() {
|
setInterval(function() {
|
||||||
var uuid = $("#jsuuid").val();
|
var uuid = $("#jsuuid").val();
|
||||||
var title = $("#jstitle").val();
|
var title = $("#jstitle").val() + "[<?php $L->p('Autosave') ?>]";
|
||||||
var content = editorGetContent();
|
var content = editorGetContent();
|
||||||
// Call autosave only when the user change the content
|
// Autosave when content has at least 100 characters
|
||||||
|
if (content.length<100) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
// Autosave only when the user change the content
|
||||||
if (currentContent!=content) {
|
if (currentContent!=content) {
|
||||||
currentContent = content;
|
currentContent = content;
|
||||||
bluditAjax.autosave(uuid, title, content).then(function(data) {
|
bluditAjax.saveAsDraft(uuid, title, content).then(function(data) {
|
||||||
if (data.status==0) {
|
if (data.status==0) {
|
||||||
showAlert("Autosave success");
|
showAlert("<?php $L->p('Autosave') ?>");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
header('Content-Type: application/json');
|
header('Content-Type: application/json');
|
||||||
|
|
||||||
/*
|
/*
|
||||||
| Create/Edit a page and save as draft
|
| Create/edit a page and save as draft
|
||||||
| If the UUID already exists the page is updated
|
| If the UUID already exists the page is updated
|
||||||
|
|
|
|
||||||
| @_POST['title'] string Page title
|
| @_POST['title'] string Page title
|
||||||
|
@ -36,7 +36,7 @@ $page = array(
|
||||||
// Get the page key by the UUID
|
// Get the page key by the UUID
|
||||||
$pageKey = $pages->getByUUID($uuid);
|
$pageKey = $pages->getByUUID($uuid);
|
||||||
|
|
||||||
// if pageKey is empty means the autosave page doesn't exist
|
// if pageKey is empty means the page doesn't exist
|
||||||
if (empty($pageKey)) {
|
if (empty($pageKey)) {
|
||||||
createPage($page);
|
createPage($page);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -314,7 +314,6 @@ function createPage($args) {
|
||||||
'notes'=>(empty($args['title'])?$key:$args['title'])
|
'notes'=>(empty($args['title'])?$key:$args['title'])
|
||||||
));
|
));
|
||||||
|
|
||||||
Alert::set( $L->g('new-content-created') );
|
|
||||||
return $key;
|
return $key;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
class bluditAjax {
|
class bluditAjax {
|
||||||
|
|
||||||
static async preview(uuid, title, content) {
|
static async saveAsDraft(uuid, title, content) {
|
||||||
let url = HTML_PATH_ADMIN_ROOT+"ajax/save-as-draft"
|
let url = HTML_PATH_ADMIN_ROOT+"ajax/save-as-draft"
|
||||||
try {
|
try {
|
||||||
const response = await fetch(url, {
|
const response = await fetch(url, {
|
||||||
|
@ -25,13 +25,8 @@ class bluditAjax {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Autosave works only when the content has more than 100 characters
|
static async removeLogo() {
|
||||||
static async autosave(uuid, title, content) {
|
let url = HTML_PATH_ADMIN_ROOT+"ajax/remove-logo"
|
||||||
if ((content.length<100)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
let url = HTML_PATH_ADMIN_ROOT+"ajax/save-as-draft"
|
|
||||||
try {
|
try {
|
||||||
const response = await fetch(url, {
|
const response = await fetch(url, {
|
||||||
credentials: 'same-origin',
|
credentials: 'same-origin',
|
||||||
|
@ -40,10 +35,7 @@ class bluditAjax {
|
||||||
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
|
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
|
||||||
}),
|
}),
|
||||||
body: new URLSearchParams({
|
body: new URLSearchParams({
|
||||||
'tokenCSRF': tokenCSRF,
|
'tokenCSRF': tokenCSRF
|
||||||
'uuid': "autosave-" + uuid,
|
|
||||||
'title': title+" [Autosave]",
|
|
||||||
'content': content
|
|
||||||
}),
|
}),
|
||||||
});
|
});
|
||||||
const json = await response.json();
|
const json = await response.json();
|
||||||
|
|
Loading…
Reference in New Issue