Что нового

С генератором ключа DialogPM [KeyGen NULLED]

Для данного материала доступен Генератор ключей
Вы можете сгенерировать оригинальный лицензионный ключ и использовать оригинальный архив скрипта

KeyGen

Создатель
Owner
Релизеры
Регистрация
21 Мар 2025
Сообщения
15
Реакции
50
1534106678_logo[1].png
Продвинутая система общения между пользователями.
Модуль реализован по принципу чата, где сообщения обновляются в режиме реального времени.
За основу внешнего вида взят интерфейс телеграма и адаптирован в рамках web интерфейса и возможностей DLE.


Данный модуль я делал очень продолжительное время. Постоянно что-то переделывал или добавлял. Вот буквально на днях перед релизом добавил еще один достаточно интересный функционал для использования ЛС в качестве обратной связи с администрацией сайта. Но лучше распишу все по порядку.
Большая просьба полностью ознакомиться с описанием модуля. Практически на все вопросы вы сможете найти ответы в этой статье.

Особенности​

  1. Модуль доступен только по реальному адресу example.com/pm/
  2. У каждой беседы свой URL: example.com/pm/Логин_Пользователя/
  3. Адаптивная верстка
  4. Совместимость со стандартными ЛС. Достаточно установить модуль и все старые сообщения будут отображаться в чате
  5. Очень простая установка
  6. Все действия выполняются на AJAX (за исключением перехода по страницам)
  7. Можно запретить пользователям общаться друг с другом и использовать модуль только как обратную связь с заданным списком пользователей.
  8. На 98% открытый исходный код.
  9. Никакого html в php файлах. Все в шаблонах.
  10. Русская и Английская локализация. Можно легко добавить свой языковый файл. Но в шаблонах нужно будет вручную менять тексты.

Главная страница​

DialogPM by Sander v.1.0.14

На главной странице всегда отображается сайдбар и пустой "контент". Если у группы пользователей есть ограничение на количество сообщений, то в верхней части будет отображаться прогресс бар. Если ограничений нет, то и прогресс бара соответственно тоже не будет:
DialogPM by Sander v.1.0.14

В сайдбаре есть кнопка меню, поиск и список пользователей.
Еще важный момент. Верстка модуля сделана с поддержкой адаптивности, на мобильных устройствах главная страница будет принимать следующий вид:
DialogPM by Sander v.1.0.14

Меню и поиск опишу отдельно. Список пользователей формируется и сортируется по дате последнего сообщения, входящего или исходящего. При этом новые не прочитанные сообщения будут всегда в начале списка.
В строке пользователя указывается: полное имя (или логин), дата последнего сообщения, логин и группа пользователя.
Так же на аватарке в виде кружочка показывается статус пользователя.
Список собеседников обновляется на AJAX с заданным интервалом. При получении нового сообщения в заголовок страницы будет дописано количество новых сообщений.
DialogPM by Sander v.1.0.14

Меню пользователя​

DialogPM by Sander v.1.0.14

При клике на иконку меню на AJAX поверх окна подгружается меню. В нем можно очистить всю историю переписок, перейти на страницу игнорируемых пользователей (в скобочках указано их количество) и посмотреть статистику сообщений.
Если у группы пользователя есть ограничение на количество сообщений, то это будет так же отображено в статистике.
DialogPM by Sander v.1.0.14

Думаю вы обратили внимание, что исходящих сообщений 8, а из них не прочитанных 13. Такое возможно когда пользователь написал сообщение и удалил его. А принимающая сторона еще не прочитала. Поэтому получается, что фактически в исходящих сообщения нет, но в реальности оно есть у принимающей стороны и оно еще не прочитано.


Игнорируемые пользователи​

DialogPM by Sander v.1.0.14

При клике на крестик выскочит стандартное окно подтверждения действия. При клике на сам блок профиля будет выполнен переход на страницу диалога с пользователем. При клике на иконку пользователей в левой колонке будет показан текущий список собеседников для быстрого перехода к диалогу.
DialogPM by Sander v.1.0.14

Поиск пользователей​

Я очень старался сделать его удобным и наглядным, надеюсь у меня получилось.
DialogPM by Sander v.1.0.14

  1. Поиск выполняется на AJAX.
  2. В качестве даты отображается дата последнего посещения.
  3. В списке выполняется подсветка искомого слова.
  4. Поиск и подсветка выполнятся сразу и в полном имени и в логине.
  5. Приоритет поиска идет по логину. У кого ближе к началу искомая фраза тот выше в выдаче, затем сортировка по алфавиту
    DialogPM by Sander v.1.0.14
  6. Поиск выполняется автоматически при вводе текста, с задержкой 600мс. Но можно нажать Enter, тогда поиск будет выполнен мгновенно.

Окно чата​

