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/sender/lib/internals/commonajax/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/sender/lib/internals/commonajax/checker.php
<?php
/**
 * Bitrix Framework
 * @package bitrix
 * @subpackage sender
 * @copyright 2001-2012 Bitrix
 */
namespace Bitrix\Sender\Internals\CommonAjax;

use Bitrix\Main\Access\Event\EventDictionary;
use Bitrix\Main\Error;
use Bitrix\Main\Localization\Loc;
use Bitrix\Main\Result;
use Bitrix\Sender\Security;

Loc::loadMessages(__FILE__);

/**
 * Class Checker
 * @package Bitrix\Sender\Internals\CommonAjax
 */
class Checker
{
	/**
	 * Get read permission checker.
	 *
	 * @return array
	 */
	public static function getReadPermissionChecker()
	{
		return array(__CLASS__, 'onReadPermissionCheck');
	}

	/**
	 * On read permission check.
	 *
	 * @param Result $result Result.
	 * @return void
	 */
	public static function onReadPermissionCheck(Result $result)
	{
		if (Security\User::current()->canView())
		{
			return;
		}

		$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_READ_ACCESS')));
	}

	/**
	 * Get write permission checker.
	 *
	 * @return array
	 */
	public static function getWritePermissionChecker()
	{
		return array(__CLASS__, 'onWritePermissionCheck');
	}

	/**
	 * On write permission check.
	 *
	 * @param Result $result Result.
	 * @return void
	 */
	public static function onWritePermissionCheck(Result $result)
	{
		if (Security\User::current()->canEdit())
		{
			return;
		}

		$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
	}

	/**
	 * Get permission checker for viewing Letter.
	 *
	 * @return callable
	 */
	public static function getViewLetterPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canViewLetters())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_READ_ACCESS')));
		};
	}

	/**
	 * Get permission checker for modifying Letter.
	 *
	 * @return callable
	 */
	public static function getModifyLetterPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canModifyLetters())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}

	/**
	 * Get permission checker for modifying Abuse.
	 *
	 * @return callable
	 */
	public static function getModifyAbusePermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canModifyAbuses())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}

	/**
	 * Get permission checker for viewing Segment.
	 *
	 * @return callable
	 */
	public static function getViewSegmentPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canViewSegments())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_READ_ACCESS')));
		};
	}

	/**
	 * Get permission checker for selecting Segment.
	 *
	 * @return callable
	 */
	public static function getSelectSegmentPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canViewSegments())
			{
				return;
			}
			if (Security\Access::getInstance()->canViewLetters())
			{
				return;
			}
			if (Security\Access::getInstance()->canViewAds())
			{
				return;
			}
			if (Security\Access::getInstance()->canViewRc())
			{
				return;
			}
			if (Security\Access::getInstance()->canModifySettings())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_READ_ACCESS')));
		};
	}

	/**
	 * Get permission checker for modifying Segment.
	 *
	 * @return callable
	 */
	public static function getModifySegmentPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canModifySegments())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}

	/**
	 * Get permission checker for viewing RC.
	 *
	 * @return callable
	 */
	public static function getViewRcPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canViewRc())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_READ_ACCESS')));
		};
	}

	/**
	 * Get permission checker for modifying RC.
	 *
	 * @return callable
	 */
	public static function getModifyRcPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canModifyRc())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}

	/**
	 * Get permission checker for viewing RC.
	 *
	 * @return callable
	 */
	public static function getViewBlacklistPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canViewBlacklist())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_READ_ACCESS')));
		};
	}

	/**
	 * Get permission checker for modifying RC.
	 *
	 * @return callable
	 */
	public static function getModifyBlacklistPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canModifyBlacklist())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}

	/**
	 * Get permission checker for viewing ad.
	 *
	 * @return callable
	 */
	public static function getViewAdPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canViewAds())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_READ_ACCESS')));
		};
	}

	/**
	 * Get permission checker for modifying ad.
	 *
	 * @return callable
	 */
	public static function getModifyAdPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canModifyAds())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}

	/**
	 * Get permission checker for viewing recipients.
	 *
	 * @return callable
	 */
	public static function getViewRecipientsPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canViewSegments())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_READ_ACCESS')));
		};
	}

	/**
	 * Get permission checker for modifying recipients.
	 *
	 * @return callable
	 */
	public static function getModifyRecipientsPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canModifySegments())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}

	/**
	 * Get permission checker for modifying settings.
	 *
	 * @return callable
	 */
	public static function getModifySettingsPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canModifySettings())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}

	/**
	 *
	 * @return callable
	 */
	public static function getPauseStopStartLetterPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canPauseStartStopLetter())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}

	/**
	 *
	 * @return callable
	 */
	public static function getPauseStopStartAdsPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canPauseStartStopAds())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}

	/**
	 *
	 * @return callable
	 */
	public static function getPauseStopStartRcPermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canPauseStartStopRc())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}

	/**
	 *
	 * @return callable
	 */
	public static function getModifyTemplatePermissionChecker()
	{
		return function (Result $result)
		{
			if (Security\Access::getInstance()->canModifyTemplates())
			{
				return;
			}

			$result->addError(new Error(Loc::getMessage('SENDER_COMMON_AJAX_CHECKER_ERROR_NO_WRITE_ACCESS')));
		};
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit