diff --git a/okitweb/static/okit/js/okit.js b/okitweb/static/okit/js/okit.js index 8ab96b70c..f890b8c28 100644 --- a/okitweb/static/okit/js/okit.js +++ b/okitweb/static/okit/js/okit.js @@ -695,15 +695,20 @@ class OkitSettings { class OkitAutoSave { key = "okitJson"; - constructor() { + constructor(callback, interval = 60000) { this.autoInterval = undefined; + this.callback = callback; + this.interval = interval } - startAutoSave(timeout = 30000) { + startAutoSave() { this.stopAutoSave(); this.autoInterval = setInterval(() => { localStorage.setItem(this.key, JSON.stringify(okitJsonModel)); - }, timeout); + if (this.callback) { + this.callback(); + } + }, this.interval); localStorage.setItem(this.key, JSON.stringify(okitJsonModel)); } diff --git a/okitweb/static/okit/js/okit_designer.js b/okitweb/static/okit/js/okit_designer.js index 7aa5dbb63..6055c5e84 100644 --- a/okitweb/static/okit/js/okit_designer.js +++ b/okitweb/static/okit/js/okit_designer.js @@ -83,6 +83,9 @@ function handleRecover(evt) { displayDesignerView(); displayTreeView(); } + hideRecoverMenuItem(); +} +function hideRecoverMenuItem() { $(jqId('file_recover_menu_item_li')).addClass('hidden'); } /* @@ -93,6 +96,7 @@ function handleNew(evt) { resetDesigner(); newDiagram(); redrawSVGCanvas(); + hideRecoverMenuItem(); } function newDiagram() { console.log('Creating New Diagram'); @@ -178,6 +182,7 @@ function loaded(evt) { displayOkitJson(); displayDesignerView(); displayTreeView(); + hideRecoverMenuItem(); } function errorHandler(evt) { console.info('Error: ' + evt.target.error.name); @@ -207,6 +212,7 @@ function saveJson(text, filename){ let uri = 'data:text/plain;charset=utf-u,'+encodeURIComponent(text); triggerDownload(uri, filename); okitAutoSave.removeAutoSave(); + hideRecoverMenuItem(); } /* ** Save Model As Template @@ -561,7 +567,7 @@ function selectQueryLastUsedCompartment() { } let queryCount = 0; function showQueryResults() { - console.log('Generating Query Results'); + console.info('Generating Query Results'); let regions = $(jqId('query_region_id')).val(); let request = {}; request.compartment_id = $(jqId('query_compartment_id')).val(); @@ -603,7 +609,7 @@ function showQueryResults() { console.info('Region Not Selected.'); } $(jqId('modal_dialog_wrapper')).addClass('hidden'); - console.log(); + hideRecoverMenuItem(); } $(document).ajaxStop(function() { console.info('All Ajax Functions Stopped'); diff --git a/okitweb/static/okit/js/okit_designer_ready.js b/okitweb/static/okit/js/okit_designer_ready.js index 7d61983c0..ebc885d1e 100644 --- a/okitweb/static/okit/js/okit_designer_ready.js +++ b/okitweb/static/okit/js/okit_designer_ready.js @@ -28,7 +28,7 @@ $(document).ready(function() { /* ** Configure Auto Save */ - okitAutoSave = new OkitAutoSave(); + okitAutoSave = new OkitAutoSave(hideRecoverMenuItem); // Test is Auto Save exists recovered_model = okitAutoSave.getOkitJsonModel(); if (recovered_model) {$(jqId('file_recover_menu_item_li')).removeClass('hidden');}