/** * @see \wcf\data\AbstractDatabaseObjectAction::create() */ public function create() { // set default values for author and last editor if (!isset($this->parameters['data']['authorID'])) { $this->parameters['data']['authorID'] = WCF::getUser()->userID; $this->parameters['data']['authorName'] = WCF::getUser()->username; } if (!isset($this->parameters['data']['lastEditorID'])) { $this->parameters['data']['lastEditorID'] = $this->parameters['data']['authorID']; $this->parameters['data']['lastEditorName'] = $this->parameters['data']['authorName']; } // set default values for creation- and last edit time if (!isset($this->parameters['data']['creationTime'])) { $this->parameters['data']['creationTime'] = TIME_NOW; } if (!isset($this->parameters['data']['lastEditTime'])) { $this->parameters['data']['lastEditTime'] = $this->parameters['data']['creationTime']; } // create page itself $page = parent::create(); $pageEditor = new PageEditor($page); // handle stylesheets if (isset($this->parameters['stylesheetIDs']) && !empty($this->parameters['stylesheetIDs'])) { $pageEditor->updateStylesheetIDs($this->parameters['stylesheetIDs']); } // check if first page if (PageCache::getInstance()->getHomePage() === null) { $pageEditor->setAsHome(); } // trigger publication if (!$page->isDisabled && $page->isPublished) { $action = new PageAction(array($pageEditor), 'triggerPublication'); $action->executeAction(); } return $page; }