App\Http\Controllers\NoticesController::push PHP Method

push() public method

public push ( $force = false )
    public function push($force = false)
    {
        $date = date('Y-m-d H:i:s');
        $data = ['push' => Notice::auth()->ofStatus('new')->count()];
        $request = \Request::all();
        if (!isset($request['date'])) {
            $data['date'] = $date;
            $data['notices'] = Notice::auth()->desc()->get()->slice(0, 10)->toArray();
        } else {
            $data['date'] = $request['date'];
            if ($force || Notice::auth()->after($data['date'])->count()) {
                $data['notices'] = Notice::auth()->desc()->get()->slice(0, 10)->toArray();
            }
            if (isset($data['notices']) && count($data['notices'])) {
                $data['date'] = $date;
            } else {
                unset($data['notices']);
            }
        }
        if (isset($data['notices'])) {
            $data['action_types'] = $this->getActions($data['notices']);
        }
        $this->json_or_dd($data);
    }