/** * Set values for fields type iblock_element. */ protected function setElementValue() { $iblockList = $this->getListByType('iblock_element'); $queryBuilder = new Entity\Query(Iblock\ElementTable::getEntity()); $queryBuilder->setSelect(array('ID', 'NAME', 'IBLOCK_ID', 'IBLOCK_SECTION_ID'))->setFilter(array('IBLOCK_ID' => $iblockList))->setOrder(array()); $elementResult = $queryBuilder->exec(); while ($element = $elementResult->fetch()) { foreach ($this->highLoadBlockFields as &$field) { if ($field['USER_TYPE_ID'] != 'iblock_element') { continue; } if ($field['SETTINGS']['IBLOCK_ID'] == $element['IBLOCK_ID']) { $field['VALUE_LIST'][] = $element; } } } }
/** * Set values for property with type E(link to element). */ protected function setElementValue() { $iblockList = $this->getListByType('E'); $queryBuilder = new Entity\Query(Iblock\ElementTable::getEntity()); $queryBuilder->setSelect(array('ID', 'NAME', 'IBLOCK_ID', 'IBLOCK_SECTION_ID'))->setFilter(array('IBLOCK_ID' => $iblockList))->setOrder(array()); $elementResult = $queryBuilder->exec(); while ($element = $elementResult->fetch()) { foreach ($this->iblockProperty as &$field) { if ($field['PROPERTY_TYPE'] != 'E') { continue; } if ($field['LINK_IBLOCK_ID'] == $element['IBLOCK_ID']) { $field['VALUE_LIST'][] = $element; } } } }
protected static function getIblockFieldList() { $fieldCodeList = array('NAME', 'CODE', 'PREVIEW_TEXT', 'DETAIL_TEXT'); $resultList = array(); $entity = ElementTable::getEntity(); foreach ($fieldCodeList as $fieldCode) { $field = $entity->getField($fieldCode); $resultList[] = array('ID' => $fieldCode, 'NAME' => $field->getTitle()); } return $resultList; }
/** * Gets the value of element * * @param array $id * @return array */ protected function getValueElement($id) { if (sizeof($id) <= 0) { return array(); } $result = array(); $queryBuilder = new Entity\Query(Iblock\ElementTable::getEntity()); $queryBuilder->setSelect(array('*'))->setFilter(array('ID' => $id)); $elementResult = $queryBuilder->exec(); while ($element = $elementResult->fetch()) { $result[$element['ID']] = $element; } return $result; }