mirror of
https://github.com/gorhill/uBlock.git
synced 2024-11-11 17:41:03 +01:00
auto-convert removed stock list into an imported list
This commit is contained in:
parent
07ef347734
commit
20346ef0ed
1 changed files with 31 additions and 1 deletions
|
@ -467,7 +467,7 @@
|
||||||
listKey = importedListKeys[i];
|
listKey = importedListKeys[i];
|
||||||
entry = {
|
entry = {
|
||||||
content: 'filters',
|
content: 'filters',
|
||||||
contentURL: importedListKeys[i],
|
contentURL: listKey,
|
||||||
external: true,
|
external: true,
|
||||||
group: 'custom',
|
group: 'custom',
|
||||||
submitter: 'user',
|
submitter: 'user',
|
||||||
|
@ -477,6 +477,31 @@
|
||||||
this.assets.registerAssetSource(listKey, entry);
|
this.assets.registerAssetSource(listKey, entry);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Convert a no longer existing stock list into an imported list.
|
||||||
|
var customListFromStockList = function(assetKey) {
|
||||||
|
var oldEntry = oldAvailableLists[assetKey];
|
||||||
|
if ( oldEntry === undefined || oldEntry.off === true ) { return; }
|
||||||
|
var listURL = oldEntry.contentURL;
|
||||||
|
if ( Array.isArray(listURL) ) {
|
||||||
|
listURL = listURL[0];
|
||||||
|
}
|
||||||
|
var newEntry = {
|
||||||
|
content: 'filters',
|
||||||
|
contentURL: listURL,
|
||||||
|
external: true,
|
||||||
|
group: 'custom',
|
||||||
|
submitter: 'user',
|
||||||
|
title: oldEntry.title || ''
|
||||||
|
};
|
||||||
|
newAvailableLists[listURL] = newEntry;
|
||||||
|
µb.assets.registerAssetSource(listURL, newEntry);
|
||||||
|
importedListKeys.push(listURL);
|
||||||
|
µb.userSettings.externalLists += '\n' + listURL;
|
||||||
|
µb.userSettings.externalLists = µb.userSettings.externalLists.trim();
|
||||||
|
vAPI.storage.set({ externalLists: µb.userSettings.externalLists });
|
||||||
|
µb.saveSelectedFilterLists([ listURL ], true);
|
||||||
|
};
|
||||||
|
|
||||||
// Final steps:
|
// Final steps:
|
||||||
// - reuse existing list metadata if any;
|
// - reuse existing list metadata if any;
|
||||||
// - unregister unreferenced imported filter lists if any.
|
// - unregister unreferenced imported filter lists if any.
|
||||||
|
@ -487,8 +512,13 @@
|
||||||
for ( assetKey in oldAvailableLists ) {
|
for ( assetKey in oldAvailableLists ) {
|
||||||
oldEntry = oldAvailableLists[assetKey];
|
oldEntry = oldAvailableLists[assetKey];
|
||||||
newEntry = newAvailableLists[assetKey];
|
newEntry = newAvailableLists[assetKey];
|
||||||
|
// List no longer exists. If a stock list, try to convert to
|
||||||
|
// imported list if it was selected.
|
||||||
if ( newEntry === undefined ) {
|
if ( newEntry === undefined ) {
|
||||||
µb.removeFilterList(assetKey);
|
µb.removeFilterList(assetKey);
|
||||||
|
if ( assetKey.indexOf('://') === -1 ) {
|
||||||
|
customListFromStockList(assetKey);
|
||||||
|
}
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if ( oldEntry.entryCount !== undefined ) {
|
if ( oldEntry.entryCount !== undefined ) {
|
||||||
|
|
Loading…
Reference in a new issue