+ $oid = $_POST['objectid'];
+
+ // Cleanup notifications for this object
+
+ $r = pg_exec($this->database, "SELECT notificationid FROM notification WHERE objectid='$oid'");
+ for ($i = 0; $i < pg_numrows($r); $i++)
+ {
+ $notif = pg_fetch_object($r, $i);
+ $notid = $notif->notificationid;
+ pg_exec($this->database, "DELETE FROM log_notification WHERE notificationid='$notid'");
+ pg_exec($this->database, "DELETE FROM action_user WHERE notificationid='$notid'");
+ pg_exec($this->database, "DELETE FROM parameter_notification WHERE notificationid='$notid'");
+ }
+ pg_exec($this->database, "DELETE FROM notification WHERE objectid='$oid'");
+
+ // Cleanup parameters for this object
+
+ $r = pg_exec($this->database, "SELECT paramid FROM parameter WHERE objectid='$oid'");
+ for ($i = 0; $i < pg_numrows($r); $i++)
+ {
+ $param = pg_fetch_object($r, $i);
+ $parid = $param->paramid;
+ pg_exec($this->database, "DELETE FROM history WHERE paramid='$parid'");
+ pg_exec($this->database, "DELETE FROM property WHERE paramid='$parid'");
+ }
+ pg_exec($this->database, "DELETE FROM parameter WHERE objectid='$oid'");
+
+ // Cleanup log and abuses for this object
+
+ pg_exec($this->database, "DELETE FROM log_abuse WHERE objectid='$oid'");
+ pg_exec($this->database, "DELETE FROM object_abuse WHERE objectid='$oid'");
+ pg_exec($this->database, "DELETE FROM log WHERE objectid='$oid'");
+
+ // Cleanup services, statistics, users and finally, the object itself.
+
+ pg_exec($this->database, "DELETE FROM object_service WHERE objectid='$oid'");
+ pg_exec($this->database, "DELETE FROM object_statistics WHERE objectid='$oid'");
+ pg_exec($this->database, "DELETE FROM object_user WHERE objectid='$oid'");
+ pg_exec($this->database, "DELETE FROM object WHERE objectid='$oid'");