for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php namespace Modules\Menu\Events\Handlers;
use Modules\Menu\Events\MenuItemWasCreated;
use Modules\Menu\Repositories\MenuItemRepository;
class MakeMenuItemChildOfRoot
{
/**
* @var MenuItemRepository
*/
private $menuItem;
public function __construct(MenuItemRepository $menuItem)
$this->menuItem = $menuItem;
}
public function handle(MenuItemWasCreated $event)
$root = $this->menuItem->getRootForMenu($event->menuItem->menu_id);
if (! $this->isRoot($event->menuItem)) {
$event->menuItem->makeChildOf($root);
* Check if the given menu item is not already a root menu item
* @param object $menuItem
* @return bool
private function isRoot($menuItem)
return (bool) $menuItem->is_root;