From 3eba1b58aa4f4a1cd6bfa013b5f8f6175b1365d9 Mon Sep 17 00:00:00 2001 From: Ryan Cramer Date: Fri, 2 Feb 2018 10:10:49 -0500 Subject: [PATCH] Fix issues processwire/processwire-issues#173 and processwire/processwire-issues#393 nested repeater labels --- .../InputfieldRepeater.module | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/wire/modules/Fieldtype/FieldtypeRepeater/InputfieldRepeater.module b/wire/modules/Fieldtype/FieldtypeRepeater/InputfieldRepeater.module index ecbafa1a..6025809f 100644 --- a/wire/modules/Fieldtype/FieldtypeRepeater/InputfieldRepeater.module +++ b/wire/modules/Fieldtype/FieldtypeRepeater/InputfieldRepeater.module @@ -116,18 +116,16 @@ class InputfieldRepeater extends Inputfield implements InputfieldItemList { * */ public function ___renderRepeaterLabel($label, $cnt, Page $page) { - - static $allowRender = null; - if(is_null($allowRender)) { - $allowRender = true; - $repeaterEditID = (int) $this->wire('input')->get('repeater_edit'); - if($repeaterEditID && $repeaterEditID == $page->id) { - $allowRender = false; - } else if(count($_POST) && !$this->wire('config')->ajax) { - $allowRender = false; - } + + // situations where we skip the render of repeater label because it is not needed + $repeaterEditID = (int) $this->wire('input')->get('repeater_edit'); + if($repeaterEditID && $repeaterEditID == $page->id) { + // edit of item requested in URL that matches given $page + return $label; + } else if(count($_POST) && !$this->wire('config')->ajax) { + // POST request that is not ajax + return $label; } - if(!$allowRender) return $label; $out = ''; $repeaterTitle = $this->field ? $this->field->get('repeaterTitle') : '';