Fast-PM by Sander
Предлагаю вашему вниманию модифицированный модуль для личных сообщений, позволяющий обмениваться сообщениями в реальном времени (на подобии чата).
[Окно информатор]
Это окно расположено фиксированно в правом нижнем углу, отображается тогда, когда есть новые сообщения.
В нем выводится список пользователей, которые написали вам сообщение. В строке выводится его логин, в скобках количество новых сообщений и дата последнего сообщения. При клике на поле - сразу открывается диалог с выбранным пользователем. Окно-информатор скрывается.
Так же при клике на шапку окна - открывается окно диалогов.
В самом низу есть маленькая черная стрелка, при клике на нее список сворачивается и не занимает много места. Состояние панели запоминается в cookies.
Так же при получении новых сообщений воспроизводится звуковой сигнал.
[Основное окно диалогов]
Это окно является так же плавающим, располагается по центру сайта, можно переместить "схватившись" за шапку.
Поделено на 3 основных части:
-Шапка-
В ней расположено поле ввода логина пользователя для поиска и кнопка закрытия окна диалогов. Если на момент закрытия окна остались непрочитанные письма - будет снова выведено окно-информатор. Примечание: окно-информатор не будет показано, если новые сообщения пришли во время открытия большого окна.
-Контент-
В этом окне выводятся все написанные вам сообщения. На странице выводится заданное количество сообщений, дальнейшая подгрузка сообщений происходит посредством нажатия кнопки "Показать еще", которая находится в конце списка.
В строке сообщения расположены следующие элементы:
* чекбокс - для выделения сообщений над которыми затем будет применено то или иное действие.
* аватар пользовтеля - для информативности, никакого функционала не несет.
* логин - при клике на него открывается окно диалога (на ajax). Если открывать ссылку в новом окне - будет открыт пофиль пользователя.
* мигающая иконка рядом с логином - индикатор показывающий, что это новое непрочитанное сообщение.
* ниже расположен сам текст сообщения
* справа дата сообщения
-Список пользователей-
В этом списке выводятся все пользователи от которых у вас есть сообщения. Для удобства все поле является ссылкой/кнопкой для перехода к диалогу. Если открыть ссылку в новом окне будет открыта страница профиля выбранного пользователя.
У каждого профиля расположены следующие элементы:
* Аватар
* Индикатор слева от логина - что пользователь на сайте, или был на сайте не более чем 5 минут назад.
* Логин
* Справа от логина в скобках указано общее количество входящих сообщений от пользователя
* Под логином - дата последнего сообщения
* Справа в углу мигает идтикатор показывающий, что это новое непрочитанное сообщение
[Основное окно диалогов 2]
На этом скриншоте правая панель спрятана (состояние запоминается в cookies) и отмечены несколько сообщений. В шапке поле поиска заменяется на список действий над выбранными сообщениями:
Прочитал - помеченные сообщений меняют свой статус на прочитанные
Непрочитанные - противоположно "Прочитал"
Удалить - удаляет отмеченные сообщения без возможности восстановить
Это спам! - отмеченные сообщения убираются из вашего списка сообщений, но не удаляются, а меняют свой статус на "spam"
Отмена - просто снимает выделение с отмеченных сообщений
Немного подробнее опишу алгоритм работы "антиспама". Если определенное количество пользователей (по умолчанию - 20) отмечает сообщения пользователя (любое количество сообщений, это не важно) как спам, то данный пользователь больше не сможет отправлять сообщения.
Т.е. даже если один человек пометит у себя хоть 100 сообщений как спам, его собеседник не будет "забанен".
Окно диалога
Окно вывода сообщений ничем не отличается от основного окна, за исключением того, что в нем так же выводятся ваши сообщения. Так же стоит заметить, что тут новые сообщения выводятся снизу, а на главной наоборот.
Внизу окна появляется форма для отправки сообщений и еще несколько элементов интерфейса, а именно:
* Справа от поля ввода аватар собеседника - не несет никакого функционала, просто для удобства и наглядности
* Кнопка "Отправить" - так же сообщения можно отправлять комбинацией клавиш Ctrl->Enter
* Кнопка "(очистить)" - удаляет всю переписку с данным пользователем. Удаляются ваши и его сообщения.
* Справа от кнопки "(очистить)", логин и дата его последнего посещения - ссылка на профиль пользователя
* В углу кнопка для закрытия диалога - при клике на нее будет отображена страница всех диалогов ("Основное окно диалогов")
Если при отправке сообщения ваш собеседник определяется сайтом как оффлайн (т.е. бездействует более 300 сек), ему на email будет отправлено уведомление о новом личном сообщении.
Поиск пользователей
Поиск пользователей происходит "на лету" по первым буквам введенного логина. При клике на строку будет открыто окно диалога с выбранным пользователем.
Условия продажи:
WebMoney кошелек с BL>20 или Персональный аттестат или срок регистрации более года.
Демо:
dle-faq.ru
prowebber.ru
DLE: 9.0-13.0
Цена:
ICQ: 404-037-556
E-Mail: olalod@mail.ru
Skype: Sander8804
С уважением,
Олег Александрович a.k.a. Sander