Creating a live data driven dashboard with pusher?
Hello everyone, I have been learning Laravel for a few months now and have been building a fictional pizza takeaway site to learn, I have got database side of things working ok, but I have been wanting to implement more live elements and have watched the Pusher Awesomeness vid a bunch of times : ) Jeffery mentioned you could put JSON into the javascript part of it? Also in another video he mentioned that just returning data would automatically create a JSON api?
But I can't figure out how to get the data of new orders to my dashboard, my code is probably bad, not sure if anyone could help?
My route:
Route::get('/staff', [
'uses' => 'StaffController@getIndex',
'as' => 'staff',
'middleware' => 'roles',
'roles' => ['Manager', 'Pizzaiolo']
]);
Controller:
public function getIndex() {
$userId = Auth::id();
$user_info = User::find($userId);
$orders_open = Order::where('order_complete', 0)
->paginate(6);
$orders_open->transform(function($order, $key) {
$order->cart = unserialize($order->cart);
return $order;
});
$orders_closed = Order::where('order_complete', 1)
->orderBy('id', 'desc')
->take(3)
->get();
$orders_closed->transform(function($order, $key) {
$order->cart = unserialize($order->cart);
return $order;
});
return view('staff.dashboard', ['orders_open' => $orders_open, 'orders_closed' => $orders_closed, 'user_info' => $user_info]);
}
The dashboard where the order box should pop up as the order goes through:
Please or to participate in this conversation.