/** * @param $aDatas * @param $aNewData */ public function checkImport($aDatas, &$aNewData) { foreach ($aDatas as $aData) { // Initialisation $aData['error'] = ""; if (!array_key_exists('product_reference', $aData)) { $aData['product_reference'] = ''; } if (!array_key_exists('product_id', $aData)) { $aData['product_id'] = ''; } if (empty($aData['product_reference']) && empty($aData['product_id'])) { $aData['error'] = $this->module->l('Product reference and product ID is empty.', 'AdminNowAllImport'); continue; } else { // On vérifie l'Id produit si il existe if (empty($aData['product_id']) || !NowProduct::isRealProduct($aData['product_id'])) { // Get product by product reference if (empty($aData['product_reference']) || !($aData['product_id'] = NowProduct::getIdProductByProductReference($aData['product_reference']))) { $aData['error'] = sprintf($this->module->l('Product reference doesn\'t exist: "%s".', 'AdminNowAllImport'), $aData['product_reference']); } } // On récuprère les informations du produit $aProduct = NowProduct::getProductLight($aData['product_id']); // On récupère le nouveau type de produit if (!empty($aData['id_now_product_type'])) { $oNewNowProductType = NowProductType::getObjectByIdProductType($aData['id_now_product_type'], Context::getContext()->language->id); if (Validate::isLoadedObject($oNewNowProductType)) { // On récupère l'ancien type de produit $oOldNowProductType = NowProductType::getObjectByIdProduct($aProduct['id_product'], Context::getContext()->language->id); if (Validate::isLoadedObject($oOldNowProductType)) { $oldproductTypeName = $oOldNowProductType->name; } $aData['product_type'] = $oNewNowProductType->name . ' ' . (isset($oldproductTypeName) && $oOldNowProductType->id != $oNewNowProductType->id ? sprintf($this->module->l('(Old: %s)', 'AdminNowAllImport'), $oldproductTypeName) : ''); } else { $aData['error'] = sprintf($this->module->l('Product type ID doesn\'t exist: "%s".', 'AdminNowAllImport'), $aData['id_now_product_type']); } } } $aNewData[] = array('id_product' => isset($aProduct['id_product']) ? $aProduct['id_product'] : '', 'product_name' => isset($aProduct['name']) ? $aProduct['name'] : '', 'product_reference' => isset($aProduct['reference']) ? $aProduct['reference'] : '', 'active' => isset($aData['active']) ? $aData['active'] : '', 'accessories' => isset($aData['accessories']) ? $aData['accessories'] : '', 'new_accessories' => isset($aData['accessories']) ? $this->getNewAccessories($aData['accessories']) : '', 'old_accessories' => isset($aData['product_id']) ? $this->getOldAccessories($aData['product_id']) : '', 'id_now_product_type' => isset($aData['id_now_product_type']) ? $aData['id_now_product_type'] : '', 'product_type' => isset($aData['product_type']) ? $aData['product_type'] : '', 'ideas_tips' => isset($aData['ideas_tips']) ? $aData['ideas_tips'] : '', 'new_ideas_tips' => isset($aData['ideas_tips']) ? $this->getNewIdeasOrTips($aData['ideas_tips']) : '', 'old_ideas_tips' => isset($aData['product_id']) ? $this->getOldIdeasOrTips($aData['product_id']) : '', 'products_pack' => isset($aData['products_pack']) ? $aData['products_pack'] : '', 'new_products_pack' => isset($aData['products_pack']) ? $this->getNewProductsPacks($aData['products_pack']) : '', 'old_products_pack' => isset($aData['product_id']) ? $this->getOldProductsPacks($aData['product_id']) : '', 'error' => isset($aData['error']) ? $aData['error'] : ''); } }
/** * @param $aDatas * @param $aNewData */ public function checkIdeasOrTips($aDatas, &$aNewData) { foreach ($aDatas as $aData) { // Initialisation $aData['error'] = ""; if (!array_key_exists('product_reference', $aData)) { $aData['product_reference'] = ''; } if (!array_key_exists('product_id', $aData)) { $aData['product_id'] = ''; } if (empty($aData['product_reference']) && empty($aData['product_id'])) { $aData['error'] = $this->module->l('Product reference and product ID is empty.', 'AdminNowImportTipsAndIdeas'); } // On vérifie l'Id produit si il existe if (empty($aData['product_id']) || !NowProduct::isRealProduct($aData['product_id'])) { // Get product by product reference if (empty($aData['product_reference']) || !($aData['product_id'] = NowProduct::getIdProductByProductReference($aData['product_reference']))) { $aData['error'] = sprintf($this->module->l('Product reference doesn\'t exist: "%s".', 'AdminNowImportTipsAndIdeas'), $aData['product_reference']); } } // On récuprère les informations du produit $aProduct = NowProduct::getProductLight($aData['product_id']); $aNewData[] = array('id_product' => $aProduct['id_product'], 'product_name' => $aProduct['name'], 'product_reference' => $aProduct['reference'], 'ideas_tips' => $aData['ideas_tips'], 'new_ideas_tips' => $this->getNewIdeasOrTips($aData['ideas_tips']), 'old_ideas_tips' => $this->getOldIdeasOrTips($aData['product_id']), 'error' => $aData['error']); } }
public function checkProductTypes($aDatas, &$aNewData) { foreach ($aDatas as $aData) { // Initialisation $aData['error'] = ""; if (!array_key_exists('product_reference', $aData)) { $aData['product_reference'] = ''; } if (!array_key_exists('product_id', $aData)) { $aData['product_id'] = ''; } if (empty($aData['product_reference']) && empty($aData['product_id'])) { $aData['error'] = $this->module->l('Product reference and product ID is empty.', 'AdminNowImportProductType'); } // On vérifie l'Id produit si il existe if (empty($aData['product_id']) || !NowProduct::isRealProduct($aData['product_id'])) { // Get product by product reference if (empty($aData['product_reference']) || !($aData['product_id'] = NowProduct::getIdProductByProductReference($aData['product_reference']))) { $aData['error'] = sprintf($this->module->l('Product reference doesn\'t exist: "%s".', 'AdminNowImportProductType'), $aData['product_reference']); } } // On récuprère les informations du produit $aProduct = NowProduct::getProductLight($aData['product_id']); // On récupère le nouveau type de produit $oNewNowProductType = NowProductType::getObjectByIdProductType($aData['id_now_product_type'], Context::getContext()->language->id); if (Validate::isLoadedObject($oNewNowProductType)) { $aData['new_product_type'] = $oNewNowProductType->name; } else { $aData['error'] = sprintf($this->module->l('Product type ID doesn\'t exist: "%s".', 'AdminNowImportProductType'), $aData['id_now_product_type']); } // On récupère l'ancien type de produit $oOldNowProductType = NowProductType::getObjectByIdProduct($aProduct['id_product'], Context::getContext()->language->id); if (Validate::isLoadedObject($oOldNowProductType)) { $aData['old_product_type'] = $oOldNowProductType->name; } else { $aData['old_product_type'] = ''; } $aNewData[] = array('id_product' => $aProduct['id_product'], 'product_reference' => $aProduct['reference'], 'product_name' => $aProduct['name'], 'id_now_product_type' => $aData['id_now_product_type'], 'new_product_type' => $aData['new_product_type'], 'old_product_type' => $aData['old_product_type'], 'active' => $aData['active'], 'error' => $aData['error']); } }