initial attempt for a removal function
This commit is contained in:
parent
3a49487556
commit
921dae135b
1 changed files with 26 additions and 9 deletions
|
@ -2,6 +2,8 @@
|
||||||
Manage filters.
|
Manage filters.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
const secretariat = await import(chrome.runtime.getURL("scripts/secretariat.js"));
|
||||||
|
|
||||||
export default class filters {
|
export default class filters {
|
||||||
constructor() {
|
constructor() {
|
||||||
this.all = async () => {
|
this.all = async () => {
|
||||||
|
@ -28,10 +30,7 @@ export default class filters {
|
||||||
);
|
);
|
||||||
|
|
||||||
// Get the filters.
|
// Get the filters.
|
||||||
let filter = await secretariat.read(`filters`, -1, {
|
let filter = await secretariat.search(`filters`, -1, [`URL`]);
|
||||||
field: "URL",
|
|
||||||
"test value": URL,
|
|
||||||
});
|
|
||||||
|
|
||||||
// If there are filters, then filter the URL.
|
// If there are filters, then filter the URL.
|
||||||
return filter;
|
return filter;
|
||||||
|
@ -89,8 +88,8 @@ export default class filters {
|
||||||
// Add every item to the queue based on what was loaded first.
|
// Add every item to the queue based on what was loaded first.
|
||||||
if (await secretariat.read(`filters`, -1)) {
|
if (await secretariat.read(`filters`, -1)) {
|
||||||
for (let FILTER_URL_INDEX = 0; FILTER_URL_INDEX < Object.keys(await secretariat.read(`filters`, -1)).length; FILTER_URL_INDEX++) {
|
for (let FILTER_URL_INDEX = 0; FILTER_URL_INDEX < Object.keys(await secretariat.read(`filters`, -1)).length; FILTER_URL_INDEX++) {
|
||||||
let FILTER_URL = Object.keys(await secretariat.read(`filters`, -1))[FILTER_URL_INDEX];
|
console.log(await secretariat.read([`settings`], 1));
|
||||||
console.log(FILTER_URL);
|
let FILTER_URL = Object.keys(await secretariat.read([`settings`, `filters`], 1))[FILTER_URL_INDEX];
|
||||||
if (FILTER_URL.includes(`://`)) {
|
if (FILTER_URL.includes(`://`)) {
|
||||||
filters.enqueue(FILTER_URL);
|
filters.enqueue(FILTER_URL);
|
||||||
}
|
}
|
||||||
|
@ -107,11 +106,10 @@ export default class filters {
|
||||||
texts.localized(`settings_filters_update_status`, null, [filter_URL]),
|
texts.localized(`settings_filters_update_status`, null, [filter_URL]),
|
||||||
);
|
);
|
||||||
|
|
||||||
console.log(filter_URL);
|
|
||||||
// Create promise of downloading.
|
// Create promise of downloading.
|
||||||
let filter_download = net.download(filter_URL, `JSON`, false, true);
|
let filter_download = net.download(filter_URL, `JSON`, false, true);
|
||||||
filter_download
|
filter_download
|
||||||
.then((result) => {
|
.then(async function (result) {
|
||||||
// Only work when the filter is valid.
|
// Only work when the filter is valid.
|
||||||
if (result) {
|
if (result) {
|
||||||
// Write the filter to storage.
|
// Write the filter to storage.
|
||||||
|
@ -119,7 +117,7 @@ export default class filters {
|
||||||
alerts.log(texts.localized(`settings_filters_update_status_complete`,null,[filter_URL]));
|
alerts.log(texts.localized(`settings_filters_update_status_complete`,null,[filter_URL]));
|
||||||
|
|
||||||
// Add the filter to the sync list.
|
// Add the filter to the sync list.
|
||||||
if (secretariat.read(["settings", `filters`, filter_URL], 1) == null) {
|
if ((await secretariat.read(["settings", `filters`, filter_URL], 1)) == null) {
|
||||||
secretariat.write(["settings", `filters`, filter_URL], true, 1);
|
secretariat.write(["settings", `filters`, filter_URL], true, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -139,4 +137,23 @@ export default class filters {
|
||||||
|
|
||||||
return this.all;
|
return this.all;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Select the most appropriate filter based on a URL.
|
||||||
|
|
||||||
|
@param {string} URL the URL to remove
|
||||||
|
*/
|
||||||
|
async remove(URL) {
|
||||||
|
let CHOICE = await secretariat.forget(`filters`, URL);
|
||||||
|
if (CHOICE) {
|
||||||
|
console.log(await secretariat.read(null, -1), URL);
|
||||||
|
if (await secretariat.read([`settings`, `filters`, URL], 1)) {
|
||||||
|
console.log(await secretariat.read([`settings`, `filters`], 1));
|
||||||
|
let DATA_GROUP = await secretariat.read([`settings`, `filters`], 1);
|
||||||
|
delete DATA_GROUP[URL];
|
||||||
|
await secretariat.write([`settings`, `filters`], DATA_GROUP, 1);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
return CHOICE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue