Fix #5640 - prevent multiple no milestone being created
authorAlan Knowles <alan@roojs.com>
Mon, 31 Dec 2018 01:47:11 +0000 (09:47 +0800)
committerAlan Knowles <alan@roojs.com>
Mon, 31 Dec 2018 01:47:11 +0000 (09:47 +0800)
DataObjects/Mtrack_milestone.php

index 0f8e011..54e0bdb 100644 (file)
@@ -224,9 +224,13 @@ class Pman_MTrack_DataObjects_Mtrack_milestone extends DB_DataObject
             $m = DB_DataObject::Factory('mtrack_milestone');
             $m->project_id = $pid;
             $m->name = "No Milestone";
-            $m->description = "No Milestone selected";
-            // should we create a 'created'??? - nope.??
-            $m->insert();
+            $m->limit(1);
+            $m->orderBy('id desc');
+            if (!$m->find(true)) {
+                $m->description = "No Milestone selected";
+                // should we create a 'created'??? - nope.??
+                $m->insert();
+            }
             $npids[$pid] = clone($m);
             $t = DB_DataObject::Factory('mtrack_ticket');
             $t->query("UPDATE mtrack_ticket SET milestone_id = {$m->id}