Плагин «Popup info»


Плагин показывает краткую информацию о пользователе или блоге в маленьком попап окошке при наведении указателя мыши на ссылку.

Плагин показывает информацию о пользователе при наведении курсора на ссылку его профиля в краткой справке в полупрозрачном попап окне. Выводится аватар, имя (если есть) иначе — логин, пол, рейтинг, сила, место проживания, количество публикации и комментариев, а также кнопка написания личного сообщения.



Также выводится информация о блоге при наведении курсора мыши на ссылку блога. Выводится также аватар, ссылка на RSS ленту, кнопка вступления в блог (выхода из блога), название блога, рейтинг, описание, количество администраторов, модераторов и читателей блога и их список в виде списка аватарок.



Обязательным условием использования плагина является наличие ссылки «Powered by PSNet» в окошке, отключить его можно за донейт от 1$ или прямая оплата через вебмани.

Для разработчиков

В плагине присутствуют хуки для вставки ваших кнопок и других элементов расширяющих функционал плагина. Подробнее — в текстовом файле в корне плагина.



В конфиге плагина доступны параметры:

  • Не показывать попап окно на длинные урлы. Например, не показывать окошко на урл /profile/admin/favourites/ а только на урл вида /profile/admin/
  • Количество пользователей для показа на странице блога в попап окне. На полный список пользователей будет вести ссылка
  • Показывать ли попап окна только зарегистрированным пользователям
  • Задержка перед показом подсказки (посылкой запроса к серверу). Время на которое курсор на ссылкой должен «остановится» чтобы всплыла подсказка. Чтобы при случайном «пролете» курсора мыши над ссылкой не посылать ненужные запросы к серверу, мс.


Плагин доступен в каталоге.

32 комментария

avatar
плагин супер ставлю +
avatar
у меня есть идея по улучшению плагина
еще можно сделать чтоб в этом окошечке можно было повышать или понижать рейтинг пользователя)
хотя это уже на вкус)
avatar
странно конечно, но у меня окошко выскакиевает только если у юзера показывается панель
наверно изза того, что у меня 0.4.2.
Хотя странно…
avatar
ИМХО лучше сделать ссылку подчеркнутую прерывистой линией и выводить при нажатии, а в окошке сделать ссылку на профиль. но это лично мне было бы так удобнее.

ОДнозначно плюс! Давно такое нужно было сделать)
avatar
у вас с netlanc походу соревнование, кто больше плагинов выложит до конца недели)))
avatar
даже если бы это было так — в этом только одни плюсы для сообщества в целом
avatar
Как сделать так, чтобы в этом окошке отображались награды вашего плагина «User medals»? Заранее спасибо за ответ.
avatar
и смысл награды сувать в это окошко, место не хватит чтоб все награды отобразить
проще нажать на пользователя и посмотреть все его награды
avatar
Вам в голову не приходило, что наград, например, может быть не много?
avatar
а можно и проще даже при большом количестве, например последние 3 и ссылка еще…
avatar
лишний геморой в пустоту
один клик мышкой не нажать чтоб все посмотреть палец прям атрофируется
avatar
по такой логике многое можно выбросить, что в интернете, что в реальной жизни.
avatar
И зачем тогда плагин этот, если всю инфу можно в профиле посмотреть? Думайте, прежде, чем писать.
Все поля, которые необходимо выводить в попапе можно добавить в конфиг, к примеру.
avatar
не этот плагин супер клевый и я в нем нечего кроме +1 и -1 видеть не хотел бы)
так что серег так держать ))
avatar
подключить можно легко, но:
окошко маленькое и оно громоздко будет выглядеть. и стили уже нужно будет править, так что здесь по-быстрому не получится.
avatar
Что-то мне это напоминает…
avatar
отличный плагин
avatar
только собрался на bootstrap делать popup для страницы «Люди». Наверно все равно сделаю))
avatar
Совершенно не работает для логинов с поддержкой кирилицы.
avatar
а это не стандартная фича ядра ЛС.
её ясно что не тестировали.
avatar
Отлично работает, хороший плагин и нужный, так держать.
  • tor
  • +1
avatar
Если кому-то нужно, чтобы в всплывающем окошке выводился еще статус «онлайн» / «оффлайн» для пользователя, то можно реализовать так:

