6 Commits

Author SHA1 Message Date
chaim 412b1e643b release: v1.1.3 2026-03-29 20:01:24 +00:00
chaim eed25a87b2 fix: skip entity types whose module is not installed during import
Prevents 500 error when importing a backup that contains entities
(e.g. SignatureRequest) from modules not installed on the target instance.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 20:01:20 +00:00
chaim 838ef5c2c6 release: v1.1.2 2026-03-29 19:51:08 +00:00
chaim 319e2df45e fix: move admin panel item to customDev section
Move Data Migration from system section to unified "Custom Development"
section shared by all custom extensions.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 19:50:59 +00:00
chaim dc2d6c57fe release: v1.1.1 2026-03-29 19:48:11 +00:00
chaim 4c3ec67a7d fix: use __APPEND__ in adminPanel to not overwrite system items
Without __APPEND__, the itemList replaced all existing system admin
panel entries instead of adding to them.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 19:48:07 +00:00
4 changed files with 24 additions and 5 deletions
@@ -1,6 +1,7 @@
{
"labels": {
"Data Migration": "העברת נתונים"
"Data Migration": "העברת נתונים",
"Custom Development": "פיתוח עצמאי"
},
"descriptions": {
"dataMigration": "ייצוא וייבוא נתוני תיקים בין מערכות EspoCRM"
@@ -1,14 +1,17 @@
{
"system": {
"customDev": {
"label": "Custom Development",
"itemList": [
"__APPEND__",
{
"url": "#Admin/dataMigration",
"label": "Data Migration",
"iconClass": "fas fa-exchange-alt",
"description": "dataMigration",
"view": "modules/data-migration/views/admin/data-migration",
"order": 85
"order": 50
}
]
],
"order": 30
}
}
@@ -100,6 +100,11 @@ class ImportService
continue;
}
if (!$this->entityTypeExists($entityType)) {
$io->writeLine("Skipping {$entityType} (module not installed)");
continue;
}
$io->writeLine("Importing {$entityType}...");
$result = $this->entityImporter->import(
@@ -171,4 +176,14 @@ class ImportService
}
}
}
private function entityTypeExists(string $entityType): bool
{
try {
$this->entityManager->getRDBRepository($entityType);
return true;
} catch (\Exception $e) {
return false;
}
}
}
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "DataMigration",
"version": "1.1.0",
"version": "1.1.3",
"acceptableVersions": [
">=8.0.0"
],