Поиск по допполнительному полю - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

СвернутьПрикрепленные теги

Теги не найдены

Страница 1 из 1

Поиск по допполнительному полю

#1 Пользователь не на сайте   HEXFIX ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 22
  • Регистрация: 23-Июль 12
  • Репутация: 1
  • IPB version:4.1.x
 

Отправлено 29 Апрель 2016 - 13:39

Подскажите, что и где нужно отредактировать, что бы при создании личного сообщения (а также просто в редакторе сообщений после символа @), при вводе текста в графу "Получатель" он предлагал пользователей не только по логину, но и по определенному дополнительному полю, которое я создал?

Подробнее.. Создаю личное сообщение и ввожу ник пользователя, мне форум предлагает выбор: http://i.imgur.com/b58QjSd.png
Как сделать, чтобы он мне предлагал выбор пользователей, у которых в доп. поле, к примеру, "Ваша Фамилия" есть сочетание Test?
0

#2 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 271
  • Регистрация: 20-Март 09
  • Репутация: 2 077
  • IPB version:3.1.x
 

Отправлено 29 Апрель 2016 - 14:06

\applications\core\modules\front\system\ajax.php

Найти

		$where = array( "name LIKE CONCAT('%', ?, '%')" );
		$binds = array( $input );

Ниже добавить

		$where[] = "pf.field_ид дополнительного поле LIKE CONCAT('%', ?, '%')";
		$binds[] = \IPS\Request::i()->input;


Найти

\IPS\Db::i()->select( '*', 'core_members', array_merge( array( implode( ' OR ', $where ) ), $binds ), 'LENGTH(name) ASC', array( 0, 20 ) )

Заменить на

\IPS\Db::i()->select( 'm.*', array( 'core_members', 'm' ), array_merge( array( implode( ' OR ', $where ) ), $binds ), 'LENGTH(name) ASC', array( 0, 20 ) )->join( array( 'core_pfields_content', 'pf'), array( 'm.member_id=pf.member_id' ), 'LEFT' )

1

#3 Пользователь не на сайте   HEXFIX ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 22
  • Регистрация: 23-Июль 12
  • Репутация: 1
  • IPB version:4.1.x
 

Отправлено 29 Апрель 2016 - 15:20

Почему-то не работает. Вообще никого не находит даже просто по нику. Кеш чистил, может что-то еще надо? У меня получилось вот так:

fields_10 - это правильно? В базе глянул, этот столбец называется field_10. Хотя пробовал и так.
0

#4 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 271
  • Регистрация: 20-Март 09
  • Репутация: 2 077
  • IPB version:3.1.x
 

Отправлено 29 Апрель 2016 - 15:28

Просмотреть сообщениеHEXFIX сказал(а):

fields_10 - это правильно?

field_ид

Просмотреть сообщениеHEXFIX сказал(а):

Вообще никого не находит даже просто по нику.

Поправил.
0

#5 Пользователь не на сайте   HEXFIX ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 22
  • Регистрация: 23-Июль 12
  • Репутация: 1
  • IPB version:4.1.x
 

Отправлено 29 Апрель 2016 - 15:49

Также ничего не предлагает (даже по имени пользователя перестал искать)
На самом форуме, когда пишешь имя пользователя после @ всё нормально, но по доп. полю так же не ищет.
0

#6 Пользователь не на сайте   HEXFIX ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 22
  • Регистрация: 23-Июль 12
  • Репутация: 1
  • IPB version:4.1.x
 

Отправлено 29 Апрель 2016 - 17:30

Заработало при выборе получателя ЛС! Спасибо Вам огромное!

А тоже самое для обычных постов в темках при выборе пользователя через @ надо другой файл править? Если да, то на этом всё! Спасибо еще раз!
0

#7 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 271
  • Регистрация: 20-Март 09
  • Репутация: 2 077
  • IPB version:3.1.x
 

Отправлено 29 Апрель 2016 - 22:08

Просмотреть сообщениеHEXFIX сказал(а):

А тоже самое для обычных постов в темках при выборе пользователя через @ надо другой файл править?

\applications\core\modules\front\system\editor.php

Найти

\IPS\Db::i()->select( '*', 'core_members', array( "name LIKE CONCAT( ?, '%' )", mb_strtolower( \IPS\Request::i()->input ) ), 'name', 10 )

Заменить на

\IPS\Db::i()->select( 'm.*', array( 'core_members', 'm' ), array( "name LIKE CONCAT( ?, '%' ) OR field_ид LIKE CONCAT( '%', ?, '%' )", mb_strtolower( \IPS\Request::i()->input ), \IPS\Request::i()->input ), 'name', 10 )->join( array( 'core_pfields_content', 'pf' ), 'm.member_id=pf.member_id', 'LEFT' )

1

#8 Пользователь не на сайте   HEXFIX ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 22
  • Регистрация: 23-Июль 12
  • Репутация: 1
  • IPB version:4.1.x
 

Отправлено 30 Апрель 2016 - 11:40

Все отлично работает. Большое спасибо за помощь!
0

Сообщить об этой теме:


Страница 1 из 1


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2016 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна