private function _getWhereClause($columnName, $searchClause = '')
{
$whereClause = "WHERE TRUE ";
if (!empty($searchClause)) {
$whereClause .= "AND " . Util::backquote($columnName) . " LIKE '%";
$whereClause .= $GLOBALS['dbi']->escapeString($searchClause, true);
$whereClause .= "%' ";
}
if (!empty($GLOBALS['cfg']['Server']['hide_db'])) {
$whereClause .= "AND " . Util::backquote($columnName) . " NOT REGEXP '" . $GLOBALS['dbi']->escapeString($GLOBALS['cfg']['Server']['hide_db']) . "' ";
}
if (!empty($GLOBALS['cfg']['Server']['only_db'])) {
if (is_string($GLOBALS['cfg']['Server']['only_db'])) {
$GLOBALS['cfg']['Server']['only_db'] = array($GLOBALS['cfg']['Server']['only_db']);
}
$whereClause .= "AND (";
$subClauses = array();
foreach ($GLOBALS['cfg']['Server']['only_db'] as $each_only_db) {
$subClauses[] = " " . Util::backquote($columnName) . " LIKE '" . $GLOBALS['dbi']->escapeString($each_only_db) . "' ";
}
$whereClause .= implode("OR", $subClauses) . ") ";
}
return $whereClause;
}