From e97c06e8e27b4dce977a493a47c216d6c5796c2e Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Thu, 24 Jul 2008 19:55:08 -0400 Subject: [PATCH] let admins prevent registration darcs-hash:20080724235508-84dde-8bac4d9dd772adb9f27d083b3d0b6ed5b7526dbf.gz --- actions/register.php | 4 +++- config.php.sample | 3 +++ lib/common.php | 3 ++- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/actions/register.php b/actions/register.php index 6ac2830595..d97e3a18af 100644 --- a/actions/register.php +++ b/actions/register.php @@ -24,7 +24,9 @@ class RegisterAction extends Action { function handle($args) { parent::handle($args); - if (common_logged_in()) { + if (common_config('site', 'closed')) { + common_user_error(_('Registration not allowed.')); + } else if (common_logged_in()) { common_user_error(_('Already logged in.')); } else if ($_SERVER['REQUEST_METHOD'] == 'POST') { $this->try_register(); diff --git a/config.php.sample b/config.php.sample index 9eb628d2f6..da791f6f03 100644 --- a/config.php.sample +++ b/config.php.sample @@ -23,6 +23,9 @@ $config['site']['path'] = 'laconica'; #Brought by... #$config['site']['broughtby'] = 'Individual or Company'; #$config['site']['broughtbyurl'] = 'http://example.net/'; +#If you don't want to let users register (say, for a one-person install) +#Crude but effective -- register everybody, then lock down +#$config['site']['closed'] = true; # If you want logging sent to a file instead of syslog #$config['site']['logfile'] = '/tmp/laconica.log'; diff --git a/lib/common.php b/lib/common.php index f92f08b7d6..69714be1d0 100644 --- a/lib/common.php +++ b/lib/common.php @@ -50,7 +50,8 @@ $config = array_key_exists('SERVER_ADMIN', $_SERVER) ? $_SERVER['SERVER_ADMIN'] : NULL, 'broughtby' => NULL, 'timezone' => 'UTC', - 'broughtbyurl' => NULL), + 'broughtbyurl' => NULL, + 'closed' => false), 'syslog' => array('appname' => 'laconica', # for syslog 'priority' => 'debug'), # XXX: currently ignored