diff --git a/modules/backend/formwidgets/Repeater.php b/modules/backend/formwidgets/Repeater.php index 9a677a959..b7a90b2a2 100644 --- a/modules/backend/formwidgets/Repeater.php +++ b/modules/backend/formwidgets/Repeater.php @@ -52,11 +52,11 @@ class Repeater extends FormWidgetBase * @var bool Stops nested repeaters populating from previous sibling. */ protected static $onAddItemCalled = false; - + /** - * @var int Maximum repeated items (0 == unlimited items) + * @var int Maximum repeated items allowable. */ - protected $maxItems = 0; + protected $maxItems = null; /** * {@inheritDoc} diff --git a/modules/backend/formwidgets/repeater/assets/js/repeater.js b/modules/backend/formwidgets/repeater/assets/js/repeater.js index e21451fdd..5636d6125 100644 --- a/modules/backend/formwidgets/repeater/assets/js/repeater.js +++ b/modules/backend/formwidgets/repeater/assets/js/repeater.js @@ -45,7 +45,7 @@ this.$el.on('click', '> ul > li > .repeater-item-collapse .repeater-item-collapse-one', this.proxy(this.toggleCollapse)) this.$el.one('dispose-control', this.proxy(this.dispose)) - + this.togglePrompt() } @@ -79,7 +79,7 @@ this.$sortable.sortable(sortableOptions) } - + Repeater.prototype.onRemoveItemSuccess = function(ev) { $(ev.target).closest('.field-repeater-item').remove() this.togglePrompt() @@ -88,17 +88,13 @@ Repeater.prototype.onAddItemSuccess = function(ev) { this.togglePrompt() } - + Repeater.prototype.togglePrompt = function () { - if (this.options.maxItems != 0) { + if (this.options.maxItems && this.options.maxItems > 0) { var repeatedItems = this.$el.find('> .field-repeater-items > .field-repeater-item').length, $addItemBtn = this.$el.find('> .field-repeater-add-item') - - if (repeatedItems >= this.options.maxItems) { - $addItemBtn.hide() - } else if (repeatedItems < this.options.maxItems) { - $addItemBtn.show() - } + + $addItemBtn.toggle(repeatedItems < this.options.maxItems) } } diff --git a/modules/backend/formwidgets/repeater/partials/_repeater.htm b/modules/backend/formwidgets/repeater/partials/_repeater.htm index c713ac298..8178fbd71 100644 --- a/modules/backend/formwidgets/repeater/partials/_repeater.htm +++ b/modules/backend/formwidgets/repeater/partials/_repeater.htm @@ -1,5 +1,6 @@