19 'upper' => FunctionUpper::class,
20 'lower' => FunctionLower::class,
21 'translit' => FunctionTranslit::class,
22 'concat' => FunctionConcat::class,
23 'limit' => FunctionLimit::class,
24 'contrast' => FunctionContrast::class,
25 'min' => FunctionMin::class,
26 'max' => FunctionMax::class,
27 'distinct' => FunctionDistinct::class,
28 'ucfirst' => FunctionUcfirst::class,
29 'ucwords' => FunctionUcwords::class,
30 'striptags' => FunctionStripTags::class,
42 public static function createInstance($functionName,
$data =
null)
44 if (!is_string($functionName))
48 if (isset(self::$defaultFunctionMap[$functionName]))
51 $functionClass = self::$defaultFunctionMap[$functionName];
52 return new $functionClass(
$data);
54 elseif (isset(self::$functionMap[$functionName]))
57 $functionClass = self::$functionMap[$functionName];
58 return new $functionClass(
$data);
62 $event = new \Bitrix\Main\Event(
"iblock",
"OnTemplateGetFunctionClass",
array($functionName));
66 foreach(
$event->getResults() as $evenResult)
68 if($evenResult->getType() == \
Bitrix\
Main\EventResult::SUCCESS)
70 $functionClass = $evenResult->getParameters();
71 if (is_string($functionClass) && class_exists($functionClass))
73 self::$functionMap[$functionName] = $functionClass;
79 if (isset(self::$functionMap[$functionName]))
81 $functionClass = self::$functionMap[$functionName];
82 return new $functionClass(
$data);
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)