From b889edb33e4a09cc1f65d2fb9ad9f9ea16b1eae9 Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Tue, 04 Sep 2012 11:42:42 -0400
Subject: [PATCH] - Ported changes from Apache plugin to nginx plugin. - Fixed errors in system.inc.php-

---
 server/mods-available/web_module.inc.php |   82 ++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 80 insertions(+), 2 deletions(-)

diff --git a/server/mods-available/web_module.inc.php b/server/mods-available/web_module.inc.php
index 643c7a1..dd7aba0 100644
--- a/server/mods-available/web_module.inc.php
+++ b/server/mods-available/web_module.inc.php
@@ -43,7 +43,28 @@
 									'shell_user_delete',
 									'webdav_user_insert',
 									'webdav_user_update',
-									'webdav_user_delete');
+									'webdav_user_delete',
+									'web_folder_insert',
+									'web_folder_update',
+									'web_folder_delete',
+									'web_folder_user_insert',
+									'web_folder_user_update',
+									'web_folder_user_delete',
+									'web_backup_insert',
+									'web_backup_update',
+									'web_backup_delete',
+									'aps_instance_insert',
+									'aps_instance_update',
+									'aps_instance_delete',
+									'aps_instance_setting_insert',
+									'aps_instance_setting_update',
+									'aps_instance_setting_delete',
+									'aps_package_insert',
+									'aps_package_update',
+									'aps_package_delete',
+									'aps_setting_insert',
+									'aps_setting_update',
+									'aps_setting_delete');
 	
 	//* This function is called during ispconfig installation to determine
 	//  if a symlink shall be created for this plugin.
@@ -86,9 +107,17 @@
 		$app->modules->registerTableHook('ftp_user','web_module','process');
 		$app->modules->registerTableHook('shell_user','web_module','process');
 		$app->modules->registerTableHook('webdav_user','web_module','process');
+		$app->modules->registerTableHook('web_folder','web_module','process');
+		$app->modules->registerTableHook('web_folder_user','web_module','process');
+		$app->modules->registerTableHook('web_backup','web_module','process');
+		$app->modules->registerTableHook('aps_instances','web_module','process');
+		$app->modules->registerTableHook('aps_instances_settings','web_module','process');
+		$app->modules->registerTableHook('aps_packages','web_module','process');
+		$app->modules->registerTableHook('aps_settings','web_module','process');
 		
 		// Register service
 		$app->services->registerService('httpd','web_module','restartHttpd');
+		$app->services->registerService('php-fpm','web_module','restartPHP_FPM');
 		
 	}
 	
@@ -121,6 +150,41 @@
 				if($action == 'u') $app->plugins->raiseEvent('webdav_user_update',$data);
 				if($action == 'd') $app->plugins->raiseEvent('webdav_user_delete',$data);
 			break;
+			case 'web_folder':
+				if($action == 'i') $app->plugins->raiseEvent('web_folder_insert',$data);
+				if($action == 'u') $app->plugins->raiseEvent('web_folder_update',$data);
+				if($action == 'd') $app->plugins->raiseEvent('web_folder_delete',$data);
+			break;
+			case 'web_folder_user':
+				if($action == 'i') $app->plugins->raiseEvent('web_folder_user_insert',$data);
+				if($action == 'u') $app->plugins->raiseEvent('web_folder_user_update',$data);
+				if($action == 'd') $app->plugins->raiseEvent('web_folder_user_delete',$data);
+			break;
+			case 'web_backup':
+				if($action == 'i') $app->plugins->raiseEvent('web_backup_insert',$data);
+				if($action == 'u') $app->plugins->raiseEvent('web_backup_update',$data);
+				if($action == 'd') $app->plugins->raiseEvent('web_backup_delete',$data);
+			break;
+			case 'aps_instances':
+				if($action == 'i') $app->plugins->raiseEvent('aps_instance_insert',$data);
+				if($action == 'u') $app->plugins->raiseEvent('aps_instance_update',$data);
+				if($action == 'd') $app->plugins->raiseEvent('aps_instance_delete',$data);
+			break;
+			case 'aps_instances_settings':
+				if($action == 'i') $app->plugins->raiseEvent('aps_instance_setting_insert',$data);
+				if($action == 'u') $app->plugins->raiseEvent('aps_instance_setting_update',$data);
+				if($action == 'd') $app->plugins->raiseEvent('aps_instance_setting_delete',$data);
+			break;
+			case 'aps_packages':
+				if($action == 'i') $app->plugins->raiseEvent('aps_package_insert',$data);
+				if($action == 'u') $app->plugins->raiseEvent('aps_package_update',$data);
+				if($action == 'd') $app->plugins->raiseEvent('aps_package_delete',$data);
+			break;
+			case 'aps_settings':
+				if($action == 'i') $app->plugins->raiseEvent('aps_setting_insert',$data);
+				if($action == 'u') $app->plugins->raiseEvent('aps_setting_update',$data);
+				if($action == 'd') $app->plugins->raiseEvent('aps_setting_delete',$data);
+			break;
 		} // end switch
 	} // end function
 	
@@ -145,7 +209,7 @@
 					$daemon = 'apache2';
 				}
 		}
-		
+
 		if($action == 'restart') {
 			exec($conf['init_scripts'] . '/' . $daemon . ' restart');
 		} else {
@@ -153,6 +217,20 @@
 		}
 		
 	}
+	
+	function restartPHP_FPM($action = 'restart') {
+		global $app,$conf;
+		
+		// load the server configuration options
+		$app->uses('getconf');
+		$web_config = $app->getconf->get_server_config($conf['server_id'], 'web');
+		
+		list($action, $init_script) = explode(':', $action);
+		
+		if(!$init_script) $init_script = $conf['init_scripts'].'/'.$web_config['php_fpm_init_script'];
+		
+		exec($init_script.' '.$action);
+	}
 
 } // end class
 

--
Gitblit v1.9.1