Пример #1
0
 /**
  * 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;
             }
         }
     }
 }
Пример #2
0
 /**
  * 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;
             }
         }
     }
 }
Пример #3
0
 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;
 }