Clean comment and make some implementations

This commit is contained in:
Laurent Destailleur 2014-02-24 09:52:48 +01:00
parent 404d24a029
commit a797a5e665
7 changed files with 64 additions and 52 deletions

View File

@ -73,7 +73,8 @@ if ($conf->db->type == 'mysql' || $conf->db->type == 'mysqli')
}
else if ($conf->db->type == 'pgsql')
{
$sqls[0] = "select name,setting from pg_settings";
$sqls[0] = "select name,setting from pg_settings"; // TODO function getServerParametersValues
//$sqls[1] = ""; // TODO Use function getServerStatusValues
$base=2;
}
else if ($conf->db->type == 'mssql')

View File

@ -231,11 +231,19 @@ interface Database
*/
function plimit($limit = 0, $offset = 0);
/**
* Return value of server parameters
*
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerParametersValues($filter = '');
/**
* Return value of server status
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerStatusValues($filter = '');
@ -454,11 +462,4 @@ interface Database
*/
function select_db($database);
/**
* Return value of server parameters
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
*/
function getServerParametersValues($filter = '');
}

View File

@ -1097,10 +1097,10 @@ class DoliDBMssql extends DoliDB
}
/**
* Return value of server parameters
* Return value of server parameters
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerParametersValues($filter='')
{
@ -1113,10 +1113,10 @@ class DoliDBMssql extends DoliDB
}
/**
* Return value of server status
* Return value of server status
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerStatusValues($filter='')
{
@ -1124,7 +1124,7 @@ class DoliDBMssql extends DoliDB
// TODO: Implement
// May help: http://www.experts-exchange.com/Database/MS-SQL-Server/Q_20971756.html
return '';
return array();
}
}

View File

@ -84,6 +84,7 @@ class DoliDBMysql extends DoliDB
{
global $conf,$langs;
// Note that having "static" property for "$forcecharset" and "$forcecollate" will make error here in strict mode, so they are not static
if (! empty($conf->db->character_set)) $this->forcecharset=$conf->db->character_set;
if (! empty($conf->db->dolibarr_main_db_collation)) $this->forcecollate=$conf->db->dolibarr_main_db_collation;
@ -1196,10 +1197,10 @@ class DoliDBMysql extends DoliDB
}
/**
* Return value of server parameters
* Return value of server parameters
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerParametersValues($filter='')
{
@ -1218,17 +1219,17 @@ class DoliDBMysql extends DoliDB
}
/**
* Return value of server status
* Return value of server status
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerStatusValues($filter='')
{
$result=array();
$sql='SHOW STATUS';
if ($filter) $sql.=" LIKE '".addslashes($filter)."'";
if ($filter) $sql.=" LIKE '".$this->escape($filter)."'";
$resql=$this->query($sql);
if ($resql)
{

View File

@ -84,9 +84,9 @@ class DoliDBMysqli extends DoliDB
{
global $conf,$langs;
// TODO error in strict mode (static property for "$forcecharset" and "$forcecollate")
//if (! empty($conf->db->character_set)) $this->forcecharset=$conf->db->character_set;
//if (! empty($conf->db->dolibarr_main_db_collation)) $this->forcecollate=$conf->db->dolibarr_main_db_collation;
// Note that having "static" property for "$forcecharset" and "$forcecollate" will make error here in strict mode, so they are not static
if (! empty($conf->db->character_set)) $this->forcecharset=$conf->db->character_set;
if (! empty($conf->db->dolibarr_main_db_collation)) $this->forcecollate=$conf->db->dolibarr_main_db_collation;
$this->database_user=$user;
@ -1200,10 +1200,10 @@ class DoliDBMysqli extends DoliDB
}
/**
* Return value of server parameters
* Return value of server parameters
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerParametersValues($filter='')
{
@ -1222,17 +1222,17 @@ class DoliDBMysqli extends DoliDB
}
/**
* Return value of server status
* Return value of server status (current indicators on memory, cache...)
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerStatusValues($filter='')
{
$result=array();
$sql='SHOW STATUS';
if ($filter) $sql.=" LIKE '".addslashes($filter)."'";
if ($filter) $sql.=" LIKE '".$this->escape($filter)."'";
$resql=$this->query($sql);
if ($resql)
{

View File

@ -85,6 +85,7 @@ class DoliDBPgsql extends DoliDB
{
global $conf,$langs;
// Note that having "static" property for "$forcecharset" and "$forcecollate" will make error here in strict mode, so they are not static
if (! empty($conf->db->character_set)) $this->forcecharset=$conf->db->character_set;
if (! empty($conf->db->dolibarr_main_db_collation)) $this->forcecollate=$conf->db->dolibarr_main_db_collation;
@ -1386,17 +1387,17 @@ class DoliDBPgsql extends DoliDB
}
/**
* Return value of server parameters
* Return value of server parameters
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerParametersValues($filter='')
{
$result=array();
$resql='select name,setting from pg_settings';
if ($filter) $resql.=" WHERE name = '".addslashes($filter)."'";
if ($filter) $resql.=" WHERE name = '".$this->escape($filter)."'";
$resql=$this->query($resql);
if ($resql)
{
@ -1408,18 +1409,25 @@ class DoliDBPgsql extends DoliDB
}
/**
* Return value of server status
* Return value of server status
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerStatusValues($filter='')
{
// FIXME: Dummy method
// TODO: Implement
// May help: http://netpenthe.wordpress.com/2011/12/07/mysql-show-status-for-postgresql
/* This is to return current running requests.
$sql='SELECT datname,procpid,current_query FROM pg_stat_activity ORDER BY procpid';
if ($filter) $sql.=" LIKE '".$this->escape($filter)."'";
$resql=$this->query($sql);
if ($resql)
{
$obj=$this->fetch_object($resql);
$result[$obj->Variable_name]=$obj->Value;
}
*/
return '';
return array();
}
}
?>

View File

@ -84,6 +84,7 @@ class DoliDBSqlite extends DoliDB
{
global $conf,$langs;
// Note that having "static" property for "$forcecharset" and "$forcecollate" will make error here in strict mode, so they are not static
if (! empty($conf->db->character_set)) $this->forcecharset=$conf->db->character_set;
if (! empty($conf->db->dolibarr_main_db_collation)) $this->forcecollate=$conf->db->dolibarr_main_db_collation;
@ -1308,10 +1309,10 @@ class DoliDBSqlite extends DoliDB
}
/**
* Return value of server parameters
* Return value of server parameters
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerParametersValues($filter='')
{
@ -1330,17 +1331,17 @@ class DoliDBSqlite extends DoliDB
}
/**
* Return value of server status
* Return value of server status
*
* @param string $filter Filter list on a particular value
* @return string Value for parameter
* @param string $filter Filter list on a particular value
* @return array Array of key-values (key=>value)
*/
function getServerStatusValues($filter='')
{
$result=array();
$sql='SHOW STATUS';
if ($filter) $sql.=" LIKE '".addslashes($filter)."'";
if ($filter) $sql.=" LIKE '".$this->escape($filter)."'";
$resql=$this->query($sql);
if ($resql)
{