diff --git a/core/lib/Drupal/Core/Entity/Plugin/DataType/MapItem.php b/core/lib/Drupal/Core/Entity/Plugin/DataType/MapItem.php deleted file mode 100644 index b79aa6d..0000000 --- a/core/lib/Drupal/Core/Entity/Plugin/DataType/MapItem.php +++ /dev/null @@ -1,66 +0,0 @@ -values = array(); - if (!isset($values)) { - return; - } - - if (!is_array($values)) { - if ($values instanceof MapItem) { - $values = $values->getValue(); - } - else { - $values = unserialize($values); - } - } - - $this->values = $values; - } - - public function __get($name) { - if (!isset($this->values[$name])) { - $this->values[$name] = array(); - } - - return $this->values[$name]; - } - - public function __set($name, $value) { - if (isset($value)) { - $this->values[$name] = $value; - } - else { - unset($this->values[$name]); - } - } -} diff --git a/core/lib/Drupal/Core/Entity/Plugin/field/field_type/MapItem.php b/core/lib/Drupal/Core/Entity/Plugin/field/field_type/MapItem.php new file mode 100644 index 0000000..3397b2e --- /dev/null +++ b/core/lib/Drupal/Core/Entity/Plugin/field/field_type/MapItem.php @@ -0,0 +1,69 @@ +values = array(); + if (!isset($values)) { + return; + } + + if (!is_array($values)) { + if ($values instanceof MapItem) { + $values = $values->getValue(); + } + else { + $values = unserialize($values); + } + } + + $this->values = $values; + + // Notify the parent of any changes. + if ($notify && isset($this->parent)) { + $this->parent->onChange($this->name); + } + } + + public function __get($name) { + if (!isset($this->values[$name])) { + $this->values[$name] = array(); + } + + return $this->values[$name]; + } + + public function __set($name, $value) { + if (isset($value)) { + $this->values[$name] = $value; + } + else { + unset($this->values[$name]); + } + } +}