• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/data/cache.php
  • Класс: BitrixMainDataCache
  • Вызов: Cache::shouldClearCache
static function shouldClearCache()
{
	global $USER;

	$application = MainApplication::getInstance();

	if (!$application->isInitialized())
	{
		return false;
	}

	$kernelSession = $application->getKernelSession();

	if (isset(static::$clearCacheSession) || isset(static::$clearCache))
	{
		if ($USER instanceof CUser && $USER->CanDoOperation('cache_control'))
		{
			if (isset(static::$clearCacheSession))
			{
				if (static::$clearCacheSession === true)
				{
					$kernelSession['SESS_CLEAR_CACHE'] = 'Y';
				}
				else
				{
					unset($kernelSession['SESS_CLEAR_CACHE']);
				}
			}

			if (isset(static::$clearCache) && (static::$clearCache === true))
			{
				return true;
			}
		}
	}

	if (isset($kernelSession['SESS_CLEAR_CACHE']) && $kernelSession['SESS_CLEAR_CACHE'] === 'Y')
	{
		return true;
	}

	return false;
}