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 Кб
Скачали:
217 раз

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

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

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

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

Плагин для подписки на новые проекты

Regpay

Вознаграждение на счет за регистрацию на сайте

Яндекс.Деньги

Плагин для приема оплаты через платежную систему Яндекс.Деньги.

VizitedProducts

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

Free-kassa

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

SmsProjects

SMS-рассылка новых проектов




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

Простой виджет для показа всех пользователей находящихся в данный момент на сайте.

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

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

Free-kassa

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

PayMarketBold

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

JivoSite

Онлайн-консультант для вашего сайта

Guestprojects

Создание проекта без предварительной авторизации

Affiliate

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

Modified Loginza Freelance

Модифицированный плагин Loginza

Uprojects

Другие проекты заказчика