protected function setIndividualRecord($data, $request) { // Trigger a set hook $this->onBeforeSet($data); // Some sanity checking $tableName = $this->getTableName(); $this->performTypeCheck($data, $tableName); // Create the Query Object $model = $this->getModel(); $queryObject = new MvcQueryObject($data); $queryObject->setModel($model); $queryObject->setWhere($data); // Insert or Update if (isset($data->id) && $data->id) { $queryObject->setType('update'); } else { $queryObject->setType('insert'); } // Set It $result = $this->plugin->MvcQuery->query($queryObject); // Trigger a set hook $this->onAfterSet($data); $newRequestData = new MvcQueryObject(); $newRequestData->_type = $tableName; if ($queryObject->getType() == 'insert') { $newRequestData->id = $result; } else { $newRequestData->id = $data->id; } // return .get() $request = new BtlRequestObject(); $request->setQuery($newRequestData); $response = $this->get($request); if ($response && is_array($response) && sizeof($response)) { $response = $response[0]; } return $response; }