diff --git a/classes/Block.php b/classes/Block.php index d3fb086..158318c 100644 --- a/classes/Block.php +++ b/classes/Block.php @@ -9,7 +9,6 @@ use Cms\Classes\Controller; use Cms\Classes\PartialStack; use Illuminate\Support\Facades\Lang; -use Illuminate\Support\Fluent; use Winter\Storm\Exception\SystemException; /** @@ -107,7 +106,7 @@ public static function renderAll(array $blocks, ?Controller $controller = null): $config = static::getDefaultConfig($block['_group']); } - $partialData['config'] = new Fluent($config); + $partialData['config'] = json_decode(json_encode($config), true); $content .= $controller->renderPartial($block['_group'] . '.block', $partialData); } diff --git a/formwidgets/Blocks.php b/formwidgets/Blocks.php index 8ec5072..989aa57 100644 --- a/formwidgets/Blocks.php +++ b/formwidgets/Blocks.php @@ -331,9 +331,14 @@ protected function processInspectorConfig(array $config): array 'span', ])); - if (isset($defined['options']) && is_array($defined['options'])) { - foreach ($defined['options'] as $key => &$value) { - $value = Lang::get($value); + if (isset($defined['options'])) { + if (is_array($defined['options'])) { + foreach ($defined['options'] as $key => &$value) { + $value = Lang::get($value); + } + } elseif (is_callable($defined['options'])) { + $callable = $defined['options']; + $defined['options'] = $callable($property); } }