From 4f17616b0fb4217ad6e3a145ca37ef37360af77b Mon Sep 17 00:00:00 2001 From: Massimo Di Pierro Date: Mon, 26 Mar 2012 16:15:29 -0500 Subject: [PATCH] better MULTI_USER_MODE --- VERSION | 2 +- applications/admin/controllers/default.py | 6 ++++-- applications/admin/controllers/gae.py | 4 ++++ applications/admin/models/menu.py | 2 +- 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/VERSION b/VERSION index 411210d2..55bc14db 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -Version 1.99.7 (2012-03-26 16:07:16) dev +Version 1.99.7 (2012-03-26 16:15:22) dev diff --git a/applications/admin/controllers/default.py b/applications/admin/controllers/default.py index bb995b16..7c3ef26e 100644 --- a/applications/admin/controllers/default.py +++ b/applications/admin/controllers/default.py @@ -1360,14 +1360,16 @@ def reload_routes(): def manage_students(): if not (MULTI_USER_MODE and is_manager()): - raise HTTP(401) + session.flash = 'Not Authorized' + redirect(URL('site')) db.auth_user.registration_key.writable = True grid = SQLFORM.grid(db.auth_user) return locals() def bulk_register(): if not (MULTI_USER_MODE and is_manager()): - raise HTTP(401) + session.flash = 'Not Authorized' + redirect(URL('site')) form = SQLFORM.factory(Field('emails','text')) if form.process().accepted: emails = [x.strip() for x in form.vars.emails.split('\n') if x.strip()] diff --git a/applications/admin/controllers/gae.py b/applications/admin/controllers/gae.py index a2c535b2..646c7733 100644 --- a/applications/admin/controllers/gae.py +++ b/applications/admin/controllers/gae.py @@ -12,6 +12,10 @@ except: session.flash='sorry, only on Unix systems' redirect(URL(request.application,'default','site')) +if MULTI_USER_MODE and not is_manager(): + session.flash = 'Not Authorized' + redirect(URL('default','site')) + forever=10**8 def kill(): diff --git a/applications/admin/models/menu.py b/applications/admin/models/menu.py index aed119f3..dc28e7f8 100644 --- a/applications/admin/models/menu.py +++ b/applications/admin/models/menu.py @@ -22,7 +22,7 @@ if request.args: URL(_a,'mercurial','commit',args=_t))) if not session.authorized: - response.menu = [(T('Login'), True, '')] + response.menu = [(T('Login'), True, URL('site'))] else: response.menu.append((T('Logout'), False, URL(_a,'default',f='logout')))