From: Vincent Vanwaelscappel Date: Thu, 15 Sep 2022 16:39:35 +0000 (+0200) Subject: wip #5459 @0.5 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=df7dc766b4e187cf44920a3c95947c086401ab1b;p=fluidbook-toolbox.git wip #5459 @0.5 --- diff --git a/public/packages/fluidbook/toolbox/js/linkeditor.js b/public/packages/fluidbook/toolbox/js/linkeditor.js index cf6b69bd9..713db790b 100644 --- a/public/packages/fluidbook/toolbox/js/linkeditor.js +++ b/public/packages/fluidbook/toolbox/js/linkeditor.js @@ -14,6 +14,8 @@ var movingRuler = null; var rasterizePages = splitPages(FLUIDBOOK_DATA.settings.rasterizePages); var vectorPages = splitPages(FLUIDBOOK_DATA.settings.vectorPages); var unsavedChanges = false; +var automaticSaveTimeout; +var runningAutomaticSaveTimeout = false; $(function () { init(); @@ -27,12 +29,11 @@ function init() { $(window).on('resize', function () { resize(); }); - $(window).on('beforeunload',function(){ - if(unsavedChanges){ + $(window).on('beforeunload', function () { + if (unsavedChanges) { return TRANSLATIONS.warning_unsaved_changes; } }) - // Disable scroll by spacebar $(window).on('keydown', function (e) { if (e.keyCode == 32) { @@ -178,6 +179,8 @@ function saveLinks(message) { type: "success", text: TRANSLATIONS.success_save, }).show(); unsavedChanges = false; + runningAutomaticSaveTimeout=false; + clearTimeout(automaticSaveTimeout); }, error: function (jqXHR, status, error) { new Noty({ type: "error", text: TRANSLATIONS.error_save + ' : ' + error, @@ -186,6 +189,10 @@ function saveLinks(message) { }); } +function automaticSaveLinks() { + saveLinks(TRANSLATIONS.automatic_save_message); +} + function firstPage() { changePage(1); } @@ -254,6 +261,12 @@ function deleteRuler(ruler) { function hasChanged() { unsavedChanges = true; + if (runningAutomaticSaveTimeout === false) { + runningAutomaticSaveTimeout = true; + automaticSaveTimeout = setTimeout(function () { + automaticSaveLinks(); + }, 1000 * 5 * 60); + } } function moveRuler() {