/** * @see \wcf\data\AbstractDatabaseObjectAction::create() */ public function create() { // prevent the position from being set raw... $position = 0; if (isset($this->parameters['data']['position'])) { $position = $this->parameters['data']['position']; unset($this->parameters['data']['position']); } // ...we have our own method for that $project = parent::create(); $projectEditor = new ProjectEditor($project); $projectEditor->setPosition($position); return $project; }