From 8f43b43489294a09aafa610de1c1ca9c870bd20c Mon Sep 17 00:00:00 2001 From: Arsam Islami Date: Fri, 14 Mar 2025 19:12:54 +0100 Subject: [PATCH 1/3] Fixed script part of setting the default state to "published" --- cockpit-cms-Migrate/Helper/Convert.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cockpit-cms-Migrate/Helper/Convert.php b/cockpit-cms-Migrate/Helper/Convert.php index 1ba65ef..48d16bf 100644 --- a/cockpit-cms-Migrate/Helper/Convert.php +++ b/cockpit-cms-Migrate/Helper/Convert.php @@ -561,7 +561,7 @@ public function collectionEntry($entry, array $fields = []) { unset($entry['_by']); // set default state to "published" - $entry['_state'] = $entry['_state'] ?? 0; + $entry['_state'] = $entry['_state'] ?? 1; // TODO: transform assets From 895b1cbad554a7fe78dc738174e3476a37417826 Mon Sep 17 00:00:00 2001 From: Arsam Islami Date: Fri, 14 Mar 2025 19:17:35 +0100 Subject: [PATCH 2/3] Added frontend links to start migration and deletion of v1 files --- cockpit-cms-Migrate/views/v2/index.php | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/cockpit-cms-Migrate/views/v2/index.php b/cockpit-cms-Migrate/views/v2/index.php index 1b23872..c68bd68 100644 --- a/cockpit-cms-Migrate/views/v2/index.php +++ b/cockpit-cms-Migrate/views/v2/index.php @@ -5,10 +5,18 @@
    -
  • +
- +

+ +

+

+ +

+

+ +

@@ -20,13 +28,11 @@ - start('app-side-panel') ?> From 78eef71c3714eaf3dfad2f023e1344c3259bb189 Mon Sep 17 00:00:00 2001 From: Arsam Islami Date: Fri, 14 Mar 2025 19:18:18 +0100 Subject: [PATCH 3/3] Added field transformation for image (to asset), set and collectionlinkselect (to contentItemLink) --- .../Helper/TransformFields.php | 35 +++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/cockpit-cms-Migrate/Helper/TransformFields.php b/cockpit-cms-Migrate/Helper/TransformFields.php index 661118a..d9f2df8 100644 --- a/cockpit-cms-Migrate/Helper/TransformFields.php +++ b/cockpit-cms-Migrate/Helper/TransformFields.php @@ -58,6 +58,39 @@ public function _boolean(array $field): array { return $field; } + public function _image(array $field): array { + $field['type'] = 'asset'; + $options = fixToArray($field['options'] ?? []); + $field['opts'] = $options; + return $field; + } + + public function _set(array $field): array { + $field['opts'] = fixToArray($field['opts'] ?? []); + $transformedField = $this->convertModelFields($field['options']['fields']); + $field['opts']['fields'] = $transformedField; + return $field; + } + + public function _collectionlinkselect(array $field): array { + $field['type'] = 'contentItemLink'; + + $options = fixToArray($field['options'] ?? []); + + $link = $options['link'] ?? null; + $display = $options['display'] ?? null; + + $transformedField = [ + 'link' => $link, + 'filter' => null, + 'display' => $display ? "\${data.$display}" : null, + ]; + + $field['opts'] = $transformedField; + + return $field; + } + public function _select(array $field): array { $field['type'] = 'select'; @@ -234,8 +267,6 @@ public function booleanPublishedToState($entry) { */ public function galleryToAssetMultiple($entry, $field) { - - return $entry; }