X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-web.git/blobdiff_plain/c540be1b6b42026b142e3675e008298f7ff672ce..04fa949d023fdb3e9fc623cf6c5aa3d620ff1ca3:/code/main.py diff --git a/code/main.py b/code/main.py index b05906e..0b8af46 100755 --- a/code/main.py +++ b/code/main.py @@ -51,13 +51,7 @@ class InvirtUnauthWeb(View): @cherrypy.expose @cherrypy.tools.mako(filename="/unauth.mako") def index(self): - if(os.path.exists("/etc/invirt/message")): - f = open('/etc/invirt/message') - message = f.read() - else:message = None - d = dict(simple = True, serviceMessage = message) - return d - + return dict(simple=True) class InvirtWeb(View): def __init__(self): @@ -103,6 +97,9 @@ class InvirtWeb(View): return d def __getattr__(self, name): + # At the point __getattr__ is called, tools haven't been run. Make sure the user is logged in. + cherrypy.tools.remote_user_login.callable() + if name in ("admin", "overlord"): if not cherrypy.request.login in getAfsGroupMembers(config.adminacl, config.authz.afs.cells[0].cell): raise InvalidInput('username', cherrypy.request.login, @@ -526,9 +523,9 @@ def modifyDict(username, state, machine_id, fields): olddisk = {} session.begin() try: - kws = dict([(kw, fields[kw]) for kw in + kws = dict((kw, fields[kw]) for kw in 'owner admin contact name description memory vmtype disksize'.split() - if fields[kw]]) + if fields.get(kw)) kws['machine_id'] = machine_id validate = validation.Validate(username, state, **kws) machine = validate.machine