38 lines
942 B
PHP
38 lines
942 B
PHP
<?php
|
|
|
|
namespace App\Livewire\MoviePage\Tabs;
|
|
|
|
use App\Models\Movie;
|
|
use App\Models\Person;
|
|
use Livewire\Component;
|
|
|
|
class Crew extends Component
|
|
{
|
|
public $movie;
|
|
public $peopleByDepartment;
|
|
|
|
public function render()
|
|
{
|
|
return view('livewire.movie-page.tabs.crew');
|
|
}
|
|
|
|
public function mount()
|
|
{
|
|
$this->movie = Movie::with('crewList')->where('id', $this->movie->id)->first();
|
|
|
|
$peopleByDepartment = [];
|
|
|
|
foreach ($this->movie->crewList as $castMember) {
|
|
|
|
if (!isset($peopleByDepartment[$castMember->pivot->department])) {
|
|
$peopleByDepartment[$castMember->pivot->department] = [];
|
|
}
|
|
$peopleByDepartment[$castMember->pivot->department][] = [
|
|
Person::find($castMember->pivot->person_id),
|
|
$castMember->pivot->job,
|
|
];
|
|
}
|
|
$this->peopleByDepartment = $peopleByDepartment;
|
|
}
|
|
}
|