File: D:/HostingSpaces/netwerkbrabant/netwerkbrabant.nl/app/KommaApp/Partners/PartnerComposer.php
<?php
namespace App\KommaApp\Partners;
use App\KommaApp\Partners\Models\Partner;
use Illuminate\View\View;
class PartnerComposer
{
public static $partners;
/**
* Bind data to the view.
*
* @param View $view
* @return void
*/
public function compose(View $view)
{
// Only load the partners if the static isn't filled yet
if(!static::$partners) static::$partners = Partner::with(['images', 'type', 'type.translation'])->orderBy('name')->get();
$partners = [];
// Prepare the date for html
foreach (static::$partners as $partnerModel)
{
$partner = [
'name' => $partnerModel->name,
'function' => $partnerModel->type->translation->name,
];
if($partnerModel->images->count() != 0)
$partner['image'] = $partnerModel->images->first()->small_image_url;
$partners[] = $partner;
}
$partners = collect($partners);
$view->with('partners', $partners);
}
}