diff --git a/admin-dev/themes/default/template/import/form.tpl b/admin-dev/themes/default/template/import/form.tpl
index 599c7fe97..7ee5dc712 100644
--- a/admin-dev/themes/default/template/import/form.tpl
+++ b/admin-dev/themes/default/template/import/form.tpl
@@ -199,7 +199,7 @@
{l s='Note that you can have serveral products with the same reference.'}
-
{l s='Importing Supply Order Details will first reset the products ordered.'}
+
{l s='Importing Supply Order Details will first reset the products ordered, if any.'}
{if !count($files_to_import)}
diff --git a/controllers/admin/AdminImportController.php b/controllers/admin/AdminImportController.php
index 1a8d6ae5d..33f6f447a 100644
--- a/controllers/admin/AdminImportController.php
+++ b/controllers/admin/AdminImportController.php
@@ -76,7 +76,7 @@ class AdminImportControllerCore extends AdminController
public function __construct()
{
- $this->entities = array_flip(array(
+ $this->entities = array(
$this->l('Categories'),
$this->l('Products'),
$this->l('Combinations'),
@@ -84,9 +84,21 @@ class AdminImportControllerCore extends AdminController
$this->l('Addresses'),
$this->l('Manufacturers'),
$this->l('Suppliers'),
- $this->l('SupplyOrders'),
- $this->l('SupplyOrdersDetails'),
- ));
+ );
+
+ // @since 1.5.0
+ if (Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT'))
+ {
+ $this->entities = array_merge(
+ $this->entities,
+ array(
+ $this->l('SupplyOrders'),
+ $this->l('SupplyOrdersDetails'),
+ )
+ );
+ }
+
+ $this->entities = array_flip($this->entities);
switch ((int)Tools::getValue('entity'))
{
@@ -342,59 +354,65 @@ class AdminImportControllerCore extends AdminController
break;
// @since 1.5.0
case $this->entities[$this->l('SupplyOrders')]:
- // required fields
- $this->required_fields = array(
- 'id_supplier',
- 'id_warehouse',
- 'reference',
- 'date_delivery_expected',
- );
- // available fields
- $this->available_fields = array(
- 'no' => array('label' => $this->l('Ignore this column')),
- 'id' => array('label' => $this->l('ID')),
- 'id_supplier' => array('label' => $this->l('Supplier ID *')),
- 'id_lang' => array('label' => $this->l('Lang ID')),
- 'id_warehouse' => array('label' => $this->l('Warehouse ID *')),
- 'id_currency' => array('label' => $this->l('Currency ID *')),
- 'reference' => array('label' => $this->l('Supply Order Reference *')),
- 'date_delivery_expected' => array('label' => $this->l('Delivery Date (Y-M-D)*')),
- 'discount_rate' => array('label' => $this->l('Discount Rate')),
- 'is_template' => array('label' => $this->l('Template')),
- );
- // default values
- self::$default_values = array(
- 'id_lang' => (int)Configuration::get('PS_LANG_DEFAULT'),
- 'id_currency' => Currency::getDefaultCurrency()->id,
- 'discount_rate' => '0',
- 'is_template' => '0',
- );
+ if (Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT'))
+ {
+ // required fields
+ $this->required_fields = array(
+ 'id_supplier',
+ 'id_warehouse',
+ 'reference',
+ 'date_delivery_expected',
+ );
+ // available fields
+ $this->available_fields = array(
+ 'no' => array('label' => $this->l('Ignore this column')),
+ 'id' => array('label' => $this->l('ID')),
+ 'id_supplier' => array('label' => $this->l('Supplier ID *')),
+ 'id_lang' => array('label' => $this->l('Lang ID')),
+ 'id_warehouse' => array('label' => $this->l('Warehouse ID *')),
+ 'id_currency' => array('label' => $this->l('Currency ID *')),
+ 'reference' => array('label' => $this->l('Supply Order Reference *')),
+ 'date_delivery_expected' => array('label' => $this->l('Delivery Date (Y-M-D)*')),
+ 'discount_rate' => array('label' => $this->l('Discount Rate')),
+ 'is_template' => array('label' => $this->l('Template')),
+ );
+ // default values
+ self::$default_values = array(
+ 'id_lang' => (int)Configuration::get('PS_LANG_DEFAULT'),
+ 'id_currency' => Currency::getDefaultCurrency()->id,
+ 'discount_rate' => '0',
+ 'is_template' => '0',
+ );
+ }
break;
// @since 1.5.0
case $this->entities[$this->l('SupplyOrdersDetails')]:
- // required fields
- $this->required_fields = array(
- 'supply_order_reference',
- 'id_product',
- 'unit_price_te',
- 'quantity_expected',
- );
- // available fields
- $this->available_fields = array(
- 'no' => array('label' => $this->l('Ignore this column')),
- 'supply_order_reference' => array('label' => $this->l('Supply Order Reference *')),
- 'id_product' => array('label' => $this->l('Product ID *')),
- 'id_product_attribute' => array('label' => $this->l('Product Attribute ID')),
- 'unit_price_te' => array('label' => $this->l('Unit Price (te) *')),
- 'quantity_expected' => array('label' => $this->l('Quantity Expected *')),
- 'discount_rate' => array('label' => $this->l('Discount Rate')),
- 'tax_rate' => array('label' => $this->l('Tax Rate')),
- );
- // default values
- self::$default_values = array(
- 'discount_rate' => '0',
- 'tax_rate' => '0',
- );
+ if (Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT'))
+ {
+ // required fields
+ $this->required_fields = array(
+ 'supply_order_reference',
+ 'id_product',
+ 'unit_price_te',
+ 'quantity_expected',
+ );
+ // available fields
+ $this->available_fields = array(
+ 'no' => array('label' => $this->l('Ignore this column')),
+ 'supply_order_reference' => array('label' => $this->l('Supply Order Reference *')),
+ 'id_product' => array('label' => $this->l('Product ID *')),
+ 'id_product_attribute' => array('label' => $this->l('Product Attribute ID')),
+ 'unit_price_te' => array('label' => $this->l('Unit Price (te) *')),
+ 'quantity_expected' => array('label' => $this->l('Quantity Expected *')),
+ 'discount_rate' => array('label' => $this->l('Discount Rate')),
+ 'tax_rate' => array('label' => $this->l('Tax Rate')),
+ );
+ // default values
+ self::$default_values = array(
+ 'discount_rate' => '0',
+ 'tax_rate' => '0',
+ );
+ }
}
parent::__construct();
@@ -438,7 +456,7 @@ class AdminImportControllerCore extends AdminController
'files_to_import' => $files_to_import,
'languages' => Language::getLanguages(false),
'id_language' => $this->context->language->id,
- 'available_fields' => $this->getAvailableFields()
+ 'available_fields' => $this->getAvailableFields(),
);
return parent::renderForm();
@@ -2104,11 +2122,13 @@ class AdminImportControllerCore extends AdminController
break;
// @since 1.5.0
case $this->entities[$this->l('SupplyOrders')]:
- $this->supplyOrdersImport();
+ if (Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT'))
+ $this->supplyOrdersImport();
break;
// @since 1.5.0
case $this->entities[$this->l('SupplyOrdersDetails')]:
- $this->supplyOrdersDetailsImport();
+ if (Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT'))
+ $this->supplyOrdersDetailsImport();
break;
default:
$this->_errors[] = $this->l('no entity selected');