From deff20f9a412455f4413446147c709151d75eb0d Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Fri, 22 Jul 2011 11:56:20 +0000
Subject: [PATCH] Bugfixes in VM module.

---
 interface/lib/plugins/vm_openvz_plugin.inc.php | 11 +++++++++++
 interface/web/vm/openvz_vm_del.php             |  8 --------
 server/plugins-available/openvz_plugin.inc.php |  2 +-
 3 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/interface/lib/plugins/vm_openvz_plugin.inc.php b/interface/lib/plugins/vm_openvz_plugin.inc.php
index 1112e081c7..a926c0af29 100644
--- a/interface/lib/plugins/vm_openvz_plugin.inc.php
+++ b/interface/lib/plugins/vm_openvz_plugin.inc.php
@@ -23,6 +23,7 @@ class vm_openvz_plugin {
 		//* Register for events        
         $app->plugin->registerEvent('vm:openvz_vm:on_after_insert','vm_openvz_plugin','openvz_vm_insert');
 		$app->plugin->registerEvent('vm:openvz_vm:on_after_update','vm_openvz_plugin','openvz_vm_update');
+		$app->plugin->registerEvent('vm:openvz_vm:on_after_delete','vm_openvz_plugin','openvz_vm_delete');
     }
 
     /*
@@ -105,6 +106,16 @@ class vm_openvz_plugin {
         
 	}
 	
+	function openvz_vm_delete($event_name, $page_form) {
+        global $app, $conf;
+		
+		//* Free the IP address
+		$tmp = $app->db->queryOneRecord("SELECT ip_address_id FROM openvz_ip WHERE vm_id = ".$page_form->id);
+		$app->db->datalogUpdate('openvz_ip', 'vm_id = 0', 'ip_address_id', $tmp['ip_address_id']);
+		unset($tmp);
+		
+	}
+	
 	private function applyTemplate() {
 		global $app, $conf;
 		
diff --git a/interface/web/vm/openvz_vm_del.php b/interface/web/vm/openvz_vm_del.php
index 8d288444b6..c8d8e196af 100644
--- a/interface/web/vm/openvz_vm_del.php
+++ b/interface/web/vm/openvz_vm_del.php
@@ -49,14 +49,6 @@ $app->uses('tpl,tform');
 $app->load('tform_actions');
 
 class page_action extends tform_actions {
-
-	function onAfterDelete() {
-		global $app, $conf;
-		
-		//* Release all IP addresses which are assigned to this VM
-		$app->db->query("UPDATE openvz_ip SET vm_id = 0 WHERE vm_id = '".$this->id."'");
-		
-	}
 	
 }
 
diff --git a/server/plugins-available/openvz_plugin.inc.php b/server/plugins-available/openvz_plugin.inc.php
index a0907ff865..e14c0c4c94 100644
--- a/server/plugins-available/openvz_plugin.inc.php
+++ b/server/plugins-available/openvz_plugin.inc.php
@@ -1,7 +1,7 @@
 <?php
 
 /*
-Copyright (c) 2009, Till Brehm, projektfarm Gmbh
+Copyright (c) 2011, Till Brehm, projektfarm Gmbh
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without modification,
-- 
GitLab