diff --git a/classes/Configuration.php b/classes/Configuration.php
index dd57cb048..ffb5e81eb 100644
--- a/classes/Configuration.php
+++ b/classes/Configuration.php
@@ -53,8 +53,8 @@ class ConfigurationCore extends ObjectModel
'multilang' => true,
'fields' => array(
'name' => array('type' => self::TYPE_STRING, 'validate' => 'isConfigName', 'required' => true, 'size' => 32),
- 'id_group_shop' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedId'),
- 'id_shop' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedId'),
+ 'id_group_shop' => array('type' => self::TYPE_NOTHING, 'validate' => 'isUnsignedId'),
+ 'id_shop' => array('type' => self::TYPE_NOTHING, 'validate' => 'isUnsignedId'),
'value' => array('type' => self::TYPE_STRING),
'date_add' => array('type' => self::TYPE_DATE, 'validate' => 'isDate'),
'date_upd' => array('type' => self::TYPE_DATE, 'validate' => 'isDate'),
diff --git a/classes/ObjectModel.php b/classes/ObjectModel.php
index 82619f7f8..21d4bbf49 100644
--- a/classes/ObjectModel.php
+++ b/classes/ObjectModel.php
@@ -36,6 +36,7 @@ abstract class ObjectModelCore
const TYPE_FLOAT = 4;
const TYPE_DATE = 5;
const TYPE_HTML = 6;
+ const TYPE_NOTHING = 7;
/**
* List of association types
@@ -338,6 +339,9 @@ abstract class ObjectModelCore
return '\''.pSQL($value, true).'\'';
return pSQL($value, true);
+ case self::TYPE_NOTHING :
+ return $value;
+
case self::TYPE_STRING :
default :
if ($with_quotes)
diff --git a/install-new/classes/xmlLoader.php b/install-new/classes/xmlLoader.php
index 3da97159a..c1a8eb976 100644
--- a/install-new/classes/xmlLoader.php
+++ b/install-new/classes/xmlLoader.php
@@ -393,12 +393,14 @@ class InstallXmlLoader
}
else if ($classname)
{
+ $xml = $this->loadEntity($entity);
+
// Create entity with ObjectModel class
$object = new $classname();
$object->hydrate($data);
if ($data_lang)
$object->hydrate($data_lang);
- $object->add();
+ $object->add(true, (isset($xml->fields['null'])) ? true : false);
$entity_id = $object->id;
}
else
@@ -669,6 +671,7 @@ class InstallXmlLoader
'sql' => '',
'ordersql' => '',
'image' => '',
+ 'null' => '',
),
'fields' => array(),
);
@@ -695,6 +698,9 @@ class InstallXmlLoader
if ($xml->fields['ordersql'])
$info['config']['ordersql'] = (string)$xml->fields['ordersql'];
+ if ($xml->fields['null'])
+ $info['config']['null'] = (string)$xml->fields['null'];
+
if ($xml->fields['image'])
$info['config']['image'] = (string)$xml->fields['image'];
diff --git a/install-new/data/xml/access.xml b/install-new/data/xml/access.xml
index a2eff04ba..ef368b7f4 100644
--- a/install-new/data/xml/access.xml
+++ b/install-new/data/xml/access.xml
@@ -1,13 +1,5 @@
-
-
-
-
-
-
-
-
@@ -109,4 +101,12 @@
+
+
+
+
+
+
+
+
diff --git a/install-new/data/xml/address_format.xml b/install-new/data/xml/address_format.xml
index 466bb5720..20901acb7 100644
--- a/install-new/data/xml/address_format.xml
+++ b/install-new/data/xml/address_format.xml
@@ -1,9 +1,5 @@
-
-
-
-
firstname lastname
@@ -2444,4 +2440,8 @@ Country:name
phone
+
+
+
+
diff --git a/install-new/data/xml/carrier.xml b/install-new/data/xml/carrier.xml
index d4aed93b1..fe4e6f833 100644
--- a/install-new/data/xml/carrier.xml
+++ b/install-new/data/xml/carrier.xml
@@ -1,5 +1,11 @@
+
+
+ 0
+
+
+
@@ -18,10 +24,4 @@
-
-
- 0
-
-
-
diff --git a/install-new/data/xml/carrier_group.xml b/install-new/data/xml/carrier_group.xml
index 63ee20d09..161d25bd5 100644
--- a/install-new/data/xml/carrier_group.xml
+++ b/install-new/data/xml/carrier_group.xml
@@ -1,8 +1,8 @@
+
-
diff --git a/install-new/data/xml/carrier_zone.xml b/install-new/data/xml/carrier_zone.xml
index eba14abc4..69b5ceb64 100644
--- a/install-new/data/xml/carrier_zone.xml
+++ b/install-new/data/xml/carrier_zone.xml
@@ -1,10 +1,10 @@
+
+
+
-
-
-
diff --git a/install-new/data/xml/category.xml b/install-new/data/xml/category.xml
index 5fdd43b44..7bb81cc80 100644
--- a/install-new/data/xml/category.xml
+++ b/install-new/data/xml/category.xml
@@ -1,10 +1,10 @@
+
+
+
-
-
-
diff --git a/install-new/data/xml/category_group.xml b/install-new/data/xml/category_group.xml
index a61018734..01f5f8db8 100644
--- a/install-new/data/xml/category_group.xml
+++ b/install-new/data/xml/category_group.xml
@@ -1,12 +1,12 @@
-
-
-
-
+
+
+
+
diff --git a/install-new/data/xml/cms.xml b/install-new/data/xml/cms.xml
index b8ca83e16..1f1eef6e6 100644
--- a/install-new/data/xml/cms.xml
+++ b/install-new/data/xml/cms.xml
@@ -1,9 +1,5 @@
-
-
-
-
@@ -11,4 +7,8 @@
+
+
+
+
diff --git a/install-new/data/xml/cms_category.xml b/install-new/data/xml/cms_category.xml
index 33d4e3d2d..730951149 100644
--- a/install-new/data/xml/cms_category.xml
+++ b/install-new/data/xml/cms_category.xml
@@ -1,10 +1,10 @@
+
+
+
-
-
-
diff --git a/install-new/data/xml/configuration.xml b/install-new/data/xml/configuration.xml
index b60ddd987..1262b6407 100644
--- a/install-new/data/xml/configuration.xml
+++ b/install-new/data/xml/configuration.xml
@@ -1,9 +1,5 @@
-
-
-
-
2
@@ -852,4 +848,8 @@
0
+
+
+
+
diff --git a/install-new/data/xml/contact.xml b/install-new/data/xml/contact.xml
index 9f8034390..45da756a4 100644
--- a/install-new/data/xml/contact.xml
+++ b/install-new/data/xml/contact.xml
@@ -1,10 +1,10 @@
-
-
-
+
+
+
diff --git a/install-new/data/xml/country.xml b/install-new/data/xml/country.xml
index 2bb63d79d..c61b8e9f1 100644
--- a/install-new/data/xml/country.xml
+++ b/install-new/data/xml/country.xml
@@ -1,16 +1,5 @@
-
-
-
-
-
-
-
-
-
-
-
@@ -257,4 +246,15 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/install-new/data/xml/delivery.xml b/install-new/data/xml/delivery.xml
index 9e8bc85c9..fc42bd63c 100644
--- a/install-new/data/xml/delivery.xml
+++ b/install-new/data/xml/delivery.xml
@@ -1,5 +1,6 @@
+
@@ -9,5 +10,4 @@
-
diff --git a/install-new/data/xml/gender.xml b/install-new/data/xml/gender.xml
index fd324a60d..8baeadefd 100644
--- a/install-new/data/xml/gender.xml
+++ b/install-new/data/xml/gender.xml
@@ -1,11 +1,11 @@
-
-
-
+
+
+
diff --git a/install-new/data/xml/group.xml b/install-new/data/xml/group.xml
index acef37033..95ecac33e 100644
--- a/install-new/data/xml/group.xml
+++ b/install-new/data/xml/group.xml
@@ -1,13 +1,13 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/install-new/data/xml/hook.xml b/install-new/data/xml/hook.xml
index 395a6f2e1..7a9ee0e4e 100644
--- a/install-new/data/xml/hook.xml
+++ b/install-new/data/xml/hook.xml
@@ -1,12 +1,5 @@
-
-
-
-
-
-
-
displayPayment
@@ -439,4 +432,11 @@
Display extra informations inside the "my account" block
+
+
+
+
+
+
+
diff --git a/install-new/data/xml/hook_alias.xml b/install-new/data/xml/hook_alias.xml
index 78faaa98f..af93a761b 100644
--- a/install-new/data/xml/hook_alias.xml
+++ b/install-new/data/xml/hook_alias.xml
@@ -1,9 +1,5 @@
-
-
-
-
payment
@@ -346,4 +342,8 @@
actionTaxManager
+
+
+
+
diff --git a/install-new/data/xml/image_type.xml b/install-new/data/xml/image_type.xml
index 0c72134bf..80a3a99ae 100644
--- a/install-new/data/xml/image_type.xml
+++ b/install-new/data/xml/image_type.xml
@@ -1,5 +1,15 @@
+
+
+
+
+
+
+
+
+
+
@@ -12,14 +22,4 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/install-new/data/xml/meta.xml b/install-new/data/xml/meta.xml
index 1afd028dc..55bcd3672 100644
--- a/install-new/data/xml/meta.xml
+++ b/install-new/data/xml/meta.xml
@@ -1,8 +1,5 @@
-
-
-
404
@@ -80,4 +77,7 @@
guest-tracking
+
+
+
diff --git a/install-new/data/xml/operating_system.xml b/install-new/data/xml/operating_system.xml
index d77191e76..733f82677 100644
--- a/install-new/data/xml/operating_system.xml
+++ b/install-new/data/xml/operating_system.xml
@@ -1,8 +1,5 @@
-
-
-
Windows XP
@@ -17,4 +14,7 @@
Linux
+
+
+
diff --git a/install-new/data/xml/order_return_state.xml b/install-new/data/xml/order_return_state.xml
index 620a03dbf..fdd5d495a 100644
--- a/install-new/data/xml/order_return_state.xml
+++ b/install-new/data/xml/order_return_state.xml
@@ -1,8 +1,5 @@
-
-
-
@@ -10,4 +7,7 @@
+
+
+
diff --git a/install-new/data/xml/order_state.xml b/install-new/data/xml/order_state.xml
index 77b2eaefd..537e60edd 100644
--- a/install-new/data/xml/order_state.xml
+++ b/install-new/data/xml/order_state.xml
@@ -1,16 +1,5 @@
-
-
-
-
-
-
-
-
-
-
-
@@ -25,4 +14,15 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/install-new/data/xml/profile.xml b/install-new/data/xml/profile.xml
index 557a09f5c..fce9aa157 100644
--- a/install-new/data/xml/profile.xml
+++ b/install-new/data/xml/profile.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/install-new/data/xml/quick_access.xml b/install-new/data/xml/quick_access.xml
index 2097553e1..d924fa040 100644
--- a/install-new/data/xml/quick_access.xml
+++ b/install-new/data/xml/quick_access.xml
@@ -1,9 +1,5 @@
-
-
-
-
index.php
@@ -21,4 +17,8 @@
index.php?controller=AdminCartRules&addcart_rule
+
+
+
+
diff --git a/install-new/data/xml/risk.xml b/install-new/data/xml/risk.xml
index c8a17a7c2..0fd39d6cf 100644
--- a/install-new/data/xml/risk.xml
+++ b/install-new/data/xml/risk.xml
@@ -1,13 +1,13 @@
-
-
-
-
+
+
+
+
diff --git a/install-new/data/xml/search_engine.xml b/install-new/data/xml/search_engine.xml
index 411a27ff8..67544ff7f 100644
--- a/install-new/data/xml/search_engine.xml
+++ b/install-new/data/xml/search_engine.xml
@@ -1,9 +1,5 @@
-
-
-
-
google
@@ -120,4 +116,8 @@
rambler
+
+
+
+
diff --git a/install-new/data/xml/state.xml b/install-new/data/xml/state.xml
index 5f48d0706..11deaa7d9 100644
--- a/install-new/data/xml/state.xml
+++ b/install-new/data/xml/state.xml
@@ -1,13 +1,5 @@
-
-
-
-
-
-
-
-
Alabama
@@ -946,4 +938,12 @@
Yamanashi
+
+
+
+
+
+
+
+
diff --git a/install-new/data/xml/stock_mvt_reason.xml b/install-new/data/xml/stock_mvt_reason.xml
index 93ce8d919..5042367c9 100644
--- a/install-new/data/xml/stock_mvt_reason.xml
+++ b/install-new/data/xml/stock_mvt_reason.xml
@@ -1,8 +1,5 @@
-
-
-
@@ -13,4 +10,7 @@
+
+
+
diff --git a/install-new/data/xml/subdomain.xml b/install-new/data/xml/subdomain.xml
index 07156939b..9e50bf9b0 100644
--- a/install-new/data/xml/subdomain.xml
+++ b/install-new/data/xml/subdomain.xml
@@ -1,9 +1,9 @@
-
-
-
+
+
+
diff --git a/install-new/data/xml/supply_order_state.xml b/install-new/data/xml/supply_order_state.xml
index f7a0299d3..d420894a4 100644
--- a/install-new/data/xml/supply_order_state.xml
+++ b/install-new/data/xml/supply_order_state.xml
@@ -1,13 +1,5 @@
-
-
-
-
-
-
-
-
@@ -16,4 +8,12 @@
+
+
+
+
+
+
+
+
diff --git a/install-new/data/xml/tab.xml b/install-new/data/xml/tab.xml
index bc8973379..16cb83f93 100644
--- a/install-new/data/xml/tab.xml
+++ b/install-new/data/xml/tab.xml
@@ -1,10 +1,5 @@
-
-
-
-
-
AdminHome
@@ -304,4 +299,9 @@
AdminAccountingExport
+
+
+
+
+
diff --git a/install-new/data/xml/theme.xml b/install-new/data/xml/theme.xml
index 881be4e2b..f7ebcf3ee 100644
--- a/install-new/data/xml/theme.xml
+++ b/install-new/data/xml/theme.xml
@@ -1,11 +1,11 @@
-
-
-
default
+
+
+
diff --git a/install-new/data/xml/timezone.xml b/install-new/data/xml/timezone.xml
index ca6ac4138..98fe5d8e0 100644
--- a/install-new/data/xml/timezone.xml
+++ b/install-new/data/xml/timezone.xml
@@ -1,8 +1,5 @@
-
-
-
@@ -565,4 +562,7 @@
+
+
+
diff --git a/install-new/data/xml/warehouse.xml b/install-new/data/xml/warehouse.xml
index f9b165670..746c2af88 100644
--- a/install-new/data/xml/warehouse.xml
+++ b/install-new/data/xml/warehouse.xml
@@ -1,5 +1,6 @@
+
@@ -8,5 +9,4 @@
-
diff --git a/install-new/data/xml/web_browser.xml b/install-new/data/xml/web_browser.xml
index 4d31db30f..28fc73312 100644
--- a/install-new/data/xml/web_browser.xml
+++ b/install-new/data/xml/web_browser.xml
@@ -1,8 +1,5 @@
-
-
-
Safari
@@ -29,4 +26,7 @@
Google Chrome
+
+
+
diff --git a/install-new/data/xml/zone.xml b/install-new/data/xml/zone.xml
index 1213ee9e7..08126df94 100644
--- a/install-new/data/xml/zone.xml
+++ b/install-new/data/xml/zone.xml
@@ -1,9 +1,5 @@
-
-
-
-
Europe
@@ -30,4 +26,8 @@
Centrale America/Antilla
+
+
+
+
diff --git a/install-new/dev/index.php b/install-new/dev/index.php
index 830a2bc3e..1a765c523 100644
--- a/install-new/dev/index.php
+++ b/install-new/dev/index.php
@@ -54,6 +54,7 @@ class SynchronizeController extends InstallControllerHttp
$sqls = isset($_POST['sql']) ? (array)$_POST['sql'] : array();
$orders = isset($_POST['order']) ? (array)$_POST['order'] : array();
$images = isset($_POST['image']) ? (array)$_POST['image'] : array();
+ $nulls = isset($_POST['null']) ? (array)$_POST['null'] : array();
$entities = array();
foreach ($tables as $table)
@@ -77,6 +78,9 @@ class SynchronizeController extends InstallControllerHttp
if (isset($images[$table]) && $images[$table])
$config['image'] = $images[$table];
+ if (isset($nulls[$table]) && $nulls[$table])
+ $config['null'] = $nulls[$table];
+
$fields = array();
if (isset($columns[$table]))
{
diff --git a/install-new/dev/index.phtml b/install-new/dev/index.phtml
index 2f025d3be..5731b7058 100644
--- a/install-new/dev/index.phtml
+++ b/install-new/dev/index.phtml
@@ -202,6 +202,9 @@
Ordre SQL
+
loader->getColumns($entity) as $column => $is_text): ?>