Перейти к публикации

Уведомление автора новости о новом комментарии в ЛС


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

Есть в интернете такой хак. Но на ветке 16 не работает. Ну или на php8. Сообщения не приходят. В чем может быть проблема?

//////////////// Уведомление автора новости о комментарии в ЛС by SX2 //////////////      
            $rows  = $db->super_query("SELECT p.autor, p.title, c.id FROM " . PREFIX . "_post p LEFT JOIN " . PREFIX . "_comments c ON (p.id=c.post_id) WHERE c.post_id=$post_id");	$usercom = $is_logged?$member_id['name']:'Гость';			 
            $row        = $db->super_query("SELECT user_id, name, user_group FROM " . PREFIX . "_users WHERE name='{$rows['autor']}'");
            if ($row['user_group'] != 1 AND $member_id['name'] != $rows['autor']) {									
			$db->query("INSERT INTO " . USERPREFIX . "_pm (subj, text, user_from, date, pm_read, folder, reply, user) VALUES ('На сайте, к Вашей новости был добавлен комментарий!', 'Здравствуйте <b>{$rows['autor']}!</b><br />На сайте к Вашей новости <b>{$rows['title']}</b>, пользователь <b>{$usercom}</b> добавил комментарий!<hr /><br />{$comments}<br /><br /><hr />Вы можете его прочитать, пройдя по <a href={$config['http_home_url']}index.php?newsid={$post_id}#comment-id-{$rows['id']}><font color=red>cсылке</font></a><br />', '{$usercom}', '{$_TIME}', 'no', 'inbox', '0', '{$row['user_id']}')");
            $db->query("UPDATE " . USERPREFIX . "_users set pm_all=pm_all+1, pm_unread=pm_unread+1 where user_id='{$row['user_id']}'");			           
            }
        //////////////// Уведомление автора новости о комментарии в ЛС by SX2 //////////////

P.S. Блин, не в ту категорию запостил.

Изменено пользователем Pupsator
Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, Pupsator сказал:

В чем может быть проблема?

В том, что если автор новости принадлежит к группе администратора то уведомления он не получает. Никаких зависимостей к версии php или dle в коде нету.

Ссылка на сообщение
Поделиться на других сайтах
Цитата

если автор новости принадлежит к группе администратора то уведомления он не получает.

Но сообщения то не приходят. Никому не приходят.

Ссылка на сообщение
Поделиться на других сайтах

Представленный код никак не зависит не от версии DLE, ни от версии PHP, он будет работать на любой версии PHP и DLE. Судя по коду уведомления не должны приходить авторам новости и администраторам. Если у вас все эти условия соблюдены, значит вы поставили свой код куда то не туда, не там где он должен быть.

Ссылка на сообщение
Поделиться на других сайтах

 Теперь работает, надо было поставить всё перед:

if ( $config['mail_comments'] OR $config['allow_subscribe'] ) {

 

Цитата

Уведомление автора новости о новом комментарии

Не понятно почему Админ исключен? Он же тоже может быть автором поста.

Изменено пользователем Pupsator
Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, Pupsator сказал:

Не понятно почему Админ исключен? Он же тоже может быть автором поста.

Задайте этот вопрос автору этого кода. Он его так написал, ему и виднее почему он так сделал.

Ссылка на сообщение
Поделиться на других сайтах

Если бы еще этих авторов найти можно было.

Включить уведомления для админа, надо убрать:

$row['user_group'] != 1 AND
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

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