
PK 
<?php
namespace App\Http\ViewComposers;
use App\Category;
use Illuminate\View\View;
class MenuComposer
{
protected $categoryMenu = [];
protected $cartCount = 0;
/**
* Create a movie composer.
*
* @return void
*/
public function __construct()
{
try {
$this->categoryMenu = Category::select('id', 'parent_id', 'category_name', 'category_slug', 'category_image', 'category_imagethumb', 'category_sortby', 'isvisible')->where('isactive', 1)->where('isdelete', 1)->orderBy('category_sortby', 'ASC')->get()->toArray();//all();
} catch (\Exception $e) {
return view('errors.500');
//p($e->getMessage()); exit;
}
}
/**
* Bind data to the view.
*
* @param View $view
* @return void
*/
public function compose(View $view)
{
// Create a multidimensional array to conatin a list of items and parents
$menuData = ['items' => [], 'parents' => []];
// Builds the array lists with data from the menu table
//while ($menuItem = mysql_fetch_assoc($result))
foreach ($this->categoryMenu as $key => $value) {
/* if ($value['isvisible'] == 1) {
$categories[] = $value;
}
if ($value['parent_id'] != 0) {
$trandeCategories[] = $value;
} */
//p($value);
// Creates entry into items array with current menu item id ie. $menuData['items'][1]
//$menuData['items'][$menuItem['id']] = $menuItem;
$menuData['items'][$value['id']] = $value;
// Creates entry into parents array. Parents array contains a list of all items with children
// $menuData['parents'][$menuItem['parent']][] = $menuItem['id'];
$menuData['parents'][$value['parent_id']][] = $value['id'];
}
$menus = $menuData;
$view->with(compact('menus'));
}
}


PK 99