From 2ef13cd37e25cab3febdf0e77ea8a71da3f5fd6a Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Tue, 26 Oct 2010 07:29:14 -0400
Subject: [PATCH] Fixed: FS#1358 - AWStats tools no in tools directory
---
server/mods-available/remoteaction_core_module.inc.php | 71 ++++++++++++++++++++++++++++++++---
1 files changed, 64 insertions(+), 7 deletions(-)
diff --git a/server/mods-available/remoteaction_core_module.inc.php b/server/mods-available/remoteaction_core_module.inc.php
index 7e8c0b1..a613b83 100644
--- a/server/mods-available/remoteaction_core_module.inc.php
+++ b/server/mods-available/remoteaction_core_module.inc.php
@@ -110,13 +110,22 @@
/*
* process all actions
*/
- foreach ($actions as $action) {
- if ($action['action_type'] == 'os_update') {
- /* do the update */
- $this->_doOsUpdate($action);
- /* this action takes so much time,
- * we stop executing the actions not to waste more time */
- return;
+ if(is_array($actions)) {
+ foreach ($actions as $action) {
+ if ($action['action_type'] == 'os_update') {
+ /* do the update */
+ $this->_doOsUpdate($action);
+ /* this action takes so much time,
+ * we stop executing the actions not to waste more time */
+ return;
+ }
+ if ($action['action_type'] == 'ispc_update') {
+ /* do the update */
+ $this->_doIspCUpdate($action);
+ /* this action takes so much time,
+ * we stop executing the actions not to waste more time */
+ return;
+ }
}
}
}
@@ -134,5 +143,53 @@
$this->_actionDone($action['action_id'], 'ok');
}
+ private function _doIspCUpdate($action) {
+ /*
+ * 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);
+
+ /*
+ * Do the update
+ */
+
+ /* jump into the temporary dir */
+ $oldDir = getcwd();
+ chdir("/tmp");
+
+ /* 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");
+
+ /*
+ * Start the automated update
+ */
+ chdir("/tmp/ispconfig3_install/install");
+ exec("touch autoupdate");
+ exec("php -q autoupdate.php");
+
+ /*
+ * do some clean-up
+ */
+ exec("rm /tmp/ISPConfig-" . $new_version . ".tar.gz");
+ exec("rm /tmp/ispconfig3_install -R");
+
+ /*
+ * go back to the "old path"
+ */
+ chdir($oldDir);
+
+ /*
+ * All well done!
+ */
+ $this->_actionDone($action['action_id'], 'ok');
+ }
}
?>
\ No newline at end of file
--
Gitblit v1.9.1