From 0db4b1164f48458f0f171868582fb2f52ba91b8a Mon Sep 17 00:00:00 2001 From: Cameron Date: Thu, 18 Feb 2021 10:27:59 -0800 Subject: [PATCH] Fixes #4394 '__tabs__' was being displayed in custom fields form. Test added. --- e107_handlers/e_customfields_class.php | 9 ++++++++- e107_tests/tests/unit/e_customfieldsTest.php | 14 +++++++++++--- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/e107_handlers/e_customfields_class.php b/e107_handlers/e_customfields_class.php index fc365d03a..e55aed181 100644 --- a/e107_handlers/e_customfields_class.php +++ b/e107_handlers/e_customfields_class.php @@ -67,7 +67,14 @@ if(is_array($data)) { + if(isset($data['__tabs__'])) + { + $this->_tab = $data['__tabs__']; + unset($data['__tabs__']); + } + $this->_config = $data; + return $this; } @@ -305,6 +312,7 @@ public function renderConfigForm($name) { + $frm = e107::getForm(); $curVal = $this->_config; $value = array(); @@ -320,7 +328,6 @@ } } - $text = "
".$frm->text('__e_customfields_tabs__', $this->_tab[$this->_tab_default], 30, array('placeholder' => 'Tab label', 'size' =>'medium', 'required' =>1))." diff --git a/e107_tests/tests/unit/e_customfieldsTest.php b/e107_tests/tests/unit/e_customfieldsTest.php index f1383f236..4a117b485 100644 --- a/e107_tests/tests/unit/e_customfieldsTest.php +++ b/e107_tests/tests/unit/e_customfieldsTest.php @@ -17,7 +17,7 @@ protected $config = '{ "__tabs__": { - "extra": "My Tab" + "additional": "My Tab" }, "image": { "title": "Image", @@ -191,6 +191,8 @@ $this->fail("Couldn't load e_customfields object"); } + $this->cf->__construct(); + setlocale(LC_TIME, 'C'); date_default_timezone_set('UTC'); @@ -313,12 +315,18 @@ { } - +*/ public function testRenderConfigForm() { + $this->cf->loadConfig($this->config)->loadData($this->data); + $tab = $this->cf->getTabId(); + $this->assertSame('additional', $tab); + + $result= $this->cf->renderConfigForm('custom'); + $this->assertStringNotContainsString('__tab__', $result); } - +/* public function testGetFieldValue() {