mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 11:39:01 +01:00 
			
		
		
		
	refactoring of note saving code & API
This commit is contained in:
		
							parent
							
								
									6128bb4ff3
								
							
						
					
					
						commit
						d2e2caed62
					
				| @ -44,6 +44,14 @@ class NoteShort { | ||||
|     get toString() { | ||||
|         return `Note(noteId=${this.noteId}, title=${this.title})`; | ||||
|     } | ||||
| 
 | ||||
|     get dto() { | ||||
|         const dto = Object.assign({}, this); | ||||
|         delete dto.treeCache; | ||||
|         delete dto.hideInAutocomplete; | ||||
| 
 | ||||
|         return dto; | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| export default NoteShort; | ||||
| @ -84,39 +84,31 @@ async function switchToNote(noteId) { | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| async function saveNote() { | ||||
|     const note = getCurrentNote(); | ||||
| 
 | ||||
|     note.title = $noteTitle.val(); | ||||
|     note.content = getComponent(note.type).getContent(); | ||||
| 
 | ||||
|     treeService.setNoteTitle(note.noteId, note.title); | ||||
| 
 | ||||
|     await server.put('notes/' + note.noteId, note.dto); | ||||
| 
 | ||||
|     isNoteChanged = false; | ||||
| 
 | ||||
|     if (note.isProtected) { | ||||
|         protectedSessionHolder.touchProtectedSession(); | ||||
|     } | ||||
| 
 | ||||
|     infoService.showMessage("Saved!"); | ||||
| } | ||||
| 
 | ||||
| async function saveNoteIfChanged() { | ||||
|     if (!isNoteChanged) { | ||||
|         return; | ||||
|     } | ||||
| 
 | ||||
|     const note = getCurrentNote(); | ||||
| 
 | ||||
|     updateNoteFromInputs(note); | ||||
| 
 | ||||
|     await saveNoteToServer(note); | ||||
| 
 | ||||
|     if (note.isProtected) { | ||||
|         protectedSessionHolder.touchProtectedSession(); | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| function updateNoteFromInputs(note) { | ||||
|     note.title = $noteTitle.val(); | ||||
|     note.content = getComponent(note.type).getContent(); | ||||
| 
 | ||||
|     treeService.setNoteTitle(note.noteId, note.title); | ||||
| } | ||||
| 
 | ||||
| async function saveNoteToServer(note) { | ||||
|     const dto = Object.assign({}, note); | ||||
|     delete dto.treeCache; | ||||
|     delete dto.hideInAutocomplete; | ||||
| 
 | ||||
|     await server.put('notes/' + dto.noteId, dto); | ||||
| 
 | ||||
|     isNoteChanged = false; | ||||
| 
 | ||||
|     infoService.showMessage("Saved!"); | ||||
|     await saveNote(); | ||||
| } | ||||
| 
 | ||||
| function setNoteBackgroundIfProtected(note) { | ||||
| @ -245,8 +237,6 @@ setInterval(saveNoteIfChanged, 5000); | ||||
| export default { | ||||
|     reload, | ||||
|     switchToNote, | ||||
|     updateNoteFromInputs, | ||||
|     saveNoteToServer, | ||||
|     setNoteBackgroundIfProtected, | ||||
|     loadNote, | ||||
|     getCurrentNote, | ||||
| @ -255,6 +245,7 @@ export default { | ||||
|     newNoteCreated, | ||||
|     focus, | ||||
|     loadLabelList, | ||||
|     saveNote, | ||||
|     saveNoteIfChanged, | ||||
|     noteChanged | ||||
| }; | ||||
| @ -91,12 +91,9 @@ async function protectNoteAndSendToServer() { | ||||
|     await ensureProtectedSession(true, true); | ||||
| 
 | ||||
|     const note = noteDetail.getCurrentNote(); | ||||
| 
 | ||||
|     noteDetail.updateNoteFromInputs(note); | ||||
| 
 | ||||
|     note.isProtected = true; | ||||
| 
 | ||||
|     await noteDetail.saveNoteToServer(note); | ||||
|     await noteDetail.saveNote(note); | ||||
| 
 | ||||
|     treeService.setProtected(note.noteId, note.isProtected); | ||||
| 
 | ||||
| @ -107,12 +104,9 @@ async function unprotectNoteAndSendToServer() { | ||||
|     await ensureProtectedSession(true, true); | ||||
| 
 | ||||
|     const note = noteDetail.getCurrentNote(); | ||||
| 
 | ||||
|     noteDetail.updateNoteFromInputs(note); | ||||
| 
 | ||||
|     note.isProtected = false; | ||||
| 
 | ||||
|     await noteDetail.saveNoteToServer(note); | ||||
|     await noteDetail.saveNote(note); | ||||
| 
 | ||||
|     treeService.setProtected(note.noteId, note.isProtected); | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 azivner
						azivner