From d73b069944cb62194452e933e90e504056f6c15d Mon Sep 17 00:00:00 2001 From: "Michael Kaufmann (d00p)" Date: Thu, 15 May 2014 14:18:39 +0200 Subject: [PATCH] delete connections between domain and ip's after deleting a customer completely Signed-off-by: Michael Kaufmann (d00p) --- admin_customers.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/admin_customers.php b/admin_customers.php index 36ccc0d0..ccbb7078 100644 --- a/admin_customers.php +++ b/admin_customers.php @@ -267,6 +267,13 @@ if ($page == 'customers' Database::pexecute($stmt, array('id' => $id)); $stmt = Database::prepare("DELETE FROM `" . TABLE_PANEL_DATABASES . "` WHERE `customerid` = :id"); Database::pexecute($stmt, array('id' => $id)); + // first gather all domain-id's to clean up panel_domaintoip accordingly + $did_stmt = Database::prepare("SELECT `id` FROM `".TABLE_PANEL_DOMAINS."` WHERE `customerid` = :id"); + Database::pexecute($did_stmt, array('id' => $id)); + while ($row = $did_stmt->fetch(PDO::FETCH_ASSOC)) { + $stmt = Database::prepare("DELETE FROM `" . TABLE_DOMAINTOIP . "` WHERE `id_domain` = :did"); + Database::pexecute($stmt, array('did' => $row['id'])); + } $stmt = Database::prepare("DELETE FROM `" . TABLE_PANEL_DOMAINS . "` WHERE `customerid` = :id"); Database::pexecute($stmt, array('id' => $id)); $domains_deleted = $stmt->rowCount();