Add "renumber" to the list of valid commands.
[invirt/packages/invirt-web.git] / code / main.py
index 0f77cee..6587484 100755 (executable)
@@ -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'