diff options
author | Evan Prodromou <evan@status.net> | 2010-12-06 17:21:38 -0500 |
---|---|---|
committer | Evan Prodromou <evan@status.net> | 2010-12-06 17:21:38 -0500 |
commit | b35352790f17ddaca4debe767f22198cf0343cbc (patch) | |
tree | a410977653f46f11f86ae0383b464ec25841c8f1 /classes/User.php | |
parent | 49757c79ee732cce179fe5f2d542dc93005943b5 (diff) | |
parent | 76f3dc32e0e1aa933931b7cc59030ae20bb4f89b (diff) |
Merge branch 'master' of gitorious.org:statusnet/mainline
Diffstat (limited to 'classes/User.php')
-rw-r--r-- | classes/User.php | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/classes/User.php b/classes/User.php index 964bc3e7f..c824ddb0c 100644 --- a/classes/User.php +++ b/classes/User.php @@ -917,4 +917,36 @@ class User extends Memcached_DataObject throw new ServerException(_('Single-user mode code called when not enabled.')); } } + + /** + * This is kind of a hack for using external setup code that's trying to + * build single-user sites. + * + * Will still return a username if the config singleuser/nickname is set + * even if the account doesn't exist, which normally indicates that the + * site is horribly misconfigured. + * + * At the moment, we need to let it through so that router setup can + * complete, otherwise we won't be able to create the account. + * + * This will be easier when we can more easily create the account and + * *then* switch the site to 1user mode without jumping through hoops. + * + * @return string + * @throws ServerException if no valid single user account is present + * @throws ServerException if called when not in single-user mode + */ + static function singleUserNickname() + { + try { + $user = User::singleUser(); + return $user->nickname; + } catch (Exception $e) { + if (common_config('singleuser', 'enabled') && common_config('singleuser', 'nickname')) { + common_log(LOG_WARN, "Warning: code attempting to pull single-user nickname when the account does not exist. If this is not setup time, this is probably a bug."); + return common_config('singleuser', 'nickname'); + } + throw $e; + } + } } |