Added configuration variable to toggle registrations, if disabled the registration...
authorRasmus Larsson <flame@constantine.(none)>
Sat, 9 Jul 2011 13:12:00 +0000 (15:12 +0200)
committerRasmus Larsson <flame@constantine.(none)>
Sat, 9 Jul 2011 13:12:00 +0000 (15:12 +0200)
mediagoblin.ini
mediagoblin/auth/views.py
mediagoblin/config_spec.ini
mediagoblin/templates/mediagoblin/root.html
mediagoblin/views.py

index 596107dc58d6398186c60ed91a187d26fec1983b..e889646abeb73824dd17aefa774e6b9ac35b06b1 100644 (file)
@@ -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/
 
index 2450023f3f8804feb388cecd1e52bf313b975236..a6ae14072aba1181209b0516403feb765a48c7aa 100644 (file)
@@ -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():
index aadf5c2106a4fc64d124bfe45200860ade49ce8a..b6356b0ecb8bec311901e1eea6cf9e52d52eb2e2 100644 (file)
@@ -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()
index 5b7449994248be1c97dd3bc59a313ddef144f57d..ad9aabcbc43fc5d5b504f896615974880d54a5f0 100644 (file)
       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 ;) #}
index 5b6d9773d200e3adca58d95fb63a2cc0fc52db4c..6145484b38e26489e7b4ab74f7446139ecd7a18d 100644 (file)
@@ -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):