. */ namespace SP\Mgmt\Plugins; use SP\DataModel\ItemSearchData; use SP\Mgmt\ItemSearchInterface; use SP\Storage\DbWrapper; use SP\Storage\QueryData; /** * Class PluginSearch * * @package SP\Mgmt\Plugins */ class PluginSearch extends PluginBase implements ItemSearchInterface { /** * Búsqueda de plugins * * @param ItemSearchData $SearchData * @return mixed */ public function getMgmtSearch(ItemSearchData $SearchData) { $Data = new QueryData(); $Data->setSelect('plugin_id, plugin_name, plugin_enabled, plugin_available'); $Data->setFrom('plugins'); $Data->setOrder('plugin_name'); if ($SearchData->getSeachString() !== '') { $Data->setWhere('plugin_name LIKE ?'); $search = '%' . $SearchData->getSeachString() . '%'; $Data->addParam($search); } $Data->setLimit('?,?'); $Data->addParam($SearchData->getLimitStart()); $Data->addParam($SearchData->getLimitCount()); DbWrapper::setFullRowCount(); /** @var array $queryRes */ $queryRes = DbWrapper::getResultsArray($Data); $queryRes['count'] = $Data->getQueryNumRows(); return $queryRes; } }