/** * Table insert method * * @param object A KDatabaseRow object * @return boolean TRUE if successfull, otherwise false */ public function insert(KDatabaseRowAbstract $row) { $query = $this->_database->getQuery(); $query->where('tbl.name', '=', $row->name, 'or'); if ($this->count($query)) { $asset = $this->select($query, KDatabase::FETCH_ROW); $data = array_merge($asset->getData(), array_filter($row->getData())); return parent::update($asset->setData($data)); } return parent::insert($row); }
public function getData($modified = false) { $result = parent::getData($modified); if (isset($result['children']) && $result['children'] instanceof KDatabaseRowsetInterface) { $result['children'] = $result['children']->getData(); } return $result; }