diff options
author | Rasmus Larsson <flame@constantine.(none)> | 2011-07-09 15:12:00 +0200 |
---|---|---|
committer | Rasmus Larsson <flame@constantine.(none)> | 2011-07-09 15:12:00 +0200 |
commit | 13677ef97a24fea19fe8df1cce4812c18623d88f (patch) | |
tree | ba6ff42f13be8c2503cd57481b6234115ef98fea | |
parent | e6fd112d429d1fcc5994ff19c61bd67367a33ce5 (diff) | |
download | mediagoblin-13677ef97a24fea19fe8df1cce4812c18623d88f.tar.lz mediagoblin-13677ef97a24fea19fe8df1cce4812c18623d88f.tar.xz mediagoblin-13677ef97a24fea19fe8df1cce4812c18623d88f.zip |
Added configuration variable to toggle registrations, if disabled the registration page redirects to index and no link to register is shown
-rw-r--r-- | mediagoblin.ini | 3 | ||||
-rw-r--r-- | mediagoblin/auth/views.py | 6 | ||||
-rw-r--r-- | mediagoblin/config_spec.ini | 5 | ||||
-rw-r--r-- | mediagoblin/templates/mediagoblin/root.html | 2 | ||||
-rw-r--r-- | mediagoblin/views.py | 4 |
5 files changed, 18 insertions, 2 deletions
diff --git a/mediagoblin.ini b/mediagoblin.ini index 596107dc..e889646a 100644 --- a/mediagoblin.ini +++ b/mediagoblin.ini @@ -8,6 +8,9 @@ email_sender_address = "notice@mediagoblin.example.org" # set to false to enable sending notices email_debug_mode = true +# Set to false to disable registrations +allow_registration = true + ## Uncomment this to put some user-overriding templates here #local_templates = %(here)s/user_dev/templates/ diff --git a/mediagoblin/auth/views.py b/mediagoblin/auth/views.py index 2450023f..a6ae1407 100644 --- a/mediagoblin/auth/views.py +++ b/mediagoblin/auth/views.py @@ -19,6 +19,7 @@ import uuid from webob import exc from mediagoblin import messages +from mediagoblin import mg_globals from mediagoblin.util import render_to_response, redirect from mediagoblin.db.util import ObjectId from mediagoblin.auth import lib as auth_lib @@ -30,6 +31,11 @@ def register(request): """ Your classic registration view! """ + + # Redirects to indexpage if registrations are disabled + if not mg_globals.app_config["allow_registration"]: + return redirect(request, "index") + register_form = auth_forms.RegistrationForm(request.POST) if request.method == 'POST' and register_form.validate(): diff --git a/mediagoblin/config_spec.ini b/mediagoblin/config_spec.ini index aadf5c21..b6356b0e 100644 --- a/mediagoblin/config_spec.ini +++ b/mediagoblin/config_spec.ini @@ -21,6 +21,9 @@ direct_remote_path = string(default="/mgoblin_static/") email_debug_mode = boolean(default=True) email_sender_address = string(default="notice@mediagoblin.example.org") +# Set to false to disable registrations +allow_registration = boolean(default=True) + # By default not set, but you might want something like: # "%(here)s/user_dev/templates/" local_templates = string() @@ -73,4 +76,4 @@ celeryd_eta_scheduler_precision = float() # known lists celery_routes = string_list() -celery_imports = string_list()
\ No newline at end of file +celery_imports = string_list() diff --git a/mediagoblin/templates/mediagoblin/root.html b/mediagoblin/templates/mediagoblin/root.html index 5b744999..ad9aabcb 100644 --- a/mediagoblin/templates/mediagoblin/root.html +++ b/mediagoblin/templates/mediagoblin/root.html @@ -29,10 +29,12 @@ If you have an account, you can <a href="{{ request.urlgen('mediagoblin.auth.login') }}">Login</a>. </p> + {% if allow_registration %} <p> If you don't have an account, please <a href="{{ request.urlgen('mediagoblin.auth.register') }}">Register</a>. </p> + {% endif %} {% endif %} {# temporarily, an "image gallery" that isn't one really ;) #} diff --git a/mediagoblin/views.py b/mediagoblin/views.py index 5b6d9773..6145484b 100644 --- a/mediagoblin/views.py +++ b/mediagoblin/views.py @@ -14,6 +14,7 @@ # 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/>. +from mediagoblin import mg_globals from mediagoblin.util import render_to_response from mediagoblin.db.util import DESCENDING @@ -23,7 +24,8 @@ def root_view(request): return render_to_response( request, 'mediagoblin/root.html', - {'media_entries': media_entries}) + {'media_entries': media_entries, + 'allow_registration': mg_globals.app_config["allow_registration"]}) def simple_template_render(request): |