コード例 #1
0
 public function __construct(Request $request, UserRepository $users)
 {
     $this->user = $users->get(session('uid'));
     if ($request->has('pid')) {
         $this->player = Player::find($request->pid);
     }
 }
コード例 #2
0
 /**
  * Tests if the remove function works correctly.
  */
 public function testRepoRemovePlayerSuccessRemoval()
 {
     $player = Factory::create('App\\Models\\Player');
     $success = $this->repository->removePlayer($player->nickname);
     $this->assertTrue($success);
     $this->assertNull(Player::find($player->id));
 }
コード例 #3
0
 public static function saveQuickVisit(Request $request)
 {
     if (!Game::find($request->get('game_id'))) {
         return;
     }
     self::removeVisits($request->get('game_id'));
     foreach ($request->all() as $key => $input) {
         if (strpos($key, 'player_') !== false && $input > 0) {
             $id = str_replace('player_', '', $key);
             if (Player::find($id)) {
                 StatRepository::addVisit($request->get('game_id'), $id, $input);
             }
         }
     }
 }
コード例 #4
0
ファイル: PlayerController.php プロジェクト: Leammas/i-hunter
 public function actionFindByAgent($agent = null, $id = null)
 {
     \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
     $out = ['results' => ['id' => '', 'text' => '']];
     if (!is_null($agent)) {
         $data = Player::find()->byAgent($agent)->all();
         $out['results'] = array_map(function ($item) {
             /**
              * @var $item Player
              */
             return ['id' => $item->id, 'text' => $item->agentId];
         }, $data);
     } elseif ($id > 0) {
         $out['results'] = ['id' => $id, 'text' => Player::findOne($id)->agentId];
     }
     return $out;
 }
コード例 #5
0
 /**
  * Handle the event.
  *
  * @param  TrainingVisitChange $event
  * @return void
  */
 public function handle(TrainingVisitChange $event)
 {
     $player = Player::find($event->playerId);
     $training = Training::find($event->trainingId);
     $users = \App\Models\User::whereNotNull('email')->where('email', '!=', '')->get();
     $status = $event->visit;
     $visitList = TrainingVisit::getVisitList();
     $subject = trans('email.training.subject') . ' ' . str_limit($player->name, 10) . ' ' . str_limit($training->name, 10) . ' ' . $visitList[$status];
     Mail::send('emails.training_visit', ['player' => $player, 'training' => $training, 'status' => $status], function ($m) use($users, $subject) {
         foreach ($users as $user) {
             if ($user->isAdmin()) {
                 $m->to($user->email);
             }
         }
         $m->subject($subject);
     });
 }
コード例 #6
0
 /**
  * Handle the event.
  *
  * @param  GameVisitChange  $event
  * @return void
  */
 public function handle(GameVisitChange $event)
 {
     $player = Player::find($event->playerId);
     $game = Game::find($event->gameId);
     $users = \App\Models\User::whereNotNull('email')->where('email', '!=', '')->get();
     $visitList = Stat::$visitList;
     if (isset($event->visit) && $event->visit) {
         $status = $visitList[$event->visit];
     } else {
         $status = 'Cancelled';
     }
     $subject = str_limit($player->name, 50) . ' ' . str_limit($game->team, 20) . ' ' . $status;
     Mail::send('emails.game_visit', ['player' => $player, 'game' => $game, 'status' => $status], function ($m) use($users, $subject) {
         foreach ($users as $user) {
             if ($user->isAdmin()) {
                 $m->to($user->email);
             }
         }
         $m->subject($subject);
     });
 }
コード例 #7
0
ファイル: PlayerQueryTest.php プロジェクト: Leammas/i-hunter
 public function testByAgent()
 {
     $this->assertCount(1, Player::find()->byAgent('foo')->all());
 }
コード例 #8
0
 /**
  * Handle ajax request from /admin/players
  */
 public function playerAjaxHandler(Request $request, UserRepository $users)
 {
     $action = isset($_GET['action']) ? $_GET['action'] : "";
     $player = Player::find($request->input('pid'));
     if (!$player) {
         abort(404, trans('general.unexistent-player'));
     }
     if ($action == "preference") {
         $this->validate($request, ['preference' => 'required|preference']);
         if ($player->setPreference($request->input('preference'))) {
             return json('角色 ' . $player->player_name . ' 的优先模型已更改至 ' . $request->input('preference'), 0);
         }
     } elseif ($action == "texture") {
         $this->validate($request, ['model' => 'required|model', 'tid' => 'required|integer']);
         if (!Texture::find($request->tid)) {
             return json("材质 tid.{$request->tid} 不存在", 1);
         }
         if ($player->setTexture(['tid_' . $request->model => $request->tid])) {
             return json("角色 {$player->player_name} 的材质修改成功", 0);
         }
     } elseif ($action == "owner") {
         $this->validate($request, ['pid' => 'required|integer', 'uid' => 'required|integer']);
         $user = $users->get($request->input('uid'));
         if (!$user) {
             return json('不存在的用户', 1);
         }
         if ($player->setOwner($request->input('uid'))) {
             return json("角色 {$player->player_name} 已成功让渡至 " . $user->getNickName(), 0);
         }
     } elseif ($action == "delete") {
         if ($player->delete()) {
             return json('角色已被成功删除', 0);
         }
     } else {
         return json('非法参数', 1);
     }
 }