В общем то понадобилось мне вывести дополнительное свойство в XSL шаблоне ИС. Путем долгих дум, был написан такой код. Скорее всего он кривой, но он работает.
Код ТДС
if ($Informationsystem_Controller_Show->group == 0)
{
$oStructure = Core_Entity::factory('Informationsystem', Core_Array::get(Core_Page::instance()->libParams, 'informationsystemId'));
$oStructure->queryBuilder()
->where('structure_id');
$oPrId = Core_Array::get(Core_Page::instance()->libParams, 'property_id');
$oProperty = Core_Entity::factory('Property_Value_String');
//SELECT * FROM `property_value_strings` WHERE `property_id` = $oPrId;
$oProperty->queryBuilder()
->where('property_id', '=', $oPrId);
$aProperty = $oProperty->findAll(FALSE);
foreach ($aProperty as $oProperty)
{
$Informationsystem_Controller_Show->addEntity(
Core::factory('Core_Xml_Entity')
->name('h1_title')->value($oProperty->value)
);
}
Код XSL шаблона:
......
<xsl:variable name="h1-title" select="/informationsystem/h1_title"/>
<h1 class="tob-sub-title text-color-primary d-block">
<xsl:value-of disable-output-escaping="yes" select="$h1-title"/>
</h1>
Все бы ничего, вроде работает и даже показывает value из доп свойства, но.....
Но не то value которое надо. Подскажите люди добрые, как привязать к structure_id из таблицы informationsystems?
Мне хочется, что бы доп. свойства показывались в тех ИС в которых надо, а не как сейчас, последние добавленное свойство отображается везде.
Я голову себе сломал.