| | <?php |
| |
|
| | namespace Kanboard\Core\User; |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | class UserProperty |
| | { |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public static function getProperties(UserProviderInterface $user) |
| | { |
| | $properties = array( |
| | 'username' => $user->getUsername(), |
| | 'name' => $user->getName(), |
| | 'email' => $user->getEmail(), |
| | 'role' => $user->getRole(), |
| | $user->getExternalIdColumn() => $user->getExternalId(), |
| | ); |
| |
|
| | $properties = array_merge($properties, $user->getExtraAttributes()); |
| |
|
| | return array_filter($properties, array(__NAMESPACE__.'\UserProperty', 'isNotEmptyValue')); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public static function filterProperties(array $profile, array $properties) |
| | { |
| | $excludedProperties = explode_csv_field(EXTERNAL_AUTH_EXCLUDE_FIELDS); |
| | $values = array(); |
| |
|
| | foreach ($properties as $property => $value) { |
| | if (self::isNotEmptyValue($value) && |
| | ! in_array($property, $excludedProperties) && |
| | array_key_exists($property, $profile) && |
| | $value !== $profile[$property]) { |
| | $values[$property] = $value; |
| | } |
| | } |
| |
|
| | return $values; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public static function isNotEmptyValue($value) |
| | { |
| | return $value !== null && $value !== ''; |
| | } |
| | } |
| |
|