+def admin(username, state, path, fields):
+ if path == '':
+ return ({'Status': '303 See Other',
+ 'Location': 'admin/'},
+ "You shouldn't see this message.")
+ if not username in getAfsGroupMembers(config.adminacl, 'athena.mit.edu'):
+ raise InvalidInput('username', username,
+ 'Not in admin group %s.' % config.adminacl)
+ newstate = State(username, isadmin=True)
+ newstate.environ = state.environ
+ return handler(username, newstate, path, fields)
+
+def throwError(_, __, ___, ____):