few minor changes for multiserver-support

This commit is contained in:
Michael Kaufmann (d00p)
2010-10-18 11:34:19 +00:00
parent 8d27f71cee
commit f42fa0ee7b
6 changed files with 72 additions and 12 deletions

View File

@@ -97,9 +97,12 @@ if((int)$settings['multiserver']['enabled'] == 1)
}
}
/**
* edit client-base data like name and description
*/
elseif($action == 'edit'
&& $id != 0)
{
&& $id != 0
) {
$client = froxlorclient::getInstance($userinfo, $db, $settings, $id);
if(isset($_POST['send'])
@@ -112,5 +115,24 @@ if((int)$settings['multiserver']['enabled'] == 1)
}
}
/**
* edit client settings
*/
elseif($action == 'settings'
&& $id != 0
) {
$client = froxlorclient::getInstance($userinfo, $db, $settings, $id);
$settings_data = $client->getSettingsData();
$settings = $client->getSettingsArray();
if(isset($_POST['send'])
&& $_POST['send'] == 'send')
{
}
else
{
}
}
}
}

View File

@@ -466,7 +466,7 @@ INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) V
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (18, 'system', 'vmail_homedir', '/var/customers/mail/');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (19, 'system', 'bindconf_directory', '/etc/bind/');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (20, 'system', 'bindreload_command', '/etc/init.d/bind9 reload');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (22, 'panel', 'version', '0.9.14-svn8');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (22, 'panel', 'version', '0.9.14-svn9');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (23, 'system', 'hostname', 'SERVERNAME');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (24, 'login', 'maxloginattempts', '3');
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (25, 'login', 'deactivatetime', '900');
@@ -1102,7 +1102,7 @@ DROP TABLE IF EXISTS `froxlor_clients`;
CREATE TABLE IF NOT EXISTS `froxlor_clients` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(255) NOT NULL,
`ip` varchar(39) NOT NULL default '',
`desc` text NOT NULL default '',
`enabled` tinyint(1) DEFAULT '1',
PRIMARY KEY (`id`)
) ENGINE=MyISAM;

View File

@@ -1285,3 +1285,15 @@ if(isFroxlorVersion('0.9.14-svn7'))
updateToVersion('0.9.14-svn8');
}
if(isFroxlorVersion('0.9.14-svn8'))
{
showUpdateStep("Updating from 0.9.14-svn8 to 0.9.14-svn9", false);
showUpdateStep("Updating table 'froxlor_clients'");
$db->query("ALTER TABLE `".TABLE_FROXLOR_CLIENTS."` DROP `ip`;");
$db->query("ALTER TABLE `".TABLE_FROXLOR_CLIENTS."` ADD `desc` text NOT NULL default '' AFTER `id`;");
lastStepStatus(0);
updateToVersion('0.9.14-svn9');
}

View File

@@ -52,6 +52,12 @@ class froxlorclient
*/
private $c_data = array();
/**
* Client Settings_Data Array
* @var s_data
*/
private $s_data = array();
/**
* Client-Object-Array
* @var clients
@@ -154,7 +160,7 @@ class froxlorclient
`" . TABLE_FROXLOR_CLIENTS . "`
SET
`name` = '" . $this->db->escape($this->Get('name')) . "',
`ip` = '" . $this->db->escape($this->Get('ip')) . "',
`desc` = '" . $this->db->escape($this->Get('desc')) . "',
`enabled` = '" . (int)$this->Get('enabled') . "'
WHERE
`id` = '" . (int)$this->cid . "';
@@ -194,6 +200,24 @@ class froxlorclient
return true;
}
/**
* return the complete client-settings array
* for the settings page
*/
public function getSettingsArray()
{
return $this->Get('settings');
}
/**
* return the complete client-settings-data array
* for the settings page
*/
public function getSettingsData()
{
return $this->s_data;
}
/**
* get a value from the internal data array
*
@@ -338,11 +362,11 @@ class froxlorclient
&& $this->cid != - 1
) {
$spath = makeCorrectDir(dirname(dirname(dirname(dirname(__FILE__)))));
$settings_data = loadConfigArrayDir(
$this->s_data = loadConfigArrayDir(
makeCorrectDir($spath.'/actions/admin/settings/'),
makeCorrectDir($spath.'/actions/multiserver/clientsettings/')
);
$settings = loadSettings($settings_data, $db, $this->cid);
$settings = loadSettings($this->s_data, $db, $this->cid);
foreach($settings as $group => $fv)
{

View File

@@ -21,9 +21,6 @@ function saveSetting($settinggroup, $varname, $newvalue)
{
global $db;
// multi-server-support, get the destination server id (master = 0)
$server_id = getServerId();
$query = 'UPDATE
`' . TABLE_PANEL_SETTINGS . '`
SET
@@ -31,8 +28,13 @@ function saveSetting($settinggroup, $varname, $newvalue)
WHERE
`settinggroup` = \'' . $db->escape($settinggroup) . '\'
AND
`varname`=\'' . $db->escape($varname) . '\'
`varname`=\'' . $db->escape($varname) . '\' ';
/*
*
* @TODO for multiserver
*
AND
`sid`=\''. (int)$server_id . '\' ';
*/
return $db->query($query);
}

View File

@@ -72,7 +72,7 @@ define('PACKAGE_ENABLED', 2);
// VERSION INFO
$version = '0.9.14-svn8';
$version = '0.9.14-svn9';
$dbversion = '2';
$branding = '';