Viewing file: AbstractUser.php (3.63 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace Laravel\Socialite;
use ArrayAccess; use Laravel\Socialite\Contracts\User;
abstract class AbstractUser implements ArrayAccess, User { /** * The unique identifier for the user. * * @var mixed */ public $id;
/** * The user's nickname / username. * * @var string */ public $nickname;
/** * The user's full name. * * @var string */ public $name;
/** * The user's e-mail address. * * @var string */ public $email;
/** * The user's avatar image URL. * * @var string */ public $avatar;
/** * The user's raw attributes. * * @var array */ public $user;
/** * The user's other attributes. * * @var array */ public $attributes = [];
/** * Get the unique identifier for the user. * * @return string */ public function getId() { return $this->id; }
/** * Get the nickname / username for the user. * * @return string|null */ public function getNickname() { return $this->nickname; }
/** * Get the full name of the user. * * @return string|null */ public function getName() { return $this->name; }
/** * Get the e-mail address of the user. * * @return string|null */ public function getEmail() { return $this->email; }
/** * Get the avatar / image URL for the user. * * @return string|null */ public function getAvatar() { return $this->avatar; }
/** * Get the raw user array. * * @return array */ public function getRaw() { return $this->user; }
/** * Set the raw user array from the provider. * * @param array $user * @return $this */ public function setRaw(array $user) { $this->user = $user;
return $this; }
/** * Map the given array onto the user's properties. * * @param array $attributes * @return $this */ public function map(array $attributes) { $this->attributes = $attributes;
foreach ($attributes as $key => $value) { if (property_exists($this, $key)) { $this->{$key} = $value; } }
return $this; }
/** * Determine if the given raw user attribute exists. * * @param string $offset * @return bool */ #[\ReturnTypeWillChange] public function offsetExists($offset) { return array_key_exists($offset, $this->user); }
/** * Get the given key from the raw user. * * @param string $offset * @return mixed */ #[\ReturnTypeWillChange] public function offsetGet($offset) { return $this->user[$offset]; }
/** * Set the given attribute on the raw user array. * * @param string $offset * @param mixed $value * @return void */ #[\ReturnTypeWillChange] public function offsetSet($offset, $value) { $this->user[$offset] = $value; }
/** * Unset the given value from the raw user array. * * @param string $offset * @return void */ #[\ReturnTypeWillChange] public function offsetUnset($offset) { unset($this->user[$offset]); }
/** * Get a user attribute value dynamically. * * @param string $key * @return void */ public function __get($key) { return $this->attributes[$key] ?? null; } }
|