- more work in multiserver-client-settings (save-methods)
This commit is contained in:
@@ -17,7 +17,7 @@
|
||||
* @version $Id$
|
||||
*/
|
||||
|
||||
function saveSetting($settinggroup, $varname, $newvalue)
|
||||
function saveSetting($settinggroup, $varname, $newvalue, $server_id = 0)
|
||||
{
|
||||
global $db;
|
||||
|
||||
@@ -28,13 +28,9 @@ function saveSetting($settinggroup, $varname, $newvalue)
|
||||
WHERE
|
||||
`settinggroup` = \'' . $db->escape($settinggroup) . '\'
|
||||
AND
|
||||
`varname`=\'' . $db->escape($varname) . '\' ';
|
||||
/*
|
||||
*
|
||||
* @TODO for multiserver
|
||||
*
|
||||
`varname`=\'' . $db->escape($varname) . '\'
|
||||
AND
|
||||
`sid`=\''. (int)$server_id . '\' ';
|
||||
*/
|
||||
|
||||
return $db->query($query);
|
||||
}
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
* @version $Id$
|
||||
*/
|
||||
|
||||
function storeSettingField($fieldname, $fielddata, $newfieldvalue)
|
||||
function storeSettingField($fieldname, $fielddata, $newfieldvalue, $server_id = 0)
|
||||
{
|
||||
if(is_array($fielddata) && isset($fielddata['settinggroup']) && $fielddata['settinggroup'] != '' && isset($fielddata['varname']) && $fielddata['varname'] != '')
|
||||
{
|
||||
if(saveSetting($fielddata['settinggroup'], $fielddata['varname'], $newfieldvalue) != false)
|
||||
if(saveSetting($fielddata['settinggroup'], $fielddata['varname'], $newfieldvalue, $server_id) != false)
|
||||
{
|
||||
/*
|
||||
* when fielddata[cronmodule] is set, this means enable/disable a cronjob
|
||||
@@ -38,7 +38,7 @@ function storeSettingField($fieldname, $fielddata, $newfieldvalue)
|
||||
{
|
||||
if((int)$fielddata['dependency']['onlyif'] == (int)$newfieldvalue)
|
||||
{
|
||||
storeSettingField($fielddata['dependency']['fieldname'], $fielddata['dependency']['fielddata'], $newfieldvalue);
|
||||
storeSettingField($fielddata['dependency']['fieldname'], $fielddata['dependency']['fielddata'], $newfieldvalue, $server_id);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -17,16 +17,16 @@
|
||||
* @version $Id$
|
||||
*/
|
||||
|
||||
function storeSettingHostname($fieldname, $fielddata, $newfieldvalue)
|
||||
function storeSettingHostname($fieldname, $fielddata, $newfieldvalue, $server_id = 0)
|
||||
{
|
||||
$returnvalue = storeSettingField($fieldname, $fielddata, $newfieldvalue);
|
||||
$returnvalue = storeSettingField($fieldname, $fielddata, $newfieldvalue, $server_id );
|
||||
|
||||
if($returnvalue !== false && is_array($fielddata) && isset($fielddata['settinggroup']) && $fielddata['settinggroup'] == 'system' && isset($fielddata['varname']) && $fielddata['varname'] == 'hostname')
|
||||
{
|
||||
global $db, $idna_convert;
|
||||
$newfieldvalue = $idna_convert->encode($newfieldvalue);
|
||||
|
||||
$customerstddomains_result = $db->query('SELECT `standardsubdomain` FROM `' . TABLE_PANEL_CUSTOMERS . '` WHERE `standardsubdomain` <> \'0\'');
|
||||
$customerstddomains_result = $db->query('SELECT `standardsubdomain` FROM `' . TABLE_PANEL_CUSTOMERS . '` WHERE `standardsubdomain` <> \'0\' and `sid` = "'.$server_id.'"');
|
||||
$ids = array();
|
||||
|
||||
while($customerstddomains_row = $db->fetch_array($customerstddomains_result))
|
||||
@@ -36,8 +36,15 @@ function storeSettingHostname($fieldname, $fielddata, $newfieldvalue)
|
||||
|
||||
if(count($ids) > 0)
|
||||
{
|
||||
$db->query('UPDATE `' . TABLE_PANEL_DOMAINS . '` SET `domain` = REPLACE(`domain`, \'' . $db->escape(getSetting('system', 'hostname')) . '\', \'' . $db->escape($newfieldvalue) . '\') WHERE `id` IN (\'' . implode('\',\'', $ids) . '\')');
|
||||
inserttask('1');
|
||||
if($server_id > 0)
|
||||
{
|
||||
$client = froxlorclient::getInstance(null, $db, $server_id);
|
||||
$syshostname = $client->getSetting('system', 'hostname');
|
||||
} else {
|
||||
$syshostname = getSetting('system', 'hostname');
|
||||
}
|
||||
$db->query('UPDATE `' . TABLE_PANEL_DOMAINS . '` SET `domain` = REPLACE(`domain`, \'' . $db->escape($syshostname) . '\', \'' . $db->escape($newfieldvalue) . '\') WHERE `id` IN (\'' . implode('\',\'', $ids) . '\') AND `sid` = "'.$server_id.'"');
|
||||
inserttask('1', $server_id);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -17,13 +17,20 @@
|
||||
* @version $Id$
|
||||
*/
|
||||
|
||||
function storeSettingIpAddress($fieldname, $fielddata, $newfieldvalue)
|
||||
function storeSettingIpAddress($fieldname, $fielddata, $newfieldvalue, $server_id = 0)
|
||||
{
|
||||
$returnvalue = storeSettingField($fieldname, $fielddata, $newfieldvalue);
|
||||
$returnvalue = storeSettingField($fieldname, $fielddata, $newfieldvalue, $server_id);
|
||||
|
||||
if($returnvalue !== false && is_array($fielddata) && isset($fielddata['settinggroup']) && $fielddata['settinggroup'] == 'system' && isset($fielddata['varname']) && $fielddata['varname'] == 'ipaddress')
|
||||
{
|
||||
$mysql_access_host_array = array_map('trim', explode(',', getSetting('system', 'mysql_access_host')));
|
||||
if($server_id > 0)
|
||||
{
|
||||
$client = froxlorclient::getInstance(null, $db, $server_id);
|
||||
$mysqlhosts = $client->getSetting('system', 'mysql_access_host');
|
||||
} else {
|
||||
$mysqlhosts = getSetting('system', 'mysql_access_host');
|
||||
}
|
||||
$mysql_access_host_array = array_map('trim', explode(',', $mysqlhosts));
|
||||
$mysql_access_host_array[] = $newfieldvalue;
|
||||
$mysql_access_host_array = array_unique(array_trim($mysql_access_host_array));
|
||||
$mysql_access_host = implode(',', $mysql_access_host_array);
|
||||
|
||||
@@ -17,9 +17,9 @@
|
||||
* @version $Id$
|
||||
*/
|
||||
|
||||
function storeSettingMysqlAccessHost($fieldname, $fielddata, $newfieldvalue)
|
||||
function storeSettingMysqlAccessHost($fieldname, $fielddata, $newfieldvalue, $server_id = 0)
|
||||
{
|
||||
$returnvalue = storeSettingField($fieldname, $fielddata, $newfieldvalue);
|
||||
$returnvalue = storeSettingField($fieldname, $fielddata, $newfieldvalue, $server_id);
|
||||
|
||||
if($returnvalue !== false && is_array($fielddata) && isset($fielddata['settinggroup']) && $fielddata['settinggroup'] == 'system' && isset($fielddata['varname']) && $fielddata['varname'] == 'mysql_access_host')
|
||||
{
|
||||
@@ -39,7 +39,7 @@ function storeSettingMysqlAccessHost($fieldname, $fielddata, $newfieldvalue)
|
||||
|
||||
$mysql_access_host_array = array_unique(array_trim($mysql_access_host_array));
|
||||
$newfieldvalue = implode(',', $mysql_access_host_array);
|
||||
correctMysqlUsers($mysql_access_host_array);
|
||||
correctMysqlUsers($mysql_access_host_array, $server_id);
|
||||
}
|
||||
|
||||
return $returnvalue;
|
||||
|
||||
Reference in New Issue
Block a user