diff options
author | Christopher Vollick <psycotica0@gmail.com> | 2009-12-11 10:34:57 -0500 |
---|---|---|
committer | Christopher Vollick <psycotica0@gmail.com> | 2009-12-11 10:34:57 -0500 |
commit | 280b0b500f5f374094794648942571237ca8c687 (patch) | |
tree | 28e85ed548d4a3c7ca7cf3756ee779e2699509c6 /scripts | |
parent | 89256fa754c1e03b822b8eeac388cc822b3c58ca (diff) |
Added UserEmail script.
Used to query user's emails.
Mostly used for administration, to see if a user requesting something is who they say.
Also, some people assume that the admin knows this data, and says things like:
"If you could do _____ with the account connected to this email".
It'd be nice if we could do that without raw SQL.
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/useremail.php | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/scripts/useremail.php b/scripts/useremail.php new file mode 100644 index 000000000..6676a87c8 --- /dev/null +++ b/scripts/useremail.php @@ -0,0 +1,77 @@ +#!/usr/bin/env php +<?php +/* + * StatusNet - a distributed open-source microblogging tool + * Copyright (C) 2008, 2009, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); + +$shortoptions = 'i:n:e:'; +$longoptions = array('id=', 'nickname=', 'email='); + +$helptext = <<<END_OF_USEREMAIL_HELP +useremail.php [options] +Queries a user's registered email address, or queries the users with a given registered email. + + -i --id id of the user to query + -n --nickname nickname of the user to query + -e --email email address to query + +END_OF_USEREMAIL_HELP; + +require_once INSTALLDIR.'/scripts/commandline.inc'; + +if (have_option('i', 'id')) { + $id = get_option_value('i', 'id'); + $user = User::staticGet('id', $id); + if (empty($user)) { + print "Can't find user with ID $id\n"; + exit(1); + } +} else if (have_option('n', 'nickname')) { + $nickname = get_option_value('n', 'nickname'); + $user = User::staticGet('nickname', $nickname); + if (empty($user)) { + print "Can't find user with nickname '$nickname'\n"; + exit(1); + } +} + +if (!empty($user)) { + if (empty($user->email)) { + print "No email registered for user '$user->nickname'\n"; + } else { + print "$user->email\n"; + } + exit(0); +} + +if (have_option('e', 'email')) { + $user = new User(); + $user->email = get_option_value('e', 'email'); + $user->find(false); + if (!$user->fetch()) { + print "No users with email $user->email\n"; + exit(0); + } + do { + print "$user->id $user->nickname\n"; + } while ($user->fetch()); +} else { + print "You must provide either an ID, email, or a nickname.\n"; + exit(1); +} |