Добавить фильтр на листинг пользователей

Ваши предложения по улучшению, новым модулям и т.д.

Модераторы: Xpycm, Koduc

Правила форума
ВНИМАНИЕ! Форум не является средством гарантированной поддержки клиентов и пользователей. Поэтому на быстрый ответ тут рассчитывать не нужно, как и на ответ вообще. Сотрудники отвечают по мере своих возможностей.

На форуме действует ограничение в 3 сообщения / сутки.
Если Вы хотите сказать "спасибо", то воспользуйтесь функцией "Повысить репутацию" - зелёная иконка "плюс" под ником ответившего.

Добавить фильтр на листинг пользователей

Сообщение monarch » 28 май 2020, 19:48

Добрый день,

Хотелось бы видеть доп.фильтр на листинг пользователей, чтобы скрыть тех, кто создал аккаунт (когда бронировал что-то) и появился в этом списке с 0 объектов (размещенных).
Опционально хотелось бы видеть ВКЛ/ВЫКЛ где то в админке
https://demo-pro.open-real-estate.info/ru/users/viewall
Текущий вариант позволяет "вытащить" всех клиентов одним кликом практически.

Можно решить средствами веб-сервера сделав редирект на главную или отдав 503, но это не элегантно будет.

Должно быть актуально для тех, у кого масса запросов по бронированиям.
--
С уважением, monarch.
Аватара пользователя
monarch
Прохожий
 
Сообщения: 39
Зарегистрирован: 30 ноя 2018, 11:54
Очки репутации: 17

Re: Добавить фильтр на листинг пользователей

Сообщение Dmitry » 29 май 2020, 02:15

ППКС! Отличное решение для проблемы, которую я описывал в теме про то ошибки версии 1.32.3 (в этом сообщении п.20).
Те у кого нет объявлений, скорее всего клиенты, а не агенты или владельцы жилья. Чтобы клиенты находились в этом списке - однозначное зло, а владельцам жилья только на пользу. При наличии такой настройки я бы может даже регистрацию при бронировании не стал бы отключать.
Dmitry
Гражданин
Гражданин
 
Сообщения: 135
Зарегистрирован: 29 мар 2020, 17:04
Откуда: Крым
Очки репутации: 22

Re: Добавить фильтр на листинг пользователей

Сообщение Xpycm » 29 май 2020, 07:37

Распишите, пожалуйста, какую настройку или какие настройки необходимо добавить и что они должны делать?
Если вам по сути нужно только чтобы в списке пользователей не отображались те пользователи, у кого нет объектов, то можно обойтись и без дополнительных настроек
Dropbox
Open Real Estate CMS: FAQ | FAQ 2 | FAQ 3
Изображение
Xpycm
Разработчик
Разработчик
 
Сообщения: 1592
Зарегистрирован: 30 дек 2011, 11:06
Откуда: Йошкар-Ола
Очки репутации: 50

Re: Добавить фильтр на листинг пользователей

Сообщение monarch » 29 май 2020, 11:39

Xpycm писал(а):чтобы в списке пользователей не отображались те пользователи, у кого нет объектов, то можно обойтись и без дополнительных настроек

А как это сделать?
--
С уважением, monarch.
Аватара пользователя
monarch
Прохожий
 
Сообщения: 39
Зарегистрирован: 30 ноя 2018, 11:54
Очки репутации: 17

Re: Добавить фильтр на листинг пользователей

Сообщение Xpycm » 29 май 2020, 17:01

Файл protected/modules/users/controllers/MainController.php
Вместо:
Код: Выделить всё
$criteria = new CDbCriteria();
$type in_array($typearray_keys($existTypes)) ? $type 'all';
if (
$type != 'all') {
    
$criteria->compare('type'$type);
}
$criteria->with = array('countAdRel');

$sort = new CSort();

$sort->sortVar 'sort';
$sort->defaultOrder 'date_created DESC';
$sort->multiSort true


Вставить:
Код: Выделить всё
$criteria = new CDbCriteria();
$type in_array($typearray_keys($existTypes)) ? $type 'all';
if (
$type != 'all') {
    
$criteria->compare('t.type'$type);
}
$criteria->with = array('countAdRel');
$criteria->join 'INNER JOIN {{apartment}} ap ON t.id = ap.owner_id';
$criteria->select 't.*';
$criteria->having 'COUNT(ap.id) > 0';
$criteria->group 't.id';

$sort = new CSort();

$sort->sortVar 'sort';
$sort->defaultOrder 't.date_created DESC';
$sort->multiSort true
Dropbox
Open Real Estate CMS: FAQ | FAQ 2 | FAQ 3
Изображение
Xpycm
Разработчик
Разработчик
 
Сообщения: 1592
Зарегистрирован: 30 дек 2011, 11:06
Откуда: Йошкар-Ола
Очки репутации: 50

Re: Добавить фильтр на листинг пользователей

Сообщение Dmitry » 06 июн 2020, 07:05

Проверил - то, что нужно!
Вот только учитывает и неактивированные объявления (а они, как мне показалось, могут создаваться полу-несознательно *PARDON* ). В идеале (если не вызовет больших нагрузок), было бы выводить только тех у кого есть активные объявления.
Ну и настройку в админке назвать соответствующим образом:
"Отображать в списке пользователей тех у кого нет активный объявлений" ✔️ (Да/Нет)

Правда нашел 1 проблему - не работает сортировка пользователей по дате регистрации (по имени - сортировка нормально меняется):
CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'date_created' in order clause is ambiguous.

на так чтобы мне особо нужна была тут сортировка, как не нужна 404 и прочее отличное от 200 ) , ну и если настройка появится в "коробке", то не хорошо если баги проберутся
Dmitry
Гражданин
Гражданин
 
Сообщения: 135
Зарегистрирован: 29 мар 2020, 17:04
Откуда: Крым
Очки репутации: 22

Re: Добавить фильтр на листинг пользователей

Сообщение van33 » 11 дек 2020, 20:24

изучаю Ваш движок и как риелтор нашел для себя таки неудобства
1. в модуле местоположения не учтена специфика территориального устройства стран Страна - Регион-Город , это не полный перечень территориальных единиц, Страна - Регион- Район- Город/село микро. район так для риелторов удобней
2, Запутанная система назначения цени в разделе аренда
3,В объявления продажа земли тип участка очень важен в вы его поставили в последние пункты при заполнении об’явлений логично его поставить под тип недвижимости
4.Не очень удобный редактор меню сложно работать без мишки ( сделать его погрубей а то там все по миллиметрах )
van33
Незнакомец
 
Сообщения: 1
Зарегистрирован: 10 дек 2020, 17:37
Очки репутации: 0


Вернуться в Улучшения

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0