From 495ff1b19784cfb73fd2737ba40e0de46e3db3fc Mon Sep 17 00:00:00 2001 From: Shawn McCool Date: Mon, 28 May 2012 10:44:22 +0200 Subject: [PATCH] eloquent model detection moved to eloquent driver --- laravel/auth/drivers/driver.php | 5 ----- laravel/auth/drivers/eloquent.php | 25 ++++++++++++++++++++++++- 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/laravel/auth/drivers/driver.php b/laravel/auth/drivers/driver.php index 21a5f5ad..49df7c06 100644 --- a/laravel/auth/drivers/driver.php +++ b/laravel/auth/drivers/driver.php @@ -5,7 +5,6 @@ use Laravel\Config; use Laravel\Session; use Laravel\Crypter; -use Laravel\Database\Eloquent\Model as Eloquent; abstract class Driver { @@ -107,10 +106,6 @@ abstract public function attempt($arguments = array()); */ public function login($token, $remember = false) { - // if the token is an Eloquent model - // set the token from the id field - if ($token instanceof Eloquent) $token = $token->get_key(); - $this->token = $token; $this->store($token); diff --git a/laravel/auth/drivers/eloquent.php b/laravel/auth/drivers/eloquent.php index 5c0437d6..29416733 100644 --- a/laravel/auth/drivers/eloquent.php +++ b/laravel/auth/drivers/eloquent.php @@ -15,7 +15,7 @@ public function retrieve($id) if (filter_var($id, FILTER_VALIDATE_INT) !== false) { return $this->model()->find($id); - } + } } /** @@ -43,6 +43,29 @@ public function attempt($arguments = array()) return false; } + /** + * Login the user assigned to the given token. + * + * The token is typically a numeric ID for the user. + * + * @param mixed $token + * @param bool $remember + * @return bool + */ + public function login($token, $remember = false) + { + // if the token is an Eloquent model get the primary key + if ($token instanceof \Eloquent) $token = $token->get_key(); + + $this->token = $token; + + $this->store($token); + + if ($remember) $this->remember($token); + + return true; + } + /** * Get a fresh model instance. *