Похожие шаблоны

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


рейтинг шаблона-10
Бесплатно

Vue.js настолько хорош что не нуждается в представлении. С этим плагином вы с...


рейтинг шаблона-10
Бесплатно

Плагин onlinestatus

fdf06_Onlinestatus.png
рейтинг шаблона-10

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

  1. В настройках плагина укажите Timeout в секундах. По истечении этого времени пользователь получает статус "Отошел". По-умолчанию установлено значение 300 секунд (то есть 5 минут).
  2. Откройте шаблон header.tpl в вашей теме и добавьте до тэга </head> следующий код:
<!-- IF {PHP.usr.id} -->
<script>
    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 -->
 

На странице пользователя (шаблон 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' -->
отошел
<!-- ENDIF -->
<!-- IF {USERS_DETAILS_ONLINESTATUS} == 'online' -->
на сайте
<!-- ENDIF -->
<!-- IF {USERS_DETAILS_ONLINESTATUS} == 'offline' -->
оффлайн
<!-- ENDIF -->
<!-- ELSE -->
на сайте
<!-- ENDIF -->

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

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

Плагин onlinestatus

Комментарии 0

Пользовательское соглашение

Комментарии отсутствуют

Добавление комментариев доступно только зарегистрированным пользователям Зарегистрироваться
Up