From 5ca959fa688255a8de61f89fe2751eb4d24a6912 Mon Sep 17 00:00:00 2001
From: Florian Schaal <florian@schaal-24.de>
Date: Tue, 22 Mar 2016 09:22:07 -0400
Subject: [PATCH] fixed typo

---
 server/mods-available/remoteaction_core_module.inc.php |  110 +++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 75 insertions(+), 35 deletions(-)

diff --git a/server/mods-available/remoteaction_core_module.inc.php b/server/mods-available/remoteaction_core_module.inc.php
index ebdd404..807de50 100644
--- a/server/mods-available/remoteaction_core_module.inc.php
+++ b/server/mods-available/remoteaction_core_module.inc.php
@@ -1,6 +1,6 @@
 <?php
 /*
-Copyright (c) 2007-2010, Till Brehm, projektfarm Gmbh and Oliver Vogel www.muv.com
+Copyright (c) 2007-2010, Till Brehm, projektfarm Gmbh, Oliver Vogel www.muv.com
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without modification,
@@ -35,7 +35,7 @@
 	//* This function is called during ispconfig installation to determine
 	//  if a symlink shall be created for this plugin.
 	function onInstall() {
-		return true;
+		return false;
 	}
 
 	/*
@@ -45,7 +45,8 @@
 		/*
        	 * Check for actions to execute
 		*/
-		$this->_execActions();
+		//* This module has been replaced by the new action framework.
+		// $this->_execActions();
 	}
 
 	/*
@@ -61,10 +62,8 @@
 		 * First set the state
 		 */
 		global $app;
-		$sql = "UPDATE sys_remoteaction " .
-				"SET action_state = '" . $app->dbmaster->quote($state) . "' " .
-				"WHERE action_id = " . intval($id);
-		$app->dbmaster->query($sql);
+		$sql = "UPDATE sys_remoteaction SET action_state = ? WHERE action_id = ?";
+		$app->dbmaster->query($sql, $state, $id);
 
 		/*
 		 * Then save the maxid for the next time...
@@ -79,6 +78,8 @@
 	/**
 	 * This method searches for scheduled actions and exec then
 	 */
+
+
 	private function _execActions() {
 		global $app;
 		global $conf;
@@ -95,17 +96,13 @@
 		 * stop a service, a admin stopped some days before! To avoid this, we ignore
 		 * the status (it is only for the interface to show) and use our own maxid
 		*/
-		include_once (dirname(__FILE__) .  "/../lib/remote_action.inc.php");
+		include_once SCRIPT_PATH."/lib/remote_action.inc.php";
 
 		/*
 		 * Get all actions this server should execute
 		*/
-		$sql = "SELECT action_id, action_type, action_param " .
-				"FROM sys_remoteaction " .
-				"WHERE server_id = " . $server_id . " ".
-				" AND  action_id > " . intval($maxid_remote_action) . " ".
-				"ORDER BY action_id";
-		$actions = $app->dbmaster->queryAllRecords($sql);
+		$sql = "SELECT action_id, action_type, action_param FROM sys_remoteaction WHERE server_id = ? AND action_id > ? ORDER BY action_id";
+		$actions = $app->dbmaster->queryAllRecords($sql, $server_id, $maxid_remote_action);
 
 		/*
 		 * process all actions
@@ -119,13 +116,54 @@
 					* we stop executing the actions not to waste more time */
 					return;
 				}
