Example #1
0
 /**
  * @param $nodes
  * @param null $parent
  */
 protected static function buildCategoryTree($nodes, $parent = null)
 {
     foreach ($nodes as $node) {
         $category = new Category(['name' => $node['name'], 'announce' => 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit.<br>Sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.']);
         if ($parent === null) {
             $category->makeRoot();
         } else {
             $category->appendTo($parent);
         }
         $category->attachImage(__DIR__ . '/images/categories/' . $category->id . '.jpg');
         if (isset($node['nodes'])) {
             self::buildCategoryTree($node['nodes'], $category);
         }
     }
 }
 /**
  * Updates category attributes from form
  *
  * @param  Request              $request
  * @param  \App\Models\Category $category
  * @return View
  */
 public function update(EditCategoryRequest $request, Category $category)
 {
     // Set and save validated attributes
     $category->name = $request->input('name');
     $category->slug = $request->input('slug');
     $category->save();
     /**
      * If parent is set and if parent_id and category->id are not equal,
      * set parent category
      */
     $parentId = $request->input('parent_id');
     if (empty(trim($parentId))) {
         $category->makeRoot();
     } else {
         $parentCategory = Category::findOrFail($parentId);
         $category->makeChildOf($parentCategory);
     }
     return redirect(route('AdminCategoryIndex'));
 }