From a98c5b9841fb42b1bb81c1e869e2dc1dfd21cb1e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 4 Sep 2020 13:05:30 +0200 Subject: [PATCH] Update api_products.class.php --- htdocs/product/class/api_products.class.php | 22 +++++++++------------ 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/htdocs/product/class/api_products.class.php b/htdocs/product/class/api_products.class.php index b4b4715ac11..a4726405669 100644 --- a/htdocs/product/class/api_products.class.php +++ b/htdocs/product/class/api_products.class.php @@ -1327,20 +1327,16 @@ class Products extends DolibarrApi $objectval = new ProductAttributeValue($this->db); - $return = []; - foreach ($objectval->fetchAllByProductAttribute((int) $id) as $result) { - $tmp = new stdClass(); - $tmp->fk_product_attribute = (int) $result->fk_product_attribute; - $tmp->id = (int) $result->id; - $tmp->ref = $result->ref; - $tmp->value = $result->value; - $return[] = $tmp; - } - + $return = $objectval->fetchAllByProductAttribute((int) $id); + if (count($return) == 0) { throw new RestException(404, 'Attribute values not found'); } + foreach ($return as $key => $val) { + $return[$key] = $this->_cleanObjectDatas($return[$key]); + } + return $return; } @@ -1363,8 +1359,8 @@ class Products extends DolibarrApi $return = array(); $sql = 'SELECT '; - $sql .= 'v.fk_product_attribute, v.rowid, v.ref, v.value FROM '.MAIN_DB_PREFIX.'product_attribute_value v '; - $sql .= "WHERE v.fk_product_attribute = ( SELECT rowid FROM ".MAIN_DB_PREFIX."product_attribute WHERE ref LIKE '".strtoupper(trim($ref))."' LIMIT 1)"; + $sql .= 'v.fk_product_attribute, v.rowid, v.ref, v.value FROM '.MAIN_DB_PREFIX.'product_attribute_value as v'; + $sql .= " WHERE v.fk_product_attribute = (SELECT rowid FROM ".MAIN_DB_PREFIX."product_attribute WHERE ref LIKE '".strtoupper(trim($ref))."' LIMIT 1)"; $query = $this->db->query($sql); @@ -1375,7 +1371,7 @@ class Products extends DolibarrApi $tmp->ref = $result->ref; $tmp->value = $result->value; - $return[] = $tmp; + $return[] = $this->_cleanObjectDatas($tmp); } return $return;