/**
  * get wiki info ( wikiname, description, url, status, images )
  * @param integer $wikiId
  * @param string $langCode
  * @param WikiDataGetter $dataGetter
  * @return array wikiInfo
  */
 public function getWikiInfo($wikiId, $langCode, WikiDataGetter $dataGetter)
 {
     $this->wf->ProfileIn(__METHOD__);
     $wikiInfo = array('name' => '', 'headline' => '', 'description' => '', 'url' => '', 'new' => 0, 'hot' => 0, 'official' => 0, 'promoted' => 0, 'blocked' => 0, 'images' => array());
     if (!empty($wikiId)) {
         $wiki = F::build('WikiFactory', array($wikiId), 'getWikiById');
         if (!empty($wiki)) {
             $wikiInfo['url'] = $wiki->city_url . '?redirect=no';
         }
         $wikiData = $dataGetter->getWikiData($wikiId, $langCode);
         if (!empty($wikiData)) {
             $wikiInfo['name'] = $wikiData['name'];
             $wikiInfo['headline'] = $wikiData['headline'];
             $wikiInfo['description'] = $wikiData['description'];
             // wiki status
             $wikiInfo['new'] = intval(CityVisualization::isNewWiki($wikiData['flags']));
             $wikiInfo['hot'] = intval(CityVisualization::isHotWiki($wikiData['flags']));
             $wikiInfo['official'] = intval(CityVisualization::isOfficialWiki($wikiData['flags']));
             $wikiInfo['promoted'] = intval(CityVisualization::isPromotedWiki($wikiData['flags']));
             $wikiInfo['blocked'] = intval(CityVisualization::isBlockedWiki($wikiData['flags']));
             $wikiInfo['images'] = array();
             if (!empty($wikiData['main_image'])) {
                 $wikiInfo['images'][] = $wikiData['main_image'];
             }
             $wikiData['images'] = !empty($wikiData['images']) ? (array) $wikiData['images'] : array();
             // wiki images
             if (!empty($wikiData['images'])) {
                 $wikiInfo['images'] = array_merge($wikiInfo['images'], $wikiData['images']);
             }
         }
     }
     $this->wf->ProfileOut(__METHOD__);
     return $wikiInfo;
 }