Archived
1
0
Fork 0

app/library/OAuth/UserData: make all concrete classes extend UserData.

This commit is contained in:
Henrik Hautakoski 2018-08-14 22:33:26 +02:00
parent 4a22f67e62
commit 43417740a7
No known key found for this signature in database
GPG key ID: 839F3A7EAFAEAFAA
4 changed files with 24 additions and 243 deletions

View file

@ -2,67 +2,18 @@
namespace Httpcb\OAuth\UserData;
class Github implements UserDataInterface
class Github extends UserData
{
protected $data;
protected $_provider = 'Github';
/**
* {@inheritDoc}
*/
public function __construct(array $data)
{
$this->data = $data;
}
/**
* {@inheritDoc}
*/
public function getProvider()
{
return 'Github';
}
/**
* {@inheritDoc}
*/
public function getId()
{
return (int) $this->data['id'];
}
/**
* {@inheritDoc}
*/
public function getUsername()
{
return $this->data['login'];
}
/**
* {@inheritDoc}
*/
public function getName()
{
return $this->data['name'];
}
public function getFirstname()
{
$pos = strpos($this->getName(), ' ');
return $pos !== false ? substr($this->getName(), 0, $pos) : $this->getName();
}
public function getLastname()
{
$pos = strpos($this->getName(), ' ');
return $pos !== false ? substr($this->getName(), $pos+1) : null;
}
/**
* {@inheritDoc}
*/
public function getEmail()
{
return $this->data['email'];
$this->_id = $data['id'];
$this->_username = $data['login'];
$this->_name = $data['name'];
$this->_email = $data['email'];
}
}