Pimcore\Model\Element\Note\Dao::save PHP Method

save() public method

Save object to database
public save ( ) : void
return void
    public function save()
    {
        $version = get_object_vars($this->model);
        // save main table
        foreach ($version as $key => $value) {
            if (in_array($key, $this->getValidTableColumns("notes"))) {
                $data[$key] = $value;
            }
        }
        $this->db->insertOrUpdate("notes", $data);
        $lastInsertId = $this->db->lastInsertId();
        if (!$this->model->getId() && $lastInsertId) {
            $this->model->setId($lastInsertId);
        }
        // save data table
        $this->deleteData();
        foreach ($this->model->getData() as $name => $meta) {
            $data = $meta["data"];
            $type = $meta["type"];
            if ($type == "document") {
                if ($data instanceof Document) {
                    $data = $data->getId();
                }
            } elseif ($type == "asset") {
                if ($data instanceof Asset) {
                    $data = $data->getId();
                }
            } elseif ($type == "object") {
                if ($data instanceof Object\AbstractObject) {
                    $data = $data->getId();
                }
            } elseif ($type == "date") {
                if ($data instanceof \DateTimeInterface) {
                    $data = $data->getTimestamp();
                }
            } elseif ($type == "bool") {
                $data = (bool) $data;
            }
            $this->db->insert("notes_data", ["id" => $this->model->getId(), "name" => $name, "type" => $type, "data" => $data]);
        }
        return true;
    }