hiding protected session dialog when moving over to unprotected note

This commit is contained in:
azivner 2017-11-15 00:10:11 -05:00
parent 9cf935efd1
commit dd5a142fdd
2 changed files with 18 additions and 9 deletions

View file

@ -169,7 +169,7 @@ const noteEditor = (function() {
function setTreeBasedOnProtectedStatus(note) {
const node = treeUtils.getNodeByKey(note.detail.note_id);
node.toggleClass("protected", note.detail.is_protected);
node.toggleClass("protected", !!note.detail.is_protected);
}
function setNoteBackgroundIfProtected(note) {
@ -202,6 +202,10 @@ const noteEditor = (function() {
protected_session.touchProtectedSession();
}
// this might be important if we focused on protected note when not in protected note and we got a dialog
// to login, but we chose instead to come to another node - at that point the dialog is still visible and this will close it.
protected_session.ensureDialogIsClosed();
noteDetailWrapperEl.show();
noteTitleEl.val(currentNote.detail.note_title);

View file

@ -69,13 +69,7 @@ const protected_session = (function() {
noteTree.reload();
if (protectedSessionDeferred !== null) {
// this may fal if the dialog has not been previously opened
try {
dialogEl.dialog('close');
}
catch(e) {}
passwordEl.val('');
ensureDialogIsClosed(dialogEl, passwordEl);
protectedSessionDeferred.resolve();
@ -83,6 +77,16 @@ const protected_session = (function() {
}
}
function ensureDialogIsClosed() {
// this may fal if the dialog has not been previously opened
try {
dialogEl.dialog('close');
}
catch (e) {}
passwordEl.val('');
}
async function enterProtectedSession(password) {
return await $.ajax({
url: baseApiUrl + 'login/protected',
@ -182,6 +186,7 @@ const protected_session = (function() {
unprotectNoteAndSendToServer,
getProtectedSessionId,
touchProtectedSession,
protectSubTree
protectSubTree,
ensureDialogIsClosed
};
})();