public function run($executed) { $streams = Stream::all(); /* * Create a new array with streams sorted by provider */ $streamsByProvider = []; foreach ($streams as $stream) { if (isset($stream->provider)) { $streamsByProvider[$stream->provider][$stream->permanent_id] = $stream; } else { $streamsByProvider[$stream->provider] = [$stream->permanent_id => $stream]; } } /* * Run trough the providers and handle their streams */ foreach ($streamsByProvider as $provider => $streams) { switch ($provider) { case 'twitch': $twitchApi = new TwitchApi(); $twitchApi->updateStreams($streams); break; case 'hitbox': $hitboxApi = new HitboxApi(); $hitboxApi->updateStreams($streams); break; } } }
/** * Show a stream * * @param int $id The id of the stream * @return void */ public function show($id) { $stream = Stream::findOrFail($id); $stream->access_counter++; $stream->save(); $this->title($stream->title); $this->pageView('streams::show', compact('stream')); }
public function globalSearch($subject) { $streams = Stream::where('title', 'LIKE', '%' . $subject . '%')->get(); $results = array(); foreach ($streams as $stream) { $results[$stream->title] = URL::to('streams/' . $stream->id . '/' . $stream->slug); } return $results; }
public function render($parameters = array()) { $streams = Stream::orderBy('online', 'DESC')->orderBy('viewers', 'DESC')->take(5)->get(); return View::make('streams::widget_streams', compact('streams'))->render(); }
public function render($parameters = array()) { $limit = isset($parameters['limit']) ? (int) $parameters['limit'] : self::LIMIT; $streams = Stream::orderBy('online', 'DESC')->orderBy('viewers', 'DESC')->take($limit)->get(); return View::make('streams::widget', compact('streams'))->render(); }