public function postBannerGame() { $user = Auth::user(); $banners_cache = Cache::get('minigame_banners_' . $user->id); if (!$banners_cache) { return $this->reloadParentFrame(); } $banners = explode(",", Input::get('banner_ids')); if (count($banners) != floor(count($banners_cache) / 2)) { return $this->reloadParentFrame(); } $banners_cache_new = array(); foreach ($banners as $id) { if (!isset($banners_cache[$id])) { Cache::forget('minigame_banners_' . $user->id); return $this->reloadParentFrame(); } $banners_cache_new[$id] = $banners_cache[$id]; } foreach ($banners_cache as $id => $data) { $banner = Banner::where("_id", $id)->where("credits", ">=", 0.2)->first(); if ($banner != null) { $banner->decrement('credits', 0.2); $banner->increment('views'); banner_view_event($id); } } Cache::put('minigame_banners_' . $user->id, $banners_cache_new, 20); return Redirect::to('minigame/banners'); }
public function postSurf($type = "hover") { if ($type == "classic") { $page = "surf/classic"; } else { if ($type == "hover") { $page = "surf"; } } $minigame = $this->miniGames->checkGame(); if (!$minigame && $this->validators->get("surf")->fails()) { return Redirect::to($page)->withErrors($this->validators->get('surf')->errors()); } $user = Auth::user(); $credits = $minigame ?: Settings::get("memberships")[$user->membership]['credits_per_view']; if ($user->auto_assign > 0) { foreach ($user->websites()->where('auto_assign', '>', 0)->get() as $website) { $website->increment('credits', $credits * $website->auto_assign / 100); $website->save(); } } $user->increment('credits', $credits * (100 - $user->auto_assign) / 100); $user->increment('credits_today', $credits); $user->increment('views_today'); $user->increment('views_total'); surf_event($user, $credits); if ($user->upline != null) { $ref = \User::whereId($user->upline)->first(); if ($ref != null) { $credits = number_format(Settings::get("memberships")[$ref->membership]['referral_percent'] / 100 * $credits, 2); $ref->increment("credits", $credits); ref_surf_event($ref, $credits); } } if ($minigame) { return Redirect::to($page); } $website = $this->website->where("_id", Input::get('id'))->where("credits", ">=", 1)->first(); if ($website != null) { $website->decrement('credits'); $website->increment('views'); website_view_event(Input::get('id'), Input::get('rating')); } $banner = $this->banner->where("_id", Input::get('banner_id'))->where("credits", ">=", 0.2)->first(); if ($banner != null) { $banner->decrement('credits', 0.2); $banner->increment('views'); banner_view_event(Input::get('banner_id')); } return Redirect::to($page); }