From 5c56c9579d4049cb47927bf80e4d0cf3ac961825 Mon Sep 17 00:00:00 2001 From: Luke Towers Date: Tue, 28 Feb 2017 20:36:32 -0600 Subject: [PATCH] Add support for maxItems to the Repeater FormWidget Refs: #2710 --- modules/backend/formwidgets/Repeater.php | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/modules/backend/formwidgets/Repeater.php b/modules/backend/formwidgets/Repeater.php index 7b7c28b75..9a677a959 100644 --- a/modules/backend/formwidgets/Repeater.php +++ b/modules/backend/formwidgets/Repeater.php @@ -48,10 +48,15 @@ class Repeater extends FormWidgetBase */ protected $formWidgets = []; - /** - * @var bool Stops nested repeaters populating from previous sibling. - */ + /** + * @var bool Stops nested repeaters populating from previous sibling. + */ protected static $onAddItemCalled = false; + + /** + * @var int Maximum repeated items (0 == unlimited items) + */ + protected $maxItems = 0; /** * {@inheritDoc} @@ -62,6 +67,7 @@ class Repeater extends FormWidgetBase 'form', 'prompt', 'sortable', + 'maxItems', ]); if (!self::$onAddItemCalled) { @@ -86,6 +92,7 @@ class Repeater extends FormWidgetBase $this->vars['indexName'] = self::INDEX_PREFIX.$this->formField->getName(false).'[]'; $this->vars['prompt'] = $this->prompt; $this->vars['formWidgets'] = $this->formWidgets; + $this->vars['maxItems'] = $this->maxItems; } /**