mirror of
https://github.com/gorhill/uBlock.git
synced 2024-11-06 19:02:30 +01:00
try to extract a user-friendly list name from the list content
This commit is contained in:
parent
dde27629a2
commit
147fbf7f8e
@ -77,14 +77,16 @@ var renderBlacklists = function() {
|
|||||||
var µb = getµb();
|
var µb = getµb();
|
||||||
|
|
||||||
// Assemble a pretty blacklist name if possible
|
// Assemble a pretty blacklist name if possible
|
||||||
var htmlFromListName = function(blacklistTitle, blacklistHref) {
|
var listNameFromListKey = function(listKey) {
|
||||||
if ( blacklistHref === listDetails.userFiltersPath ) {
|
if ( listKey === listDetails.userFiltersPath ) {
|
||||||
return userListName;
|
return userListName;
|
||||||
}
|
}
|
||||||
if ( !blacklistTitle ) {
|
var list = listDetails.current[listKey] || listDetails.available[listKey];
|
||||||
return blacklistHref;
|
var listTitle = list ? list.title : '';
|
||||||
|
if ( listTitle === '' ) {
|
||||||
|
return listKey;
|
||||||
}
|
}
|
||||||
return blacklistTitle;
|
return listTitle;
|
||||||
};
|
};
|
||||||
|
|
||||||
// Assemble a pretty blacklist name if possible
|
// Assemble a pretty blacklist name if possible
|
||||||
@ -134,7 +136,7 @@ var renderBlacklists = function() {
|
|||||||
var li = liTemplate
|
var li = liTemplate
|
||||||
.replace('{{checked}}', list.off ? '' : 'checked')
|
.replace('{{checked}}', list.off ? '' : 'checked')
|
||||||
.replace('{{URL}}', encodeURI(listKey))
|
.replace('{{URL}}', encodeURI(listKey))
|
||||||
.replace('{{name}}', htmlFromListName(list.title, listKey))
|
.replace('{{name}}', listNameFromListKey(listKey))
|
||||||
.replace('{{homeURL}}', htmlFromHomeURL(listKey))
|
.replace('{{homeURL}}', htmlFromHomeURL(listKey))
|
||||||
.replace('{{used}}', !list.off && !isNaN(+list.entryUsedCount) ? renderNumber(list.entryUsedCount) : '0')
|
.replace('{{used}}', !list.off && !isNaN(+list.entryUsedCount) ? renderNumber(list.entryUsedCount) : '0')
|
||||||
.replace('{{total}}', !isNaN(+list.entryCount) ? renderNumber(list.entryCount) : '?');
|
.replace('{{total}}', !isNaN(+list.entryCount) ? renderNumber(list.entryCount) : '?');
|
||||||
|
@ -196,6 +196,10 @@
|
|||||||
if ( storedEntry.entryUsedCount !== undefined ) {
|
if ( storedEntry.entryUsedCount !== undefined ) {
|
||||||
availableEntry.entryUsedCount = storedEntry.entryUsedCount;
|
availableEntry.entryUsedCount = storedEntry.entryUsedCount;
|
||||||
}
|
}
|
||||||
|
// This may happen if the list name was pulled from the list content
|
||||||
|
if ( availableEntry.title === '' && storedEntry.title !== '' ) {
|
||||||
|
availableEntry.title = storedEntry.title;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
callback(availableLists);
|
callback(availableLists);
|
||||||
};
|
};
|
||||||
@ -335,8 +339,19 @@
|
|||||||
duplicateCount = netFilteringEngine.duplicateCount + cosmeticFilteringEngine.duplicateCount - duplicateCount;
|
duplicateCount = netFilteringEngine.duplicateCount + cosmeticFilteringEngine.duplicateCount - duplicateCount;
|
||||||
acceptedCount = netFilteringEngine.acceptedCount + cosmeticFilteringEngine.acceptedCount - acceptedCount;
|
acceptedCount = netFilteringEngine.acceptedCount + cosmeticFilteringEngine.acceptedCount - acceptedCount;
|
||||||
|
|
||||||
this.remoteBlacklists[details.path].entryCount = acceptedCount;
|
var filterListMeta = this.remoteBlacklists[details.path];
|
||||||
this.remoteBlacklists[details.path].entryUsedCount = acceptedCount - duplicateCount;
|
|
||||||
|
filterListMeta.entryCount = acceptedCount;
|
||||||
|
filterListMeta.entryUsedCount = acceptedCount - duplicateCount;
|
||||||
|
|
||||||
|
// Try to extract a human-friendly name (works only for
|
||||||
|
// ABP-compatible filter lists)
|
||||||
|
if ( filterListMeta.title === '' ) {
|
||||||
|
var matches = details.content.slice(0, 1024).match(/(?:^|\n)!\s*Title:([^\n]+)/i);
|
||||||
|
if ( matches !== null ) {
|
||||||
|
filterListMeta.title = matches[1].trim();
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
|
Loading…
Reference in New Issue
Block a user