DialogPM by Sander v.1.0.14

  1. В верхней части указан профиль собеседника, справа в кружочке количество сообщений в беседе (скриншот сделан из профиля test).
  2. В основном окне чата полагаю все и так понятно, последнее сообщение еще не прочитано собеседником, поэтому помечено красной полоской.
  3. Между списком сообщений и формой ввода видна красная полоска, это визуализация обратного отсчета до следующего обновления чата. Полоску при желании можно легко убрать в шаблоне.
  4. Редактор можно использовать любой стандартный: BB, FroalaEditor или TinyMCE.
  5. Если пользователь отсутствовал некоторое продолжительное время, обновление чата будет приостановлено для предотвращения выполнения ненужных запросов, время можно поменять в настройках
    DialogPM by Sander v.1.0.14
  6. Меню своего сообщения
    DialogPM by Sander v.1.0.14
  7. Меню сообщения собеседника, отличие - отсутствие возможности редактирования и есть возможность пожаловаться. При удалении сообщения будет выскакивать окно подтверждения действия
    DialogPM by Sander v.1.0.14
  8. При редактировании сообщения редакторы не отображаются, но используется обработчик BB редактора.
    DialogPM by Sander v.1.0.14
  9. При получении нового сообщения от другого (не текущего) пользователя, в левой колонке будет показано число новых сообщений
    DialogPM by Sander v.1.0.14
  10. Развернутый список пользователей, текущий пользователь выделен.
    DialogPM by Sander v.1.0.14
    Поиск работает так же как на главной.
  11. Архив сообщений отображается на отдельной странице, в нем ограниченный функционал, отображаются сразу все сообщения от новых к старым.
    DialogPM by Sander v.1.0.14
  12. Можно массово удалить выбранные сообщения
    DialogPM by Sander v.1.0.14
  13. Иконка стирательной резинки позволяет полностью удалить все сообщения в текущем диалоге.
  14. При клике на кнопку игнора редактор прячется
    DialogPM by Sander v.1.0.14
  15. Если же сам пользователь находится в игноре у получателя будет следующее сообщение:
    DialogPM by Sander v.1.0.14
  16. При желании можно приостановить автообновление чата или обновить чат вручную с помощью иконок
    DialogPM by Sander v.1.0.14
  17. В зависимости от настроек можно выключить или наоборот включить звук новых сообщений
    DialogPM by Sander v.1.0.14
  18. Иконка ниже позволяет в 2 раза увеличить высоту чата для удобства чтения длинных сообщений.
  19. Запоминается состояние кнопок сайдбара: "Список пользователей", "Приостановить обновление", "Без звука" и "Развернуть".

Настройки​

  1. 'limit' => 100, - максимальное видимое количество сообщений в текущем диалоге
  2. 'search_limit' => 20, - максимальное количество отображаемых пользователей при поиске
  3. 'online_time' => 10, - сколько минут бездействия считать пользователя онлайн
  4. 'interval' => 7, - интервал между обновлениями чата
  5. 'offline' => 1, - через сколько минут бездействия переводить чат в оффлайн режим
  6. 'main_interval' => 10, - интервал обновления списка пользователей на главной странице модуля
  7. 'allow_ignore' => true, - разрешить использовать игнорирование (в случае запрета, кнопки и тексты в шаблоне нужно будет убрать вручную)
  8. 'soundoff' => 0, - выключить звук. Т.е. по умолчанию изначально кнопка отключения звука будет активной
  9. 'stopupdate' => 0, - выключить автообновление чата.
  10. 'allow_search' => true, - разрешить использовать поиск пользователей на сайте
  11. 'send_email' => true, - отправлять на почту уведомление о новом сообщении.
  12. 'email_subj' => 'Новое персональное сообщение', - заголовок/тема письма
  13. 'pm_subj' => 'Новое ЛС', - модулем не используется, но т.к. используется стандартная таблица для хранения писем - необходимо указывать заголовок письма. Да и в шаблоне email сообщения используется тема.
  14. 'feedback_only' => false, - запретить пользователям общаться между собой, только с заданными списком контактов
  15. 'feedback_users' => [], - через запятую логины пользователей которым можно писать сообщения, если включен параметр выше

Шаблоны​

  1. 404.tpl - страница ошибки, если указан не существующий URL или пользователь
  2. dialog.tpl - страница диалога
  3. dialog_item.tpl - шаблон сообщений (включая разделитель-дату)
  4. editor.tpl - форма редактора
  5. ignore.tpl - страница игнорируемых пользователей
  6. index.tpl - индексная страница, основная оболочка
  7. main.tpl - главная страница
  8. menu.tpl - меню профиля пользователя
  9. userlist.tpl - шаблон пользователя в списке

Информация​

  • Для работы модуля требуется ionCube Loader v.6.x и старше (для PHP 7.x версия куба должна быть 10.x)
  • Версия DLE: 10.1 - 17.1 (На старых версиях DLE рекомендуется использовать только BB редактор)
  • Версия PHP: 5.4 - 8.2 (кроме 8.0)
  • Кодировка: UTF-8
  • Купить на сайте автора: https://sandev.pro/shop/143-dialogpm-by-sander.html

Версия 1.0.10


Версия 1.0.13 (спасибо @Alex12345)
  • DialogPM.zip
    11.2 КБ · ID: 5285
 
Последнее редактирование модератором:

Вложения

всё равно ошибка:
Fatal error: Declaration of Sandev\View::compile($tpl_name = 'content') must be compatible with dle_template::compile($tpl, $compile_if = false, $compile_user_data = true) in C:\OSPanel\domains\180testmod\engine\mods\pm\class\View.php on line 67

Версия 1.0.13 (спасибо @Alex12345)
там 81 и 82 только php файлы, а самого модуля нет
 
Так тебе выше дали модуль. Что тебе мешает эти файлы засунуть в него ?
здесь выложена версия 1,0,10, а поддержка php 8.1 началась с версии модуля 1,0,13:
v.1.0.13 от 16.10.2022
+ Добавлена поддержка PHP 8.1
+ Добавлена поддержка DLE 15.3
или отличия версий модуля только в закодированных файла? никакие функции не обновляются между ростом php?
 
Верх