From 9be92cd7893b296c3bf68a3c1e5c7c3be5ada4f8 Mon Sep 17 00:00:00 2001 From: Alf Drollinger Date: Sun, 8 Sep 2024 01:01:11 +0200 Subject: [PATCH] Update WpUserSyncHandler.php --- packages/press/src/Handlers/WpUserSyncHandler.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/press/src/Handlers/WpUserSyncHandler.php b/packages/press/src/Handlers/WpUserSyncHandler.php index b8b1b6233..f36f22d75 100644 --- a/packages/press/src/Handlers/WpUserSyncHandler.php +++ b/packages/press/src/Handlers/WpUserSyncHandler.php @@ -34,6 +34,8 @@ protected function deleteModel() protected function syncMainRecord() { $mainTableData = $this->getMainTableData(); + $mainTableData = $this->ensureAllFieldsHaveValue($mainTableData); + $idField = $this->getIdField(); DB::table($this->tableName)->updateOrInsert( @@ -47,20 +49,27 @@ protected function syncMainRecord() protected function syncMetaData($mainRecordId) { $metaData = $this->getMetaData(); + $metaData = $this->ensureAllFieldsHaveValue($metaData); $foreignKeyName = $this->getForeignKeyName(); foreach ($metaData as $key => $value) { - $serializedValue = is_array($value) ? serialize($value) : $value; DB::table($this->metaTableName)->updateOrInsert( [ $foreignKeyName => $mainRecordId, 'meta_key' => $key, ], - ['meta_value' => $serializedValue] + ['meta_value' => $value] ); } } + protected function ensureAllFieldsHaveValue(array $data): array + { + return array_map(function ($value) { + return $value ?? ''; + }, $data); + } + protected function getMainTableData(): array { $mainFields = $this->getMainFields();