HoFComposer.php 941 Bytes
<?php

namespace FootyRoom\Http\ViewComposers;

use FootyRoom\Queries\HoFQuery;
use Illuminate\Contracts\View\View;

class HoFComposer
{
    /**
     * @var \FootyRoom\Queries\HoFQuery
     */
    protected $hofQuery;

    /**
     * Constructor.
     *
     * @param \FootyRoom\Queries\HoFQuery $hofQuery
     */
    public function __construct(HoFQuery $hofQuery)
    {
        $this->hofQuery = $hofQuery;
    }

    /**
     * Compose the view.
     *
     * @param \Illuminate\Contracts\View\View $view
     * @param string $decade
     *
     * @return \Illuminate\Contracts\View\View
     */
    public function compose(View $view, $decade = null)
    {
        if ($decade) {
            $players = $this->hofQuery->findByPeriod($decade);

            $view->with('decade', $decade);
        } else {
            $players = $this->hofQuery->find();
        }

        $view->with('players', $players);

        return $view;
    }
}