Esempio n. 1
0
 public function save(Request $request)
 {
     $rules = ['language' => 'required|numeric|exists:refs,id', 'banner_types' => 'required|array', 'games' => 'required|array'];
     $this->validate($request, $rules);
     $language = $request->get('language');
     $language = Ref::find($language);
     if ($language && $language->type == 'language') {
         $this->user->language_id = $language->id;
         $this->user->save();
     } else {
         return Redirect::back()->withErrors(['language' => 'You must select your language']);
     }
     $bannerTypes = $request->get('banner_types');
     $bannersClean = [];
     foreach ($bannerTypes as $b) {
         $bannerType = Ref::find($b);
         if ($bannerType && $bannerType->type == 'banner_type') {
             $bannersClean[] = $b;
         }
     }
     if (count($bannersClean) == 0) {
         return Redirect::back()->withErrors(['banner_types' => 'You must select allowed banner types']);
     }
     $games = $request->get('games');
     $gamesClean = [];
     foreach ($games as $b) {
         $game = Ref::find($b);
         if ($game && $game->type == 'game') {
             $gamesClean[] = $b;
             if ($game->pid > 0) {
                 $gamesClean[] = $game->parent->id;
             }
         }
     }
     if (count($gamesClean) == 0) {
         return Redirect::back()->withErrors(['games' => 'You must select games you play']);
     }
     $gamesClean = array_unique($gamesClean);
     $this->user->refs()->sync(array_merge($bannersClean, $gamesClean));
     return redirect('/user/twitcher/profile');
 }
Esempio n. 2
0
 public function actionList($kat)
 {
     //$kat = \Yii::$app->request->get('kat');
     $ref = Ref::find()->where("cat = '{$kat}'")->all();
     return $this->render('list', ['ref' => $ref]);
 }