public static function getByBattleSettings(Kingboard_BattleSettings $battleSetting) { $battle = Kingboard_Battle::_getInstanceByCriteria(__CLASS__, array('settingsId' => $battleSetting->_id)); if (is_null($battle) || time() > $battle->updated->sec + 600) { if (is_null($battle)) { $battle = new Kingboard_Battle(); } $battle->data = Kingboard_Battle::generateBattle($battleSetting); $battle->updated = new MongoDate(time()); $battle->settingsId = $battleSetting->_id; // print_r($battle); $battle->save(); } return $battle; }
/** * display a certain battle * @param array $parameters * @return void */ public function show(array $parameters) { $battleSetting = Kingboard_BattleSettings::getById($parameters['id']); if (is_null($battleSetting)) { $this->sendErrorAndQuit("Battle with Id " . $parameters['id'] . " does not exist"); } $battle = Kingboard_Battle::getByBattleSettings($battleSetting); //print_r($battle->data); $this->_context['battleSetting'] = $battleSetting; $this->render("battle.html", $battle->data); }