Реализация ChatMessageDTO.
This commit is contained in:
@@ -515,20 +515,22 @@ class forum
|
||||
//Если автор предыдущего сообщения не текущий юзер - отправляем в чат сообщение о новом ответе
|
||||
if ($lst['uid'] + 1 != $this->user['id']) {
|
||||
$fnt = '<b>' . date('d.m.Y H:i') . '</b> На форуме опубликован новый ответ в обсуждении, в котором вы принимали участие. <a href=https://new-combats.com/forum?read=' . $topic . ' target=_blank \>Читать далее</a>';
|
||||
$ins = '';
|
||||
$ll = [];
|
||||
$sp = mysql_query('SELECT `u`.`city`,`u`.`id`,`u`.`login`,`f`.`uid`,`f`.`login` FROM `forum_msg` AS `f` LEFT JOIN `users` AS `u` ON `f`.`uid` = `u`.`id` WHERE `f`.`delete` = "0" AND (`f`.`topic` = "' . mysql_real_escape_string($topic) . '" OR (`f`.`topic` = "-1" AND `f`.`id` = "' . mysql_real_escape_string($topic) . '")) LIMIT 1');
|
||||
$sp = mysql_query('SELECT `u`.`city`,`u`.`id`,`u`.`login`,`f`.`uid`,`f`.`login` FROM `forum_msg` AS `f` LEFT JOIN `users` AS `u` ON `f`.`uid` = `u`.`id` WHERE `f`.`delete` = 0 AND (`f`.`topic` = ' . (int)$topic . ' OR (`f`.`topic` = -1 AND `f`.`id` = ' . (int)$topic . ')) LIMIT 1');
|
||||
while ($pl = mysql_fetch_array($sp)) {
|
||||
if (!isset($ll[$pl['uid']]) && $pl['uid'] != $this->user['id']) {
|
||||
$ins .= '("' . $pl['city'] . '","1","' . $pl['login'] . '","6","-1","' . $fnt . '"),';
|
||||
$ll[$pl['uid']] = true;
|
||||
if (isset($ll[$pl['uid']]) || $pl['uid'] == $this->user['id']) {
|
||||
continue;
|
||||
}
|
||||
$cmsg = new ChatMessage();
|
||||
$cmsg->setCity($pl['city']);
|
||||
$cmsg->setTo($pl['login']);
|
||||
$cmsg->setText($fnt);
|
||||
$cmsg->setType(6);
|
||||
(new Chat())->sendMsg($cmsg);
|
||||
|
||||
$ll[$pl['uid']] = true;
|
||||
}
|
||||
unset($ll);
|
||||
$ins = trim($ins, ',');
|
||||
if ($ins != '') {
|
||||
mysql_query('INSERT INTO `chat` (`city`,`new`,`to`,`type`,`time`,`text`) VALUES ' . $ins . '');
|
||||
}
|
||||
}
|
||||
}
|
||||
$fid = mysql_insert_id();
|
||||
|
||||
Reference in New Issue
Block a user