public function actionIndex()
 {
     Yii::$app->user->returnUrl = Yii::$app->request->url;
     $finishedTournaments = new ArrayDataProvider(['allModels' => Tournaments::getFinishedTournamentsOnePerCountry(), 'pagination' => false, 'sort' => ['attributes' => ['startsOn'], 'defaultOrder' => ['startsOn' => SORT_DESC]]]);
     if (Yii::$app->user->isGuest) {
         //list of active tournaments
         $tournaments = new ArrayDataProvider(['allModels' => Tournaments::activePendingTournamentsWithLeader(), 'pagination' => false]);
         return $this->render('indexGuest', compact('tournaments', 'finishedTournaments'));
     }
     //list of active tournaments
     $tournaments = new ArrayDataProvider(['allModels' => Tournaments::getActivePendingTournamentsNotParticipate(Yii::$app->user->id), 'pagination' => false, 'sort' => ['attributes' => ['startsOn'], 'defaultOrder' => ['startsOn' => SORT_DESC]]]);
     $userTournaments = new ArrayDataProvider(['allModels' => Tournaments::getActivePendingTournamentsUserParticipate(Yii::$app->user->id), 'pagination' => false]);
     return $this->render('indexUser', compact('tournaments', 'userTournaments', 'finishedTournaments'));
 }
 public function actionIndex()
 {
     if (Yii::$app->user->isGuest) {
         $dataProvider = new ArrayDataProvider(['allModels' => Tournaments::getAllTournaments()]);
         $dataProvider->sort = ['attributes' => ['startsOn'], 'defaultOrder' => ['startsOn' => SORT_DESC]];
         $dataProvider->pagination = ['pageSize' => 10];
         return $this->render('indexGuest', ['dataProvider' => $dataProvider]);
     }
     $user = Yii::$app->user->identity;
     Yii::$app->user->returnUrl = Yii::$app->request->url;
     //active tournaments where user participates
     $k = Tournaments::getActivePendingTournamentsUserParticipate($user->id);
     $userTournaments = new ArrayDataProvider(['allModels' => $k, 'sort' => ['attributes' => ['startsOn'], 'defaultOrder' => ['startsOn' => SORT_DESC]]]);
     $k = Tournaments::finishedTournamentsUserParticipated($user->id);
     $userFinishedTournaments = new ArrayDataProvider(['allModels' => $k, 'sort' => ['attributes' => ['startsOn'], 'defaultOrder' => ['startsOn' => SORT_DESC]]]);
     $k = Tournaments::getAllTournamentsUserNotParticipate($user->id);
     //all tournaments, those not finished - ability to start participating
     $notUserTournaments = new ArrayDataProvider(['allModels' => $k, 'sort' => ['attributes' => ['startsOn'], 'defaultOrder' => ['startsOn' => SORT_DESC]]]);
     return $this->render('indexUser', ['userTournaments' => $userTournaments, 'userFinishedTournaments' => $userFinishedTournaments, 'notUserTournaments' => $notUserTournaments]);
 }