X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-web.git/blobdiff_plain/12e56e415bc26112324be2f9da706e462c51e4b5..refs/heads/quentin/renumber-remctl:/code/main.py diff --git a/code/main.py b/code/main.py index 0f77cee..6587484 100755 --- a/code/main.py +++ b/code/main.py @@ -279,12 +279,14 @@ console will suffer artifacts. @cherrypy.expose @cherrypy.tools.mako(filename="/info.mako") - def info(self, machine_id): + def info(self, machine_id, result=None): """Handler for info on a single VM.""" machine = validation.Validate(cherrypy.request.login, cherrypy.request.state, machine_id=machine_id).machine d = infoDict(cherrypy.request.login, cherrypy.request.state, machine) + if result: + d['result'] = result return d index = info @@ -377,6 +379,8 @@ console will suffer artifacts. result = str(err) else: result = 'Success!' + if 'result' in d: + result = d['result'] if not back: return d if back == 'list': @@ -384,8 +388,10 @@ console will suffer artifacts. raise cherrypy.InternalRedirect('/list?result=%s' % urllib.quote(result)) elif back == 'info': - raise cherrypy.HTTPRedirect(cherrypy.request.base - + '/machine/%d/' % machine_id, + url = cherrypy.request.base + '/machine/%d/' % machine_id + if result: + url += '?result='+urllib.quote(result) + raise cherrypy.HTTPRedirect(url, status=303) else: raise InvalidInput('back', back, 'Not a known back page.') @@ -670,7 +676,7 @@ def infoDict(username, state, machine): renumber = False for n in machine.nics: - if n.other_action in ('renumber', 'renumber_dhcp'): + if n.other_action == 'renumber_dhcp': renumber = True main_status['memory'] += ' MiB'