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 | 89 ++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 80 insertions(+), 9 deletions(-) diff --git a/server/mods-available/web_module.inc.php b/server/mods-available/web_module.inc.php index 4fdae18e..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 @@ -137,9 +201,6 @@ switch ($web_config['server_type']) { case 'nginx': $daemon = $web_config['server_type']; - // Reload PHP-FPM as well - $restart_second_service['daemon'] = $web_config['php_fpm_init_script']; - $restart_second_service['action'] = 'reload'; break; default: if(is_file($conf['init_scripts'] . '/' . 'httpd')) { @@ -148,11 +209,7 @@ $daemon = 'apache2'; } } - - if($restart_second_service['daemon'] != '' && $restart_second_service['action'] != ''){ - exec($conf['init_scripts'] . '/' . $restart_second_service['daemon'] . ' ' . $restart_second_service['action']); - } - + if($action == 'restart') { exec($conf['init_scripts'] . '/' . $daemon . ' restart'); } else { @@ -160,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