1
0
mirror of https://github.com/BookStackApp/BookStack.git synced 2025-07-28 17:02:04 +03:00

Made social accounts attachable

This commit is contained in:
Dan Brown
2015-09-04 20:40:36 +01:00
parent 3d18a04c39
commit eac7378ce0
14 changed files with 265 additions and 56 deletions

View File

@ -96,6 +96,31 @@ class User extends Model implements AuthenticatableContract, CanResetPasswordCon
$this->roles()->sync([$id]);
}
/**
* Get the social account associated with this user.
*
* @return \Illuminate\Database\Eloquent\Relations\HasMany
*/
public function socialAccounts()
{
return $this->hasMany('Oxbow\SocialAccount');
}
/**
* Check if the user has a social account,
* If a driver is passed it checks for that single account type.
* @param bool|string $socialDriver
* @return bool
*/
public function hasSocialAccount($socialDriver = false)
{
if($socialDriver === false) {
return $this->socialAccounts()->count() > 0;
}
return $this->socialAccounts()->where('driver', '=', $socialDriver)->exists();
}
/**
* Returns the user's avatar,
* Uses Gravatar as the avatar service.
@ -108,4 +133,9 @@ class User extends Model implements AuthenticatableContract, CanResetPasswordCon
$emailHash = md5(strtolower(trim($this->email)));
return '//www.gravatar.com/avatar/' . $emailHash . '?s=' . $size . '&d=identicon';
}
public function getEditUrl()
{
return '/users/' . $this->id;
}
}