Next Generation CMS - Управляйте контентом без границ!
Создавай
Развивай
Управляй
Актуальная v.1.0.0
Плагин Private Message (PM)
Главная страница / Плагины / Общение / Плагин Private Message (PM)

Плагин Private Message (PM)

Плагин pm - организует возможность обмена приватными сообщениями между зарегистрированными пользователями сайта

ID: pm
Name: Личные сообщения
Version: 0.7
Acts: usermenu, ppages
Actions: rpc; pm_ajax.php
File: pm.php
Install: install.php
Deinstall: uninstall.php
Config: config.php
Type: plugin
Description: Обмен приватными сообщениями между пользователями
Author: Alexey N. Zhukov (Wolverine)
Author_URI: http://digitalplace.ru/
Title: Личные сообщения
Information: Плагин организует возможность обмена приватными сообщениями между зарегистрированными пользователями сайта

1. Общая информация

Плагин Private Message (PM) предназначен для обмена личными сообщениями между пользователями на сайте, работающем на NextGeneration CMS (NGCMS).


Основные возможности:

  • Отправка и получение личных сообщений
  • Хранение входящих и исходящих сообщений
  • Настройки уведомлений
  • Поддержка BBCode и смайлов
  • Пагинация сообщений

2. Установка и настройка


2.1. Установка плагина

  1. Загрузите файлы плагина в папку
    /engine/plugins/pm/
  2. Активируйте плагин через админ-панель NGCMS
  3. Настройте необходимые параметры

2.2. Настройки плагина

Доступные параметры (настраиваются через админку):

ПараметрОписаниеЗначение по умолчанию
msg_per_page
Количество сообщений на странице10
title_length
Максимальная длина заголовка100
message_length
Максимальная длина сообщения5000
localsource
Использование локальных шаблонов0

3. Структура базы данных

Плагин использует следующие таблицы:


3.1. Таблица
prefix_pm

ПолеТипОписание
id
INTID сообщения
from_id
INTID отправителя
to_id
INTID получателя
subject
VARCHARТема сообщения
message
TEXTТекст сообщения
date
DATETIMEДата отправки
viewed
TINYINT(1)Прочитано (0/1)
folder
ENUMПапка (inbox/outbox)

3.2. Изменения в таблице
uprefix_users

Добавляются следующие поля:

  • pm_all
    - общее количество входящих сообщений
  • pm_unread
    - количество непрочитанных сообщений
  • pm_sync
    - флаг синхронизации счетчиков
  • pm_email
    - настройка email-уведомлений

4. Функционал плагина


4.1. Входящие сообщения (Inbox)

  • Отображение списка полученных сообщений
  • Подсчет непрочитанных сообщений
  • Пагинация (разбивка на страницы)
  • Возможность удаления сообщений
  • Маркировка прочитанных сообщений

4.2. Исходящие сообщения (Outbox)

  • Просмотр отправленных сообщений
  • Удаление сообщений из исходящих

4.3. Чтение сообщений

  • Отображение полного текста сообщения
  • Поддержка форматирования (BBCode, смайлы)
  • Кнопка ответа (для входящих сообщений)

4.4. Написание сообщений

  • Форма отправки новых сообщений
  • Автодополнение имени получателя
  • Возможность сохранения копии в исходящих
  • Поддержка BBCode и смайлов

4.5. Настройки

  • Включение/отключение email-уведомлений

5. Шаблоны и интерфейс


5.1. Основные шаблоны

ШаблонОписание
inbox.tpl
Список входящих сообщений
outbox.tpl
Список исходящих сообщений
read.tpl
Просмотр сообщения
write.tpl
Форма отправки
reply.tpl
Форма ответа
set.tpl
Настройки уведомлений

5.2. Основные переменные в шаблонах

ПеременнаяОписание
{{ pm_inbox_link }}
Ссылка на входящие
{{ pm_outbox_link }}
Ссылка на исходящие
{{ pm_set_link }}
Ссылка на настройки
{{ pm_read_link }}
Ссылка на чтение сообщения
{{ pm_del_link }}
Ссылка на удаление
{{ pm_write_link }}
Ссылка на написание сообщения
{{ pm_reply_link }}
Ссылка на ответ
{{ pm_send_link }}
Ссылка на отправку сообщения
{{ entries }}
Список сообщений
{{ pagination }}
Пагинация

6. API и интеграция


6.1. Основные функции

  • pm::sendMsg()
    - отправка сообщения
  • PMCoreFilter::showUserMenu()
    - отображение счетчика сообщений в меню пользователя

6.2. Хуки (hooks)

  • usermenu
    - добавление счетчика сообщений в профиль
  • core.userMenu
    - фильтр для меню пользователя

Важно: В текущей реализации отсутствует защита от CSRF-атак. Рекомендуется добавить токены в формы.

7. Возможные улучшения

  • Добавление групповых сообщений
  • Вложения к сообщениям
  • Черновики сообщений
  • Поиск по сообщениям
  • Улучшенная пагинация и фильтрация
  • Поддержка markdown вместо BBCode
  • Push-уведомления
  • Добавление CSRF-защиты

8. Заключение

Плагин Private Message предоставляет базовый функционал личных сообщений для NGCMS. Он хорошо интегрируется в систему, но требует доработок для современных стандартов (безопасность, UX).


Скачать:pm.zip
22 мая 2025 / Плагины, Общение

Добавить комментарий


Поддержка PHP 8.1 прекращена

06 Jul 2026 , admin
PHP 8.1, в котором появилась поддержка перечи...

Build source code multi #256

06 Jul 2026 , admin
Всем привет. Свеженькая сборка Build source c...

Build source code multi #255

18 Jun 2026 , admin
Всем привет. Свеженькая сборка Build source c...

Шаблоны

Шаблон админ-панели Old2

Шаблон админ-панели Old2

Шаблон админ-панели Old2, одна из моих старых попыток адаптации старой админки на новый лад, вот подумал чего добру пропадать , адаптировал до последней версии
Шаблон админ-панели Oniks

Шаблон админ-панели Oniks

Один из старых скинов админки от Русика , адаптирован под последнею версию движка .
Шаблон Android Dev

Шаблон Android Dev

Данный шаблон выполнен с преобладанием зелёного и белого цветов. Это подсознательно подчёркивает тему мобильных устройств на платформе андроид. Сам по себе, шаблон Android Dev очень лёгкий и быстрый п...
Шаблон админ-панели Velonic

Шаблон админ-панели Velonic

Шаблон полностью адаптивный, настраивается на свой вкус и цвет.
Шаблон Travel Hour

Шаблон Travel Hour

Travel Hour - красивое и замечательное решение для создания туристического сайта, сайта о курортах и турах, сайта об отдыхе. Шаблон полностью адаптивный, прекрасно отображается на планшетах и смартфон...
Русский English Deutsch Français Español Українська Қазақша
up