diff options
| author | Greg Roach <fisharebest@gmail.com> | 2016-01-23 22:10:39 +0000 |
|---|---|---|
| committer | Greg Roach <fisharebest@gmail.com> | 2016-01-23 22:10:39 +0000 |
| commit | a982a56ef7d6b5a6723d26c23d191468823d95c5 (patch) | |
| tree | df635f4c9e2556f12f3a4708ee2bf54b42eb0791 /app/User.php | |
| parent | f343289a73e89eafd47fc4cc963180c776c4c771 (diff) | |
| download | webtrees-a982a56ef7d6b5a6723d26c23d191468823d95c5.tar.gz webtrees-a982a56ef7d6b5a6723d26c23d191468823d95c5.tar.bz2 webtrees-a982a56ef7d6b5a6723d26c23d191468823d95c5.zip | |
Username versus email
Diffstat (limited to 'app/User.php')
| -rw-r--r-- | app/User.php | 38 |
1 files changed, 36 insertions, 2 deletions
diff --git a/app/User.php b/app/User.php index 94425c74e7..e50bd42cfe 100644 --- a/app/User.php +++ b/app/User.php @@ -60,7 +60,41 @@ class User { } /** - * Find the user with a specified user_id. + * Find the user with a specified user_name. + * + * @param string $user_name + * + * @return User|null + */ + public static function findByUserName($user_name) { + $user_id = Database::prepare( + "SELECT SQL_CACHE user_id FROM `##user` WHERE user_name = :user_name" + )->execute(array( + 'user_name' => $user_name, + ))->fetchOne(); + + return self::find($user_id); + } + + /** + * Find the user with a specified email address. + * + * @param string $email + * + * @return User|null + */ + public static function findByEmail($email) { + $user_id = Database::prepare( + "SELECT SQL_CACHE user_id FROM `##user` WHERE email = :email" + )->execute(array( + 'email' => $email, + ))->fetchOne(); + + return self::find($user_id); + } + + /** + * Find the user with a specified user_name or email address. * * @param string $identifier * @@ -268,7 +302,7 @@ class User { Database::prepare("DELETE `##block_setting` FROM `##block_setting` JOIN `##block` USING (block_id) WHERE user_id=?")->execute(array($this->user_id)); Database::prepare("DELETE FROM `##block` WHERE user_id=?")->execute(array($this->user_id)); Database::prepare("DELETE FROM `##user_gedcom_setting` WHERE user_id=?")->execute(array($this->user_id)); - Database::prepare("DELETE FROM `##gedcom_setting` WHERE setting_value=? AND setting_name in ('CONTACT_USER_ID', 'WEBMASTER_USER_ID')")->execute(array($this->user_id)); + Database::prepare("DELETE FROM `##gedcom_setting` WHERE setting_value=? AND setting_name IN ('CONTACT_USER_ID', 'WEBMASTER_USER_ID')")->execute(array($this->user_id)); Database::prepare("DELETE FROM `##user_setting` WHERE user_id=?")->execute(array($this->user_id)); Database::prepare("DELETE FROM `##message` WHERE user_id=?")->execute(array($this->user_id)); Database::prepare("DELETE FROM `##user` WHERE user_id=?")->execute(array($this->user_id)); |
