Обязательное окно-уведомление об ЛС/PM

Здесь авторы постили бета-версии своих модификаций для phpBB 2.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!
Аватара пользователя
ALER
phpBB 2.0.0
Сообщения: 214
Зарегистрирован: 09.12.2004 0:00
Откуда: Москва
Контактная информация:

Обязательное окно-уведомление об ЛС/PM

Сообщение ALER » 19.09.2007 10:13

Мотивы этой доработки я объяснил в теме http://phpbbguru.net/community/viewtopi ... 881#155881. Повторю их:
Как научить юзеров пользоваться ЛС/PM?

Стоит у меня мод flashing_gif_for_new_pm, но при переходе на текстовый стиль мигающая гифка, разумеется, исчезла. Да и не очень-то она была заметна, надо сказать.

Никто не задумывался, как привлечь внимание юзеров иным способом? Ведь многие новички даже не знают, что существуют ЛС/PM и не представляют себе, как они удобны. Посылаешь им ЛС - и они так и висят в Исходящих, пока не дашь ему в топике реплику - посмотри в верхнее меню. А всплывающие окна в XP по умолчанию запрещены. Некоторые даже присылают возмущенные (действительно был такой случай) письма: мол, Правила провозглашают, что форум некоммерческий, и реклама запрещена - а у них, видите-ли, всплывающие окна наружу просятся...

Даже просто мигающая надпись "Новых сообщений: 1" привлекла бы большее внимание, чем гифка в упомянутом моде.
Результатом вопроса явидась подсказка гуру - поставить моды In Window CSS PM Notification или PM Notification in CSS Frame. Попробовал оба на тестовом форуме. Второй мод мне понравился больше, но у него было два недостатка.

Первый - значительная часть мода заключалась в добавлении в Профиль участника возможности выбирать, какой вариант использовать - штатное popup-окно или окно CSS. Для этого даже в таблицу phpbb_users добавлялось новое поле. А я не хочу, чтобы участники отказывались от получения ЛС. Порядок в форуме поддерживается как раз через ЛС - модераторы и админы активно их используют. И нужно, чтобы юзер, даже самый зеленый новичок, быстро получил посланное ЛС.

Второй недостаток - окно всегда оказывалось в самой верхней части открывающейся страницы. Если обновлять страницу, находясь в ее нижней части, то окно просто не увидишь. По крайней мере в браузере IE6.0, одном из самых популярных ныне.

Вот эти два недостатка я и решил устранить, разработав на основе мода PM Notification in CSS Frame свой мод Always shown window PM.

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

При переделке Профиля я внес в тексты минимальные изменения. Можно было бы убрать намного больше, но тогда возникли бы проблемы при обновлениях версии форума и при установке модов - не находились бы нужные строки для правки.

Окно выводится только одного типа - CSS. При этом конфигурацию окна пришлось серьезно изменить. Оно работает практически на всех основных браузерах (проверено) и остается на месте при скроллинге.

Клик по управляющей строке окна приводит к открытию папки "Входящие" в новом окне - это намного удобнее, чем прерывать чтение участником текущего окна.

Очень серьезную помощь в переработке окна и строки, которая его выводит, мне оказал участник нашего форума maddrive - огромное ему за это спасибо!

Попробовать, как работает мод, можно на тестовом форуме http://www.test.niva4x4.ru. Там простейшая регистрация - без писем. Регистрируетесь и тут же входите под выбранными логином и паролем. ЛС можно отправлять самому себе - так я и отлаживал мод. Не удивляйтесь, что все разделы того форума закрыты - это от спамеров, открываю их, когда нужно что-то отладить. Но это не мешает проверять работу ЛС/PM.

Еще одно важное замечание. В lang_main.php (в английском и русском языках) у меня было сделано добавление для popup-окна о том, чтобы папка Входящие открывалась в новом окне. Строка выглядела так:

Код: Выделить всё

$lang['Click_view_privmsg'] = '%sПерейти в папку «Входящие»%s%sОткрыть в новом окне%s';
Необходимо вернуть строки к исходному виду:

Код: Выделить всё

$lang['Click_view_privmsg'] = '%sПерейти в папку «Входящие»%s';
иначе нарушается работа sprintf ().

Добавлено спустя 8 часов 44 минуты 54 секунды:

Внесена ма-а-аленькая поправка в текст мода. Оказалось, что IE7 тоже требуется "костыль".

Браузеры, на которых производилась проверка:
Opera 9.23 - OK
Firefox 2.0.0.6 - OK
IE6 - OK
IE7 - с добавленной сейчас поправкой
Apple Safari 3 - OK

И собственно файл с окном я ночью забыл выгрузить...
Вложения
Always_shown_window_PM.1.0.0.txt
(17.85 КБ) 286 скачиваний
privmsgs_box.tpl
Добавляемый файл - собственно окно.
(544 байт) 266 скачиваний
Алексей aka ALER

Аватара пользователя
Romy
phpBB 2.0.3
Сообщения: 396
Зарегистрирован: 07.05.2005 22:18
Откуда: tallinn.ee
Контактная информация:

