/** * * @return Ultimatum_Model_Ultplayergroupknowledge */ public static function getInstance() { if ($pReload || is_null(self::$_Instance)) { // process self::$_Instance = new self(); } return self::$_Instance; }
public function run() { $c = $this->get_controller(); if (!$c->_prep()) { return $c->forward('index', 'index', NULL, array('error' => 'problem loading game')); } elseif (!$c->view->target) { $params = array('error' => 'Cannot find target'); return $c->forward('run', NULL, NULL, $params); } $pid = $c->view->player->identity(); $gid = $c->view->target->identity(); $params = array('group_id' => $gid, 'player' => $pid); $k = Ultimatum_Model_Ultplayergroupknowledge::getInstance()->findOne($params); if ($k->isSaved()) { $c->view->scan = $k; } else { $param = array('error' => 'strange, what group ' . $gid . '?'); $c->forward('run', NULL, NULL, $param); } }
/** * */ public function gameviewstoreAction() { $game_id = $this->_getParam('game'); $game = Ultimatum_Model_Ultgames::getInstance()->get($game_id); $player_ids = $game->player_ids(); $player_group_ids = array_values(Ultimatum_Model_Ultgamegroups::getInstance()->player_group_ids($player_ids, TRUE)); $scanned_group_ids = array_keys(Ultimatum_Model_Ultplayergroupknowledge::getInstance()->last_scans_for_player($player_ids, TRUE)); $group_ids = array_merge($player_group_ids, $scanned_group_ids); array_unique($group_ids); $find_params = array('id' => array($group_ids, 'in')); $groups = Ultimatum_Model_Ultgroups::getInstance()->find($find_params); $out = array(); foreach ($groups as $group) { $data = $group->toArray(); $data['size'] = $group->size_in_game($game_id); $data['title'] = $group->get_title(); $out[] = $data; } $this->_store('id', $out); }
/** * * @param Ultimatum_Model_Ultplayergroupknowledge $pScan * @return string */ public function groupscan(Ultimatum_Model_Ultplayergroupknowledge $pScan, $pContent = NULL) { $group = $pScan->get_group(); ob_start(); ?> <fieldset> <legend><?php echo $group->get_title(); ?> (as of turn <?php echo $pScan->get_game()->turn(TRUE); ?> )</legend> <p><b><?php echo $group->get_lead(); ?> </b></p> <blockquote> <?php echo $group->get_content(); ?> </blockquote> <table> <tr> <th>Value</th> <th>Size</th> <th>Efficiency</th> <th>Effect</th> <?php foreach (Ultimatum_Model_Ultgroups::$_properties as $property) { ?> <tr> <td><?php echo ucfirst($property); ?> </td> <td><?php echo $pScan->get_size($property, TRUE); ?> </td> <td><?php echo $pScan->get_efficiency($property, TRUE); ?> </td> <td><?php echo $pScan->get_power($property, TRUE); ?> </td> </tr> <?php } ?> </table> <?php if ($pContent) { echo $pContent; } ?> </fieldset> <?php return ob_get_clean(); }