Дополнительные свойства клиента

#
Дополнительные свойства клиента
Не нашел на форуме, из документации по API не понял, пробовал разные варианты - не выходит. Как мне на php грамотно вывести значение одного из дополнительного свойства клиента, а также изменить его. Подскажите, пожалуйста.
#
Re: Дополнительные свойства клиента
Описано здесь https://www.hostcms.ru/documentation/modules/properties/introduction/
пункты "Получение значений дополнительных свойств"  и "Изменение или установка значения дополнительного свойства, если значения не было"
«Не выходи из комнаты, не совершай ошибку…»
#
Re: Дополнительные свойства клиента
Я написал следующее:



   $oProperty = Core_Entity::factory('Property', 130);
   $aPropertyValues = $oProperty->getValues($oSiteuser->id);
   foreach($aPropertyValues as $oPropertyValue)   {
      $user_subscriptionexpiry = htmlspecialchars($oPropertyValue->value);
      echo '<p dir="ltr" class="uk-text-right">'.$user_subscriptionexpiry.'</p>';
   }
   $oPropertyValue = $oProperty->createNewValue($oSiteuser->id);
      
   $oPropertyValue->value = '2022-12-31 00:00:00';
               
   $oPropertyValue->save();



В результате у меня у клиента с текущем ID не изменилось значение дополнительного свойства, а наплодилось (после каждого обращения к странице) после каждого обновления страницы несколько идентичных новых дополнительных свойств с этим же значением. Причем, как я понимаю это не множественные его значения этого свойства, а какие-то дополнительно независимые, которые даже не удалить. Что-то я сделал не то.
#
Re: Дополнительные свойства клиента
Так вы сами же зачем то создаете новое значение  $oPropertyValue = $oProperty->createNewValue($oSiteuser->id);

в ссылке же готовый пример:

// Объект дополнительного свойства с идентификатором 123
$oProperty = Core_Entity::factory('Property', 123);
// Получаем массив всех значений дополнительного свойства 123 для информационного элемента $informationsystem_item_id
$aPropertyValues = $oProperty->getValues($informationsystem_item_id);
// Если нет ни одного значение, то добавляем в массив новое значение
!isset($aPropertyValues[0]) && $aPropertyValues[0] = $oProperty->createNewValue($informationsystem_item_id);
// Устанавливаем значение
$aPropertyValues[0]->value = 'Значение';
// Сохраняем
$aPropertyValues[0]->save();


Только вместо инфо элемента указывайте id пользователя сайта
«Не выходи из комнаты, не совершай ошибку…»
#
Re: Дополнительные свойства клиента
Спасибо, заработало.
Авторизация