fix: prevent archiving locked notes
This commit is contained in:
@@ -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_ELLIPSES = "...";
|
||||||
export const STRING_GENERIC_SAVE_ERROR = "There was an error saving your note. Please try again.";
|
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_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 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) {
|
export function StringDeleteNote(title: string, permanently: boolean) {
|
||||||
return permanently
|
return permanently
|
||||||
|
|||||||
@@ -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 { Editor } from '@/ui_models/editor';
|
||||||
import { WebApplication } from '@/ui_models/application';
|
import { WebApplication } from '@/ui_models/application';
|
||||||
import { PanelPuppet, WebDirective } from '@/types';
|
import { PanelPuppet, WebDirective } from '@/types';
|
||||||
@@ -34,7 +34,7 @@ import {
|
|||||||
StringDeleteNote,
|
StringDeleteNote,
|
||||||
StringEmptyTrash
|
StringEmptyTrash
|
||||||
} from '@/strings';
|
} from '@/strings';
|
||||||
import { confirmDialog } from '@/services/alertService';
|
import { alertDialog, confirmDialog } from '@/services/alertService';
|
||||||
|
|
||||||
const NOTE_PREVIEW_CHAR_LIMIT = 80;
|
const NOTE_PREVIEW_CHAR_LIMIT = 80;
|
||||||
const MINIMUM_STATUS_DURATION = 400;
|
const MINIMUM_STATUS_DURATION = 400;
|
||||||
@@ -770,6 +770,14 @@ class EditorViewCtrl extends PureViewCtrl<{}, EditorState> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
toggleArchiveNote() {
|
toggleArchiveNote() {
|
||||||
|
if (this.note.locked) {
|
||||||
|
alertDialog({
|
||||||
|
text: this.note.archived ?
|
||||||
|
STRING_UNARCHIVE_LOCKED_ATTEMPT :
|
||||||
|
STRING_ARCHIVE_LOCKED_ATTEMPT,
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
this.saveNote(
|
this.saveNote(
|
||||||
true,
|
true,
|
||||||
false,
|
false,
|
||||||
|
|||||||
Reference in New Issue
Block a user