public function execute() { $wikis = $this->getWikisToFix(); $corporateModel = new WikiaCorporateModel(); foreach ($wikis as $wiki) { $wikiLocalImage = $this->getCVImage($wiki['city_id']); if (!empty($wikiLocalImage)) { try { $corpWikiId = $corporateModel->getCorporateWikiIdByLang($wiki['city_lang_code']); } catch (Exception $e) { var_dump($wiki['city_id'], $wiki['city_lang_code']); } $t = GlobalTitle::newFromText('Wikia-Visualization-Main.png', NS_FILE, $wiki['city_id']); if (TaskRunner::isModern('PromoteImageReviewTask')) { $task = new \Wikia\Tasks\Tasks\PromoteImageReviewTask(); } else { $task = new PromoteImageReviewTask(); } var_dump($t->getArticleID(), $wiki['city_main_image'], $corpWikiId, $wiki['city_id']); $res = $task->uploadSingleImage($t->getArticleID(), 'Wikia-Visualization-Main.png', $corpWikiId, $wiki['city_id']); if ($res['status'] == 0 && !empty($res['name'])) { var_dump($res); $this->updateVisualizationMainImageName($wiki['city_id'], $res['name']); } } } }
/** * @desc get central wiki URL for given language. * If wiki in given language doesn't exist GlobalTitle method is throwing an exception and this method returns false * * @param String $lang - language code * @return bool|GlobalTitle */ public function getCentralWikiUrlForLangIfExists($lang) { try { return GlobalTitle::newMainPage($this->wikiCorporateModel->getCorporateWikiIdByLang($lang)); } catch (Exception $ex) { return false; } }
private function clearCache($langCode) { $this->wg->Memc->delete($this->getCollectionsListCacheKey($langCode)); $this->wg->Memc->delete($this->getCollectionsListVisualizationCacheKey($langCode)); $visualization = new CityVisualization(); $corporateModel = new WikiaCorporateModel(); foreach ($this->getList($langCode) as $collection) { $this->wg->Memc->delete($visualization->getCollectionCacheKey($collection['id'])); $title = GlobalTitle::newMainPage($corporateModel->getCorporateWikiIdByLang($langCode)); $title->purgeSquid(); Wikia::log(__METHOD__, '', 'Purged memcached for collection #' . $collection['id']); } }