<?php namespace Litecms\Rental; use User; class Rental { /** * $rentals object. */ protected $rentals; /** * Constructor. */ public function __construct(\Litecms\Rental\Interfaces\RentalsRepositoryInterface $rentals) { $this->rentals = $rentals; } /** * Returns count of rental. * * @param array $filter * * @return int */ public function count() { return 0; } /** * Make gadget View * * @param string $view * * @param int $count * * @return View */ public function gadget($view = 'admin.rentals.gadget', $count = 10) { if (User::hasRole('user')) { $this->rentals->pushCriteria(new \Litepie\Litecms\Repositories\Criteria\RentalsUserCriteria()); } $rentals = $this->rentals->scopeQuery(function ($query) use ($count) { return $query->orderBy('id', 'DESC')->take($count); })->all(); return view('rental::' . $view, compact('rentals'))->render(); } }