В файле /plugins/popupinfo/templates/skin/default/getuserinfo.tpl найти кусок кода:

        {if $oUser->getProfileName()}
          <h3>{$oUser->getProfileName()|escape:'html'}</h3>
        {else}
          <h3>{$oUser->getLogin()}</h3>
        {/if}
и заменить на:

        {if $oUser->getProfileName()}
          <h3 style="display:inline-block;">{$oUser->getProfileName()|escape:'html'}</h3>
		{assign var="oSession" value=$oUser->getSession()}
		{if (time() - strtotime($oSession->getDateLast()))<900}
			<span style="font-size: 10px;margin-top: 1px;background: #268D0F;color: white;padding: 0 4px 1px;" title="{$aLang.denis_last_activity}: {date_format date=$oSession->getDateLast() hours_back="12" minutes_back="60" now="60" day="day H:i" format="d F Y, H:i"}">{$aLang.denis_status_online}</span>
		{else}
			<span style="font-size: 10px;margin-top: 1px;background: #DDD;color: white;padding: 0 4px 1px;" title="{$aLang.denis_last_activity}: {date_format date=$oSession->getDateLast() hours_back="12" minutes_back="60" now="60" day="day H:i" format="d F Y, H:i"}">{$aLang.denis_status_offline}</span>
		{/if}
        {else}
          <h3 style="display:inline-block;">{$oUser->getLogin()}</h3>
		{assign var="oSession" value=$oUser->getSession()}
		{if (time() - strtotime($oSession->getDateLast()))<900}
			<span style="font-size: 10px;margin-top: 1px;background: #268D0F;color: white;padding: 0 4px 1px;" title="{$aLang.denis_last_activity}: {date_format date=$oSession->getDateLast() hours_back="12" minutes_back="60" now="60" day="day H:i" format="d F Y, H:i"}">{$aLang.denis_status_online}</span>
		{else}
		<span style="font-size: 10px;margin-top: 1px;background: #DDD;color: white;padding: 0 4px 1px;" title="{$aLang.denis_last_activity}: {date_format date=$oSession->getDateLast() hours_back="12" minutes_back="60" now="60" day="day H:i" format="d F Y, H:i"}">{$aLang.denis_status_offline}</span>
		{/if}
        {/if}
avatar
Если что — по мотивам этого хака (там подробнее о том, как выводить статус).
avatar
избыточность кода не пугает?)
ведь можно так:

<h3 style="display:inline-block;">
        {if $oUser->getProfileName()}
          {$oUser->getProfileName()|escape:'html'}
        {else}
          {$oUser->getLogin()}
        {/if}
</h3>
                {assign var="oSession" value=$oUser->getSession()}
                {if (time() - strtotime($oSession->getDateLast()))<900}
                        <span style="font-size: 10px;margin-top: 1px;background: #268D0F;color: white;padding: 0 4px 1px;" title="{$aLang.denis_last_activity}: {date_format date=$oSession->getDateLast() hours_back="12" minutes_back="60" now="60" day="day H:i" format="d F Y, H:i"}">{$aLang.denis_status_online}</span>
                {else}
                        <span style="font-size: 10px;margin-top: 1px;background: #DDD;color: white;padding: 0 4px 1px;" title="{$aLang.denis_last_activity}: {date_format date=$oSession->getDateLast() hours_back="12" minutes_back="60" now="60" day="day H:i" format="d F Y, H:i"}">{$aLang.denis_status_offline}</span>
                {/if}


avatar
Да, прошу прощения, так лучше)
avatar
avatar
Очень удобно, особенно, что учитывается пол пользователя и не занимает лишнего места в попап окне.
avatar
попробовал использовать такой код в topic_topic.tpl, выдает ошибку:
Fatal error: Call to a member function getDateLast() on a non-object in Z:\home\blue05.ru\www\templates\compiled\blue05\bd04edd7fc2ea8d3f5190d3bc2225a90269c6377.file.topic_topic.tpl.php on line 40
avatar
Почему в topic_topic.tpl? здесь говорилось о плагине. Если в связке с плагином, то статус отображается и при просмотре топика. Если же просто использовать — то в топике статус не будет отображаться, т.к. там для пользователя не подтягиваются все данные (и сессии как раз не входят в число данных, которые подтягиваются).
avatar
я просто подумал, что этот код можно без плагина использовать.

но эти сессии можно подтянуть?
avatar
где то я видел вроде как это делается…
avatar
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.