Example #1
0
 public static function cacheProductsFeatures($product_ids)
 {
     if (!JeproshopFeatureModelFeature::isFeaturePublished()) {
         return;
     }
     $product_implode = array();
     foreach ($product_ids as $product_id) {
         if ((int) $product_id && !array_key_exists($product_id, self::$_cacheFeatures)) {
             $product_implode[] = (int) $product_id;
         }
     }
     if (!count($product_implode)) {
         return;
     }
     $db = JFactory::getBO();
     $query = "SELECT feature_id, product_id, feature_value_id FROM " . $db->quoteName('#__jeproshop_feature_product') . " WHERE ";
     $query .= $db->quoteName('product_id') . " IN (" . implode($product_implode, ',') . ")";
     $db->setQuery($query);
     $result = $db->loadObjectList();
     foreach ($result as $row) {
         if (!array_key_exists($row->product_id, self::$_cacheFeatures)) {
             self::$_cacheFeatures[$row->product_id] = array();
         }
         self::$_cacheFeatures[$row->product_id][] = $row;
     }
 }