Handle setDirty with updateClientDate defaulting to false

This commit is contained in:
Mo Bitar
2019-05-22 16:57:03 -05:00
parent 1e39ab868b
commit 10022ba87b
8 changed files with 7165 additions and 28 deletions

View File

@@ -247,9 +247,9 @@ angular.module('app')
var statusTimeout; var statusTimeout;
this.saveNote = function(note, callback, dontUpdateClientModified, dontUpdatePreviews) { this.saveNote = function(note, callback, updateClientModified, dontUpdatePreviews) {
// We don't want to update the client modified date if toggling lock for note. // We don't want to update the client modified date if toggling lock for note.
note.setDirty(true, dontUpdateClientModified); note.setDirty(true, updateClientModified);
if(!dontUpdatePreviews) { if(!dontUpdatePreviews) {
let limit = 80; let limit = 80;
@@ -280,7 +280,7 @@ angular.module('app')
} }
let saveTimeout; let saveTimeout;
this.changesMade = function({bypassDebouncer, dontUpdateClientModified, dontUpdatePreviews} = {}) { this.changesMade = function({bypassDebouncer, updateClientModified, dontUpdatePreviews} = {}) {
let note = this.note; let note = this.note;
note.dummy = false; note.dummy = false;
@@ -318,7 +318,7 @@ angular.module('app')
this.showErrorStatus(); this.showErrorStatus();
}, 200) }, 200)
} }
}, dontUpdateClientModified, dontUpdatePreviews); }, updateClientModified, dontUpdatePreviews);
}, delay) }, delay)
} }
@@ -351,7 +351,7 @@ angular.module('app')
this.contentChanged = function() { this.contentChanged = function() {
// content changes should bypass manual debouncer as we use the built in ng-model-options debouncer // content changes should bypass manual debouncer as we use the built in ng-model-options debouncer
this.changesMade({bypassDebouncer: true}); this.changesMade({bypassDebouncer: true, updateClientModified: true});
} }
this.onTitleEnter = function($event) { this.onTitleEnter = function($event) {
@@ -361,7 +361,7 @@ angular.module('app')
} }
this.onTitleChange = function() { this.onTitleChange = function() {
this.changesMade({dontUpdatePreviews: true}); this.changesMade({dontUpdatePreviews: true, updateClientModified: true});
} }
this.onNameFocus = function() { this.onNameFocus = function() {
@@ -398,7 +398,7 @@ angular.module('app')
this.remove()(this.note); this.remove()(this.note);
} else { } else {
this.note.content.trashed = true; this.note.content.trashed = true;
this.changesMade({bypassDebouncer: true, dontUpdateClientModified: true, dontUpdatePreviews: true}); this.changesMade({bypassDebouncer: true, dontUpdatePreviews: true});
} }
this.showMenu = false; this.showMenu = false;
} }
@@ -416,7 +416,7 @@ angular.module('app')
this.restoreTrashedNote = function() { this.restoreTrashedNote = function() {
this.note.content.trashed = false; this.note.content.trashed = false;
this.changesMade({bypassDebouncer: true, dontUpdateClientModified: true, dontUpdatePreviews: true}); this.changesMade({bypassDebouncer: true, dontUpdatePreviews: true});
} }
this.deleteNotePermanantely = function() { this.deleteNotePermanantely = function() {
@@ -442,12 +442,12 @@ angular.module('app')
this.toggleLockNote = function() { this.toggleLockNote = function() {
this.note.setAppDataItem("locked", !this.note.locked); this.note.setAppDataItem("locked", !this.note.locked);
this.changesMade({bypassDebouncer: true, dontUpdateClientModified: true, dontUpdatePreviews: true}); this.changesMade({bypassDebouncer: true, dontUpdatePreviews: true});
} }
this.toggleProtectNote = function() { this.toggleProtectNote = function() {
this.note.content.protected = !this.note.content.protected; this.note.content.protected = !this.note.content.protected;
this.changesMade({bypassDebouncer: true, dontUpdateClientModified: true, dontUpdatePreviews: true}); this.changesMade({bypassDebouncer: true, dontUpdatePreviews: true});
// Show privilegesManager if Protection is not yet set up // Show privilegesManager if Protection is not yet set up
privilegesManager.actionHasPrivilegesConfigured(PrivilegesManager.ActionViewProtectedNotes).then((configured) => { privilegesManager.actionHasPrivilegesConfigured(PrivilegesManager.ActionViewProtectedNotes).then((configured) => {
@@ -459,7 +459,7 @@ angular.module('app')
this.toggleNotePreview = function() { this.toggleNotePreview = function() {
this.note.content.hidePreview = !this.note.content.hidePreview; this.note.content.hidePreview = !this.note.content.hidePreview;
this.changesMade({bypassDebouncer: true, dontUpdateClientModified: true, dontUpdatePreviews: true}); this.changesMade({bypassDebouncer: true, dontUpdatePreviews: true});
} }
this.toggleArchiveNote = function() { this.toggleArchiveNote = function() {

View File

@@ -371,7 +371,7 @@ angular.module('app')
this.selectedNote = note; this.selectedNote = note;
if(note.content.conflict_of) { if(note.content.conflict_of) {
note.content.conflict_of = null; // clear conflict note.content.conflict_of = null; // clear conflict
note.setDirty(true, true); note.setDirty(true);
syncManager.sync(); syncManager.sync();
} }
this.selectionMade()(note); this.selectionMade()(note);

View File

@@ -109,7 +109,7 @@ angular.module('app')
this.selectedTag = tag; this.selectedTag = tag;
if(tag.content.conflict_of) { if(tag.content.conflict_of) {
tag.content.conflict_of = null; // clear conflict tag.content.conflict_of = null; // clear conflict
tag.setDirty(true, true); tag.setDirty(true);
syncManager.sync(); syncManager.sync();
} }
this.selectionMade()(tag); this.selectionMade()(tag);

View File

@@ -27,7 +27,7 @@ class EditorMenu {
if(component) { if(component) {
if(component.content.conflict_of) { if(component.content.conflict_of) {
component.content.conflict_of = null; // clear conflict if applicable component.content.conflict_of = null; // clear conflict if applicable
component.setDirty(true, true); component.setDirty(true);
syncManager.sync(); syncManager.sync();
} }
} }

View File

@@ -12,6 +12,8 @@ class ComponentManager extends SNComponentManager {
platform: getPlatformString() platform: getPlatformString()
}); });
// this.loggingEnabled = true;
this.$compile = $compile; this.$compile = $compile;
this.$rootScope = $rootScope; this.$rootScope = $rootScope;
} }

View File

@@ -76,7 +76,7 @@ class MigrationManager extends SFMigrationManager {
if(clientData) { if(clientData) {
note.setDomainDataItem(component.uuid, clientData, ComponentManager.ClientDataDomain); note.setDomainDataItem(component.uuid, clientData, ComponentManager.ClientDataDomain);
note.setDomainDataItem(component.hosted_url, null, ComponentManager.ClientDataDomain); note.setDomainDataItem(component.hosted_url, null, ComponentManager.ClientDataDomain);
note.setDirty(true, true); // dont update client date note.setDirty(true);
hasChanges = true; hasChanges = true;
} }
} }
@@ -126,14 +126,14 @@ class MigrationManager extends SFMigrationManager {
let tag = this.modelManager.findItem(reference.uuid); let tag = this.modelManager.findItem(reference.uuid);
if(tag && !tag.hasRelationshipWithItem(note)) { if(tag && !tag.hasRelationshipWithItem(note)) {
tag.addItemAsRelationship(note); tag.addItemAsRelationship(note);
tag.setDirty(true, true); tag.setDirty(true);
dirtyCount++; dirtyCount++;
} }
} }
if(newReferences.length != references.length) { if(newReferences.length != references.length) {
note.content.references = newReferences; note.content.references = newReferences;
note.setDirty(true, true); note.setDirty(true);
dirtyCount++; dirtyCount++;
} }
} }

7153
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -39,7 +39,7 @@
"mocha": "^5.2.0", "mocha": "^5.2.0",
"serve-static": "^1.13.2", "serve-static": "^1.13.2",
"sn-stylekit": "2.0.14", "sn-stylekit": "2.0.14",
"snjs": "0.2.1", "snjs": "file:~/Desktop/sn/dev/snjs",
"standard-file-js": "0.3.58" "standard-file-js": "file:~/Desktop/sn/dev/sfjs"
} }
} }