/** * @param Object\ClassDefinition $class * @param bool $query * @return string */ public function getTableName(Object\ClassDefinition $class, $query = false) { if ($query) { return "object_brick_query_" . $this->model->getKey() . "_" . $class->getId(); } else { return "object_brick_store_" . $this->model->getKey() . "_" . $class->getId(); } }
/** Determines the custom layout definition (if necessary) for the given class * @param ClassDefinition $class * @param int $objectId * @return array layout */ public static function getCustomLayoutDefinitionForGridColumnConfig(ClassDefinition $class, $objectId) { $layoutDefinitions = $class->getLayoutDefinitions(); $result = array("layoutDefinition" => $layoutDefinitions); if (!$objectId) { return $result; } $user = AdminTool::getCurrentUser(); if ($user->isAdmin()) { return $result; } $mergedFieldDefinition = self::getCustomGridFieldDefinitions($class->getId(), $objectId); if (is_array($mergedFieldDefinition)) { if ($mergedFieldDefinition["localizedfields"]) { $childs = $mergedFieldDefinition["localizedfields"]->getFieldDefinitions(); if (is_array($childs)) { foreach ($childs as $locKey => $locValue) { $mergedFieldDefinition[$locKey] = $locValue; } } } self::doFilterCustomGridFieldDefinitions($layoutDefinitions, $mergedFieldDefinition); $result["layoutDefinition"] = $layoutDefinitions; $result["fieldDefinition"] = $mergedFieldDefinition; } return $result; }
/** * Update the class name in all object * * @return void */ public function updateClassNameInObjects($newName) { $this->db->update("objects", ["o_className" => $newName], $this->db->quoteInto("o_classId = ?", $this->model->getId())); $this->db->update("object_query_" . $this->model->getId(), ["oo_className" => $newName]); }
/** * @param Object\ClassDefinition $class * @return string */ public function getTableName(Object\ClassDefinition $class) { return "object_collection_" . $this->model->getKey() . "_" . $class->getId(); }