### patch.diff file: ```diff --- a/components/com_remository/src/Controllers/Advsearch.php +++ b/components/com_remository/src/Controllers/Advsearch.php @@ -61,18 +61,28 @@ } $noindex = true; - $classid = Utils::getRequestParam('id', '', 'string'); - if ('' != $classid) { + $classid = Utils::getRequestParam('id', 0, 'string'); + if ($classid) { if ('*' == $classid) { if (!$search_text) { $handler->setSearchText(''); $handler->removeClassify('*'); } - } elseif ($classid > 0) { - $handler->addClassify($classid); - if ('classify' == $func) { - $noindex = false; - $classification = $handler->getClassify($classid); - if (is_object($classification)) { - $this->interface->setPageTitle($classification->name); + } else { + $classidnum = intval($classid); + if ($classidnum > 0) { + $handler->addClassify($classidnum); + if ('classify' == $func) { + $noindex = false; + $classification = $handler->getClassify($classidnum); + if (is_object($classification)) { + $this->interface->setPageTitle($classification->name); + } } + } elseif ($classidnum < 0) { + $handler->removeClassify(-$classidnum); } - } elseif ($classid < 0) - $handler->removeClassify(-$classid); + } } --- a/components/com_remository/src/Managers/ClassificationManager.php +++ b/components/com_remository/src/Managers/ClassificationManager.php @@ -XXX,7 +XXX,8 @@ public function addClassify($id) { if (('*' == $id OR !is_null($this->getType(intval($id)))) AND !in_array($id, $this->userstuff['clstack'])) { array_push($this->userstuff['clstack'], $id); if ('*' != $id) { - Utils::doSQL("UPDATE #__downloads_classify SET frequency=frequency+1 WHERE id=$id"); + $idnum = intval($id); + Utils::doSQL("UPDATE #__downloads_classify SET frequency=frequency+1 WHERE id=$idnum"); } } }