Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

weeksj's avatar

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:

http://i.imgur.com/C4LqOLJ.png

0 likes
0 replies

Please or to participate in this conversation.