Newer
Older
$affected_rows = $this->updateQuery('../mail/form/spamfilter_blacklist.tform.php', $client_id, $primary_id, $params);
return $affected_rows;
}
public function mail_spamfilter_blacklist_delete($session_id, $primary_id)
{
if (!$this->checkPerm($session_id, 'mail_spamfilter_blacklist_delete'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->deleteQuery('../mail/form/spamfilter_blacklist.tform.php', $primary_id);
return $affected_rows;
//* Get spamfilter user details
public function mail_spamfilter_user_get($session_id, $primary_id)
if(!$this->checkPerm($session_id, 'mail_spamfilter_user_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../mail/form/spamfilter_users.tform.php');
return $app->remoting_lib->getDataRecord($primary_id);
}
//* filtr spamu użytkowników e-mail
public function mail_spamfilter_user_add($session_id, $client_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_spamfilter_user_add'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->insertQuery('../mail/form/spamfilter_users.tform.php', $client_id, $params);
return $affected_rows;
}
public function mail_spamfilter_user_update($session_id, $client_id, $primary_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_spamfilter_user_update'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->updateQuery('../mail/form/spamfilter_users.tform.php', $client_id, $primary_id, $params);
return $affected_rows;
}
public function mail_spamfilter_user_delete($session_id, $primary_id)
{
if (!$this->checkPerm($session_id, 'mail_spamfilter_user_delete'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->deleteQuery('../mail/form/spamfilter_users.tform.php', $primary_id);
return $affected_rows;
//* Get policy details
public function mail_policy_get($session_id, $primary_id)
if(!$this->checkPerm($session_id, 'mail_policy_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../mail/form/spamfilter_policy.tform.php');
return $app->remoting_lib->getDataRecord($primary_id);
}
//* polityki filtrów spamu e-mail
public function mail_policy_add($session_id, $client_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_policy_add'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->insertQuery('../mail/form/spamfilter_policy.tform.php', $client_id, $params);
return $affected_rows;
}
public function mail_policy_update($session_id, $client_id, $primary_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_policy_update'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->updateQuery('../mail/form/spamfilter_policy.tform.php', $client_id, $primary_id, $params);
return $affected_rows;
}
public function mail_policy_delete($session_id, $primary_id)
{
if (!$this->checkPerm($session_id, 'mail_policy_delete'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->deleteQuery('../mail/form/spamfilter_policy.tform.php', $primary_id);
return $affected_rows;
//* Get fetchmail details
public function mail_fetchmail_get($session_id, $primary_id)
if(!$this->checkPerm($session_id, 'mail_fetchmail_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../mail/form/mail_get.tform.php');
return $app->remoting_lib->getDataRecord($primary_id);
}
public function mail_fetchmail_add($session_id, $client_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_fetchmail_add'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->insertQuery('../mail/form/mail_get.tform.php', $client_id, $params);
return $affected_rows;
}
public function mail_fetchmail_update($session_id, $client_id, $primary_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_fetchmail_update'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->updateQuery('../mail/form/mail_get.tform.php', $client_id, $primary_id, $params);
return $affected_rows;
}
public function mail_fetchmail_delete($session_id, $primary_id)
{
if (!$this->checkPerm($session_id, 'mail_fetchmail_delete'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->deleteQuery('../mail/form/mail_get.tform.php', $primary_id);
return $affected_rows;
//* Get whitelist details
public function mail_whitelist_get($session_id, $primary_id)
if(!$this->checkPerm($session_id, 'mail_whitelist_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../mail/form/mail_whitelist.tform.php');
return $app->remoting_lib->getDataRecord($primary_id);
}
//* wpisy białej listy
public function mail_whitelist_add($session_id, $client_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_whitelist_add'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->insertQuery('../mail/form/mail_whitelist.tform.php', $client_id, $params);
return $affected_rows;
}
public function mail_whitelist_update($session_id, $client_id, $primary_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_whitelist_update'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->updateQuery('../mail/form/mail_whitelist.tform.php', $client_id, $primary_id, $params);
return $affected_rows;
}
public function mail_whitelist_delete($session_id, $primary_id)
{
if (!$this->checkPerm($session_id, 'mail_whitelist_delete'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->deleteQuery('../mail/form/mail_whitelist.tform.php', $primary_id);
return $affected_rows;
//* Get Blacklist details
public function mail_blacklist_get($session_id, $primary_id)
if(!$this->checkPerm($session_id, 'mail_blacklist_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../mail/form/mail_blacklist.tform.php');
return $app->remoting_lib->getDataRecord($primary_id);
}
//* wpisy białej listy
public function mail_blacklist_add($session_id, $client_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_blacklist_add'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->insertQuery('../mail/form/mail_blacklist.tform.php', $client_id, $params);
return $affected_rows;
}
public function mail_blacklist_update($session_id, $client_id, $primary_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_blacklist_update'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->updateQuery('../mail/form/mail_blacklist.tform.php', $client_id, $primary_id, $params);
return $affected_rows;
}
public function mail_blacklist_delete($session_id, $primary_id)
{
if (!$this->checkPerm($session_id, 'mail_blacklist_delete'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->deleteQuery('../mail/form/mail_blacklist.tform.php', $primary_id);
return $affected_rows;
//* Get filter details
public function mail_filter_get($session_id, $primary_id)
if(!$this->checkPerm($session_id, 'mail_filter_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../mail/form/mail_content_filter.tform.php');
return $app->remoting_lib->getDataRecord($primary_id);
}
//* wpisy filtrow e-mail
public function mail_filter_add($session_id, $client_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_filter_add'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->insertQuery('../mail/form/mail_content_filter.tform.php', $client_id, $params);
return $affected_rows;
}
public function mail_filter_update($session_id, $client_id, $primary_id, $params)
{
if (!$this->checkPerm($session_id, 'mail_filter_update'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->updateQuery('../mail/form/mail_content_filter.tform.php', $client_id, $primary_id, $params);
return $affected_rows;
}
public function mail_filter_delete($session_id, $primary_id)
{
if (!$this->checkPerm($session_id, 'mail_filter_delete'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->deleteQuery('../mail/form/mail_content_filter.tform.php', $primary_id);
return $affected_rows;
*/
//* Get client details
public function client_get($session_id, $client_id)
if(!$this->checkPerm($session_id, 'client_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../client/form/client.tform.php');
$data = $app->remoting_lib->getDataRecord($client_id);
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
// we need to get the new-style templates for backwards-compatibility - maybe we remove this in a later version
if(is_array($data) && count($data) > 0) {
if(isset($data['client_id'])) {
// this is a single record
if($data['template_additional'] == '') {
$tpls = $app->db->queryAllRecords('SELECT CONCAT(`assigned_template_id`, \':\', `client_template_id`) as `item` FROM `client_template_assigned` WHERE `client_id` = ' . $data['client_id']);
$tpl_arr = array();
if($tpls) {
foreach($tpls as $tpl) $tpl_arr[] = $tpl['item'];
}
$data['template_additional'] = implode('/', $tpl_arr);
unset($tpl_arr);
unset($tpls);
}
} elseif(isset($data[0]['client_id'])) {
// multiple client records
foreach($data as $index => $client) {
if($client['template_additional'] == '') {
$tpls = $app->db->queryAllRecords('SELECT CONCAT(`assigned_template_id`, \':\', `client_template_id`) as `item` FROM `client_template_assigned` WHERE `client_id` = ' . $client['client_id']);
$tpl_arr = array();
if($tpls) {
foreach($tpls as $tpl) $tpl_arr[] = $tpl['item'];
}
$data[$index]['template_additional'] = implode('/', $tpl_arr); // dont use the $client array here - changes would not be returned to soap
}
unset($tpl_arr);
unset($tpls);
}
}
}
return $data;
}
public function client_get_id($session_id, $sys_userid)
global $app;
if(!$this->checkPerm($session_id, 'client_get_id')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$sys_userid = $app->functions->intval($sys_userid);
$rec = $app->db->queryOneRecord("SELECT client_id FROM sys_user WHERE userid = ".$sys_userid);
if(isset($rec['client_id'])) {
return $app->functions->intval($rec['client_id']);
} else {
$this->server->fault('no_client_found', 'There is no sysuser account for this client ID.');
return false;
}
public function client_get_groupid($session_id, $client_id)
global $app;
if(!$this->checkPerm($session_id, 'client_get_id')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$client_id = $app->functions->intval($client_id);
$rec = $app->db->queryOneRecord("SELECT groupid FROM sys_group WHERE client_id = ".$client_id);
if(isset($rec['groupid'])) {
return $app->functions->intval($rec['groupid']);
} else {
$this->server->fault('no_group_found', 'There is no group for this client ID.');
return false;
}
public function client_add($session_id, $reseller_id, $params)
{
Marius Cramer
committed
global $app;
if (!$this->checkPerm($session_id, 'client_add'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
if(!isset($params['parent_client_id']) || $params['parent_client_id'] == 0) $params['parent_client_id'] = $reseller_id;
Marius Cramer
committed
if($params['parent_client_id']) {
// check if this one is reseller
$check = $app->db->queryOneRecord('SELECT `limit_client` FROM `client` WHERE `client_id` = ' . intval($client_id));
if($check['limit_client'] == 0) {
$this->server->fault('Invalid reseller', 'Selected client is not a reseller.');
return false;
}
if(isset($params['limit_client']) && $params['limit_client'] != 0) {
$this->server->fault('Invalid reseller', 'Reseller cannot be client of another reseller.');
return false;
}
}
$affected_rows = $this->klientadd('../client/form/' . (isset($params['limit_client']) && $params['limit_client'] != 0 ? 'reseller' : 'client') . '.tform.php', $reseller_id, $params);
return $affected_rows;
public function client_update($session_id, $client_id, $reseller_id, $params)
{
global $app;
if (!$this->checkPerm($session_id, 'client_update'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
Marius Cramer
committed
$app->remoting_lib->loadFormDef('../client/form/' . (isset($params['limit_client']) && $params['limit_client'] != 0 ? 'reseller' : 'client') . '.tform.php');
$old_rec = $app->remoting_lib->getDataRecord($client_id);
Marius Cramer
committed
if(!isset($params['parent_client_id']) || $params['parent_client_id'] == 0) $params['parent_client_id'] = $reseller_id;
if($params['parent_client_id']) {
// check if this one is reseller
$check = $app->db->queryOneRecord('SELECT `limit_client` FROM `client` WHERE `client_id` = ' . intval($client_id));
if($check['limit_client'] == 0) {
$this->server->fault('Invalid reseller', 'Selected client is not a reseller.');
return false;
}
if(isset($params['limit_client']) && $params['limit_client'] != 0) {
$this->server->fault('Invalid reseller', 'Reseller cannot be client of another reseller.');
return false;
}
}
// we need the previuos templates assigned here
$this->oldTemplatesAssigned = $app->db->queryAllRecords('SELECT * FROM `client_template_assigned` WHERE `client_id` = ' . $client_id);
if(!is_array($this->oldTemplatesAssigned) || count($this->oldTemplatesAssigned) < 1) {
// check previous type of storing templates
$tpls = explode('/', $old_rec['template_additional']);
$this->oldTemplatesAssigned = array();
foreach($tpls as $item) {
$item = trim($item);
if(!$item) continue;
$this->oldTemplatesAssigned[] = array('assigned_template_id' => 0, 'client_template_id' => $item, 'client_id' => $client_id);
unset($tpls);
}
if(isset($params['template_additional'])) {
$app->uses('client_templates');
$templates = explode('/', $params['template_additional']);
$params['template_additional'] = '';
$app->client_templates->update_client_templates($client_id, $templates);
unset($templates);
}
Marius Cramer
committed
$affected_rows = $this->updateQuery('../client/form/' . (isset($params['limit_client']) && $params['limit_client'] != 0 ? 'reseller' : 'client') . '.tform.php', $reseller_id, $client_id, $params, 'client:' . ($params['parent_client_id'] ? 'reseller' : 'client') . ':on_after_update');
$app->remoting_lib->ispconfig_sysuser_update($params, $client_id);
return $affected_rows;
public function client_template_additional_get($session_id, $client_id) {
global $app;
if(!$this->checkPerm($session_id, 'client_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
if(@is_numeric($client_id)) {
$sql = "SELECT * FROM `client_template_assigned` WHERE `client_id` = ".$client_id;
return $app->db->queryOneRecord($sql);
} else {
$this->server->fault('The ID must be an integer.');
return array();
}
}
private function _set_client_formdata($client_id) {
global $app;
$this->id = $client_id;
$this->dataRecord = $app->db->queryOneRecord('SELECT * FROM `client` WHERE `client_id` = ' . $client_id);
$this->oldDataRecord = $this->dataRecord;
$this->oldTemplatesAssigned = $app->db->queryAllRecords('SELECT * FROM `client_template_assigned` WHERE `client_id` = ' . $client_id);
if(!is_array($this->oldTemplatesAssigned) || count($this->oldTemplatesAssigned) < 1) {
// check previous type of storing templates
$tpls = explode('/', $this->oldDataRecord['template_additional']);
$this->oldTemplatesAssigned = array();
foreach($tpls as $item) {
$item = trim($item);
if(!$item) continue;
$this->oldTemplatesAssigned[] = array('assigned_template_id' => 0, 'client_template_id' => $item, 'client_id' => $client_id);
}
unset($tpls);
}
}
public function client_template_additional_add($session_id, $client_id, $template_id) {
global $app;
if(!$this->checkPerm($session_id, 'client_update')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
if(@is_numeric($client_id) && @is_numeric($template_id)) {
// check if client exists
$check = $app->db->queryOneRecord('SELECT `client_id` FROM `client` WHERE `client_id` = ' . $client_id);
if(!$check) {
$this->server->fault('Invalid client');
return false;
}
// check if template exists
$check = $app->db->queryOneRecord('SELECT `template_id` FROM `client_template` WHERE `template_id` = ' . $template_id);
if(!$check) {
$this->server->fault('Invalid template');
return false;
}
// for the update event we have to cheat a bit
$this->_set_client_formdata($client_id);
$sql = "INSERT INTO `client_template_assigned` (`client_id`, `client_template_id`) VALUES (" . $client_id . ", " . $template_id . ")";
$app->db->query($sql);
$insert_id = $app->db->insertID();
$app->plugin->raiseEvent('client:client:on_after_update', $this);
return $insert_id;
} else {
$this->server->fault('The IDs must be of type integer.');
return false;
}
}
public function client_template_additional_delete($session_id, $client_id, $assigned_template_id) {
global $app;
if(!$this->checkPerm($session_id, 'client_update')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
if(@is_numeric($client_id) && @is_numeric($template_id)) {
// check if client exists
$check = $app->db->queryOneRecord('SELECT `client_id` FROM `client` WHERE `client_id` = ' . $client_id);
if(!$check) {
$this->server->fault('Invalid client');
return false;
}
// check if template exists
$check = $app->db->queryOneRecord('SELECT `assigned_template_id` FROM `client_template_assigned` WHERE `assigned_template_id` = ' . $assigned_template_id);
if(!$check) {
$this->server->fault('Invalid template');
return false;
// for the update event we have to cheat a bit
$this->_set_client_formdata($client_id);
$sql = "DELETE FROM `client_template_assigned` WHERE `assigned_template_id` = " . $template_id . " AND `client_id` = " . $client_id;
$app->db->query($sql);
$affected_rows = $app->db->affectedRows();
$app->plugin->raiseEvent('client:client:on_after_update', $this);
} else {
$this->server->fault('The IDs must be of type integer.');
return false;
}
}
public function client_delete($session_id, $client_id)
{
global $app;
if (!$this->checkPerm($session_id, 'client_delete'))
{
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->deleteQuery('../client/form/client.tform.php', $client_id);
$app->remoting_lib->ispconfig_sysuser_delete($client_id);
return $affected_rows;
// -----------------------------------------------------------------------------------------------
public function client_delete_everything($session_id, $client_id)
{
global $app, $conf;
if(!$this->checkPerm($session_id, 'client_delete_everything')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
$client_id = $app->functions->intval($client_id);
//* remove the group of the client from the resellers group
$parent_client_id = $app->functions->intval($this->dataRecord['parent_client_id']);
$parent_user = $app->db->queryOneRecord("SELECT userid FROM sys_user WHERE client_id = $parent_client_id");
$client_group = $app->db->queryOneRecord("SELECT groupid FROM sys_group WHERE client_id = $client_id");
$app->auth->remove_group_from_user($parent_user['userid'], $client_group['groupid']);
//* delete the group of the client
$app->db->query("DELETE FROM sys_group WHERE client_id = $client_id");
//* delete the sys user(s) of the client
$app->db->query("DELETE FROM sys_user WHERE client_id = $client_id");
//* Delete all records (sub-clients, mail, web, etc....) of this client.
$tables = 'client,dns_rr,dns_soa,dns_slave,ftp_user,mail_access,mail_content_filter,mail_domain,mail_forwarding,mail_get,mail_user,mail_user_filter,shell_user,spamfilter_users,support_message,web_database,web_database_user,web_domain,web_traffic';
$tables_array = explode(',', $tables);
$client_group_id = $app->functions->intval($client_group['groupid']);
if($client_group_id > 1) {
foreach($tables_array as $table) {
if($table != '') {
$records = $app->db->queryAllRecords("SELECT * FROM $table WHERE sys_groupid = ".$client_group_id);
//* find the primary ID of the table
$table_info = $app->db->tableInfo($table);
$index_field = '';
foreach($table_info as $tmp) {
if($tmp['option'] == 'primary') $index_field = $tmp['name'];
}
//* Delete the records
if($index_field != '') {
if(is_array($records)) {
foreach($records as $rec) {
$app->db->datalogDelete($table, $index_field, $rec[$index_field]);
//* Delete traffic records that dont have a sys_groupid column
if($table == 'web_domain') {
$app->db->query("DELETE FROM web_traffic WHERE hostname = '".$app->db->quote($rec['domain'])."'");
}
//* Delete mail_traffic records that dont have a sys_groupid
if($table == 'mail_user') {
$app->db->query("DELETE FROM mail_traffic WHERE mailuser_id = '".$app->db->quote($rec['mailuser_id'])."'");
}
if (!$this->checkPerm($session_id, 'client_delete')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
$affected_rows = $this->deleteQuery('../client/form/client.tform.php', $client_id);
// Website functions ---------------------------------------------------------------------------------------
//* Get cron details
public function sites_cron_get($session_id, $cron_id)
if(!$this->checkPerm($session_id, 'sites_cron_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../sites/form/cron.tform.php');
return $app->remoting_lib->getDataRecord($cron_id);
}
//* Add a cron record
public function sites_cron_add($session_id, $client_id, $params)
if(!$this->checkPerm($session_id, 'sites_cron_add')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
return $this->insertQuery('../sites/form/cron.tform.php', $client_id, $params);
//* Update cron record
public function sites_cron_update($session_id, $client_id, $cron_id, $params)
if(!$this->checkPerm($session_id, 'sites_cron_update')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->updateQuery('../sites/form/cron.tform.php', $client_id, $cron_id, $params);
//* Delete cron record
public function sites_cron_delete($session_id, $cron_id)
if(!$this->checkPerm($session_id, 'sites_cron_delete')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->deleteQuery('../sites/form/cron.tform.php', $cron_id);
// ----------------------------------------------------------------------------------------------------------
//* Get record details
public function sites_database_get($session_id, $primary_id)
if(!$this->checkPerm($session_id, 'sites_database_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../sites/form/database.tform.php');
return $app->remoting_lib->getDataRecord($primary_id);
}
//* Add a record
public function sites_database_add($session_id, $client_id, $params)
if(!$this->checkPerm($session_id, 'sites_database_add')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
//* Check for duplicates
$tmp = $app->db->queryOneRecord("SELECT count(database_id) as dbnum FROM web_database WHERE database_name = '".$app->db->quote($params['database_name'])."' AND server_id = '".intval($params["server_id"])."'");
if($tmp['dbnum'] > 0) {
$this->server->fault('database_name_error_unique', 'There is already a database with that name on the same server.');
return false;
}
$sql = $this->insertQueryPrepare('../sites/form/database.tform.php', $client_id, $params);
if($sql !== false) {
$app->uses('sites_database_plugin');
$this->id = 0;
$this->dataRecord = $params;
$app->sites_database_plugin->processDatabaseInsert($this);
Falko Timme
committed
$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;
//* Update a record
public function sites_database_update($session_id, $client_id, $primary_id, $params)
if(!$this->checkPerm($session_id, 'sites_database_update')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$sql = $this->updateQueryPrepare('../sites/form/database.tform.php', $client_id, $primary_id, $params);
if($sql !== false) {
$app->uses('sites_database_plugin');
$this->id = $primary_id;
$this->dataRecord = $params;
$app->sites_database_plugin->processDatabaseUpdate($this);
Falko Timme
committed
$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;
}
//* Delete a record
public function sites_database_delete($session_id, $primary_id)
if(!$this->checkPerm($session_id, 'sites_database_delete')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('sites_database_plugin');
$app->sites_database_plugin->processDatabaseDelete($primary_id);
$affected_rows = $this->deleteQuery('../sites/form/database.tform.php', $primary_id);
// ----------------------------------------------------------------------------------------------------------
//* Get record details
public function sites_database_user_get($session_id, $primary_id)
global $app;
if(!$this->checkPerm($session_id, 'sites_database_user_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../sites/form/database_user.tform.php');
return $app->remoting_lib->getDataRecord($primary_id);
}
//* Add a record
public function sites_database_user_add($session_id, $client_id, $params)
if(!$this->checkPerm($session_id, 'sites_database_user_add')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
return $this->insertQuery('../sites/form/database_user.tform.php', $client_id, $params);
}
//* Update a record
public function sites_database_user_update($session_id, $client_id, $primary_id, $params)
if(!$this->checkPerm($session_id, 'sites_database_user_update')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../sites/form/database_user.tform.php');
$old_rec = $app->remoting_lib->getDataRecord($primary_id);
$result = $this->updateQuery('../sites/form/database_user.tform.php', $client_id, $primary_id, $params);
$new_rec = $app->remoting_lib->getDataRecord($primary_id);
$records = $app->db->queryAllRecords("SELECT DISTINCT server_id FROM web_database WHERE database_user_id = '".$app->functions->intval($primary_id)."' UNION SELECT DISTINCT server_id FROM web_database WHERE database_ro_user_id = '".$app->functions->intval($primary_id)."'");
foreach($records as $rec) {
$tmp_rec = $new_rec;
$tmp_rec['server_id'] = $rec['server_id'];
$app->remoting_lib->datalogSave('UPDATE', $primary_id, $old_rec, $tmp_rec);
}
unset($new_rec);
unset($old_rec);
unset($records);
return $result;
}
//* Delete a record
public function sites_database_user_delete($session_id, $primary_id)
if(!$this->checkPerm($session_id, 'sites_database_user_delete')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->db->datalogDelete('web_database_user', 'database_user_id', $primary_id);
$affected_rows = $this->deleteQuery('../sites/form/database_user.tform.php', $primary_id);
$records = $app->db->queryAllRecords("SELECT database_id FROM web_database WHERE database_user_id = '".$app->functions->intval($primary_id)."'");
foreach($records as $rec) {
$app->db->datalogUpdate('web_database', 'database_user_id=NULL', 'database_id', $rec['database_id']);
}
$records = $app->db->queryAllRecords("SELECT database_id FROM web_database WHERE database_ro_user_id = '".$app->functions->intval($primary_id)."'");
foreach($records as $rec) {
$app->db->datalogUpdate('web_database', 'database_ro_user_id=NULL', 'database_id', $rec['database_id']);
}
return $affected_rows;
}
// ----------------------------------------------------------------------------------------------------------
//* Get record details
public function sites_ftp_user_get($session_id, $primary_id)
if(!$this->checkPerm($session_id, 'sites_ftp_user_get')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$app->uses('remoting_lib');
$app->remoting_lib->loadFormDef('../sites/form/ftp_user.tform.php');
return $app->remoting_lib->getDataRecord($primary_id);
}
//* Add a record
public function sites_ftp_user_add($session_id, $client_id, $params)
if(!$this->checkPerm($session_id, 'sites_ftp_user_add')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
return $this->insertQuery('../sites/form/ftp_user.tform.php', $client_id, $params);
//* Update a record
public function sites_ftp_user_update($session_id, $client_id, $primary_id, $params)
if(!$this->checkPerm($session_id, 'sites_ftp_user_update')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->updateQuery('../sites/form/ftp_user.tform.php', $client_id, $primary_id, $params);
//* Delete a record
public function sites_ftp_user_delete($session_id, $primary_id)
if(!$this->checkPerm($session_id, 'sites_ftp_user_delete')) {
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
$affected_rows = $this->deleteQuery('../sites/form/ftp_user.tform.php', $primary_id);
//* Get server for an ftp user
public function sites_ftp_user_server_get($session_id, $ftp_user)
global $app;