+
 				if ($action['action_type'] == 'ispc_update') {
 					/* do the update */
-					$this->_doIspCUpdate($action);
+					// Update function has been removed
+					// $this->_doIspCUpdate($action);
+					/* this action takes so much time,
+					* we stop executing the actions not to waste more time */
+					$this->_actionDone($action['action_id'], 'ok');
+				}
+				if ($action['action_type'] == 'openvz_start_vm') {
+					$veid = intval($action['action_param']);
+					if($veid > 0) {
+						exec("vzctl start $veid");
+					}
+					$this->_actionDone($action['action_id'], 'ok');
+				}
+				if ($action['action_type'] == 'openvz_stop_vm') {
+					$veid = intval($action['action_param']);
+					if($veid > 0) {
+						exec("vzctl stop $veid");
+					}
+					$this->_actionDone($action['action_id'], 'ok');
+				}
+				if ($action['action_type'] == 'openvz_restart_vm') {
+					$veid = intval($action['action_param']);
+					if($veid > 0) {
+						exec("vzctl restart $veid");
+					}
+					$this->_actionDone($action['action_id'], 'ok');
+				}
+				if ($action['action_type'] == 'openvz_create_ostpl') {
+					$parts = explode(':', $action['action_param']);
+					$veid = intval($parts[0]);
+					$template_cache_dir = '/vz/template/cache/';
+					$template_name = escapeshellcmd($parts[1]);
+					if($veid > 0 && $template_name != '' && is_dir($template_cache_dir)) {
+						$command = "vzdump --suspend --compress --stdexcludes --dumpdir $template_cache_dir $veid";
+						exec($command);
+						exec("mv ".$template_cache_dir."vzdump-openvz-".$veid."*.tgz ".$template_cache_dir.$template_name.".tar.gz");
+						exec("rm -f ".$template_cache_dir."vzdump-openvz-".$veid."*.log");
+					}
+					$this->_actionDone($action['action_id'], 'ok');
 					/* this action takes so much time,
 					* we stop executing the actions not to waste more time */
 					return;
 				}
+
+
 			}
 		}
 	}
@@ -134,31 +172,31 @@
 		/*
 		 * Do the update
 		 */
-		exec("aptitude update");
-		exec("aptitude upgrade -y");
-
-		//TODO : change this when distribution information has been integrated into server record
-		if(file_exists('/etc/gentoo-release')) {
-			exec("glsa-check -f --nocolor affected");
-		}
-		else {
-			exec("aptitude update");
-			exec("aptitude safe-upgrade -y");
-		}
-		
-		/*
+		exec("aptitude update");
+		exec("aptitude safe-upgrade -y");
+
+		//TODO : change this when distribution information has been integrated into server record
+		if(file_exists('/etc/gentoo-release')) {
+			exec("glsa-check -f --nocolor affected");
+		}
+		else {
+			exec("aptitude update");
+			exec("aptitude safe-upgrade -y");
+		}
+
+		/*
 		 * All well done!
 		 */
 		$this->_actionDone($action['action_id'], 'ok');
 	}
 
 	private function _doIspCUpdate($action) {
-		
+
 		// Ensure that this code is not executed twice as this would cause a loop in case of a failure
 		$this->_actionDone($action['action_id'], 'ok');
-		
+
 		/*
-		 * Get the version-number of the newest version 
+		 * Get the version-number of the newest version
 		 */
 		$new_version = @file_get_contents('http://www.ispconfig.org/downloads/ispconfig3_version.txt');
 		$new_version = trim($new_version);
@@ -174,10 +212,10 @@
 		/* delete the old files (if there are any...) */
 		exec("rm /tmp/ISPConfig-" . $new_version . ".tar.gz");
 		exec("rm /tmp/ispconfig3_install -R");
-		
+
 		/* get the newest version */
 		exec("wget http://www.ispconfig.org/downloads/ISPConfig-" . $new_version . ".tar.gz");
-		
+
 		/* extract the files */
 		exec("tar xvfz ISPConfig-" . $new_version . ".tar.gz");
 
@@ -187,7 +225,7 @@
 		 */
 		chdir("/tmp/ispconfig3_install/install");
 		exec("touch autoupdate");
-		
+
 		/*
 		 * do some clean-up
 		 */
@@ -203,5 +241,7 @@
 		 */
 		//$this->_actionDone($action['action_id'], 'ok');
 	}
+
 }
-?>
\ No newline at end of file
+
+?>

--
Gitblit v1.9.1