private function doCreatePage($page, $namespace) { $pageContentLanguage = isset($page['contentlanguage']) ? $page['contentlanguage'] : ''; if (isset($page['message-cache']) && $page['message-cache'] === 'clear') { Message::clear(); } $name = isset($page['name']) ? $page['name'] : $page['page']; $title = Title::newFromText($name, $namespace); if ($namespace === NS_FILE && isset($page['contents']['upload'])) { return $this->doUploadFile($title, $page['contents']['upload']); } if (is_array($page['contents']) && isset($page['contents']['import-from'])) { $contents = $this->getFileContentsWithEncodingDetection($this->getTestCaseLocation() . $page['contents']['import-from']); } else { $contents = $page['contents']; } $this->pageCreator->createPage($title, $contents, $pageContentLanguage); $this->itemsMarkedForDeletion[] = $this->pageCreator->getPage(); if (isset($page['move-to'])) { $this->doMovePage($page, $namespace); } if (isset($page['do-purge'])) { $this->pageCreator->getPage()->doPurge(); } if (isset($page['do-delete']) && $page['do-delete']) { $this->pageDeleter->deletePage($title); } }
protected function createPagesFor(array $pages, $defaultNamespace) { foreach ($pages as $page) { if (!isset($page['name']) || !isset($page['contents'])) { continue; } $namespace = isset($page['namespace']) ? constant($page['namespace']) : $defaultNamespace; $title = Title::newFromText($page['name'], $namespace); $this->pageCreator->createPage($title)->doEdit($page['contents']); $this->itemsMarkedForDeletion[] = $this->pageCreator->getPage(); if (isset($page['move-to'])) { $target = Title::newFromText($page['move-to']['target'], $namespace); $this->pageCreator->doMoveTo($target, $page['move-to']['is-redirect']); $this->itemsMarkedForDeletion[] = $target; } if (isset($page['do-delete']) && $page['do-delete']) { $this->pageDeleter->deletePage($title); } } }
protected function createPagesFor(array $pages, $defaultNamespace) { foreach ($pages as $page) { if (!isset($page['name']) || !isset($page['contents'])) { continue; } $namespace = isset($page['namespace']) ? constant($page['namespace']) : $defaultNamespace; $title = Title::newFromText($page['name'], $namespace); if (is_array($page['contents']) && isset($page['contents']['import-from'])) { $contents = file_get_contents($this->getTestCaseLocation() . $page['contents']['import-from']); } else { $contents = $page['contents']; } $this->pageCreator->createPage($title, $contents); $this->itemsMarkedForDeletion[] = $this->pageCreator->getPage(); if (isset($page['move-to'])) { $this->doMove($page, $namespace); } if (isset($page['do-delete']) && $page['do-delete']) { $this->pageDeleter->deletePage($title); } } }