43 lines
955 B
Plaintext
43 lines
955 B
Plaintext
define([
|
|
'jquery'
|
|
], function ($) {
|
|
function oldMatcher (matcher) {
|
|
function wrappedMatcher (params, data) {
|
|
var match = $.extend(true, {}, data);
|
|
|
|
if (params.term == null || $.trim(params.term) === '') {
|
|
return match;
|
|
}
|
|
|
|
if (data.children) {
|
|
for (var c = data.children.length - 1; c >= 0; c--) {
|
|
var child = data.children[c];
|
|
|
|
// Check if the child object matches
|
|
// The old matcher returned a boolean true or false
|
|
var doesMatch = matcher(params.term, child.text, child);
|
|
|
|
// If the child didn't match, pop it off
|
|
if (!doesMatch) {
|
|
match.children.splice(c, 1);
|
|
}
|
|
}
|
|
|
|
if (match.children.length > 0) {
|
|
return match;
|
|
}
|
|
}
|
|
|
|
if (matcher(params.term, data.text, data)) {
|
|
return match;
|
|
}
|
|
|
|
return null;
|
|
}
|
|
|
|
return wrappedMatcher;
|
|
}
|
|
|
|
return oldMatcher;
|
|
});
|