| | <?php |
| |
|
| | namespace Kanboard\Core\User\Avatar; |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | class AvatarManager |
| | { |
| | |
| | |
| | |
| | |
| | |
| | |
| | private $providers = array(); |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function register(AvatarProviderInterface $provider) |
| | { |
| | $this->providers[] = $provider; |
| | return $this; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function render($user_id, $username, $name, $email, $avatar_path, $size) |
| | { |
| | $user = array( |
| | 'id' => $user_id, |
| | 'username' => $username, |
| | 'name' => $name, |
| | 'email' => $email, |
| | 'avatar_path' => $avatar_path, |
| | ); |
| |
|
| | krsort($this->providers); |
| |
|
| | foreach ($this->providers as $provider) { |
| | if ($provider->isActive($user)) { |
| | return $provider->render($user, $size); |
| | } |
| | } |
| |
|
| | return ''; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function renderDefault($size) |
| | { |
| | if (count($this->providers) > 0) { |
| | ksort($this->providers); |
| | $provider = current($this->providers); |
| |
|
| | $user = array( |
| | 'id' => 0, |
| | 'username' => '', |
| | 'name' => '?', |
| | 'email' => '', |
| | 'avatar_path' => '', |
| | ); |
| |
|
| | return $provider->render($user, $size); |
| | } |
| |
|
| | return ''; |
| | } |
| | } |
| |
|