Prevent duplication of content in ACE.

This commit is contained in:
Sebastian Serth
2020-11-10 02:20:18 +01:00
parent fd788cc51d
commit 2ba6cd7b32
2 changed files with 6 additions and 3 deletions

View File

@ -1,4 +1,4 @@
$(document).on('turbolinks:load', function() {
$(document).on('turbolinks:load', function(event) {
//Merge all editor components.
$.extend(
@ -14,9 +14,12 @@ $(document).on('turbolinks:load', function() {
CodeOceanEditorRequestForComments
);
if ($('#editor').isPresent() && CodeOceanEditor) {
if ($('#editor').isPresent() && CodeOceanEditor && event.originalEvent.data.url.endsWith("/implement")) {
if (CodeOceanEditor.isBrowserSupported()) {
$('#alert').hide();
// This call will (amon other things) initializeEditors and load the content except for the last line
// It must not be called during page navigation. Otherwise, content will be duplicated!
// Search for insertLines and Turbolinks reload / cache control
CodeOceanEditor.initializeEverything();
}
}

View File

@ -879,7 +879,7 @@ var CodeOceanEditor = {
this.initializeDeadlines();
CodeOceanEditorTips.initializeEventHandlers();
window.addEventListener("turbolinks:request-start", this.unloadAutoSave.bind(this));
window.addEventListener("beforeunload", this.unloadAutoSave.bind(this));
// create autosave when the editor is opened the first time
this.autosave();
}