Merge remote-tracking branch 'remotes/dhruvgoel92/ticket/10945' into develop-olympus

* remotes/dhruvgoel92/ticket/10945:
  [ticket/10945] Fix return values for split_keywords function
  [ticket/10945] Display search query when search fails in native search
  [ticket/10945] remove trigger_error call
This commit is contained in:
Nathan Guse 2014-03-09 11:15:10 -05:00
commit 00f8fe24d2
2 changed files with 10 additions and 29 deletions

View file

@ -231,7 +231,6 @@ class fulltext_native extends search_backend
}
$db->sql_freeresult($result);
}
unset($exact_words);
// now analyse the search query, first split it using the spaces
$query = explode(' ', $keywords);
@ -357,39 +356,21 @@ class fulltext_native extends search_backend
$this->{$mode . '_ids'}[] = $words[$word];
}
}
// throw an error if we shall not ignore unexistant words
else if (!$ignore_no_id)
else
{
if (!isset($common_ids[$word]))
{
$len = utf8_strlen($word);
if ($len >= $this->word_length['min'] && $len <= $this->word_length['max'])
{
trigger_error(sprintf($user->lang['WORD_IN_NO_POST'], $word));
}
else
if ($len < $this->word_length['min'] || $len > $this->word_length['max'])
{
$this->common_words[] = $word;
}
}
}
else
{
$len = utf8_strlen($word);
if ($len < $this->word_length['min'] || $len > $this->word_length['max'])
{
$this->common_words[] = $word;
}
}
}
// we can't search for negatives only
if (!sizeof($this->must_contain_ids))
{
return false;
}
if (!empty($this->search_query))
// Return true if all words are not common words
if (sizeof($exact_words) - sizeof($this->common_words) > 0)
{
return true;
}
@ -428,6 +409,12 @@ class fulltext_native extends search_backend
return false;
}
// we can't search for negatives only
if (empty($this->must_contain_ids))
{
return false;
}
$must_contain_ids = $this->must_contain_ids;
$must_not_contain_ids = $this->must_not_contain_ids;
$must_exclude_one_ids = $this->must_exclude_one_ids;

View file

@ -540,12 +540,6 @@ if ($keywords || $author || $author_id || $search_id || $submit)
$total_match_count = $search->author_search($show_results, $firstpost_only, $sort_by_sql, $sort_key, $sort_dir, $sort_days, $ex_fid_ary, $m_approve_fid_ary, $topic_id, $author_id_ary, $sql_author_match, $id_ary, $start, $per_page);
}
// For some searches we need to print out the "no results" page directly to allow re-sorting/refining the search options.
if (!sizeof($id_ary) && !$search_id)
{
trigger_error('NO_SEARCH_RESULTS');
}
$sql_where = '';
if (sizeof($id_ary))