Сообщение Romy » 20.09.2007 0:31

ALER писал(а):ЛС можно отправлять самому себе - так я и отлаживал мод.
Хочу предложить доработать мод, путём добавления в окно ЦСС возможность перетаскивать его по окну мышкой, иначе оно представляет некоторое неудобство при чтении тем и навигации.

Кстати, в вашей прошлой теме я ещё хотел предложить вариант ИПБ - на каком-то форуме видел: если приходит новое сообщение, оно (само сообщение. Если их несколько, появляется сперва самое новое, потом, после прочтения второе... и т.д.) появляется в поле над темами и списками форумов, в нашем случае это в самом верху viewtopic'a и viewforum'a и, следовательно, сразу под overall_header. А чтоб это ЛС было отчётливо видно, поле закрашено красным фоном.

К сожалению, никак не могу вспомнить на каком форуме видел, а специально искать сей мод - времени нет.

Добавлено спустя 2 минуты 46 секунд:

И ещё: это окно показывается только ОДИН раз - сразу после получения ЛС. Если даже оно не прочтено и вы переходите в любой раздел/тему, окно ЦСС пропадает, а как я понял, ваша задумка была как раз таки в том, что пока пользователь не прочитает ЛС, окно не исчезнет с экрана... Я правильно вас понял?..

Аватара пользователя
ALER
phpBB 2.0.0
Сообщения: 214
Зарегистрирован: 09.12.2004 0:00
Откуда: Москва
Контактная информация:

Сообщение ALER » 20.09.2007 8:58

Romy писал(а):Хочу предложить доработать мод, путём добавления в окно ЦСС возможность перетаскивать его по окну мышкой, иначе оно представляет некоторое неудобство при чтении тем и навигации.
А зачем? На строку в окне юзер должен кликнуть - и у него откроется в новом окне папка "Входящие". И пусть теперь дочитывает окно, которое собирался прочитать - к ЛС он вернется после.
Romy писал(а):в вашей прошлой теме я ещё хотел предложить вариант ИПБ
Выводить по ссылке с окна сразу само ЛС? И окно на каждое ЛС отдельным окном? Можно подумать, конечно.
Romy писал(а):И ещё: это окно показывается только ОДИН раз - сразу после получения ЛС.
Да, так, как выводилось popup-окно. Пока буду наблюдать, насколько эффективным окажется новое окно.
Алексей aka ALER

Аватара пользователя
Romy
phpBB 2.0.3
Сообщения: 396
Зарегистрирован: 07.05.2005 22:18
Откуда: tallinn.ee
Контактная информация:

Сообщение Romy » 20.09.2007 20:30

ALER писал(а):Выводить по ссылке с окна сразу само ЛС? И окно на каждое ЛС отдельным окном? Можно подумать, конечно.
Нет, там фреймовое окно.

Аватара пользователя
satnsk
phpBB 1.4.4
Сообщения: 128
Зарегистрирован: 02.02.2007 14:34
Откуда: Новосиб
Контактная информация:

Сообщение satnsk » 21.09.2007 16:31

странно, у меня никакого окна не открывается, отправьте мне сообщение в личку, ник - sat

Аватара пользователя
ALER
phpBB 2.0.0
Сообщения: 214
Зарегистрирован: 09.12.2004 0:00
Откуда: Москва
Контактная информация:

Сообщение ALER » 21.09.2007 19:56

satnsk
Нужно отправить самому себе ЛС и как только отправилось - тут же закрыть окно ЛС. Затем открывать или обновлять какое-то другое окно - вот на нем и будет окошко.

Впрочем, сейчас пошлю.
Алексей aka ALER

Аватара пользователя
satnsk
phpBB 1.4.4
Сообщения: 128
Зарегистрирован: 02.02.2007 14:34
Откуда: Новосиб
Контактная информация:

Сообщение satnsk » 22.09.2007 19:06

ага, есть, спасибо, поставлю, хорошая штука :)

Аватара пользователя
satnsk
phpBB 1.4.4
Сообщения: 128
Зарегистрирован: 02.02.2007 14:34
Откуда: Новосиб
Контактная информация:

Сообщение satnsk » 23.09.2007 8:58

поставил, все работает, спасибо
ALER писал(а):На строку в окне юзер должен кликнуть - и у него откроется в новом окне папка "Входящие". И пусть теперь дочитывает окно, которое собирался прочитать - к ЛС он вернется после.
вот только если нажать на крестик и закрыть окно, то можно и забыть про сообщение, сделать бы чтоб окно не закрывалось пока сообщение не будет прочитано

Аватара пользователя
ALER
phpBB 2.0.0
Сообщения: 214
Зарегистрирован: 09.12.2004 0:00
Откуда: Москва
Контактная информация:

Сообщение ALER » 23.09.2007 10:07

satnsk
Строго говоря, крестика там нет. Но закрытие окна - это действие, которое участник сделает сознательно и запомнит. И потом посмотрит в верхнее меню.
Алексей aka ALER

Закрыто

Вернуться в «Бета-версии модов для phpBB 2.0.x»