/** * @param string|null $modelClass */ function __construct($modelClass = null) { $this->modelClass = $modelClass; if (is_null(static::$current)) { static::$current = $this; $this->level(0); } else { static::$current->addItem($this); $this->level(static::$current->level() + 1); } }
/** * @param string|null $modelClass */ function __construct($modelClass = null) { $admin = Admin::instance(); $this->router = $admin->router; $this->htmlBuilder = $admin->htmlBuilder; $this->modelClass = $modelClass; $this->subItems = []; if (is_null(static::$current)) { static::$current = $this; } else { static::$current->addItem($this); } }
/** @test */ public function it_renders() { $menuWithItems = new MenuItem(); $menuWithItems->label('With Items'); for ($i = 0; $i < 3; $i++) { $menu = new MenuItem(); $menu->label('Test Label')->icon('fa-test'); $result = $menu->render(); $this->assertEquals('<li><a><i></i> Test Label</a></li>', $result); $menuWithItems->addItem($menu); } $result = $menuWithItems->render(); $this->assertEquals('<li><a><i></i> With Items<span></span></a><ul><li><a><i></i> Test Label</a></li><li><a><i></i> Test Label</a></li><li><a><i></i> Test Label</a></li></ul></li>', $result); }