MPD: Make "search" a substring match.
This seems to be what mpd does I and am rather used to that behaviour. I am switching on caseSensitive here which may not be what it is intended for but for now that only get passed through as false from one place so everything else should still work fine.
This commit is contained in:
parent
35648a0a1d
commit
6745455a74
1 changed files with 13 additions and 3 deletions
|
|
@ -1334,9 +1334,19 @@ function forEachMatchingTrack(self, filters, caseSensitive, fn) {
|
|||
var filter = filters[filterIndex];
|
||||
var filterField = track[filter.field];
|
||||
if (!caseSensitive && filterField) filterField = filterField.toLowerCase();
|
||||
if (filterField !== filter.value) {
|
||||
matches = false;
|
||||
break;
|
||||
|
||||
/* assumes:
|
||||
* caseSensitive implies "find"
|
||||
* !caseSensitive implies "search"
|
||||
*/
|
||||
if (caseSensitive) {
|
||||
if (filterField === filter.value) {
|
||||
matches = false;
|
||||
break;
|
||||
}
|
||||
} else if (filterField.indexOf(filter.value) < 0) {
|
||||
matches = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (matches) fn(track);
|
||||
|
|
|
|||
Loading…
Reference in a new issue