Hey Nikolay,
You'll have to hack the code in the following file:
components\com_hotspots\models\json.php
on line 426 you have this code till line 443:
you have this code:
$words = explode(' ', $sentence);
foreach ($words as $word)
{
$searchWord = $q->Quote('%' . $q->escape($word, true) . '%', false);
$search[] = $name . ' LIKE ' . $searchWord;
$search[] = $description . ' LIKE ' . $searchWord;
$search[] = $descriptionSmall . ' LIKE ' . $searchWord;
$search[] = $plz . ' LIKE ' . $searchWord;
if (count($cats))
{
$search[] = $catName . ' LIKE ' . $searchWord;
}
$search[] = $street . ' LIKE ' . $searchWord;
$search[] = $country . ' LIKE ' . $searchWord;
$search[] = $town . ' LIKE ' . $searchWord;
}
change it to this
$words = explode(' ', $sentence);
foreach ($words as $word)
{
$searchWord = $q->Quote('[[:<:]]' . $q->escape($word, true) . '[[:>:]]', false);
$search[] = $name . ' RLIKE ' . $searchWord;
$search[] = $description . ' RLIKE ' . $searchWord;
$search[] = $descriptionSmall . ' RLIKE ' . $searchWord;
$search[] = $plz . ' RLIKE ' . $searchWord;
if (count($cats))
{
$search[] = $catName . ' RLIKE ' . $searchWord;
}
$search[] = $street . ' RLIKE ' . $searchWord;
$search[] = $country . ' RLIKE ' . $searchWord;
$search[] = $town . ' RLIKE ' . $searchWord;
}
With this change you should be able to search for 1:1 match for words. Keep in mind that if you enter "Information technology" for search term, then you'll search for the full word "information" or "technology".
It would be really good if you do those changes in a hotspots plugin. We have a onAfterBuildQuery event that would give you the current query object. There you could strip the current where part of the query and do whatevery you want. This way even when you update hotspots your changes to the json.php file won't be overriden.
Regards,
Daniel