Ejemplo n.º 1
0
 public function index()
 {
     $app = app();
     $details = $app->make('stdClass');
     // most recent purchases
     $details->most_recent = Movies::getMovieRecords('purchased', 'DESC', 10);
     // top rated movies
     $details->top_rated = Movies::getTopRated();
     foreach ($details->top_rated as $movie) {
         $movie->rating_display = $this->makeRatingStars($movie->rating);
     }
     // get most popular actors
     $details->actors = Persons::getActorCount(24);
     // get most popular directors
     $details->directors = Persons::getDirectorCount(24);
     $details->birthdays = Persons::getTodaysBirthdays();
     foreach ($details->birthdays as $birthday) {
         $birthday->age = $this->calculateAge($birthday->birthday, $birthday->deceased);
     }
     // highlight randomly selected movie
     $random_id = Movies::selectRandomFilm();
     $details->highlight = Movies::findorfail($random_id);
     $details->highlight->cast = $details->highlight->cast->take(3);
     $details->highlight->crew = Crew::where('movie_id', $random_id)->select(DB::raw('GROUP_CONCAT(CONCAT(persons.forename, " ", persons.surname) SEPARATOR ", ") as list'))->join('persons', 'persons.person_id', '=', 'crew.person_id')->groupBy('movie_id')->where('position', 'Director')->take(1)->get();
     $details->highlight->cover_count = strlen($details->highlight->cover);
     $details->highlight->rating_display = $this->makeRatingStars($details->highlight->rating);
     $details->decades = $this->makeDecades();
     $user = $this->isAdmin;
     return view('welcome', compact('details', 'user'));
 }