Боюсь, что слишком сложная доработка нужна. В базе целые (integer) значения.
Однако можно попытаться обойтись малой кровью, что тоже сложно:
1. Изменить пользовательское представление, т.е. значение в базе 1 = пользователь видит 1+1. Для этого надо работу выпадающего списка переделать, и добавить список в фильтрах по комнатам, где простой ввод.
2. Использовать строгое стравнение при поиске:
Для просмотра ссылки Войди или Зарегистрируйся в начале.
PS. Попробовал разобраться с п.1.
Выпадающий список формируется в одном месте, это очень хорошо.
сайт\administrator\components\com_iproperty\models\fields\beds.php
Строка $options[] = array('value' => $i, 'text' => $i);
Нужно эту часть переделать под себя [пример на вскидку]
Код:
for($i = $lowbeds; $i <= $highbeds; $i++){
//$options[] = array('value' => $i, 'text' => $i); // было
$options[] = array('value' => $i, 'text' => ipropertyHTML::getBedsText($i));
}
Перед этим создав в файле сайт\components\com_iproperty\helpers\ html.helper.php функцию:
Код:
public static function getBedsText($beds)
{
$texts = array("0", "1+1", "2+1", "2+2", "3+1", "3+2", "4+1", "4+2", "4+3", "5+1", "5+2", "5+3", "6+1", "6+2", "6+3", "7+1", "7+2", "7+3", "7+4");
return $texts[$beds];
}
Ну и в настройках увеличить максимально количество спален до количества элементов массива.
Но это не все, нужно еще переделать отображение в описании объекта.
Так что нужно сделать поиск по всем php файлам, искать текст "->beds", и там где он используется для вывода информации (echo) использовать функцию.
Например было:
echo $this->p->beds;
Стало:
echo ipropertyHTML::getBedsText($this->p->beds);
Потом проверить сайт и искать места, где не сработало, и искать как там сделано.
Примерно так. Надеюсь понятно куда копать.