Server IP : 85.193.89.191 / Your IP : 18.223.206.215 Web Server : Apache System : Linux 956367-cx40159.tmweb.ru 3.10.0-1160.105.1.el7.x86_64 #1 SMP Thu Dec 7 15:39:45 UTC 2023 x86_64 User : bitrix ( 600) PHP Version : 8.1.27 Disable Function : NONE MySQL : OFF | cURL : OFF | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /home/bitrix/www/bitrix/modules/calendar/lib/ical/basic/ |
Upload File : |
<?php namespace Bitrix\Calendar\ICal\Basic; class PropertyCreator { private $property; public function __construct(PropertyType $property) { $this->property = $property; } public function build(): array { $parameters = $this->resolveParameters(); $value = $this->property->getValue(); return array_map(function (string $name) use ($value, $parameters) { if ($value === '' && $parameters === '') { return "{$name}:"; } if ($value === '') { if ($name === 'RRULE') { $parameters = substr_replace($parameters, ':',0, 1); } return "{$name}{$parameters}"; } return "{$name}{$parameters}:{$value}"; }, $this->property->getNames()); } private function resolveParameters(): string { $parameters = ''; foreach ($this->property->getParameters() as $parameter) { $name = $parameter->getName(); $value = $parameter->getValue(); $parameters .= ";{$name}={$value}"; } return $parameters; } }