Scenario:
"I don't want Nucleus to auto-save my draft items for me. How can I disable this feature?"
Solution:
As this is a relatively new feature, there is currently no option to disable it. A core hack is required to disable auto-save.
Original forum thread (thanks, meowmix!):
http://forum.nucleuscms.org/viewtopic.php?t=16537
Method:
Find the /nucleus/javascript/xmlhttprequest.js file and open it to locate these lines:
/** * Auto saves as draft */ function autoSaveDraft() { checks = 0; seconds = now(); var title = encodeURI(addform.title.value); var body = encodeURI(addform.body.value); var catid = addform.catid.options[addform.catid.selectedIndex].value; var more = encodeURI(addform.more.value); var closed = 0; if (addform.closed[0].checked) { closed = addform.closed[0].value; } else if (addform.closed[1].checked) { closed = addform.closed[1].value; } var ticket = addform.ticket.value; var querystring = 'action=autodraft'; querystring += '&title=' + title; querystring += '&body=' + body; querystring += '&catid=' + catid; querystring += '&more=' + more; querystring += '&closed=' + closed; querystring += '&ticket=' + ticket; if (formtype == 'edit') { querystring += '&itemid=' + addform.itemid.value; querystring += '&type=edit'; } else { querystring += '&blogid=' + addform.blogid.value; querystring += '&type=add'; } if (addform.draftid.value > 0) { querystring += '&draftid=' + addform.draftid.value; } xmlhttprequest[0].open('POST', goalurl, true); xmlhttprequest[0].onreadystatechange = checkMonitor; xmlhttprequest[0].setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xmlhttprequest[0].send(querystring); var querystring = 'action=updateticket&ticket=' + ticket; xmlhttprequest[1].open('POST', goalurl, true); xmlhttprequest[1].onreadystatechange = updateTicket; xmlhttprequest[1].setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xmlhttprequest[1].send(querystring); }
Change to this:
/* /** * Auto saves as draft */ function autoSaveDraft() { checks = 0; seconds = now(); var title = encodeURI(addform.title.value); var body = encodeURI(addform.body.value); var catid = addform.catid.options[addform.catid.selectedIndex].value; var more = encodeURI(addform.more.value); var closed = 0; if (addform.closed[0].checked) { closed = addform.closed[0].value; } else if (addform.closed[1].checked) { closed = addform.closed[1].value; } var ticket = addform.ticket.value; var querystring = 'action=autodraft'; querystring += '&title=' + title; querystring += '&body=' + body; querystring += '&catid=' + catid; querystring += '&more=' + more; querystring += '&closed=' + closed; querystring += '&ticket=' + ticket; if (formtype == 'edit') { querystring += '&itemid=' + addform.itemid.value; querystring += '&type=edit'; } else { querystring += '&blogid=' + addform.blogid.value; querystring += '&type=add'; } if (addform.draftid.value > 0) { querystring += '&draftid=' + addform.draftid.value; } xmlhttprequest[0].open('POST', goalurl, true); xmlhttprequest[0].onreadystatechange = checkMonitor; xmlhttprequest[0].setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xmlhttprequest[0].send(querystring); var querystring = 'action=updateticket&ticket=' + ticket; xmlhttprequest[1].open('POST', goalurl, true); xmlhttprequest[1].onreadystatechange = updateTicket; xmlhttprequest[1].setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xmlhttprequest[1].send(querystring); } */
![]()
This answer was not rated yet.