From 073681f895b5afe97780eb930f36ee69cf9e7f21 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Tue, 20 Jul 2021 16:46:58 +0200 Subject: [PATCH] mvc: allow to unset attribute via setAttributeValue SimpleXML elements have no way of removing attributes so let the base field do the work. --- .../mvc/app/models/OPNsense/Base/FieldTypes/BaseField.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/BaseField.php b/src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/BaseField.php index defc628ae..8432a4ce5 100644 --- a/src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/BaseField.php +++ b/src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/BaseField.php @@ -376,7 +376,11 @@ abstract class BaseField */ public function setAttributeValue($key, $value) { - $this->internalAttributes[$key] = $value; + if ($value !== null) { + $this->internalAttributes[$key] = $value; + } elseif (isset($this->internalAttributes[$key])) { + unset($this->internalAttributes[$key]); + } } /**