X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModel%2FUser.php;h=93538bce641d684ba3601767fdffcc1a67f7288d;hb=f6e4984d7ee6690742da8d3a925b038a7bf9da09;hp=92f50dd25cdc89e920e67c80dd0f664cf25b4e9e;hpb=63da4a75e9da71a2decebd81b62554457dbd1fb5;p=friendica.git diff --git a/src/Model/User.php b/src/Model/User.php index 92f50dd25c..93538bce64 100644 --- a/src/Model/User.php +++ b/src/Model/User.php @@ -1,6 +1,6 @@ $uid]); if (DBA::isResult($user)) { @@ -499,26 +498,6 @@ class User return $default_group; } - - /** - * Authenticate a user with a clear text password - * - * @param mixed $user_info - * @param string $password - * @param bool $third_party - * @return int|boolean - * @deprecated since version 3.6 - * @see User::getIdFromPasswordAuthentication() - */ - public static function authenticate($user_info, $password, $third_party = false) - { - try { - return self::getIdFromPasswordAuthentication($user_info, $password, $third_party); - } catch (Exception $ex) { - return false; - } - } - /** * Authenticate a user with a clear text password * @@ -871,19 +850,46 @@ class User break; } - $updated = ''; - $imagetype = IMAGETYPE_JPEG; + $updated = ''; + $mimetype = ''; $photo = Photo::selectFirst(['type', 'created', 'edited', 'updated'], ["scale" => $scale, 'uid' => $user['uid'], 'profile' => true]); if (!empty($photo)) { - $updated = max($photo['created'], $photo['edited'], $photo['updated']); + $updated = max($photo['created'], $photo['edited'], $photo['updated']); + $mimetype = $photo['type']; + } - if (in_array($photo['type'], ['image/png', 'image/gif'])) { - $imagetype = IMAGETYPE_PNG; - } + return $url . $user['nickname'] . Images::getExtensionByMimeType($mimetype) . ($updated ? '?ts=' . strtotime($updated) : ''); + } + + /** + * Get banner link for given user + * + * @param array $user + * @return string banner link + * @throws Exception + */ + public static function getBannerUrl(array $user):string + { + if (empty($user['nickname'])) { + DI::logger()->warning('Missing user nickname key', ['trace' => System::callstack(20)]); + } + + $url = DI::baseUrl() . '/photo/banner/'; + + $updated = ''; + $mimetype = ''; + + $photo = Photo::selectFirst(['type', 'created', 'edited', 'updated'], ["scale" => 3, 'uid' => $user['uid'], 'photo-type' => Photo::USER_BANNER]); + if (!empty($photo)) { + $updated = max($photo['created'], $photo['edited'], $photo['updated']); + $mimetype = $photo['type']; + } else { + // Only for the RC phase: Don't return an image link for the default picture + return ''; } - return $url . $user['nickname'] . image_type_to_extension($imagetype) . ($updated ? '?ts=' . strtotime($updated) : ''); + return $url . $user['nickname'] . Images::getExtensionByMimeType($mimetype) . ($updated ? '?ts=' . strtotime($updated) : ''); } /** @@ -911,18 +917,18 @@ class User $using_invites = DI::config()->get('system', 'invitation_only'); - $invite_id = !empty($data['invite_id']) ? Strings::escapeTags(trim($data['invite_id'])) : ''; - $username = !empty($data['username']) ? Strings::escapeTags(trim($data['username'])) : ''; - $nickname = !empty($data['nickname']) ? Strings::escapeTags(trim($data['nickname'])) : ''; - $email = !empty($data['email']) ? Strings::escapeTags(trim($data['email'])) : ''; - $openid_url = !empty($data['openid_url']) ? Strings::escapeTags(trim($data['openid_url'])) : ''; - $photo = !empty($data['photo']) ? Strings::escapeTags(trim($data['photo'])) : ''; - $password = !empty($data['password']) ? trim($data['password']) : ''; - $password1 = !empty($data['password1']) ? trim($data['password1']) : ''; - $confirm = !empty($data['confirm']) ? trim($data['confirm']) : ''; + $invite_id = !empty($data['invite_id']) ? trim($data['invite_id']) : ''; + $username = !empty($data['username']) ? trim($data['username']) : ''; + $nickname = !empty($data['nickname']) ? trim($data['nickname']) : ''; + $email = !empty($data['email']) ? trim($data['email']) : ''; + $openid_url = !empty($data['openid_url']) ? trim($data['openid_url']) : ''; + $photo = !empty($data['photo']) ? trim($data['photo']) : ''; + $password = !empty($data['password']) ? trim($data['password']) : ''; + $password1 = !empty($data['password1']) ? trim($data['password1']) : ''; + $confirm = !empty($data['confirm']) ? trim($data['confirm']) : ''; $blocked = !empty($data['blocked']); $verified = !empty($data['verified']); - $language = !empty($data['language']) ? Strings::escapeTags(trim($data['language'])) : 'en'; + $language = !empty($data['language']) ? trim($data['language']) : 'en'; $netpublish = $publish = !empty($data['profile_publish_reg']);