X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModel%2FUser.php;h=7432b75774b22516165ad664e1102fb4d3f97f91;hb=fa7cddc669036c2369103eefcc960d7b5343c9cd;hp=502bc4c97c1339e45e4eaa8403a9c5fcffa7bc5b;hpb=7f3fb34c24e30b79d8c25f63dbb2c3c3da79e599;p=friendica.git diff --git a/src/Model/User.php b/src/Model/User.php index 502bc4c97c..7432b75774 100644 --- a/src/Model/User.php +++ b/src/Model/User.php @@ -31,6 +31,23 @@ require_once 'include/text.php'; */ class User { + /** + * @brief Returns the user id of a given profile url + * + * @param string $profile + * + * @return integer user id + */ + public static function getIdForURL($url) + { + $self = DBA::selectFirst('contact', ['uid'], ['nurl' => normalise_link($url), 'self' => true]); + if (!DBA::isResult($self)) { + return false; + } else { + return $self['uid']; + } + } + /** * @brief Get owner data by user id * @@ -71,9 +88,11 @@ class User public static function getOwnerDataByNick($nick) { $user = DBA::selectFirst('user', ['uid'], ['nickname' => $nick]); + if (!DBA::isResult($user)) { return false; } + return self::getOwnerDataById($user['uid']); } @@ -493,7 +512,7 @@ class User $spubkey = $sres['pubkey']; $insert_result = DBA::insert('user', [ - 'guid' => System::createGUID(32), + 'guid' => System::createUUID(), 'username' => $username, 'password' => $new_password_encoded, 'email' => $email, @@ -728,13 +747,16 @@ class User DBA::insert('userd', ['username' => $user['nickname']]); // The user and related data will be deleted in "cron_expire_and_remove_users" (cronjobs.php) - DBA::update('user', ['account_removed' => true, 'account_expires_on' => DateTimeFormat::utcNow()], ['uid' => $uid]); + DBA::update('user', ['account_removed' => true, 'account_expires_on' => DateTimeFormat::utc(DateTimeFormat::utcNow() . " + 7 day")], ['uid' => $uid]); Worker::add(PRIORITY_HIGH, "Notifier", "removeme", $uid); // Send an update to the directory $self = DBA::selectFirst('contact', ['url'], ['uid' => $uid, 'self' => true]); Worker::add(PRIORITY_LOW, "Directory", $self['url']); + // Remove the user relevant data + Worker::add(PRIORITY_LOW, "RemoveUser", $uid); + if ($uid == local_user()) { unset($_SESSION['authenticated']); unset($_SESSION['uid']);