WebUI: disallow number literals with zero fractions or dangling dots

Javascript treats them all the same as `Number`.
This commit is contained in:
Chocobo1
2025-08-26 17:21:22 +08:00
parent 86acc01b1a
commit acab056fe4
8 changed files with 21 additions and 20 deletions

View File

@@ -1980,10 +1980,10 @@ window.qBittorrent.DynamicTable ??= (() => {
getFilteredAndSortedRows() {
const getSizeFilters = () => {
let minSize = (window.qBittorrent.Search.searchSizeFilter.min > 0.00) ? (window.qBittorrent.Search.searchSizeFilter.min * Math.pow(1024, window.qBittorrent.Search.searchSizeFilter.minUnit)) : 0.00;
let maxSize = (window.qBittorrent.Search.searchSizeFilter.max > 0.00) ? (window.qBittorrent.Search.searchSizeFilter.max * Math.pow(1024, window.qBittorrent.Search.searchSizeFilter.maxUnit)) : 0.00;
let minSize = (window.qBittorrent.Search.searchSizeFilter.min > 0) ? (window.qBittorrent.Search.searchSizeFilter.min * Math.pow(1024, window.qBittorrent.Search.searchSizeFilter.minUnit)) : 0;
let maxSize = (window.qBittorrent.Search.searchSizeFilter.max > 0) ? (window.qBittorrent.Search.searchSizeFilter.max * Math.pow(1024, window.qBittorrent.Search.searchSizeFilter.maxUnit)) : 0;
if ((minSize > maxSize) && (maxSize > 0.00)) {
if ((minSize > maxSize) && (maxSize > 0)) {
const tmp = minSize;
minSize = maxSize;
maxSize = tmp;
@@ -2018,16 +2018,16 @@ window.qBittorrent.DynamicTable ??= (() => {
const seedsFilters = getSeedsFilters();
const searchInTorrentName = document.getElementById("searchInTorrentName").value === "names";
if (searchInTorrentName || (filterTerms.length > 0) || (window.qBittorrent.Search.searchSizeFilter.min > 0.00) || (window.qBittorrent.Search.searchSizeFilter.max > 0.00)) {
if (searchInTorrentName || (filterTerms.length > 0) || (window.qBittorrent.Search.searchSizeFilter.min > 0) || (window.qBittorrent.Search.searchSizeFilter.max > 0)) {
for (const row of this.getRowValues()) {
if (searchInTorrentName && !window.qBittorrent.Misc.containsAllTerms(row.full_data.fileName, searchTerms))
continue;
if ((filterTerms.length > 0) && !window.qBittorrent.Misc.containsAllTerms(row.full_data.fileName, filterTerms))
continue;
if ((sizeFilters.min > 0.00) && (row.full_data.fileSize < sizeFilters.min))
if ((sizeFilters.min > 0) && (row.full_data.fileSize < sizeFilters.min))
continue;
if ((sizeFilters.max > 0.00) && (row.full_data.fileSize > sizeFilters.max))
if ((sizeFilters.max > 0) && (row.full_data.fileSize > sizeFilters.max))
continue;
if ((seedsFilters.min > 0) && (row.full_data.nbSeeders < seedsFilters.min))
continue;