/** * @desc Contents for Weebo * @param Array $params request params */ public function anon() { wfProfileIn(__METHOD__); $params = $this->request->getParams(); $lang = !empty($params['lang']) ? $params['lang'] : WikiaBarModel::WIKIA_BAR_DEFAULT_LANG_CODE; $vertical = !empty($params['vertical']) ? $params['vertical'] : HubService::getCategoryInfoForCity($this->wg->cityId)->cat_id; /** @var $model WikiaBarModel */ $model = new WikiaBarModel(); $vertical = $model->mapVerticalToMain($vertical); $model->setLang($lang); $model->setVertical($vertical); $barContents = $model->getBarContents(); $this->barContents = $barContents['data']; $this->status = $barContents['status']; wfProfileOut(__METHOD__); }
/** * Get meta description tag * @return string $description */ public function getMetaTagDescription() { $catInfo = HubService::getCategoryInfoForCity($this->wg->CityId); $descriptionKey = 'specialvideos-meta-description'; switch ($catInfo->cat_id) { case WikiFactoryHub::CATEGORY_ID_GAMING: $descriptionKey .= '-gaming'; break; case WikiFactoryHub::CATEGORY_ID_ENTERTAINMENT: $descriptionKey .= '-entertainment'; break; case WikiFactoryHub::CATEGORY_ID_LIFESTYLE: $descriptionKey .= '-lifestyle'; break; case WikiFactoryHub::CATEGORY_ID_CORPORATE: $descriptionKey .= '-corporate'; break; } $description = wfMessage($descriptionKey, $this->wg->Sitename)->escaped(); return $description; }
public function getContext(Title $title, $skinName) { $wrapper = new GlobalStateWrapper(['wgTitle' => $title]); $wg = F::app()->wg; return $wrapper->wrap(function () use($title, $wg, $skinName) { $wikiFactoryHub = WikiFactoryHub::getInstance(); $hubService = new HubService(); $adPageTypeService = new AdEngine2PageTypeService(); $wikiaPageType = new WikiaPageType(); $sevenOneMediaCombinedUrl = null; if (!empty($wg->AdDriverUseSevenOneMedia)) { // TODO: implicitly gets the skin from the context! $sevenOneMediaCombinedUrl = ResourceLoader::makeCustomURL($wg->Out, ['wikia.ext.adengine.sevenonemedia'], 'scripts'); } $monetizationServiceAds = null; if (!empty($wg->AdDriverUseMonetizationService) && !empty($wg->EnableMonetizationModuleExt)) { $monetizationServiceAds = F::app()->sendRequest('MonetizationModule', 'index')->getData()['data']; } $langCode = $title->getPageLanguage()->getCode(); return ['opts' => $this->filterOutEmptyItems(['adsInContent' => $wg->EnableAdsInContent, 'delayBtf' => $wg->AdDriverDelayBelowTheFold, 'enableAdsInMaps' => $wg->AdDriverEnableAdsInMaps, 'pageType' => $adPageTypeService->getPageType(), 'paidAssetDropConfig' => $wg->PaidAssetDropConfig, 'showAds' => $adPageTypeService->areAdsShowableOnPage(), 'trackSlotState' => $wg->AdDriverTrackState, 'usePostScribe' => $wg->Request->getBool('usepostscribe', false)]), 'targeting' => $this->filterOutEmptyItems(['enablePageCategories' => array_search($langCode, $wg->AdPageLevelCategoryLangs) !== false, 'pageArticleId' => $title->getArticleId(), 'pageIsArticle' => !!$title->getArticleId(), 'pageIsHub' => $wikiaPageType->isWikiaHub(), 'pageName' => $title->getPrefixedDBKey(), 'pageType' => $wikiaPageType->getPageType(), 'sevenOneMediaSub2Site' => $wg->AdDriverSevenOneMediaOverrideSub2Site, 'skin' => $skinName, 'wikiCategory' => $wikiFactoryHub->getCategoryShort($wg->CityId), 'wikiCustomKeyValues' => $wg->DartCustomKeyValues, 'wikiDbName' => $wg->DBname, 'wikiDirectedAtChildren' => $wg->WikiDirectedAtChildrenByFounder || $wg->WikiDirectedAtChildrenByStaff, 'wikiIsCorporate' => $wikiaPageType->isCorporatePage(), 'wikiIsTop1000' => $wg->AdDriverWikiIsTop1000, 'wikiLanguage' => $langCode, 'wikiVertical' => $hubService->getCategoryInfoForCity($wg->CityId)->cat_name]), 'providers' => $this->filterOutEmptyItems(['monetizationService' => $wg->AdDriverUseMonetizationService, 'monetizationServiceAds' => $monetizationServiceAds, 'sevenOneMedia' => $wg->AdDriverUseSevenOneMedia, 'sevenOneMediaCombinedUrl' => $sevenOneMediaCombinedUrl, 'taboola' => $wg->AdDriverUseTaboola]), 'slots' => $this->filterOutEmptyItems(['exitstitial' => $wg->EnableOutboundScreenExt, 'exitstitialRedirectDelay' => $wg->OutboundScreenRedirectDelay, 'invisibleHighImpact' => $wg->AdDriverEnableInvisibleHighImpactSlot]), 'forcedProvider' => $wg->AdDriverForcedProvider]; }); }
public static function onWikiDataUpdated($cityId) { $app = F::app(); $mdb = wfGetDB(DB_MASTER, array(), $app->wg->ExternalSharedDB); $category = HubService::getCategoryInfoForCity($cityId); $table = self::CITY_VISUALIZATION_TABLE_NAME; $data = array('city_vertical' => $category->cat_id); $cond = array('city_id' => $cityId); $mdb->update($table, $data, $cond, __METHOD__); return true; }
public function loadDataAndUpdateDatabase() { global $wgLanguageCode; wfProfileIn(__METHOD__); if (!$this->options->overwrittenLang) { $wikisVisualizationLangCode = $wgLanguageCode; } else { $wikisVisualizationLangCode = $this->options->overwrittenLang; } echo "\n"; echo 'Uploading wikis for "' . $wikisVisualizationLangCode . '" visualization: '; echo "\n"; foreach ($this->options->csvContent as $line) { $element = str_getcsv($line, ',', '"'); if ($this->areAllRequiredWikiDataForDatabaseSet($element)) { $wikiDomain = trim(str_replace('http://', '', $element[2]), '/'); $wikiId = WikiFactory::DomainToID($wikiDomain); $spreadSheetImageName = basename($element[4]); $wikiMainImageUrl = $element[4]; $wikiMainImageName = $this->getCorpDestImageName($wikiDomain, $spreadSheetImageName); $sliderImages = $this->getSliderImages(array_slice($element, self::SPREADSHEET_FIRST_ADD_IMG_IDX, self::SPREADSHEET_LAST_ADD_IMG_IDX)); $wikiHeadline = !empty($element[1]) ? $element[1] : ''; $wikiDesc = !empty($element[5]) ? $element[5] : wfMsg('wikiahome-import-script-no-description'); if (!$this->options->skipUpload) { //upload main image $this->uploadImage($wikiMainImageUrl, $wikiMainImageName, $wikiId); //upload slider images $sliderUploadedImages = $this->uploadSliderImages($wikiDomain, $sliderImages, $wikiId); } if ($wikiId > 0) { $wikiCityVertical = HubService::getCategoryInfoForCity($wikiId); $sliderUploadedImages = !empty($sliderUploadedImages) ? json_encode($sliderUploadedImages) : null; $this->addToVisualizationTable(array('city_id' => $wikiId, 'city_lang_code' => $wikisVisualizationLangCode, 'city_vertical' => $wikiCityVertical, 'city_headline' => $wikiHeadline, 'city_description' => $wikiDesc, 'city_main_image' => $wikiMainImageName, 'city_images' => $sliderUploadedImages)); } else { $this->wikisNotAdded[] = $wikiDomain . ' (' . $wikiId . ') '; } } } $this->uploadImagesOnWikis(); $this->displayStatus(); wfProfileOut(__METHOD__); }