public function order() { $category_order = json_decode(Input::get('order')); $video_categories = VideoCategory::all(); $order = 1; foreach ($category_order as $category_level_1) { $level1 = VideoCategory::find($category_level_1->id); if ($level1->id) { $level1->order = $order; $level1->parent_id = NULL; $level1->save(); $order += 1; } if (isset($category_level_1->children)) { $children_level_1 = $category_level_1->children; foreach ($children_level_1 as $category_level_2) { $level2 = VideoCategory::find($category_level_2->id); if ($level2->id) { $level2->order = $order; $level2->parent_id = $level1->id; $level2->save(); $order += 1; } if (isset($category_level_2->children)) { $children_level_2 = $category_level_2->children; foreach ($children_level_2 as $category_level_3) { $level3 = VideoCategory::find($category_level_3->id); if ($level3->id) { $level3->order = $order; $level3->parent_id = $level2->id; $level3->save(); $order += 1; } } } } } } return 1; }