コード例 #1
0
 /**
  * Display the highscore for a specific world.
  *
  * @param  string  $slug  null
  * @param  string  $sort  null
  * @return \Illuminate\View\View
  */
 public function show($slug = null, $sort = null)
 {
     $world = world_by_slug($slug);
     $page = (int) app('request')->get('page', 1);
     list($sort, $columns) = $this->getSortable($world ? $sort : $slug);
     $players = $this->getPlayers($world, $columns);
     if ($page > 1 and $page > $players->lastPage()) {
         return redirect(url('/highscore', $world ? [$world->slug(), $sort] : $sort));
     }
     return view('theme::highscore.show', compact('world', 'players', 'sort'));
 }
コード例 #2
0
ファイル: RouteServiceProvider.php プロジェクト: apolune/core
 /**
  * Register route models.
  *
  * @param  \Illuminate\Routing\Router  $router
  * @return void
  */
 protected function registerModels(Router $router)
 {
     $router->model('account', Account::class);
     $router->model('player', Player::class, function ($value) {
         $value = str_replace('-', ' ', urldecode($value));
         if (preg_match('/^[0-9]+$/', $value)) {
             throw new NotFoundHttpException();
         }
         if ($model = app('player')->whereName($value)->first()) {
             return $model;
         }
         throw new NotFoundPlayerException();
     });
     $router->bind('world', function ($value) {
         return world_by_slug($value);
     });
 }