home · contact · privacy
Enable deletion of Processes.
[plomtask] / plomtask / http.py
index d7be135ee03baf997aca63ef09c55aae4a4350a6..b4c2b0886c08baada1f848eb66e832a0ade99b72 100644 (file)
@@ -236,6 +236,10 @@ class TaskHandler(BaseHTTPRequestHandler):
     def do_POST_process(self) -> None:
         """Update or insert Process of ?id= and fields defined in postvars."""
         id_ = self.params.get_int_or_none('id')
+        for _ in self.form_data.get_all_str('delete'):
+            process = Process.by_id(self.conn, id_)
+            process.remove(self.conn)
+            return
         process = Process.by_id(self.conn, id_, create=True)
         process.title.set(self.form_data.get_str('title'))
         process.description.set(self.form_data.get_str('description'))
@@ -245,7 +249,6 @@ class TaskHandler(BaseHTTPRequestHandler):
         process.set_enables(self.conn, self.form_data.get_all_int('enables'))
         process.set_disables(self.conn, self.form_data.get_all_int('disables'))
         process.save_core(self.conn)
-        assert process.id_ is not None  # for mypy
         process.explicit_steps = []
         steps: list[tuple[int | None, int, int | None]] = []
         for step_id in self.form_data.get_all_int('steps'):