示例#1
0
 public function getInfos(&$dataProvider)
 {
     $arFantasies = [];
     foreach ($dataProvider->models as $model) {
         $arFantasies[$model->game][] = $model->fantasy_id;
     }
     //echo'<pre>';print_r($arFantasies);echo'</pre>';//die;
     foreach ($arFantasies as $game => $fanrasies) {
         switch ($game) {
             case GamesParams::GAME_DOTA:
                 $fantasyModel = new DotaFantasy();
                 $draftModel = new DotaDraft();
                 break;
             case GamesParams::GAME_POKER:
                 $fantasyModel = new PokerFantasy();
                 $draftModel = new PokerDraft();
                 break;
         }
         $fantasiesList = $fantasyModel->getFantasiesFromIds($fanrasies);
         $drafts_counts = $draftModel->getDraftsCount($fanrasies);
         //echo'<pre>';print_r($drafts_counts);echo'</pre>';//die;
         foreach ($dataProvider->models as $model) {
             if ($model->game == $game) {
                 foreach ($fantasiesList as $item) {
                     if ($item['id'] == $model->fantasy_id) {
                         $model->info = $item;
                     }
                 }
                 foreach ($drafts_counts as $id => $item) {
                     if ($id == $model->fantasy_id) {
                         $model->info['drafts_counts'] = $item;
                     }
                 }
             }
         }
     }
     return $dataProvider;
 }
示例#2
0
 public static function getFavFantasies($user_id = 0)
 {
     $sql = 'SELECT `id`, `fantasy_id`, `game` FROM ' . self::tableName() . ' WHERE `user_id` = :user_id ORDER BY `id` DESC LIMIT 0,4';
     $params = [':user_id' => $user_id];
     $rows = Yii::$app->db->createCommand($sql)->bindValues($params)->queryAll();
     //echo'<pre>';print_r($rows);echo'</pre>';//die;
     $arFantasies = [];
     foreach ($rows as $row) {
         $arFantasies[$row['game']][] = $row['fantasy_id'];
     }
     //echo'<pre>';print_r($arFantasies);echo'</pre>';//die;
     foreach ($arFantasies as $game => $fanrasies) {
         switch ($game) {
             case GamesParams::GAME_DOTA:
                 $fantasyModel = new DotaFantasy();
                 break;
             case GamesParams::GAME_POKER:
                 $fantasyModel = new PokerFantasy();
                 break;
         }
         $fantasiesList = $fantasyModel->getFantasiesFromIds($fanrasies);
         foreach ($rows as &$row) {
             if ($row['game'] == $game) {
                 foreach ($fantasiesList as $item) {
                     if ($item['id'] == $row['fantasy_id']) {
                         $row['info'] = $item;
                     }
                 }
             }
         }
         //echo'<pre>';print_r($fantasiesList);echo'</pre>';//die;
     }
     //echo'<pre>';print_r($rows);echo'</pre>';//die;
     return $rows;
 }