diff --git a/app/modules/tag/TagModule.php b/app/modules/tag/TagModule.php index 09c0eb5..b2f0ffd 100644 --- a/app/modules/tag/TagModule.php +++ b/app/modules/tag/TagModule.php @@ -2,8 +2,6 @@ namespace app\modules\tag; -use itguild\forms\builders\TextInputBuilder; -use itguild\forms\Form; use kernel\Module; use kernel\modules\menu\service\MenuService; use kernel\services\MigrationService; @@ -37,11 +35,4 @@ class TagModule extends Module { $this->menuService->removeItemBySlug("tag"); } - - public function formInputs(): void - { - $input = TextInputBuilder::build("tags", ['class' => 'form-control', 'placeholder' => "Теги"]); - $input->setLabel("Теги"); - $input->create()->render(); - } } \ No newline at end of file diff --git a/app/modules/tag/manifest.json b/app/modules/tag/manifest.json index b164b3e..3967dd6 100644 --- a/app/modules/tag/manifest.json +++ b/app/modules/tag/manifest.json @@ -3,7 +3,6 @@ "version": "0.2", "author": "ITGuild", "slug": "tag", - "type": "additional_property", "description": "Tags module", "app_module_path": "{APP}/modules/{slug}", "module_class": "app\\modules\\tag\\TagModule", diff --git a/kernel/EntityRelation.php b/kernel/EntityRelation.php index 82e1323..e08c202 100644 --- a/kernel/EntityRelation.php +++ b/kernel/EntityRelation.php @@ -53,9 +53,22 @@ class EntityRelation return false; } - public function removeFromEntityRelations(string $entity, string $property) + public function removeFromEntityRelations(string $entity, string $property): bool { + $entity_relations_info = Option::where("key", "entity_relations")->first(); + if ($entity_relations_info) { + $entity_relations = json_decode($entity_relations_info->value, true); + if ($entity_relations[$entity]) { + if ($entity_relations[$entity][$property]) { + unset($entity_relations[$entity][$property]); + $entity_relations_info->value = json_encode($entity_relations, JSON_UNESCAPED_UNICODE); + $entity_relations_info->save(); + return true; + } + } + } + return false; } public function getEntityRelationsBySlug(string $slug) @@ -70,14 +83,15 @@ class EntityRelation return false; } - public function addEntityRelation(array $data): bool + public function addEntityRelation(string $entity, string $property): bool { $entity_relations_info = Option::where("key", "entity_relations")->first(); - if ($entity_relations_info) { $entity_relations = json_decode($entity_relations_info->value, true); - foreach ($data as $entity => $relation) { - $entity_relations[$entity] = $relation; + if (isset($entity_relations[$entity])) { + $entity_relations[$entity][] = $property; + } else { + $entity_relations[$entity] = $property; } $entity_relations_info->value = json_encode($entity_relations, JSON_UNESCAPED_UNICODE); $entity_relations_info->save(); diff --git a/kernel/views/module/index.php b/kernel/views/module/index.php index ed319e6..7ccb464 100644 --- a/kernel/views/module/index.php +++ b/kernel/views/module/index.php @@ -32,7 +32,6 @@ $info_to_table['data'] = $modules_info; $table = new \Itguild\Tables\ListJsonTable(json_encode($info_to_table, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE)); - $table->addAction(function ($row, $url) use ($moduleService) { $slug = $row['slug']; if ($moduleService->isActive($slug)) {