Skip to content

Commit e882dc6

Browse files
committed
Fetch embed data if none returned from database
1 parent ee4ec72 commit e882dc6

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

src/Charcoal/Embed/Service/EmbedRepository.php

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ private function processEmbed($ident, $format = null)
139139
return [
140140
'ident' => $ident,
141141
'embed_data' => $this->formatEmbed($ident, $format),
142-
'last_update_date' => (new \DateTime())->format('Y-m-d H:i:s')
142+
'last_update_date' => (new \DateTime())->format('Y-m-d H:i:s'),
143143
];
144144
}
145145

@@ -430,9 +430,17 @@ public function embedData($ident)
430430
}
431431

432432
$item = $this->load($ident);
433+
if ($item === false) {
434+
$item = $this->processEmbed($ident, 'array');
435+
$this->saveItem($item);
436+
}
433437

434438
if (isset($item['embed_data'])) {
435-
$data = json_decode($item['embed_data'], true);
439+
if (is_string($item['embed_data'])) {
440+
$data = json_decode($item['embed_data'], true);
441+
} else {
442+
$data = $item['embed_data'];
443+
}
436444

437445
$this->validateTtl($item);
438446

0 commit comments

Comments
 (0)