You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
1.9 KiB
JavaScript
67 lines
1.9 KiB
JavaScript
/*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*/
|
|
|
|
function saveme(callback) {
|
|
sync(); // update textareas with correct content
|
|
|
|
var noteid = $("#note_content").data("noteid");
|
|
var note = new Note();
|
|
if (noteid != "") {
|
|
note = NOTES.get(noteid);
|
|
if (note.getSyncStatus() != "LOCAL_ONLY") {
|
|
note.setSyncStatus("LOCAL_EDITED");
|
|
}
|
|
}
|
|
note.setText($("#note_content").val());
|
|
note.setModified();
|
|
NOTES.set(note);
|
|
NOTES.syncAll(function () {
|
|
app.toast.create({
|
|
text: 'Note saved.',
|
|
closeTimeout: 2000
|
|
}).open();
|
|
$("#orig_content").val(note.content);
|
|
if (typeof callback == "function") {
|
|
callback();
|
|
}
|
|
}, function () {
|
|
app.toast.create({
|
|
text: 'Note saved locally.',
|
|
closeTimeout: 2000
|
|
}).open();
|
|
$("#orig_content").val(note.content);
|
|
if (typeof callback == "function") {
|
|
callback();
|
|
}
|
|
});
|
|
}
|
|
|
|
function init() {
|
|
document.getElementById("noteframe").contentWindow.initEditor($("#note_content").val());
|
|
}
|
|
|
|
/**
|
|
* Get the text from the editor iframe and put it in the hidden textarea
|
|
* @returns {undefined}
|
|
*/
|
|
function sync() {
|
|
$("#note_content").val(document.getElementById("noteframe").contentWindow.getMarkdown());
|
|
}
|
|
|
|
function exiteditor() {
|
|
sync();
|
|
if ($("#note_content").val() == "" || $("#note_content").val() === $("#orig_content").val()) {
|
|
router.back({force: true, ignoreCache: true, reload: true});
|
|
} else {
|
|
saveme(function () {
|
|
router.back({force: true, ignoreCache: true, reload: true});
|
|
});
|
|
}
|
|
}
|
|
|
|
$("#noteframe").on("load", function () {
|
|
init();
|
|
}); |