Browse Source

Merge pull request #858 from franzliedke/patch-14

[Auth] Eloquent driver does now allow login via object
Taylor Otwell 12 years ago
parent
commit
5b14091e3f
1 changed files with 10 additions and 4 deletions
  1. 10 4
      laravel/auth/drivers/eloquent.php

+ 10 - 4
laravel/auth/drivers/eloquent.php

@@ -7,14 +7,20 @@ class Eloquent extends Driver {
 	 *
 	 * If the user is a guest, null should be returned.
 	 *
-	 * @param  int         $id
+	 * @param  int|object  $token
 	 * @return mixed|null
 	 */
-	public function retrieve($id)
+	public function retrieve($token)
 	{
-		if (filter_var($id, FILTER_VALIDATE_INT) !== false)
+		// We return an object here either if the passed token is an integer (ID)
+		// or if we are passed a model object of the correct type
+		if (filter_var($token, FILTER_VALIDATE_INT) !== false)
 		{
-			return $this->model()->find($id);
+			return $this->model()->find($token);
+		}
+		else if (get_class($token) == Config::get('auth.model'))
+		{
+			return $token;
 		}
 	}