/** * Additional functionality: * One or more strings can be passed in to match to tube name * * @param string|string[]|callable|null $p * @return static */ public function filter($p) { if (is_string($p)) { $p = array($p); } if (is_array($p)) { $terms = $p; $p = function (Tube $tube) use($terms) { foreach ($terms as $term) { if (Str::contains($tube->name(), $term, false)) { return true; } } return false; }; } return parent::filter($p); }