X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-web.git/blobdiff_plain/f8c61d2924ba0ede2754ca798b45c43cf75f292a..4d235e8d481971c081b3141babd65d36e9ad0337:/code/main.py?ds=inline diff --git a/code/main.py b/code/main.py index 8990e51..f6f0bff 100755 --- a/code/main.py +++ b/code/main.py @@ -85,6 +85,7 @@ def makeErrorPre(old, addition): return '

STDERR:

' + str(addition) + '
' Template.database = database +Template.config = config Template.helppopup = staticmethod(helppopup) Template.err = None @@ -594,14 +595,15 @@ def unauthFront(_, _2, _3, fields): """Information for unauth'd users.""" return templates.unauth(searchList=[{'simple' : True}]) -def overlord(username, state, path, fields): +def admin(username, state, path, fields): if path == '': return ({'Status': '303 See Other', - 'Location': 'overlord/'}, + 'Location': 'admin/'}, "You shouldn't see this message.") - if not username in getAfsGroupMembers('system:xvm', 'athena.mit.edu'): - raise InvalidInput('username', username, 'Not an overlord.') - newstate = State(username, overlord=True) + if not username in getAfsGroupMembers(config.web.adminacl, 'athena.mit.edu'): + raise InvalidInput('username', username, + 'Not in admin group %s.' % config.web.adminacl) + newstate = State(username, isadmin=True) newstate.environ = state.environ return handler(username, newstate, path, fields) @@ -617,7 +619,8 @@ mapping = dict(list=listVms, create=create, help=helpHandler, unauth=unauthFront, - overlord=overlord, + admin=admin, + overlord=admin, errortest=throwError) def printHeaders(headers):