10 (3)
0

Onlinestatus



Разработчик:
Дата публикации:
15.06.2016
Версия:
1.0.1
Фреймворк:
Cotonti Siena

Плагин отображает статус авторизованного пользователя в зависимости от его активности на сайте. Если пользователь не производит никаких действий на сайте, либо вкладка с сайтом в браузере скрыта, то у пользователя будет выводиться статус "Отошел". Как только пользователь откроет владку, либо начнет двигать мышкой при открытом сайте, статус сразу же изменится в значение "На сайте". Если же пользователь закрыл вкладку, то ему автоматически присваивается статус "Оффлайн".

 

Инструкция по установке:

  1. Распакуйте исходники в папку plugins вашего сайта.
  2. Зайдите в панель администратора и установите данный плагин.
  3. В настройках плагина укажите Timeout в секундах. По истечении этого времени пользователь получает статус "Отошел". По-умолчанию установлено значение 300 секунд (то есть 5 минут).
  4. Откройте шаблон header.tpl в вашей теме и добавьте до тэга </head> следующий код:
    <!-- IF {PHP.usr.id} -->
    <script type="text/javascript">
    
        ifvisible.setIdleDuration({PHP.cfg.plugin.onlinestatus.timeout});
    
        ifvisible.idle(function(){
            $.ajax({
    			url : 'index.php?r=onlinestatus&a=away',
    			method: 'get',
    	    	cache : false
    		});
        });
    
        ifvisible.wakeup(function(){
            $.ajax({
    			url : 'index.php?r=onlinestatus&a=online',
    			method: 'get',
    	    	cache : false
    		});
        });
    
        window.onbeforeunload = function(e) {
            $.ajax({
    			url : 'index.php?r=onlinestatus&a=offline',
    			method: 'get',
    	    	cache : false
    		});
    	};
    
    	<!-- IF {PHP.usr.profile.user_onlinestatus} == 'offline' -->
    	$(function(){
            $.ajax({
    			url : 'index.php?r=onlinestatus&a=online',
    			method: 'get',
    	    	cache : false
    		});
    	});
    	<!-- ENDIF -->
    
    </script>
    <!-- ENDIF -->

     

  5. На странице пользователя (шаблон users.details.tpl) добавьте соответствующие тэги: Если нужно вывести статус где-нибудь в других местах, где выводится информация о пользователе, то добавляйте тэг в следующем формате: {XXXXX_ONLINESTATUS_LOCATION}, в зависимости от формата тэгов в нужном месте сайта. Например для списка пользователей (шаблон users.tpl) тэг статуса будет выглядеть так: {USERS_ROW_ONLINESTATUS_LOCATION}

Пример вывода статуса на странице пользователя (users.details.tpl) со стилями:

<!-- IF {PHP.usr.id} != {USERS_DETAILS_ID} -->
<!-- IF {USERS_DETAILS_ONLINESTATUS} == 'away' -->
<span class='label label-warning'>отошел</span>
<!-- ENDIF -->
<!-- IF {USERS_DETAILS_ONLINESTATUS} == 'online' -->
<span class='label label-success'>на сайте</span>
<!-- ENDIF -->
<!-- IF {USERS_DETAILS_ONLINESTATUS} == 'offline' -->
<span class='label label-default'>оффлайн</span>
<!-- ENDIF -->
<!-- ELSE -->
<span class='label label-success'>на сайте</span>
<!-- ENDIF -->

Пример вывода статуса в списке пользователей (users.tpl) со стилями:

<!-- IF {PHP.usr.id} != {USERS_ROW_ID} -->
<!-- IF {USERS_ROW_ONLINESTATUS} == 'away' -->
<span class='label label-warning'>отошел</span>
<!-- ENDIF -->
<!-- IF {USERS_ROW_ONLINESTATUS} == 'online' -->
<span class='label label-success'>на сайте</span>
<!-- ENDIF -->
<!-- IF {USERS_ROW_ONLINESTATUS} == 'offline' -->
<span class='label label-default'>оффлайн</span>
<!-- ENDIF -->
<!-- ELSE -->
<span class='label label-success'>на сайте</span>
<!-- ENDIF -->

Скачать

Размер: 8.30 Кб
Скачали:
190 раз

В случае необходимости вы можете заказать установку и настройку данного расширения на вашем сайте.

Отправить заявку

Поддержите автора, если это расширение оказалось полезным для вас.

Поддержать разработку
Другие разработки автора
Masters

Тема для фриланс-биржи на базе css-фреймворка Bootstrap v4.0.0-alpha.2

OfferEditor

Управление предложением

VizitedProducts

Просмотренные товары

RatingsMarket

Star Ratings для Маркета

PayMarketTop

Плагин платного поднятия товара

Простые платежки

Плагин позволяет создавать типовые платежки с фиксированной или свободной ценой.




Рекомендуем также посмотреть
Bstat

Остатки на счетах пользователей

Affiliate

Партнерская программа

GitHub Check

Cледить за обновлениями для установленных расширений

VKpost 0.2

Автоматически постинг страниц модуля Page + Projects(Фриланс-Биржа) на стену Вконтакте

RatingsFolio

Star Ratings для Портфолио

Free-kassa

Платежный плагин Free-kassa.ru

Платежный модуль

Модуль Payments позволяет развернуть на сайте полноценную систему оплаты.

Marketorders

Плагин для оплаты товаров/услуг

CommentsFolio

Комментарии для портфолио