From ea82a03050626b7a37037ce95a4e418acc2a2af4 Mon Sep 17 00:00:00 2001
From: Dominik <info@profi-webdesign.net>
Date: Wed, 09 Apr 2014 13:41:26 -0400
Subject: [PATCH] changed default values
---
interface/lib/classes/remote.d/sites.inc.php | 87 +++++++++++++++++++++++++++++++++++++++++--
1 files changed, 83 insertions(+), 4 deletions(-)
diff --git a/interface/lib/classes/remote.d/sites.inc.php b/interface/lib/classes/remote.d/sites.inc.php
index 91b4523..98c5bf6 100644
--- a/interface/lib/classes/remote.d/sites.inc.php
+++ b/interface/lib/classes/remote.d/sites.inc.php
@@ -128,7 +128,18 @@
$this->dataRecord = $params;
$app->sites_database_plugin->processDatabaseInsert($this);
- return $this->insertQueryExecute($sql, $params);
+ $retval = $this->insertQueryExecute($sql, $params);
+
+ // set correct values for backup_interval and backup_copies
+ if(isset($params['backup_interval']) || isset($params['backup_copies'])){
+ $sql_set = array();
+ if(isset($params['backup_interval'])) $sql_set[] = "backup_interval = '".$app->db->quote($params['backup_interval'])."'";
+ if(isset($params['backup_copies'])) $sql_set[] = "backup_copies = ".$app->functions->intval($params['backup_copies']);
+ //$app->db->query("UPDATE web_database SET ".implode(', ', $sql_set)." WHERE database_id = ".$retval);
+ $this->updateQueryExecute("UPDATE web_database SET ".implode(', ', $sql_set)." WHERE database_id = ".$retval, $retval, $params);
+ }
+
+ return $retval;
}
return false;
@@ -151,7 +162,18 @@
$this->id = $primary_id;
$this->dataRecord = $params;
$app->sites_database_plugin->processDatabaseUpdate($this);
- return $this->updateQueryExecute($sql, $primary_id, $params);
+ $retval = $this->updateQueryExecute($sql, $primary_id, $params);
+
+ // set correct values for backup_interval and backup_copies
+ if(isset($params['backup_interval']) || isset($params['backup_copies'])){
+ $sql_set = array();
+ if(isset($params['backup_interval'])) $sql_set[] = "backup_interval = '".$app->db->quote($params['backup_interval'])."'";
+ if(isset($params['backup_copies'])) $sql_set[] = "backup_copies = ".$app->functions->intval($params['backup_copies']);
+ //$app->db->query("UPDATE web_database SET ".implode(', ', $sql_set)." WHERE database_id = ".$primary_id);
+ $this->updateQueryExecute("UPDATE web_database SET ".implode(', ', $sql_set)." WHERE database_id = ".$primary_id, $primary_id, $params);
+ }
+
+ return $retval;
}
return false;
@@ -871,7 +893,65 @@
$all = $app->db->queryAllRecords($sql);
return $all;
}
-
+
+ //** backup functions -----------------------------------------------------------------------------------
+ public function sites_web_domain_backup_list($session_id, $site_id = null)
+ {
+ global $app;
+
+ if(!$this->checkPerm($session_id, 'sites_web_domain_backup')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+
+ $result = $app->db->queryAllRecords("SELECT * FROM web_backup".(($site_id != null)?' WHERE parent_domain_id = ?':''), $app->functions->intval($site_id));
+ return $result;
+ }
+
+ //* Backup download and restoration by Abdi Joseph
+ public function sites_web_domain_backup($session_id, $primary_id, $action_type)
+ {
+ global $app;
+
+ if(!$this->checkPerm($session_id, 'sites_web_domain_backup')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+
+ //*Set variables
+ $backup_record = $app->db->queryOneRecord("SELECT * FROM `web_backup` WHERE `backup_id`= ?", $primary_id);
+ $server_id = $backup_record['server_id'];
+
+ //*Set default action state
+ $action_state = "pending";
+ $tstamp = time();
+
+ //* Basic validation of variables
+ if ($server_id <= 0) {
+ $this->server->fault('invalid_backup_id', "Invalid or non existant backup_id $primary_id");
+ return false;
+ }
+
+ if ($action_type != 'backup_download' and $action_type != 'backup_restore') {
+ $this->server->fault('invalid_action', "Invalid action_type $action_type");
+ return false;
+ }
+
+ //* Validate instance
+ $instance_record = $app->db->queryOneRecord("SELECT * FROM `sys_remoteaction` WHERE `action_param`= ? and `action_type`= ? and `action_state`= ?", $primary_id, $action_type, 'pending');
+ if ($instance_record['action_id'] >= 1) {
+ $this->server->fault('duplicate_action', "There is already a pending $action_type action");
+ return false;
+ }
+
+ //* Save the record
+ if ($app->db->query("INSERT INTO `sys_remoteaction` SET `server_id` = ?, `tstamp` = ?, `action_type` = ?, `action_param` = ?, `action_state` = ?", $server_id, $tstamp, $action_type, $primary_id, $action_state)) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+
//** quota functions -----------------------------------------------------------------------------------
public function quota_get_by_user($session_id, $client_id)
{
@@ -882,7 +962,6 @@
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
- $client_id = $app->functions->intval($client_id);
return $app->quota_lib->get_quota_data($client_id, false);
}
--
Gitblit v1.9.1