public function testGetRootEqualsValueIfSetIfUnpersisted() { $parent = Category::roots()->first(); $child = new Category(); $child->setAttribute($child->getParentColumnName(), $parent->getKey()); $this->assertEquals($child->getRoot(), $parent); }
public function testRebuildPresevesRootNodes() { $root1 = Category::create(array('name' => 'Test Root 1')); $root2 = Category::create(array('name' => 'Test Root 2')); $root3 = Category::create(array('name' => 'Test Root 3')); $root2->makeChildOf($root1); $root3->makeChildOf($root1); $lastRoot = Category::roots()->reOrderBy($root1->getLeftColumnName(), 'desc')->first(); Category::query()->update(array('lft' => null, 'rgt' => null)); Category::rebuild(); $this->assertEquals($lastRoot, Category::roots()->reOrderBy($root1->getLeftColumnName(), 'desc')->first()); }
public function renderCategoryHTMLTree() { $roots = \Category::roots()->get(); $table = '<table>'; foreach ($roots as $root) { if (!\Auth::check()) { if ($root->status == 1) { $table .= self::renderNodeHTMLTree($root); } } else { $table .= self::renderNodeHTMLTree($root); } } $table .= '</table>'; return $table; }