Jump to content

Извлечение переменных

Featured Replies

Posted
comment_193172

Привет!

Кто может мне помочь, чтобы извлечь переменную из виджета.

Из картинки будет понятнее:

Я хочу извлечь только часть с количеством участников онлайн на форуме, чтобы я мог интегрировать его в любую часть форума, точнее в globalTemplate.

Спасибо!

2023-05-08_20-57-12.png

comment_193173

		/* Init */
		$members     = array();
		$anonymous   = 0;
		
		$users = \IPS\Session\Store::i()->getOnlineUsers( \IPS\Session\Store::ONLINE_MEMBERS, 'desc', NULL, NULL, TRUE );
		foreach( $users as $row )
		{
			switch ( $row['login_type'] )
			{
				/* Not-anonymous Member */
				case \IPS\Session\Front::LOGIN_TYPE_MEMBER:
					if ( $row['member_name'] )
					{
						$members[ $row['member_id'] ] = $row;
					}
					break;
					
				/* Anonymous member */
				case \IPS\Session\Front::LOGIN_TYPE_ANONYMOUS:
					$anonymous += 1;
					break;
			}
		}
		$memberCount = \count( $members );
		echo $memberCount; //Вывод числа онлайн пользователей

А уж получится ли у вас запихнуть это в globalTemplate, решайте сами, насколько это рационально

  • Author
comment_193174
5 минут назад, HooLIGUN сказал:

		/* Init */
		$members     = array();
		$anonymous   = 0;
		
		$users = \IPS\Session\Store::i()->getOnlineUsers( \IPS\Session\Store::ONLINE_MEMBERS, 'desc', NULL, NULL, TRUE );
		foreach( $users as $row )
		{
			switch ( $row['login_type'] )
			{
				/* Not-anonymous Member */
				case \IPS\Session\Front::LOGIN_TYPE_MEMBER:
					if ( $row['member_name'] )
					{
						$members[ $row['member_id'] ] = $row;
					}
					break;
					
				/* Anonymous member */
				case \IPS\Session\Front::LOGIN_TYPE_ANONYMOUS:
					$anonymous += 1;
					break;
			}
		}
		$memberCount = \count( $members );
		echo $memberCount; //Вывод числа онлайн пользователей

А уж получится ли у вас запихнуть это в globalTemplate, решайте сами, насколько это рационально

Проблема в том, что я не знаю, как запихнуть это в globalTemplate

  • Author
comment_193319
В 08.05.2023 в 21:22, HooLIGUN сказал:

		/* Init */
		$members     = array();
		$anonymous   = 0;
		
		$users = \IPS\Session\Store::i()->getOnlineUsers( \IPS\Session\Store::ONLINE_MEMBERS, 'desc', NULL, NULL, TRUE );
		foreach( $users as $row )
		{
			switch ( $row['login_type'] )
			{
				/* Not-anonymous Member */
				case \IPS\Session\Front::LOGIN_TYPE_MEMBER:
					if ( $row['member_name'] )
					{
						$members[ $row['member_id'] ] = $row;
					}
					break;
					
				/* Anonymous member */
				case \IPS\Session\Front::LOGIN_TYPE_ANONYMOUS:
					$anonymous += 1;
					break;
			}
		}
		$memberCount = \count( $members );
		echo $memberCount; //Вывод числа онлайн пользователей

А уж получится ли у вас запихнуть это в globalTemplate, решайте сами, насколько это рационально

кто-нибудь знает, как заставить этот код работать через javascript ?

comment_193321
1 минуту назад, Exception сказал:

причем тут js ?

Видимо, оказалось не рационально или сложно вывести это в основной шаблон. А через JS проще.

comment_193322
13 минут назад, edmsl сказал:

Видимо, оказалось не рационально или сложно вывести это в основной шаблон. А через JS проще.

не вижу тут проблемы

{{$members = \IPS\Session\Store::i()->getOnlineUsers( \IPS\Session\Store::ONLINE_MEMBERS ); $memberCount = $members ? \count( $members ) : 0;}}
{lang="block_whos_online_info_members" pluralize="$memberCount"}

 

Edited by Exception

comment_193331
2 часа назад, Exception сказал:

не вижу тут проблемы

{{$members = \IPS\Session\Store::i()->getOnlineUsers( \IPS\Session\Store::ONLINE_MEMBERS ); $memberCount = $members ? \count( $members ) : 0;}}
{lang="block_whos_online_info_members" pluralize="$memberCount"}

 

когда знаешь...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.