/** Add the sql to perform a search. * * @param Gdn_SQLDriver $Sql * @param string $Columns a comma seperated list of columns to search on. */ public function AddMatchSql($Sql, $Columns, $LikeRelavenceColumn = '') { if ($this->_SearchMode == 'like') { if ($LikeRelavenceColumn) $Sql->Select($LikeRelavenceColumn, '', 'Relavence'); else $Sql->Select(1, '', 'Relavence'); $Sql->BeginWhereGroup(); $ColumnsArray = explode(',', $Columns); foreach ($ColumnsArray as $Column) { $Column = trim($Column); $Param = $this->Parameter(); $Sql->OrWhere("$Column like $Param", NULL, FALSE, FALSE); } $Sql->EndWhereGroup(); } else { $Boolean = $this->_SearchMode == 'boolean' ? ' in boolean mode' : ''; $Param = $this->Parameter(); $Sql->Select($Columns, "match(%s) against($Param{$Boolean})", 'Relavence'); $Param = $this->Parameter(); $Sql->Where("match($Columns) against ($Param{$Boolean})", NULL, FALSE, FALSE); } }