From 7d52e00a51450bc4a080d4e21b7dda02c0a65191 Mon Sep 17 00:00:00 2001
From: Marius Cramer <m.cramer@pixcept.de>
Date: Thu, 14 Nov 2013 05:42:06 -0500
Subject: [PATCH] Fixed list sorting

---
 server/mods-available/web_module.inc.php |   62 +++++++++++++++++++++++++++----
 1 files changed, 54 insertions(+), 8 deletions(-)

diff --git a/server/mods-available/web_module.inc.php b/server/mods-available/web_module.inc.php
index 8d5681a..5d7fe66 100644
--- a/server/mods-available/web_module.inc.php
+++ b/server/mods-available/web_module.inc.php
@@ -52,7 +52,19 @@
 									'web_folder_user_delete',
 									'web_backup_insert',
 									'web_backup_update',
-									'web_backup_delete');
+									'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.
@@ -98,6 +110,10 @@
 		$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');
@@ -149,6 +165,26 @@
 				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
 	
@@ -158,7 +194,7 @@
 		global $app,$conf;
 		
 		// load the server configuration options
-		$app->uses('getconf');
+		$app->uses('getconf,system');
 		$web_config = $app->getconf->get_server_config($conf['server_id'], 'web');
 		
 		$daemon = '';
@@ -174,26 +210,36 @@
 				}
 		}
 
+		$retval = array('output' => '', 'retval' => 0);
 		if($action == 'restart') {
-			exec($conf['init_scripts'] . '/' . $daemon . ' restart');
+			exec($app->system->getinitcommand($daemon, 'restart').' 2>&1', $retval['output'], $retval['retval']);
+			
 		} else {
-			exec($conf['init_scripts'] . '/' . $daemon . ' reload');
+			exec($app->system->getinitcommand($daemon, 'reload').' 2>&1', $retval['output'], $retval['retval']);
 		}
-		
+		return $retval;
 	}
 	
 	function restartPHP_FPM($action = 'restart') {
 		global $app,$conf;
 		
 		// load the server configuration options
-		$app->uses('getconf');
+		$app->uses('getconf,system');
 		$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'];
+		if(!$init_script){
+			//$init_script = $conf['init_scripts'].'/'.$web_config['php_fpm_init_script'];
+			$initcommand = $app->system->getinitcommand($web_config['php_fpm_init_script'], $action);
+		} else {
+			$path_parts = pathinfo($init_script);
+			$initcommand = $app->system->getinitcommand($path_parts['basename'], $action, $path_parts['dirname']);
+		}
 		
-		exec($init_script.' '.$action);
+		$retval = array('output' => '', 'retval' => 0);
+		exec($initcommand.' 2>&1', $retval['output'], $retval['retval']);
+		return $retval;
 	}
 
 } // end class

--
Gitblit v1.9.1