diff --git a/lib/lists.js b/lib/lists.js index a27ff12..2f61824 100644 --- a/lib/lists.js +++ b/lib/lists.js @@ -29,9 +29,12 @@ }) .map(function(entry){ let regExp; - const domain = !!entry.match(/^[A-Za-z0-9_.-]+$/); + const domain = !!entry.match(/^[A-Za-z0-9_.*-]+$/); if (domain){ - regExp = new RegExp("(?:^|\\.)" + entry.replace(/([\\+*?[^\]$(){}=!|.])/g, "\\$1") + "\\.?$", "i"); + regExp = new RegExp( + "(?:^|\\.)" + entry.replace(/([\\+?[^\]$(){}=!|.])/g, "\\$1").replace(/\*/g, ".+") + "\\.?$", + "i" + ); } else { try { diff --git a/lib/settingContainers.js b/lib/settingContainers.js index 340ebe2..6bcabf5 100644 --- a/lib/settingContainers.js +++ b/lib/settingContainers.js @@ -166,10 +166,10 @@ function initializeUrlSetting(urlSetting){ let regExp; - const domain = !!urlSetting.url.match(/^[A-Za-z0-9_.-]+$/); + const domain = !!urlSetting.url.match(/^[A-Za-z0-9_.*-]+$/); if (domain){ regExp = new RegExp( - "(?:^|\\.)" + urlSetting.url.replace(/([\\+*?[^\]$(){}=!|.])/g, "\\$1") + "\\.?$", + "(?:^|\\.)" + urlSetting.url.replace(/([\\+?[^\]$(){}=!|.])/g, "\\$1").replace(/\*/g, ".+") + "\\.?$", "i" ); } diff --git a/releaseNotes.txt b/releaseNotes.txt index 42ad943..3953a3e 100644 --- a/releaseNotes.txt +++ b/releaseNotes.txt @@ -3,7 +3,7 @@ Version 1.9: - update setting descriptions new features: - - + - added support for wildcards (*) in domains fixes: - errors in URL regular expressions broke CB diff --git a/versions/updates.json b/versions/updates.json index ca90371..6996922 100644 --- a/versions/updates.json +++ b/versions/updates.json @@ -225,6 +225,14 @@ { "version": "1.9Alpha20220218", "update_link": "https://canvasblocker.kkapsner.de/versions/canvasblocker_beta-1.9Alpha20220218-an+fx.xpi" + }, + { + "version": "1.9Alpha20220424", + "update_link": "https://canvasblocker.kkapsner.de/versions/canvasblocker_beta-1.9Alpha20220424-an+fx.xpi" + }, + { + "version": "1.9Alpha20220426", + "update_link": "https://canvasblocker.kkapsner.de/versions/canvasblocker_beta-1.9Alpha20220426-an+fx.xpi" } ] }