Skip to content

Commit 67bcea6

Browse files
committed
cookie to the background
1 parent 6406b62 commit 67bcea6

File tree

4 files changed

+28
-35
lines changed

4 files changed

+28
-35
lines changed

src/background.ts

Lines changed: 28 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,17 @@ chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {
2525
message.info.windowWidth
2626
);
2727
} else if (message.action === "cachePassphrase") {
28+
document.cookie = "passphrase=" + message.value;
2829
cachedPassphrase = message.value;
2930
clearTimeout(autolockTimeout);
3031
setAutolock();
3132
} else if (message.action === "passphrase") {
32-
sendResponse(cachedPassphrase);
33+
sendResponse(getCachedPassphrase());
3334
} else if (["dropbox", "drive"].indexOf(message.action) > -1) {
3435
getBackupToken(message.action);
3536
} else if (message.action === "lock") {
3637
cachedPassphrase = "";
38+
document.cookie = 'passphrase=";expires=Thu, 01 Jan 1970 00:00:00 GMT"';
3739
} else if (message.action === "resetAutolock") {
3840
clearTimeout(autolockTimeout);
3941
setAutolock();
@@ -283,12 +285,12 @@ function getBackupToken(service: string) {
283285
xhr.open(
284286
"POST",
285287
"https://www.googleapis.com/oauth2/v4/token?client_id=" +
286-
getCredentials().drive.client_id +
287-
"&client_secret=" +
288-
getCredentials().drive.client_secret +
289-
"&code=" +
290-
value +
291-
"&redirect_uri=https://authenticator.cc/oauth&grant_type=authorization_code"
288+
getCredentials().drive.client_id +
289+
"&client_secret=" +
290+
getCredentials().drive.client_secret +
291+
"&code=" +
292+
value +
293+
"&redirect_uri=https://authenticator.cc/oauth&grant_type=authorization_code"
292294
);
293295
xhr.setRequestHeader("Accept", "application/json");
294296
xhr.setRequestHeader(
@@ -406,7 +408,26 @@ chrome.commands.onCommand.addListener(async (command: string) => {
406408
function setAutolock() {
407409
if (Number(localStorage.autolock) > 0) {
408410
autolockTimeout = setTimeout(() => {
411+
document.cookie = 'passphrase=";expires=Thu, 01 Jan 1970 00:00:00 GMT"';
409412
cachedPassphrase = "";
410413
}, Number(localStorage.autolock) * 60000);
411414
}
412415
}
416+
417+
function getCachedPassphrase() {
418+
if (cachedPassphrase) {
419+
return cachedPassphrase;
420+
}
421+
422+
const cookie = document.cookie;
423+
const cookieMatch = cookie
424+
? document.cookie.match(/passphrase=([^;]*)/)
425+
: null;
426+
const cookiePassphrase =
427+
cookieMatch && cookieMatch.length > 1 ? cookieMatch[1] : null;
428+
if (cookiePassphrase) {
429+
return cookiePassphrase;
430+
}
431+
432+
return "";
433+
}

src/components/Popup/MainHeader.vue

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,6 @@ export default Vue.extend({
100100
this.$store.commit("accounts/stopFilter");
101101
},
102102
lock() {
103-
document.cookie = 'passphrase=";expires=Thu, 01 Jan 1970 00:00:00 GMT"';
104103
chrome.runtime.sendMessage({ action: "lock" }, window.close);
105104
return;
106105
},

src/import.ts

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -32,16 +32,6 @@ init();
3232
function getCachedPassphrase() {
3333
return new Promise(
3434
(resolve: (value: string) => void, reject: (reason: Error) => void) => {
35-
const cookie = document.cookie;
36-
const cookieMatch = cookie
37-
? document.cookie.match(/passphrase=([^;]*)/)
38-
: null;
39-
const cachedPassphrase =
40-
cookieMatch && cookieMatch.length > 1 ? cookieMatch[1] : null;
41-
if (cachedPassphrase) {
42-
return resolve(cachedPassphrase);
43-
}
44-
4535
chrome.runtime.sendMessage(
4636
{ action: "passphrase" },
4737
(passphrase: string) => {

src/store/Accounts.ts

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,6 @@ export class Accounts implements IModule {
163163
state.commit("style/hideInfo", null, { root: true });
164164

165165
if (!state.getters.currentlyEncrypted) {
166-
document.cookie = "passphrase=" + password;
167166
chrome.runtime.sendMessage({
168167
action: "cachePassphrase",
169168
value: password
@@ -181,7 +180,6 @@ export class Accounts implements IModule {
181180
);
182181

183182
state.state.encryption.updateEncryptionPassword(password);
184-
document.cookie = "passphrase=" + password;
185183
chrome.runtime.sendMessage({
186184
action: "cachePassphrase",
187185
value: password
@@ -354,21 +352,6 @@ export class Accounts implements IModule {
354352
private getCachedPassphrase() {
355353
return new Promise(
356354
(resolve: (value: string) => void, reject: (reason: Error) => void) => {
357-
const cookie = document.cookie;
358-
const cookieMatch = cookie
359-
? document.cookie.match(/passphrase=([^;]*)/)
360-
: null;
361-
const cachedPassphrase =
362-
cookieMatch && cookieMatch.length > 1 ? cookieMatch[1] : null;
363-
const cachedPassphraseLocalStorage = localStorage.encodedPhrase
364-
? CryptoJS.AES.decrypt(localStorage.encodedPhrase, "").toString(
365-
CryptoJS.enc.Utf8
366-
)
367-
: "";
368-
if (cachedPassphrase || cachedPassphraseLocalStorage) {
369-
return resolve(cachedPassphrase || cachedPassphraseLocalStorage);
370-
}
371-
372355
chrome.runtime.sendMessage(
373356
{ action: "passphrase" },
374357
(passphrase: string) => {

0 commit comments

Comments
 (0)