I have a base controller:
<?php
namespace App\Http\Controllers;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Routing\Controller as BaseController;
use Auth;
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
public function __construct()
{
$user = Auth::user();
if (!empty($user))
{
$uid = $user->id;
DB::table("users")
->where("id", $uid)
->update(array(
'last_time_page_accessed' => time(),
));
}
}
}
The problem is, even if I am logged in, it doesn't reach the $uid = $user->id part, because the $user object is always empty.
This is how I call it from the main controller:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Redirect;
use Auth;
use DB;
use App\Files;
use Illuminate\Support\Facades\Session;
use Illuminate\Support\Facades\Storage;
class ChatController extends Controller
{
public function __construct()
{
parent::__construct();
$this->middleware('auth');
}
}
What am i missing? Why can't it access it?
UPDATE
I tried switching these, and it also didn't work:
public function __construct()
{
$this->middleware('auth');
parent::__construct();
}