/** * show player details, show achievement and statistic. * role: administrator * redirected from: Controller.Player.suspend() whatever suspend result * Controller.Player.reactivate() whatever reactivate result */ public function detail() { if (Authenticate::is_authorized()) { $model_player = Player::getInstance(); $model_journal = Journal::getInstance(); $model_achievement = Achievement::getInstance(); $model_asset = Asset::getInstance(); $model_material = Material::getInstance(); $model_employee = Employee::getInstance(); $model_memorycard = Memorycard::getInstance(); $id = $this->framework->url->url_part(3); $this->framework->view->page = "player"; $this->framework->view->content = "/backend/pages/player_detail"; $this->framework->view->player_detail = $model_player->player_detail($id); $this->framework->view->player_summary = $model_player->fetch($id); $this->framework->view->player_performance = $model_player->performance($id); $this->framework->view->player_finance = $model_journal->finance_summaries($id); $this->framework->view->player_achievements = $model_achievement->get_achievement($id); $this->framework->view->player_assets = $model_asset->get_player_asset($id); $this->framework->view->player_employees = $model_employee->get_player_employee($id); $this->framework->view->player_materials = $model_material->get_player_material($id); $this->framework->view->player_game = $model_memorycard->load_game_data($id); $this->framework->view->show("backend/template"); } else { transport("administrator"); } }
/** * retrieve balance sheet from database. * role: player */ public function retrieve_balance() { if (Authenticate::is_player()) { if (isset($_POST['token']) && Authenticate::is_valid_token($_POST['token'])) { $this->model_journal = Journal::getInstance(); /* * invoke method to retrieve balance data. * convert into json format and binding these data. */ $result = $this->model_journal->get_balance_sheet(); $binding = array("result_var" => "session_ready", "balance_var" => json_encode($result, JSON_PRETTY_PRINT)); binding_data($binding); } else { transport("error404"); } } else { $binding = array("result_var" => "no_session"); binding_data($binding); } }
/** * load game data every play game. * role: player * @return string */ public function load_data() { if (Authenticate::is_player()) { if (true || isset($_POST['token']) && Authenticate::is_valid_token($_POST['token'])) { $this->model_product = Product::getInstance(); $this->model_material = Material::getInstance(); $this->model_asset = Asset::getInstance(); $this->model_supplier = Supplier::getInstance(); $this->model_employee = Employee::getInstance(); $this->model_achievement = Achievement::getInstance(); $this->model_journal = Journal::getInstance(); $this->model_memorycard = Memorycard::getInstance(); $this->model_leaderboard = Leaderboard::getInstance(); /* * retrieve data each component. * log this event, wrap it up and convert to json format. */ $game = $this->model_memorycard->load_game_data(); $work_history = $this->model_memorycard->get_work_stress_history(); $total_work = $this->model_memorycard->get_total_work(); $candidate = $this->model_employee->get_candidate(); $employee = $this->model_employee->get_player_employee(); $material = $this->model_material->get_material_data(); $player_material = $this->model_material->get_player_material(); $asset = $this->model_asset->get_asset_data(); $player_asset = $this->model_asset->get_player_asset(); $product = $this->model_product->get_product_data(); $player_product = $this->model_product->get_player_product(); $product_material = $this->model_product->get_product_material(); $supplier = $this->model_supplier->get_supplier_data(); $achievement = $this->model_achievement->get_achievement(); $account = $this->model_journal->get_account(); $simulation = $this->model_memorycard->get_simulation(); $star = $this->model_leaderboard->get_player_ranking(); $binding = array("result_var" => "session_ready", "game_var" => json_encode($game, JSON_PRETTY_PRINT), "candidate_var" => json_encode($candidate, JSON_PRETTY_PRINT), "employee_var" => json_encode($employee, JSON_PRETTY_PRINT), "product_var" => json_encode($product, JSON_PRETTY_PRINT), "player_product_var" => json_encode($player_product, JSON_PRETTY_PRINT), "product_material_var" => json_encode($product_material, JSON_PRETTY_PRINT), "material_var" => json_encode($material, JSON_PRETTY_PRINT), "player_material_var" => json_encode($player_material, JSON_PRETTY_PRINT), "asset_var" => json_encode($asset, JSON_PRETTY_PRINT), "player_asset_var" => json_encode($player_asset, JSON_PRETTY_PRINT), "supplier_var" => json_encode($supplier, JSON_PRETTY_PRINT), "achievement_var" => json_encode($achievement, JSON_PRETTY_PRINT), "account_var" => json_encode($account, JSON_PRETTY_PRINT), "simulation_var" => json_encode($simulation, JSON_PRETTY_PRINT), "work_history_var" => json_encode($work_history, JSON_PRETTY_PRINT), "work_total_var" => $total_work, "star" => $star["star"]); $log = Log::getInstance(); $log->logging_game_load(json_encode($binding)); binding_data($binding); } else { transport("error404"); } } else { $binding = array("result_var" => "no_session"); binding_data($binding); } }