uawdijnntqw1x1x1
IP : 3.16.15.52
Hostname : axolotl
Kernel : Linux axolotl 4.9.0-13-amd64 #1 SMP Debian 4.9.228-1 (2020-07-05) x86_64
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,
OS : Linux
PATH:
/
var
/
www
/
axolotl
/
data
/
www
/
samara.axolotls.ru
/
bitrix
/
components
/
..
/
lib
/
functions
/
CAsproItem.php
/
/
<? namespace Aspro\Functions; use Bitrix\Main\Application; use Bitrix\Main\Web\DOM\Document; use Bitrix\Main\Localization\Loc; use Bitrix\Main\Web\DOM\CssParser; use Bitrix\Main\Text\HtmlFilter; use Bitrix\Main\IO\File; use Bitrix\Main\IO\Directory; Loc::loadMessages(__FILE__); \Bitrix\Main\Loader::includeModule('sale'); \Bitrix\Main\Loader::includeModule('catalog'); if(!defined('FUNCTION_MODULE_ID')) define('FUNCTION_MODULE_ID', 'aspro.next'); if(!class_exists("CAsproItem")) { class CAsproItem{ public static function getCurrentPrice($price_field, $arPrice, $bFromPrice = true){ $val = ''; if($bFromPrice) { $format_value = \CCurrencyLang::CurrencyFormat($arPrice[$price_field], $arPrice['CURRENCY'], false); if(strpos($arPrice["PRINT_".$price_field], $format_value) !== false): $val = str_replace($format_value, '<span class="price_value">'.$format_value.'</span><span class="price_currency">', $arPrice["PRINT_".$price_field].'</span>'); else: $val = $arPrice["PRINT_".$price_field]; endif; } else { $format_value_raw = \CCurrencyLang::CurrencyFormat($price_field, $arPrice['CURRENCY']); $format_value = \CCurrencyLang::CurrencyFormat($price_field, $arPrice['CURRENCY'], false); if(strpos($format_value_raw, $format_value) !== false): $val = str_replace($format_value, '<span class="price_value">'.$format_value.'</span><span class="price_currency">', $format_value_raw.'</span>'); else: $val = $format_value_raw; endif; } return $val; } public static function showItemPrices($arParams = array(), $arPrices = array(), $strMeasure = '', &$price_id = 0, $bShort = 'N'){ $price_id = 0; if((is_array($arParams) && $arParams)&& (is_array($arPrices) && $arPrices)) { ob_start(); $sDiscountPrices = \Bitrix\Main\Config\Option::get(FUNCTION_MODULE_ID, 'DISCOUNT_PRICE'); $arDiscountPrices = array(); if($sDiscountPrices) $arDiscountPrices = array_flip(explode(',', $sDiscountPrices)); $iCountPriceGroup = 0; foreach($arPrices as $key => $arPrice) { if($arPrice['CAN_ACCESS']) $iCountPriceGroup++; } foreach($arPrices as $key => $arPrice){?> <?if($arPrice["CAN_ACCESS"]){ if($arPrice["MIN_PRICE"] == "Y"){ $price_id = $arPrice["PRICE_ID"]; }?> <?$arPriceGroup = \CCatalogGroup::GetByID($arPrice["PRICE_ID"]);?> <?if($iCountPriceGroup > 1):?> <div class="price_group <?=$arPriceGroup['XML_ID']?>"><div class="price_name"><?=$arPriceGroup["NAME_LANG"]?></div> <?endif;?> <div class="price_matrix_wrapper <?=($arDiscountPrices ? (isset($arDiscountPrices[$arPriceGroup['ID']]) ? 'strike_block' : '') : '');?>"> <?if($arPrice["VALUE"] > $arPrice["DISCOUNT_VALUE"]){?> <div class="price" data-currency="<?=$arPrice["CURRENCY"];?>" data-value="<?=$arPrice["DISCOUNT_VALUE"];?>" <?=($bMinPrice ? ' itemprop="offers" itemscope itemtype="http://schema.org/Offer"' : '')?>> <?if($bMinPrice):?> <meta itemprop="price" content="<?=($arPrice['DISCOUNT_VALUE'] ? $arPrice['DISCOUNT_VALUE'] : $arPrice['VALUE'])?>" /> <meta itemprop="priceCurrency" content="<?=$arPrice['CURRENCY']?>" /> <link itemprop="availability" href="http://schema.org/<?=($arPrice['CAN_BUY'] ? 'InStock' : 'OutOfStock')?>" /> <?endif;?> <?if(strlen($arPrice["PRINT_DISCOUNT_VALUE"])):?> <span class="values_wrapper"> <?=self::getCurrentPrice("DISCOUNT_VALUE", $arPrice);?> </span><?if (($arParams["SHOW_MEASURE"]=="Y") && $strMeasure):?><span class="price_measure">/<?=$strMeasure?></span><?endif;?> <?endif;?> </div> <?if($arParams["SHOW_OLD_PRICE"]=="Y"):?> <div class="price discount" data-currency="<?=$arPrice["CURRENCY"];?>" data-value="<?=$arPrice["VALUE"];?>"> <span class="values_wrapper"><?=self::getCurrentPrice("VALUE", $arPrice);?></span> </div> <?endif;?> <?if($arParams["SHOW_DISCOUNT_PERCENT"]=="Y"){?> <div class="sale_block"> <div class="sale_wrapper"> <?if($bShort == 'Y'):?> <span class="title"><?=GetMessage("CATALOG_ECONOMY");?></span> <div class="text"><span class="values_wrapper"><?=self::getCurrentPrice("DISCOUNT_DIFF", $arPrice);?></span></div> <?else:?> <? if(isset($arPrice["DISCOUNT_DIFF_PERCENT"])) $percent = $arPrice["DISCOUNT_DIFF_PERCENT"]; else $percent=round(($arPrice["DISCOUNT_DIFF"]/$arPrice["VALUE"])*100, 2);?> <?if($percent && $percent<100){?> <div class="value">-<span><?=$percent;?></span>%</div> <?}?> <div class="text"><?=GetMessage("CATALOG_ECONOMY");?> <span class="values_wrapper"><?=self::getCurrentPrice("DISCOUNT_DIFF", $arPrice);?></span></div> <?endif;?> <div class="clearfix"></div> </div> </div> <?}?> <?}else{?> <div class="price" data-currency="<?=$arPrice["CURRENCY"];?>" data-value="<?=$arPrice["VALUE"];?>"> <?if(strlen($arPrice["PRINT_VALUE"])):?> <span class="values_wrapper"><?=self::getCurrentPrice("VALUE", $arPrice);?></span><?if (($arParams["SHOW_MEASURE"]=="Y") && $strMeasure):?><span class="price_measure">/<?=$strMeasure?></span><?endif;?> <?endif;?> </div> <?}?> </div> <?if($iCountPriceGroup > 1):?> </div> <?endif;?> <?}?> <?} $html = ob_get_contents(); ob_end_clean(); foreach(GetModuleEvents(FUNCTION_MODULE_ID, 'OnAsproItemShowItemPrices', true) as $arEvent) // event for manipulation item prices ExecuteModuleEventEx($arEvent, array($arParams, $arPrices, $strMeasure, &$price_id, $bShort, &$html)); echo $html; } } } }?>
/var/www/axolotl/data/www/samara.axolotls.ru/bitrix/components/../lib/functions/CAsproItem.php