/** * Delete a menu item * @param Request $request * @return mixed */ public function delete(Request $request) { $menuItem = $this->menuItem->find($request->get('menuitem')); if (!$menuItem) { return Response::json(['errors' => true]); } $this->menuItem->destroy($menuItem); return Response::json(['errors' => false]); }
/** * @param Menuitem $parent * @param array $children */ private function handleChildrenForParent(Menuitem $parent, array $children) { foreach ($children as $position => $item) { $menuItem = $this->menuItemRepository->find($item['id']); $this->savePosition($menuItem, $position); $this->makeItemChildOf($menuItem, $parent->id); if ($this->hasChildren($item)) { $this->handleChildrenForParent($menuItem, $item['children']); } } }