mirror of
https://github.com/bellingcat/auto-archiver-extension.git
synced 2026-06-12 05:28:33 +03:00
delete op
This commit is contained in:
@@ -57,6 +57,10 @@ function processMessages(request, sender) {
|
||||
syncLocalTasks(resolve, reject);
|
||||
break;
|
||||
}
|
||||
case 'deleteTask': {
|
||||
deleteTask(resolve, reject, request.taskId);
|
||||
break;
|
||||
}
|
||||
case 'getErrorMessage': {
|
||||
resolve(await getErrorMessage());
|
||||
break;
|
||||
@@ -235,6 +239,34 @@ async function syncLocalTasks(resolve, reject) {
|
||||
});
|
||||
}
|
||||
|
||||
async function deleteTask(resolve, reject, taskId) {
|
||||
console.log('API: DELETE TASK');
|
||||
chrome.identity.getAuthToken({ interactive: true }, async accessToken => {
|
||||
if (accessToken == undefined) {
|
||||
reject(new Error(LOGIN_FAILED));
|
||||
return;
|
||||
}
|
||||
fetch(`${API_ENDPOINT}/${taskId}?` + new URLSearchParams({ access_token: accessToken }), {
|
||||
method: 'DELETE',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
},
|
||||
})
|
||||
.then(getJsonOrError)
|
||||
.then(async deleteOp => {
|
||||
if(deleteOp.deleted){
|
||||
const storage = await optionsStorage.getAll();
|
||||
delete storage.archivedUrls[taskId];
|
||||
await optionsStorage.set(storage);
|
||||
resolve(storage.archivedUrls);
|
||||
return;
|
||||
}
|
||||
throw new Error(`Could not delete archive task.`);
|
||||
})
|
||||
.catch(e => reject(e));
|
||||
});
|
||||
}
|
||||
|
||||
async function getJsonOrError(response) {
|
||||
let additionalErrorInfo = "";
|
||||
if (response.status == 401) additionalErrorInfo = `Check that this email has been granted permission.`;
|
||||
|
||||
Reference in New Issue
Block a user