• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/discountcouponsmanagerbase.php
  • Класс: BitrixSaleDiscountCouponsManagerBase
  • Вызов: DiscountCouponsManagerBase::getEnteredCoupon
static function getEnteredCoupon($coupon, $clearData = false)
{
	if (!self::$init)
		self::init();
	$result = false;
	if (self::$useMode == self::MODE_SYSTEM || !self::isSuccess())
		return $result;

	$clearData = ($clearData === true);
	$coupon = trim((string)$coupon);
	if ($coupon === '')
		return $result;
	if (!isset(self::$coupons[$coupon]))
	{
		$couponData = self::getData($coupon);
		if (isset(self::$coupons[$couponData['COUPON']]))
			$result = self::$coupons[$couponData['COUPON']];
	}
	else
	{
		$result = self::$coupons[$coupon];
	}
	if (!empty($result))
	{
		if ($result['MODE'] == self::COUPON_MODE_FULL)
		{
			$result['USER_INFO'] = $result['SYSTEM_DATA'];
			unset($result['SYSTEM_DATA']);
		}
		if ($clearData)
		{
			foreach (self::$clearFields as $fieldName)
				unset($result[$fieldName]);
			unset($fieldName);
			foreach (self::$timeFields as $fieldName)
			{
				if (isset($result[$fieldName]) && $result[$fieldName] instanceof MainTypeDateTime)
				{
					/** @noinspection PhpUndefinedMethodInspection */
					$result[$fieldName] = $result[$fieldName]->getTimestamp();
				}
			}
			unset($fieldName);

			if (!empty($result['USER_INFO']))
			{
				foreach (self::$timeFields as $fieldName)
				{
					if (isset($result['USER_INFO'][$fieldName]) && $result['USER_INFO'][$fieldName] instanceof MainTypeDateTime)
					{
						/** @noinspection PhpUndefinedMethodInspection */
						$result['USER_INFO'][$fieldName] = $result['USER_INFO'][$fieldName]->getTimestamp();
					}
				}
				unset($fieldName);
			}
		}
	}
	return $result;
}