Example #1
0
 public function getContent()
 {
     $player = Neuron_GameServer::getPlayer();
     if ($player && $player->isPlaying()) {
         $page = new Neuron_Core_Template();
         // Check for welcome message
         if (isset($_SESSION['welcome_html'])) {
             $page->set('welcome', $_SESSION['welcome_html']);
         }
         $server = Neuron_GameServer_Server::getInstance();
         $txt = $server->getText('headline');
         $page->set('headline', isset($txt) ? Neuron_Core_Tools::output_text($txt) : null);
         $page->set('nickname', $player->getDisplayName());
         $page->set('isPremium', $player->isPremium());
         $page->set('date', date(DATE, $player->getPremiumEndDate()));
         $page->set('isFreePremium', !$player->isProperPremium());
         $msg = Neuron_GameServer_Mappers_CachedChatMapper::getInstance();
         $messages = $msg->countUnreadMessages($player);
         $page->set('inbox', $messages);
         $clans = $player->getClans();
         $page->set('hasclan', count($clans) > 0);
         if (count($clans) > 0) {
             $objlogs = Dolumar_Players_ClanLogs::getInstance();
             $objlogs->clearMyVillages();
             foreach ($player->getVillages() as $village) {
                 $objlogs->addMyVillage($village);
             }
             $logs = $objlogs->getClanLogs($clans, 0, 3);
             foreach ($logs as $v) {
                 $page->addListValue('logs', array('date' => date(DATETIME, $v['timestamp']), 'text' => $objlogs->getLogText($v)));
             }
         }
         // Fetch thze news
         if (defined('GAMENEWS_RSS_URL')) {
             $text = Neuron_Core_Text::getInstance();
             $localized_link = str_replace('{lang}', $text->getCurrentLanguage(), GAMENEWS_RSS_URL);
             $rss = new Neuron_Core_RSSParser($localized_link);
             $rss->setCache(Neuron_Core_Cache::getInstance('newsfeed/'));
             foreach ($rss->getItems(3) as $v) {
                 $page->addListValue('gamenews', array('date' => $v['date'] ? date(DATETIME, $v['date']) : null, 'title' => $v['title'], 'url' => $v['url']));
             }
         }
         return $page->parse('dolumar/welcome/welcome.phpt');
     }
     return false;
 }
Example #2
0
 public static function didClanAttackTargetEarlier($attacker, $target)
 {
     $clanlogs = Dolumar_Players_ClanLogs::getInstance();
     $clanlogs->clearFilters();
     $clanlogs->addShowOnly('attack');
     $clanlogs->setTimeInterval(time() - 60 * 60 * 24);
     $logs = $clanlogs->getClanLogs($attacker->getOwner()->getClans(), 0, 500, 'DESC');
     foreach ($logs as $v) {
         if ($v['action'] == 'attack') {
             if (!$v['attacker']->equals($attacker) && $v['defender']->equals($target)) {
                 return true;
             }
         }
     }
     //print_r ($logs);
     return false;
 }
Example #3
0
 public function getContent()
 {
     $player = Neuron_GameServer::getPlayer();
     $input = $this->getInputData();
     if (!$player) {
         return false;
     }
     $page = new Neuron_Core_Template();
     $clans = $player->getClans();
     if (count($clans) > 0) {
         $objlogs = Dolumar_Players_ClanLogs::getInstance();
         $iPage = isset($input['page']) ? $input['page'] : 0;
         // Split in pages
         $limit = Neuron_Core_Tools::splitInPages($page, $objlogs->countClanLogs($clans), $iPage, 10);
         $objlogs->clearMyVillages();
         foreach ($player->getVillages() as $village) {
             $objlogs->addMyVillage($village);
         }
         $logs = $objlogs->getClanLogs($clans, $limit['start'], $limit['perpage'], 'DESC');
         return $this->getLogHTML($page, $objlogs, $logs);
     }
     return false;
 }