From be2e40e69f22f630f5e82f1ccaec54b3ec0630b2 Mon Sep 17 00:00:00 2001 From: Samuel Georges Date: Wed, 4 Mar 2015 19:13:15 +1100 Subject: [PATCH] Add hypothetical loading of data --- modules/backend/formwidgets/Repeater.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/modules/backend/formwidgets/Repeater.php b/modules/backend/formwidgets/Repeater.php index b0c5f5ba1..f976d5ca7 100644 --- a/modules/backend/formwidgets/Repeater.php +++ b/modules/backend/formwidgets/Repeater.php @@ -80,7 +80,12 @@ class Repeater extends FormWidgetBase protected function processExistingItems() { - $itemIndexes = post(self::INDEX_PREFIX.$this->formField->getName(false), array_keys($this->getLoadValue())); + $loadValue = $this->getLoadValue(); + if (is_array($loadValue)) { + $loadValue = array_keys($loadValue); + } + + $itemIndexes = post(self::INDEX_PREFIX.$this->formField->getName(false), $loadValue); if (!is_array($itemIndexes)) return; @@ -92,8 +97,12 @@ class Repeater extends FormWidgetBase protected function makeFormWidget($index = 0) { + $loadValue = $this->getLoadValue(); + if (!is_array($loadValue)) $loadValue = []; + $config = $this->makeConfig($this->form); $config->model = $this->model; + $config->data = array_get($loadValue, $index); $config->alias = $this->alias . 'Form'.$index; $config->arrayName = $this->formField->getName().'['.$index.']';