Перейти к публикации
Дизайн и модификация Invision Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
HooLIGUN

Отображения бана в чате 3.4.9

Рекомендованные сообщения

09/06/19 07:55 (изменено)

Хочу сделать отображение блокировки чата около ника юзера (в чате)

Никак не могу получить массив с данными от пользователя-автора сообщения

 

Нужно так

post-48258-0-84482300-1567756422_thumb.png

Сделал примерно вот так, но это доп запрос на каждое сообщение, а их в чате куча и получается куча запросов валит сервер

$ban_memberid = $d['member_id'];
$getban = $this->DB->buildAndFetch( 
array( 
'select' => 'count(*) as banned',
'from'   => 'members',
'where'  => "member_id = '$ban_memberid' and members_cache LIKE '%shoutbox_banned\\";i:1%'"
));
if ($getban['banned'] == '1'){
$ban = '<span class="ipsBadge ipsBadge_red">Чат заблокирован</span>';
}

Делаю в шаблоне skin_shoutbox->shout_row *

Изменено пользователем HooLIGUN

Поделиться сообщением


Ссылка на сообщение

Сделайте var_dump($d) и посмотрите, есть ли кеш.

Поделиться сообщением


Ссылка на сообщение

Делал, нет

Пытался найти в каком файле сидит массив $d , чтобы добавить туда нужное мне - не нашел

Поделиться сообщением


Ссылка на сообщение

\admin\applications_addon\other\shoutbox\sources\classes\library.php

 

'add_join' => array( 0 => array( 'select' => 'm.member_id, m.member_group_id

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
09/06/19 11:02 (изменено)

'add_join' => array( 0 => array( 'select' => 'm.member_id, m.member_group_id, m.members_display_name, m.members_seo_name, mgroup_others,members_cache',

Не помогло

upd

Обновил кеш чата, появилось) Спасибо

Не подскажите,как его обработать?

s:15:"shoutbox_banned";i:1;s:23:"shoutbox_banned_howlong";i:24;s:20:"shoutbox_banned_time";i:1567767610;

Поидее где то в движке есть обработчик

Изменено пользователем HooLIGUN

Поделиться сообщением


Ссылка на сообщение
  HooLIGUN писал:

Не подскажите,как его обработать?

$cache = IPSMember::unpackMemberCache( $d['members_cache'] );

либо получить значение(я) по ключу

$shoutbox_banned = IPSMember::getFromMemberCache( $d, 'shoutbox_banned' );

Поделиться сообщением


Ссылка на сообщение

Привязки к id пользователя же нет?

Поделиться сообщением


Ссылка на сообщение

Не понял.

 

В переменной $d содержатся данные по юзеру.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Да, тест echo для $shoutbox_banned сбил меня с толку.

Спасибо, всё заработало.

Поделиться сообщением


Ссылка на сообщение

Не хотел создавать новую тему, поэтому вопрос тоже по Чату: Как можно архив shoutbox выводить не в аджакс-окне, а по ссылке, в обычном окне?

Поделиться сообщением


Ссылка на сообщение

Должна быть такая реализация. Как правило аджакс блоки дублируются отдельными страницами.

Поделиться сообщением


Ссылка на сообщение
  siv1987 писал:

Должна быть такая реализация. Как правило аджакс блоки дублируются отдельными страницами.

В 3.1.4 точно нет.

Поделиться сообщением


Ссылка на сообщение

Должны быть прямые ссылки. Только там будет либо json, либо html без форматирования.

Поделиться сообщением


Ссылка на сообщение
  newbie писал:

Должны быть прямые ссылки. Только там будет либо json, либо html без форматирования.

Да вот ищу, не могу найти. А где поискать? Смотрел в shoutbox.ajax.js, coreAjax.php и shoutbox.js

Ajax.zipПолучение информации...

Поделиться сообщением


Ссылка на сообщение
member->form_hash}&type=archive" seotitle="false" base="public"}">Archive

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...