// Product Suppliers : Debug and optimizations

git-svn-id: http://dev.prestashop.com/svn/v1/branches/1.5.x@10589 b9a71923-0436-4b27-9f14-aed3839534dd
This commit is contained in:
dSevere
2011-11-23 18:48:09 +00:00
parent b12517c17c
commit ddcede4ef5
3 changed files with 43 additions and 44 deletions
+20 -3
View File
@@ -121,10 +121,10 @@ class ProductSupplierCore extends ObjectModel
* For a given product, retrieves its suppliers
*
* @param int $id_product
* @param int $id_lang
* @param int $group_by_supplier
* @return array
*/
public static function getSupplierCollection($id_product, $group_by_product = true)
public static function getSupplierCollection($id_product, $group_by_supplier = true)
{
// build query
$query = new DbQuery();
@@ -132,11 +132,28 @@ class ProductSupplierCore extends ObjectModel
$query->from('product_supplier ps');
$query->where('ps.id_product = '.(int)$id_product);
if ($group_by_product)
if ($group_by_supplier)
$query->groupBy('ps.id_supplier');
$results = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($query);
return ObjectModel::hydrateCollection('ProductSupplier', $results);
}
public function delete()
{
$res = parent::delete();
if ($res && $this->id_product_attribute == 0)
{
$items = self::getSupplierCollection($this->id_product, false);
foreach ($items as &$item)
{
if ($item->id_product_attribute > 0)
$item->delete();
}
}
return $res;
}
}