fix: prevent archiving locked notes

This commit is contained in:
Baptiste Grob
2020-10-16 12:47:21 +02:00
parent c26d6a7139
commit 94f94c0570
2 changed files with 12 additions and 2 deletions

View File

@@ -19,6 +19,8 @@ export const STRING_INVALID_NOTE = "The note you are attempting to save can not
export const STRING_ELLIPSES = "...";
export const STRING_GENERIC_SAVE_ERROR = "There was an error saving your note. Please try again.";
export const STRING_DELETE_PLACEHOLDER_ATTEMPT = "This note is a placeholder and cannot be deleted. To remove from your list, simply navigate to a different note.";
export const STRING_ARCHIVE_LOCKED_ATTEMPT = "This note is locked. If you'd like to archive it, unlock it, and try again.";
export const STRING_UNARCHIVE_LOCKED_ATTEMPT = "This note is locked. If you'd like to archive it, unlock it, and try again.";
export const STRING_DELETE_LOCKED_ATTEMPT = "This note is locked. If you'd like to delete it, unlock it, and try again.";
export function StringDeleteNote(title: string, permanently: boolean) {
return permanently

View File

@@ -1,4 +1,4 @@
import { STRING_SAVING_WHILE_DOCUMENT_HIDDEN } from './../../strings';
import { STRING_ARCHIVE_LOCKED_ATTEMPT, STRING_SAVING_WHILE_DOCUMENT_HIDDEN, STRING_UNARCHIVE_LOCKED_ATTEMPT } from './../../strings';
import { Editor } from '@/ui_models/editor';
import { WebApplication } from '@/ui_models/application';
import { PanelPuppet, WebDirective } from '@/types';
@@ -34,7 +34,7 @@ import {
StringDeleteNote,
StringEmptyTrash
} from '@/strings';
import { confirmDialog } from '@/services/alertService';
import { alertDialog, confirmDialog } from '@/services/alertService';
const NOTE_PREVIEW_CHAR_LIMIT = 80;
const MINIMUM_STATUS_DURATION = 400;
@@ -770,6 +770,14 @@ class EditorViewCtrl extends PureViewCtrl<{}, EditorState> {
}
toggleArchiveNote() {
if (this.note.locked) {
alertDialog({
text: this.note.archived ?
STRING_UNARCHIVE_LOCKED_ATTEMPT :
STRING_ARCHIVE_LOCKED_ATTEMPT,
});
return;
}
this.saveNote(
true,
false,