private function _createSchema(array $parameters) { $res = array(); $i = 1; $parent = isset($parameters['parent']) ? $parameters['parent'] : false; while (isset($parameters['level' . $i . 'Field'])) { $field = $parameters['level' . $i . 'Field']; if (!empty($parent)) { $property = SJB_ListingManager::getPropertyByParentID($parent, $field); $field = $parent . '_' . $field; } else { $property = SJB_ListingManager::getPropertyByPropertyName($field); } if (empty($property)) { return $res; } $type = $property->getType(); $treeLevel = $this->_getTreeLevel($type, $field); $res[] = array('field' => $field, 'treeLevel' => $treeLevel, 'homepage' => isset($parameters['homepage']) ? $parameters['homepage'] : 0, 'type' => $type, 'sid' => $property->getSID(), 'parent' => $parent); $i++; } return $res; }