2
0
forked from Wavyzz/dolibarr

Fix: A method of a business class should not accept itself as a parameter.

This commit is contained in:
Laurent Destailleur
2011-08-20 15:30:38 +00:00
parent e326b78e5e
commit c7eea92e83
2 changed files with 15 additions and 16 deletions

View File

@@ -21,7 +21,7 @@
* \file htdocs/core/class/commonobject.class.php
* \ingroup core
* \brief File of parent class of all other business classes (invoices, contracts, proposals, orders, ...)
* \version $Id: commonobject.class.php,v 1.157 2011/08/20 15:11:31 eldy Exp $
* \version $Id: commonobject.class.php,v 1.158 2011/08/20 15:30:38 eldy Exp $
*/
@@ -1931,31 +1931,30 @@ class CommonObject
/**
* Add/Update extra fields
* TODO Use also type of field to do manage date fields
*/
function insertExtraFields($object)
function insertExtraFields()
{
if (sizeof($object->array_options) > 0)
if (sizeof($this->array_options) > 0)
{
$this->db->begin();
$sql_del = "DELETE FROM ".MAIN_DB_PREFIX.$this->table_element."_extrafields WHERE fk_object = ".$object->id;
dol_syslog(get_class($object)."::insertExtraFields delete sql=".$sql_del);
$sql_del = "DELETE FROM ".MAIN_DB_PREFIX.$this->table_element."_extrafields WHERE fk_object = ".$this->id;
dol_syslog(get_class($this)."::insertExtraFields delete sql=".$sql_del);
$this->db->query($sql_del);
$sql = "INSERT INTO ".MAIN_DB_PREFIX.$object->table_element."_extrafields (fk_object";
foreach($object->array_options as $key => $value)
$sql = "INSERT INTO ".MAIN_DB_PREFIX.$this->table_element."_extrafields (fk_object";
foreach($this->array_options as $key => $value)
{
// Add field of attribut
$sql.=",".substr($key,8); // Remove 'options_' prefix
}
$sql .= ") VALUES (".$object->id;
foreach($object->array_options as $key => $value)
$sql .= ") VALUES (".$this->id;
foreach($this->array_options as $key => $value)
{
// Add field o fattribut
if ($object->array_options[$key] != '')
if ($this->array_options[$key] != '')
{
$sql.=",'".$object->array_options[$key]."'";
$sql.=",'".$this->array_options[$key]."'";
}
else
{
@@ -1964,12 +1963,12 @@ class CommonObject
}
$sql.=")";
dol_syslog(get_class($object)."::insertExtraFields insert sql=".$sql);
dol_syslog(get_class($this)."::insertExtraFields insert sql=".$sql);
$resql = $this->db->query($sql);
if (! $resql)
{
$this->error=$this->db->lasterror();
dol_syslog(get_class($object)."::update ".$this->error,LOG_ERR);
dol_syslog(get_class($this)."::update ".$this->error,LOG_ERR);
$this->db->rollback();
return -1;
}