summaryrefslogtreecommitdiff
path: root/web-server
diff options
context:
space:
mode:
Diffstat (limited to 'web-server')
-rw-r--r--web-server/opendc/api/v2/simulations/simulationId/endpoint.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/web-server/opendc/api/v2/simulations/simulationId/endpoint.py b/web-server/opendc/api/v2/simulations/simulationId/endpoint.py
index 93617ea8..0cee3e9c 100644
--- a/web-server/opendc/api/v2/simulations/simulationId/endpoint.py
+++ b/web-server/opendc/api/v2/simulations/simulationId/endpoint.py
@@ -3,6 +3,7 @@ from datetime import datetime
from opendc.models.experiment import Experiment
from opendc.models.simulation import Simulation
from opendc.models.topology import Topology
+from opendc.models.user import User
from opendc.util.database import Database
from opendc.util.rest import Response
@@ -55,6 +56,11 @@ def DELETE(request):
experiment = Experiment.from_id(experiment_id)
experiment.delete()
+ user = User.from_google_id(request.google_id)
+ user.obj['authorizations'] = list(
+ filter(lambda x: str(x['simulationId']) != request.params_path['simulationId'], user.obj['authorizations']))
+ user.update()
+
old_object = simulation.delete()
return Response(200, 'Successfully deleted simulation.', old_object)