Compare commits

..

1 Commits

Author SHA1 Message Date
dlage f83c22281b [-] BO: Fix stock when combinations are removed. 2013-11-16 12:36:38 +00:00
28 changed files with 243 additions and 579 deletions
+160 -185
View File
@@ -1,186 +1,161 @@
- adonis karavokyros
- aFolletete
- Agence CINS
- aKorczak
- Aleksander Palyan
- Alexander Otchenashev
- anat
- Andrew
- aNiassy
- antoniofr
- AntonLejon
- Arnaud Lemercier
- Axome
- Benjamin PONGY
- BigZ
- bLeveque
- bMancone
- bumbu
- Burhan
- Caleydon Media
- cam.lafit
- Captain FLAM
- Captain-FLAM
- ccauw
- cedricfontaine
- Cédric Mouleyre
- Chris
- ChristopheBoucaut
- CINS
- cippest
- cmouleyre
- Corentin Delcourt
- Cosmin Hutanu
- Damien Metzger
- DamienMetzger
- Damon Skelhorn
- Daniel
- Daniele Giachino
- David Gasperoni
- Davy Rolink
- Dinis Lage
- djfm
- dlage
- dMetzger
- (d)oekia
- Dragan Skrbic
- dreammeup
- DrySs
- DrÿSs
- DrÿSs'
- dSevere
- Edouard Gaulué
- emily-d
- Eric Le Lay
- Fabio Chelly
- fBrignoli
- fchellypresta
- fram
- Francois Gaillard
- François Gaillard
- Franois Gaillard
- fSerny
- Gabriel Schwardy
- Gaelle ITZKOVITZ
- gBrunier
- gCharmes
- gPoulain
- gr4devel
- Grégoire Bélorgey
- Gregory Roussac
- gRoussac
- Guillaume DELOINCE
- ha99y
- hAitmansour
- Ha!*!*y
- indesign47
- inem0o
- ivancasasempere
- Jáchym Toušek
- Javsmile
- jBreux
- jeckyl
- jeromenadaud
- Jerome Nadaud
- Jérôme Nadaud
- jessylenne
- jmCollin
- jObregon
- Jonathan Danse
- joseantgv
- Julien
- Kevin Granger
- kiropowered
- kpodemski
- Krystian Podemski
- lBrieu
- lCherifi
- ldecoker
- lLefevre
- LOIC ROSSET ltd
- Madef
- Mainmich
- makk1ntosh
- marcinsz101
- Marco Cervellin
- matiasiglesias
- Mats Rynge
- MatthieuB
- Maxence
- mBertholino
- mDeflotte
- Michel Courtade
- Mickael Desgranges
- Mikael Blotin
- Milow
- minic studio
- misthero
- mMarinetti
- montes
- MustangZhong
- nezenmoins
- Nicolas Sorosac
- Nils-Helge Garli Hegvik
- Nino Uzelac
- nPellicari
- nturato
- oleacorner
- Otto Nascarella
- Patanock
- PhpMadman
- Pierre
- Piotr Kaczor
- Piotr Moćko
- PrestaEdit
- PrestaLab
- PrestanceDesign
- prestarocket
- Prestaspirit
- pxls
- Raphaël Malié
- raulgundin
- Rémi Gaillard
- rGaillard
- Rimas Kudelis
- rMalie
- rMontagne
- romainberger
- root
- runningz
- sagaradonis
- Samy Rabih
- Sarah Lorenzini
- Seb
- Sébastien
- Sébastien Bocahu
- Seynaeve
- Shagshag
- sjousse
- sLorenzini
- smartdatasoft
- soufyan
- soware
- Staging
- sThiebaut
- Sylvain Gougouzian
- Sylvain WITMEYER
- tDidierjean
- thoma202
- Tomasz Slominski
- Tom Panier
- tucoinfo
- unknown
- vAugagneur
- vChabot
- Vincent Augagneur
- Vincent Schoener
- Vincent Terenti
- vinvin27
- vKham
- vSchoener
- Xavier
- Xavier POITAU
- Yoozio
- zimmi1
- Zollner Robert
- adonis karavokyros
- aFolletete
- Agence CINS
- aKorczak
- Alexander Otchenashev
- anat
- Andrew
- aNiassy
- antoniofr
- AntonLejon
- Arnaud Lemercier
- Axome
- Benjamin PONGY
- BigZ
- bLeveque
- bMancone
- bumbu
- Burhan
- Caleydon Media
- cam.lafit
- Captain FLAM
- Captain-FLAM
- ccauw
- Cédric Mouleyre
- ChristopheBoucaut
- CINS
- cippest
- cmouleyre
- Corentin Delcourt
- Cosmin Hutanu
- Damien Metzger
- DamienMetzger
- Damon Skelhorn
- Daniel
- David Gasperoni
- Davy Rolink
- djfm
- dlage
- dMetzger
- (d)oekia
- Dragan Skrbic
- dreammeup
- DrySs
- DrÿSs
- DrÿSs'
- dSevere
- Edouard Gaulué
- emily-d
- Fabio Chelly
- fBrignoli
- fram
- Francois Gaillard
- François Gaillard
- Fran?s Gaillard
- fSerny
- Gabriel Schwardy
- gBrunier
- gCharmes
- gPoulain
- gr4devel
- Grégoire Bélorgey
- Gregory Roussac
- gRoussac
- Guillaume DELOINCE
- ha99y
- hAitmansour
- Ha!*!*y
- indesign47
- inem0o
- ivancasasempere
- jBreux
- jeckyl
- jeromenadaud
- Jerome Nadaud
- Jérôme Nadaud
- jessylenne
- jmCollin
- jObregon
- Jonathan Danse
- joseantgv
- Julien
- Kevin Granger
- kpodemski
- Krystian Podemski
- lBrieu
- lCherifi
- ldecoker
- lLefevre
- LOIC ROSSET ltd
- makk1ntosh
- marcinsz101
- Marco Cervellin
- matiasiglesias
- Mats Rynge
- MatthieuB
- Maxence
- mBertholino
- mDeflotte
- Michel Courtade
- Milow
- minic studio
- misthero
- mMarinetti
- montes
- nezenmoins
- Nicolas Sorosac
- Nils-Helge Garli Hegvik
- nPellicari
- nturato
- oleacorner
- Otto Nascarella
- Patanock
- PhpMadman
- Pierre
- Piotr Kaczor
- Piotr Mocko
- PrestaEdit
- prestarocket
- Prestaspirit
- pxls
- Raphaël Malié
- raulgundin
- Rémi Gaillard
- rGaillard
- Rimas Kudelis
- rMalie
- rMontagne
- romainberger
- root
- runningz
- sagaradonis
- Samy Rabih
- Sarah Lorenzini
- Seb
- Sébastien
- Sébastien Bocahu
- Seynaeve
- Shagshag
- sjousse
- sLorenzini
- smartdatasoft
- soufyan
- soware
- Staging
- sThiebaut
- Sylvain WITMEYER
- tDidierjean
- unknown
- vAugagneur
- vChabot
- Vincent Augagneur
- Vincent Schoener
- Vincent Terenti
- vinvin27
- vKham
- vSchoener
- Xavier
- Xavier POITAU
- Yoozio
- zimmi1
@@ -106,6 +106,7 @@
$(document).ready(function()
{
$('#product-tab-content-wait').show();
//product_type = $("input[name=type_product]:checked").val();
if (product_type == product_type_pack)
{
@@ -103,7 +103,7 @@
<select name="{$list_id}_pagination" onchange="submit()">
{* Choose number of results per page *}
{foreach $pagination AS $value}
<option value="{$value|intval}"{if $selected_pagination == $value && $selected_pagination != NULL} selected="selected"{elseif $selected_pagination == NULL && $value == $pagination[1]} selected="selected2"{/if}>{$value|intval}</option>
<option value="{$value|intval}"{if $selected_pagination == $value} selected="selected" {elseif $selected_pagination == NULL && $value == $pagination[1]} selected="selected2"{/if}>{$value|intval}</option>
{/foreach}
</select>
/ {$list_total} {l s='result(s)'}
@@ -188,8 +188,8 @@
{if $params.type == 'bool'}
<select onchange="$('#submitFilterButton{$list_id}').focus();$('#submitFilterButton{$list_id}').click();" name="{$list_id}Filter_{$key}">
<option value="">-</option>
<option value="1"{if $params.value == 1} selected="selected"{/if}>{l s='Yes'}</option>
<option value="0"{if $params.value == 0 && $params.value != ''} selected="selected"{/if}>{l s='No'}</option>
<option value="1" {if $params.value == 1} selected="selected" {/if}>{l s='Yes'}</option>
<option value="0" {if $params.value == 0 && $params.value != ''} selected="selected" {/if}>{l s='No'}</option>
</select>
{elseif $params.type == 'date' || $params.type == 'datetime'}
{l s='From'} <input type="text" class="filter datepicker" id="{$params.id_date}_0" name="{$params.name_date}[0]" value="{if isset($params.value.0)}{$params.value.0}{/if}"{if isset($params.width)} style="width:70px"{/if}/><br />
@@ -197,10 +197,10 @@
{elseif $params.type == 'select'}
{if isset($params.filter_key)}
<select onchange="$('#submitFilterButton{$list_id}').focus();$('#submitFilterButton{$list_id}').click();" name="{$list_id}Filter_{$params.filter_key}" {if isset($params.width)} style="width:{$params.width}px"{/if}>
<option value=""{if $params.value == ''} selected="selected"{/if}>-</option>
<option value="" {if $params.value == ''} selected="selected" {/if}>-</option>
{if isset($params.list) && is_array($params.list)}
{foreach $params.list AS $option_value => $option_display}
<option value="{$option_value}" {if $params.value != '' && ($option_display == $params.value || $option_value == $params.value)} selected="selected"{/if}>{$option_display}</option>
<option value="{$option_value}" {if $option_display == $params.value || $option_value == $params.value} selected="selected"{/if}>{$option_display}</option>
{/foreach}
{/if}
</select>
@@ -23,7 +23,7 @@
* International Registered Trademark & Property of PrestaShop SA
*}
<div id="{$table}_toolbar" class="toolbar-placeholder">
<div class="toolbar-placeholder">
<div class="toolbarBox {if $toolbar_scroll}toolbarHead{/if}">
{block name=toolbarBox}
<ul class="cc_button">
@@ -52,7 +52,7 @@
var modules_list_loaded = false;
$(function() {
//get reference on save link
btn_save = $('#{$table}_toolbar span[class~="process-icon-save"]').parent();
btn_save = $('span[class~="process-icon-save"]').parent();
//get reference on form submit button
btn_submit = $('#{$table}_form_submit_btn');
@@ -93,9 +93,6 @@
//submit the form
{block name=formSubmit}
btn_save.click(function() {
// Vars
var btn_submit = $('#{$table}_form_submit_btn');
// Avoid double click
if (submited)
return false;
-1
View File
@@ -99,7 +99,6 @@ class AddressFormatCore extends ObjectModel
'outstanding_allow_amount',
'call_prefix',
'definition',
'debug_list'
);
public static $forbiddenClassList = array(
-1
View File
@@ -510,7 +510,6 @@ class LinkCore
public function goPage($url, $p)
{
$url = rtrim(str_replace('?&', '?', $url), '?');
return $url.($p == 1 ? '' : (!strstr($url, '?') ? '?' : '&amp;').'p='.(int)$p);
}
+1 -2
View File
@@ -37,10 +37,9 @@ class MediaCore
'ui.selectable' => array('fileName' => 'jquery.ui.selectable.min.js', 'dependencies' => array('ui.core', 'ui.widget', 'ui.mouse'), 'theme' => true),
'ui.sortable' => array('fileName' => 'jquery.ui.sortable.min.js', 'dependencies' => array('ui.core', 'ui.widget', 'ui.mouse'), 'theme' => true),
'ui.accordion' => array('fileName' => 'jquery.ui.accordion.min.js', 'dependencies' => array('ui.core', 'ui.widget'), 'theme' => true),
'ui.autocomplete' => array('fileName' => 'jquery.ui.autocomplete.min.js', 'dependencies' => array('ui.core', 'ui.widget', 'ui.position', 'ui.menu'), 'theme' => true),
'ui.autocomplete' => array('fileName' => 'jquery.ui.autocomplete.min.js', 'dependencies' => array('ui.core', 'ui.widget', 'ui.position'), 'theme' => true),
'ui.button' => array('fileName' => 'jquery.ui.button.min.js', 'dependencies' => array('ui.core', 'ui.widget'), 'theme' => true),
'ui.dialog' => array('fileName' => 'jquery.ui.dialog.min.js', 'dependencies' => array('ui.core', 'ui.widget', 'ui.position','ui.button'), 'theme' => true),
'ui.menu' => array('fileName' => 'jquery.ui.menu.min.js', 'dependencies' => array('ui.core', 'ui.widget', 'ui.position'), 'theme' => true),
'ui.slider' => array('fileName' => 'jquery.ui.slider.min.js', 'dependencies' => array('ui.core', 'ui.widget', 'ui.mouse'), 'theme' => true),
'ui.tabs' => array('fileName' => 'jquery.ui.tabs.min.js', 'dependencies' => array('ui.core', 'ui.widget'), 'theme' => true),
'ui.datepicker' => array('fileName' => 'jquery.ui.datepicker.min.js', 'dependencies' => array('ui.core'), 'theme' => true),
-3
View File
@@ -5278,10 +5278,7 @@ class ProductCore extends ObjectModel
WHERE id_product='.(int)$this->id.Shop::addSqlRestriction()
);
else
{
$this->setFieldsToUpdate(array('advanced_stock_management' => true));
$this->save();
}
}
/**
+5
View File
@@ -1222,6 +1222,11 @@ class ToolsCore
'ellipsis' => '...', 'exact' => true, 'html' => true
);
if (isset($options['ending']))
$default['ellipsis'] = $options['ending'];
elseif (!empty($options['html']) && Configure::read('App.encoding') === 'UTF-8')
$default['ellipsis'] = "\xe2\x80\xa6";
$options = array_merge($default, $options);
extract($options);
+6 -4
View File
@@ -108,6 +108,10 @@ class StockAvailableCore extends ObjectModel
public static function getStockAvailableIdByProductId($id_product, $id_product_attribute = null, $id_shop = null)
{
// if null, it's a product without attributes
if ($id_product_attribute === null)
$id_product_attribute = 0;
if (!Validate::isUnsignedId($id_product))
return false;
@@ -115,9 +119,7 @@ class StockAvailableCore extends ObjectModel
$query->select('id_stock_available');
$query->from('stock_available');
$query->where('id_product = '.(int)$id_product);
if ($id_product_attribute !== null)
$query->where('id_product_attribute = '.(int)$id_product_attribute);
$query->where('id_product_attribute = '.(int)$id_product_attribute);
$query = StockAvailable::addSqlShopRestriction($query, $id_shop);
return (int)Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue($query);
@@ -172,7 +174,7 @@ class StockAvailableCore extends ObjectModel
if ($order_id_shop != null && !count(array_intersect($allowed_warehouse_for_product_clean, $order_warehouses)))
continue;
$product_quantity = $manager->getProductRealQuantities($id_product, null, $allowed_warehouse_for_product_clean, true);
$product_quantity = $manager->getProductRealQuantities($id_product, 0, $allowed_warehouse_for_product_clean, true);
Hook::exec('actionUpdateQuantity',
array(
+9 -2
View File
@@ -423,6 +423,10 @@ class StockManagerCore implements StockManagerInterface
*/
public function getProductPhysicalQuantities($id_product, $id_product_attribute, $ids_warehouse = null, $usable = false)
{
// if null, it's a product without attributes
if ($id_product_attribute === null)
$id_product_attribute = 0;
if (!is_null($ids_warehouse))
{
// in case $ids_warehouse is not an array
@@ -441,8 +445,7 @@ class StockManagerCore implements StockManagerInterface
$query->select('SUM('.($usable ? 's.usable_quantity' : 's.physical_quantity').')');
$query->from('stock', 's');
$query->where('s.id_product = '.(int)$id_product);
if (0 != $id_product_attribute)
$query->where('s.id_product_attribute = '.(int)$id_product_attribute);
$query->where('s.id_product_attribute = '.(int)$id_product_attribute);
if (count($ids_warehouse))
$query->where('s.id_warehouse IN('.implode(', ', $ids_warehouse).')');
@@ -455,6 +458,10 @@ class StockManagerCore implements StockManagerInterface
*/
public function getProductRealQuantities($id_product, $id_product_attribute, $ids_warehouse = null, $usable = false)
{
// if null, it's a product without attributes
if ($id_product_attribute === null)
$id_product_attribute = 0;
if (!is_null($ids_warehouse))
{
// in case $ids_warehouse is not an array
@@ -195,22 +195,6 @@ class AdminGendersControllerCore extends AdminController
}
return !count($this->errors) ? true : false;
}
protected function afterImageUpload()
{
parent::afterImageUpload();
if (($id_gender = (int)Tools::getValue('id_gender')) &&
isset($_FILES) && count($_FILES) && file_exists(_PS_GENDERS_DIR_.$id_gender.'.jpg'))
{
$current_file = _PS_TMP_IMG_DIR_.'gender_mini_'.$id_gender.'_'.$this->context->shop->id.'.jpg';
if (file_exists($current_file))
unlink($current_file);
}
return true;
}
}
@@ -145,10 +145,8 @@ class AdminLocalizationControllerCore extends AdminController
if (Validate::isFileName(Tools::getValue('iso_localization_pack')))
{
if (Tools::getValue('download_updated_pack') == '1')
$pack = @Tools::file_get_contents('http://api.prestashop.com/localization/'.$version.'/'.Tools::getValue('iso_localization_pack').'.xml');
else
$pack = false;
$pack = @Tools::file_get_contents('http://api.prestashop.com/localization/'.$version.'/'.Tools::getValue('iso_localization_pack').'.xml');
if (!$pack && !($pack = @Tools::file_get_contents(dirname(__FILE__).'/../../localization/'.Tools::getValue('iso_localization_pack').'.xml')))
$this->errors[] = Tools::displayError('Cannot load the localization pack.');
@@ -266,26 +264,6 @@ class AdminLocalizationControllerCore extends AdminController
'id' => 'id',
'name' => 'name'
)
),
array(
'type' => 'radio',
'label' => $this->l('Download pack data'),
'desc' => $this->l('If set to yes then the localization pack will be downloaded from prestashop.com. Otherwise the local xml file found in the localization folder of your PrestaShop installation will be used.'),
'name' => 'download_updated_pack',
'class' => 't',
'is_bool'=> true,
'values' => array(
array(
'id' => 'download_updated_pack_yes',
'value' => 1,
'label' => $this->l('Yes')
),
array(
'id' => 'download_updated_pack_no',
'value' => 0,
'label' => $this->l('No')
)
)
)
),
'submit' => array(
@@ -300,8 +278,7 @@ class AdminLocalizationControllerCore extends AdminController
'selection[]_taxes' => true,
'selection[]_currencies' => true,
'selection[]_languages' => true,
'selection[]_units' => true,
'download_updated_pack' => 1
'selection[]_units' => true
);
$this->show_toolbar = false;
-219
View File
@@ -23,225 +23,6 @@ International Registred Trademark & Property of PrestaShop SA
Release Notes for PrestaShop 1.5
--------------------------------
####################################
# v1.5.6.1 - (2013-11-18) #
####################################
Fixed bugs:
[-] Project : missing ui.menu in jquery_ui_dependencies.
[-] FO : Fix bug #PSCFV-11043, bad cache id from module template
[-] FO : Missing sup for DNI field
[-] FO : Fix bug #PSCFV-10911, doubles in cart rules highlight
[-] FO : Bad value for back when controller name is sent
[-] FO : FixBug #PSCFV-9291 - Ecotax increment display price in product combination
[-] FO : fix contact-form id_order input when customer is not logged
[-] Fo : Call Gmaps on https if required
[-] FO : Wordwrap on prices in history
[-] FO : Fixed errors when calculating most selled products from footer link
[-] FO : #PSCFV-10978 firstname displayed instead of lastname in invoice address
[-] FO : Customized meesage with carriage return follow up #962
[-] FO : getTaxCalculator bad cache key again // sorry about that
[-] FO : getTaxCalculator bad cache key
[-] FO : Prevents warning in safePostVars when $_POST has been unset
[-] FO : in multistore payment module restrictions by customer group was not applied to specific shop
[-] FO : Fix bug #PSCFV-10892, getCMSPages by id_shop thnaks @jd440
[-] FO : FixBug Categories description
[-] FO : Fix bug #PSCFV-10889 wrong color when oos product
[-] FO : CustomerMessage ip_address to string
[-] FO : Fix bug #PSCFV-10851, no shop restriction in vouchers display in cart
[-] FO: fixed bug #PSCFV-10654 - TinyMCE editor: List of products by manufacturer, products by supplier - Long description is not hidden.
[-] FO: Fix bug #PSCFV-10623 blocknewproducts shows products when PS_NB_DAYS_NEW_PRODUCT == 0
[-] FO: Fix bug #PSCFV-10230, Blockspecials still caching when files cache limit is 0
[-] FO: Fix bug #PSCFV-10625 Js error on carriers step if AjaxCart disabled
[-] FO : Follow up https://github.com/PrestaShop/PrestaShop/pull/879
[-] FO: removed width on message product select Limiting select could make the user think the select is not working if they click to much to the left on bigger screens
[-] FO : Prevent fatal error on getUniqReference when order not loaded
[-] FO: Don't auto detect language if it not associated to the shop #PSCFV-10273
[-] FO : Could not redirect back to url in adress.php
[-] FO : $back value twice escaped
[-] FO : #PSCFV-10640 again, bad assignement
[-] Fo : Fix bug #PSCFV-10640, redirect loop when country address is not among active countries in OPC
[-] FO : Fix bug #PSCFV-10688, bad priceDisplay in order-carrier
[-] FO : Fix #PSCFV-10690 again, change just on directories
[-] FO : Fix bug #PSCFV-10690 could not index a category beacause of robot.txt
[-] FO : Copuld not load datepicker in trackingfront stats.php
[-] FO : Fix bug #PSCFV-10497 cart_block hooked on column disappearing
[-] FO : Fix bug #PSCFV-10606 could not have correct taxCalculationMethod when vat number in customer address
[-] BO : Fix bug #PNM-1594, selected value error in helper list
[-] BO: product price was changed on changing to advanced stock management #PSCFV-10996
[-] BO : Fix warning when no memcached servers
[-] BO : Fix #PSCFV-11016 typo
[-] BO : Model return html error messagae instead of json while image uploading
[-] BO : Product final price can not be hidden on loading tab, report of https://github.com/PrestaShop/PrestaShop/commit/6c6c3b240ee2249b7f99be1a112905cd0edbee46
[-] BO : test on xml string follow up https://github.com/PrestaShop/PrestaShop/pull/690#issuecomment-28542506
[-] BO : 406 when mod_security follow up https://github.com/PrestaShop/PrestaShop/commit/034e6a7e7f391e3a8861248db45a4a376b19633c
[-] BO : AdminImport, execption when creating groups
[-] BO : Fix bug #PSCFV-10990 bad version comparison for ps_versions_compliancy
[-] BO : Fix bug #PSCFV-10982 reduction group truncated
[-] BO : Could not check all modules after ajax call
[-] BO : Fix css bug #PSCFV-10899, fixed fix-toolbar z-index
[-] BO : Fix bug #PSCFV-10932, ranges input disabled on load
[-] BO : getCMSPages to associated shop in cmscontroller
[-] BO : Fix bug #PSCFV-10666 product_supllier currency set to 0
[-] BO : Fix bug #PSCFV-10937, bad escaping for var product_prices in prices.tpl
[-] BO : Cart was not using order reference, corrected syntax
[-] BO : Cart was not using order reference
[-] BO : Could not change image position
[-] BO: Fix from name when replying to customer threads
[-] BO : Do not enable rewrite url for index
[-] BO: Fix empty group list on changing opt or newsletter on customers listing
[-] BO : AdminImport withdraw separator changed in js
[-] BO : AdminImport wrong group by default
[-] BO : FixBug #PSCFV-10882 - Add json encode and decode smarty modifier via tools class
[-] Bo : AdminImport customer group default
[-] BO : Fix bug #PSCFV-10872 AdminImport could not import supllier orders
[-] BO: fix the checkbox of shop activation on modules configuration
[-] BO : Adminimport default customers group
[-] BO : tagify call twice if field is not translatable
[-] BO : Stats are empty when no conversion rate
[-] BO : Order-follow displayed order id instead of order reference
[-] BO : hide stmp options when selecting never send emails
[-] BO : FixBug #PSCFV-10866 - Tagify system not working
[-] BO : FixBug #PSCFV-9319 - display only valid order id
[-] BO : Do not delete other default jpg when _deleteOldImages and type defined
[-] BO : AdminImport, fix bug from https://github.com/indesign47/PrestaShop/commit/84454bbc1c7a315e232245c5e43b300b8f153473#commitcomment-4418502
[-] BO : Fix bug #10689, could not set image legend in back office
[-] BO : Fixed bug PSCFV-9910 using basic queries to prevent locking errors
[-] BO : Fix bug #PSCFV-10718 AdminAttachments old file not deleted on update
[-] BO : FixBug #PSCFV-10600 - Unmatched Boundary with mod_security
[-] BO : fix #PSCFV-10728, prices incorrectly formatted when creating new order from BO
[-] BO : FIx bug #PSCFV-10736 again, fixing query when product is not in base
[-] BO : FIx bug #PSCFV-10736, could not load a product given from getBoughtProducts
[-] BO : Fix bug #PSCFV-10790, Customer group names not exploded
[-] BO: product listing should call Product::getPriceStatic() with the product default shop in the context when it is not a shop context
[-] BO: Synchronize stock available after receipt supply order items #PSCFV-10724
[-] BO : Fix bug #PSCFV-10638, Admin Import by reference moves products to home category
[-] BO : Fix bug #PSCFV-7907 AdminImport, add custom field to features
[-] BO : Fix bug #PSCFV-10767, could not retrieve feature value when product IDs not forced
[-] BO : Fix bug #PSCFV-10607 one upload name
[-] BO : wrong csv files name
[-] BO : Report of https://github.com/PrestaShop/PrestaShop/commit/fd86a29c5c369ec5da0f91bbe97c584a00d02d0d
[-] BO: Default country should be overriden in the context in multishop
[-] BO : Fix bug #PSCFV-10709 rename root category with slashes in it
[-] BO : Could not order by reserved words like 'key'
[-] BO : AdminImport, wrong default separators
[-] BO : Fix bug #PSCFV-10692, AdminImport bad utf8 cars for subst
[-] BO : Fix #PSCFV-10678 warning in chrome
[-] BO : FixBug #PSCFV-10671 - remove htmlentities on customer message
[-] BO : Could not insert referrer id_connections_source can not be null
[-] Bo : Could not update mailalert 2.5 with id_lang missing
[-] Bo : Could not update mailarler 2.5 with id_mlang
[-] BO: Fixbug #PSCFV-10671 - Double htmlentities.
[-] BO : AdminImport, fix Group searchByName
[-] BO : Adminimport, id_specific key_price not defined
[-] BO : FixBug - Remove second email in recipient
[-] BO : Fix bug #PSCFV-10660, could not delete csv file on NT
[-] BO : FixBug #PSCFV-9957 - Duplicate order invoice number
[-] BO : fixed bug #PSCFV-10637 PS_CARRIER_DEFAULT is not updated after edit default carrier
[-] BO : AdminImport no default value for separators
[-] BO : pass correct typed parameter to setCurrency
[-] Classes : Hook - Installer & context shop id
[-] Classes : Modules listing and case insensitive
[-] Core: Group::getCurrent() return the default customer group of the shop if default customer group is not associated to shop
[-] CORE : invalid method name in displayAjax method of Controller action
[-] CORE : Fix bug #PSCFV-10901 warnings on htmlentities
[-] CORE : Currency conversion rate can not be 0
[-] CORE : SetEnv in if statement
[-] CORE : SetEnv not available on all config // @todo curl request on dummy .htacces
[-] CORE : Fix bug #PSCFV-10687 again, #PSCFV-10752 replaceAccentedChars() // sorry for that
[-] CORE : error_get_last > PHP 5.1
[-] Core: Out of stock status should be setted after the first order history
[-] Core: Product::getPriceStatic called with 1 quantity return the specific price for 1 qty if called with id_cart = 0
[-] CORE : Fix bug #PSCFV-10687 bad conversion for accentuated Y and W, thanks @mike15
[-] CORE : $smarty->compile_check is not set to false, thanks @prestamodule
[-] MO : Referralprogram Prevent Exception when badly configured
[-] MO : Missinag closing href
[-] MO :Fixed #PNM-1654 (Loyalty module) by using most expensive attribute instead of default one
[-] MO : Mailalert was not using order reference
[-] MO : Blocklayered follow up https://github.com/PrestaShop/PrestaShop/commit/a6e67b078e067445eef358e907649e843a1dc26a#commitcomment-4538556
[-] MO : Fixed #PNM-1600 by modifying getPageLink()
[-] MO : Blockcategories last_visited_category must not be cached
[-] MO : Could not translate in transit mail, revert from https://github.com/viger-creator/PrestaShop/commit/3213b5dffb266ddb0639b94f72babd892328ffa2
[-] MO : mailalert - Fix deprecated warning on displayDate
[-] MO : Blockwishlist no product image when id_product_attribute is defined, thanks @Broceliande
[-] MO : Fix NetworkError 404 Not Found on admin in blocklayered.php These files not exists : - /js/jquery/jquery-ui-1.8.10.custom.min.js - /css/jquery-ui-1.8.10.custom.css
[-] MO : Fix bug #PSCFV-10841, blockcart hides on product page when last product is removed from cart
[-] MO : Fixbug #PSCFV-10679 dateofdelivery PDF invoice array and array
[-] MO : Fixed bug PNM-1431 - referralprogram Lack the % sign
[-] MO : Fix bug #PSCFV-10787, cms associated to all shops
[-] MO : if customer is logged we do not recreate it
[-] MO : Fix bug #PSCFV-10775, could not upload .jpeg in TinyMCE
[-] MO : ScrollTo not loaded
[-] MO : Trackingfront, could not load employee stats date
[-] WS: Fix bug #PSCFV-10970 use configuration for uploaded images quality
[-] WS: Fix stockavailables list when stock is shared between shops #PSCFV-10793
[-] WS: Fix #PSCFV-10672 order by ID for non multishop entities
Improved/changed features:
[*] FO : DNI can be not required
[*] FO : Fix #PSCFV-8715 add product.attributes in carrier tpl
[*] FO : set at least a class to body
[*] FO : addTextFieldToProduct without Line feed, follow up https://github.com/PrestaShop/PrestaShop/pull/962#issuecomment-28294571
[*] FO : https on TOS in fancybox, follow up https://github.com/PrestaShop/PrestaShop/pull/956
[*] FO : Redirect to address.tpl when !Address::isCountryActiveById
[*] FO : Cache on getDiscountsCustomer, follow up https://github.com/PrestaShop/PrestaShop/pull/960
[*] FO : Set cache for StockAvailable::getQuantityAvailableByProduct
[*] FO : Added posibilty to display new price instead of quantity discount
[*] FO: Follow up https://github.com/PrestaShop/PrestaShop/commit/e86c56172dad2892d5c7e7dbb0908b0f4ffbaae0
[*] FO: Can not establish purchase total when tax incl.
[*] FO : Fix bug #PSCFV-10689 handle image legend
[*] FO: Removed missplaced </li> on mobile theme
[*] BO : AdminPerformances Hide warnings message when not necessary
[*] BO : add class on TD in standard List Back office : Add a class on TD in list created by getList() In fields_list array of AdminController, we can add a new parameter('class') example : 'name' => array( 'title' => $this->l('Name'), 'width' => 150, 'class' => 'ma_classe', 'filter_key' => 'b!name' ), This parameter can be used for javascript effect, ... Thanks.
[*] BO : New import csv files
[*] BO : Manual merge of https://github.com/PrestaShop/PrestaShop/pull/891 1/2
[*] BO : AdminProducts find smallest images
[*] BO : improved unicode characters replacement in URLs (Russian and Ukrainian characters added)
[*] BO : AdminImport add img manufacturers-suppliers
[*] BO : AdminImport add img suppliers
[*] BO : AdminImport add img manufacturers
[*] BO : chmod 664 to config.xml file
[*] BO : Adding a title tag to display the module name on hover like PS 1.4
[*] CORE : Remove duplicate SQL queries
[*] CORE : Profiling hide non doubles
[*] CORE : Cache store for isAssociatedToShop::isAssociatedToShop
[*] CORE : Manual merge of https://github.com/PrestaShop/PrestaShop/ thanks @kpodemski
[*] CORE: Add phone_mobile to address format I honestly do not know why you decided by default to show only the first field of the phone :) Users often ask me why they don't see their mobile phone on orders in BO.
[*] MO : Remove calls to isRegisteredInHook in crossselling and productscategory
[*] MO : New modules version since 1.5.6.0
[*] MO: blocksharefb optimization
[*] MO: productcomments optimization
[*] LO : Fix PSCFV-10876: use IETF code to set language of shop, not 'iso' code, allows to distinguish between chinese variants etc.
[*] LO : Added states to Spanish localization pack
[*] LO : Fixed a few bugs with currency formats in Back-Office orders
[*] LO : set correct currency format for CHF
Added Features:
[+] BO : Add debug mode system
[+] BO : AdminImport add entity Alias
[+] CORE : Fixed cache_id
[+] MO : Blockcart - Add error handler on ajax function
Deprecated methods:
[~] BO : Export DeliverySlip The dates range wasn't using the correct sql fields.
####################################
# v1.5.6.0 - (2013-10-07) #
####################################
+2 -2
View File
@@ -21,8 +21,8 @@ needs please refer to http://www.prestashop.com for more information.
@license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
International Registered Trademark & Property of PrestaShop SA
NAME: Prestashop 1.5.6.1
VERSION: 1.5.6.1
NAME: Prestashop 1.5.6.0
VERSION: 1.5.6.0
VORBEREITUNG
===========
+2 -2
View File
@@ -21,8 +21,8 @@ needs please refer to http://www.prestashop.com for more information.
@license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
International Registered Trademark & Property of PrestaShop SA
NAME: Prestashop 1.5.6.1
VERSION: 1.5.6.1
NAME: Prestashop 1.5.6.0
VERSION: 1.5.6.0
PREPARATION
===========
+2 -2
View File
@@ -21,8 +21,8 @@ needs please refer to http://www.prestashop.com for more information.
@license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
International Registered Trademark & Property of PrestaShop SA
NAME: Prestashop 1.5.6.1
VERSION: 1.5.6.1
NAME: Prestashop 1.5.6.0
VERSION: 1.5.6.0
PREPARACIN
===========
+2 -2
View File
@@ -21,8 +21,8 @@ needs please refer to http://www.prestashop.com for more information.
@license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
International Registered Trademark & Property of PrestaShop SA
NAME: Prestashop 1.5.6.1
VERSION: 1.5.6.1
NAME: Prestashop 1.5.6.0
VERSION: 1.5.6.0
PREPARATION
===========
+2 -2
View File
@@ -21,8 +21,8 @@ needs please refer to http://www.prestashop.com for more information.
@license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
International Registered Trademark & Property of PrestaShop SA
NAME: Prestashop 1.5.6.1
VERSION: 1.5.6.1
NAME: Prestashop 1.5.6.0
VERSION: 1.5.6.0
PREPARAZIONE
===========
+1 -1
View File
@@ -24,4 +24,4 @@
* International Registered Trademark & Property of PrestaShop SA
*/
define('_PS_INSTALL_VERSION_', '1.5.6.1');
define('_PS_INSTALL_VERSION_', '1.5.6.0');
+1 -1
View File
@@ -212,7 +212,7 @@ return array(
'Contact us' => 'Свяжитесь с нами',
'PrestaShop Installation Assistant' => 'Помощник установки PrestaShop',
'Installation Assistant' => 'Помощник установки',
'License Agreements' => 'Лицензионное соглашение',
'License Agreements' => 'Лицензионное соглшение',
'Print my login information' => 'Распечатать информацию о моем аккаунте',
'To use PrestaShop, you must <a href="http://doc.prestashop.com/display/PS15/Installing+PrestaShop#InstallingPrestaShop-Creatingadatabaseforyourshop" target="_blank">create a database</a> to collect all of your stores data-related activities.' => 'Для использования PrestaShop, Вам следует <a href="http://doc.prestashop.com/display/PS15/Installing+PrestaShop#InstallingPrestaShop-Creatingadatabaseforyourshop" target="_blank">создать базу данных </a>, чтобы сгруппировать информацию Вашего магазина.',
'Please complete the fields below in order for PrestaShop to connect to your database. ' => 'Заполните поля ниже, чтобы PrestaShop смог установить соединение с Вашей с базой данных.',
@@ -38,25 +38,22 @@ function add_module_to_hook($module_name, $hook_name)
$id_hook = Db::getInstance()->getValue('SELECT `id_hook` FROM `'._DB_PREFIX_.'hook` WHERE `name` = "'.$hook_name.'"');
if(!$id_hook)
{
if (!Db::getInstance()->execute('
$res &= Db::getInstance()->execute('
INSERT IGNORE INTO `'._DB_PREFIX_.'hook` (`name`, `title`)
VALUES ("'.pSQL($hook_name).'", "'.pSQL($hook_name).'")'))
$res = false;
else
$id_hook = Db::getInstance()->Insert_ID();
VALUES ("'.pSQL($hook_name).'", "'.pSQL($hook_name).'")');
$id_hook = Db::getInstance()->Insert_ID();
}
if ((int)$id_hook > 0)
{
if (!Db::getInstance()->execute('
$res &= Db::getInstance()->execute('
INSERT IGNORE INTO `'._DB_PREFIX_.'hook_module` (`id_module`, `id_hook`, `position`)
VALUES (
'.(int)$id_module.',
'.(int)$id_hook.',
(SELECT IFNULL(
(SELECT max_position from (SELECT MAX(position)+1 as max_position FROM `'._DB_PREFIX_.'hook_module` WHERE `id_hook` = '.(int)$id_hook.') AS max_position), 1))
)'))
$res = false;
)');
}
}
return $res;
+4 -4
View File
@@ -53,7 +53,6 @@ class BlockSearch extends Module
public function hookdisplayMobileTopSiteMap($params)
{
$this->smarty->assign(array('hook_mobile' => true, 'instantsearch' => false));
$params['hook_mobile'] = true;
return $this->hookTop($params);
}
@@ -81,6 +80,7 @@ public function hookDisplayMobileHeader($params)
public function hookRightColumn($params)
{
if (Tools::getValue('search_query') || !$this->isCached('blocksearch.tpl', $this->getCacheId()))
{
$this->calculHookCommon($params);
@@ -95,8 +95,7 @@ public function hookDisplayMobileHeader($params)
public function hookTop($params)
{
$key = $this->getCacheId('blocksearch-top'.((!isset($params['hook_mobile']) || !$params['hook_mobile']) ? '' : '-hook_mobile'));
if (Tools::getValue('search_query') || !$this->isCached('blocksearch-top.tpl', $key))
if (Tools::getValue('search_query') || !$this->isCached('blocksearch-top.tpl', $this->getCacheId('blocksearch-top')))
{
$this->calculHookCommon($params);
$this->smarty->assign(array(
@@ -106,7 +105,8 @@ public function hookDisplayMobileHeader($params)
);
}
return $this->display(__FILE__, 'blocksearch-top.tpl', Tools::getValue('search_query') ? null : $key);
return $this->display(__FILE__, 'blocksearch-top.tpl', Tools::getValue('search_query') ? null : $this->getCacheId('blocksearch-top'));
}
/**
@@ -680,14 +680,11 @@ class ProductComments extends Module
{
require_once(dirname(__FILE__).'/ProductComment.php');
require_once(dirname(__FILE__).'/ProductCommentCriterion.php');
$average = ProductComment::getAverageGrade((int)Tools::getValue('id_product'));
$this->context->smarty->assign(array(
'allow_guests' => (int)Configuration::get('PRODUCT_COMMENTS_ALLOW_GUESTS'),
'comments' => ProductComment::getByProduct((int)(Tools::getValue('id_product'))),
'criterions' => ProductCommentCriterion::getByProduct((int)(Tools::getValue('id_product')), $this->context->language->id),
'averageTotal' => round($average['grade']),
'nbComments' => (int)(ProductComment::getCommentNumber((int)(Tools::getValue('id_product'))))
));
@@ -93,8 +93,6 @@ class ReferralProgramModule extends ObjectModel
$cartRule->date_to = date('Y-m-d H:i:s', time() + 31536000); // + 1 year
$cartRule->code = $this->getDiscountPrefix().Tools::passwdGen(6);
$cartRule->name = Configuration::getInt('REFERRAL_DISCOUNT_DESCRIPTION');
if (empty($cartRule->name))
$cartRule->name = 'Referral reward';
$cartRule->id_customer = (int)$id_customer;
$cartRule->reduction_currency = (int)$id_currency;
+5 -16
View File
@@ -89,18 +89,14 @@ $(function(){ldelim}
<form action="{$link->getPageLink('address', true)|escape:'html'}" method="post" class="std" id="add_address">
<fieldset>
<h3>{if isset($id_address)}{l s='Your address'}{else}{l s='New address'}{/if}</h3>
{assign var="stateExist" value=false}
{assign var="postCodeExist" value=false}
{assign var="dniExist" value=false}
{foreach from=$ordered_adr_fields item=field_name}
{if $field_name eq 'dni'}
{assign var="dniExist" value=true}
<p class="text">
<label for="dni">{l s='Identification number'}</label>
<p class="required text dni">
<label for="dni">{l s='Identification number'} <sup>*</sup></label>
<input type="text" class="text" name="dni" id="dni" value="{if isset($smarty.post.dni)}{$smarty.post.dni}{else}{if isset($address->dni)}{$address->dni|escape:'html'}{/if}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</p>
{/if}
{assign var="stateExist" value=false}
{assign var="postCodeExist" value=false}
{foreach from=$ordered_adr_fields item=field_name}
{if $field_name eq 'company'}
<p class="text">
<label for="company">{l s='Company'}</label>
@@ -214,13 +210,6 @@ $(function(){ldelim}
</select>
</p>
{/if}
{if !$dniExist}
<p class="required text dni">
<label for="dni">{l s='Identification number'} <sup>*</sup></label>
<input type="text" class="text" name="dni" id="dni" value="{if isset($smarty.post.dni)}{$smarty.post.dni}{else}{if isset($address->dni)}{$address->dni|escape:'html'}{/if}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</p>
{/if}
<p class="textarea">
<label for="other">{l s='Additional information'}</label>
<textarea id="other" name="other" cols="26" rows="3">{if isset($smarty.post.other)}{$smarty.post.other}{else}{if isset($address->other)}{$address->other|escape:'html'}{/if}{/if}</textarea>
+8 -28
View File
@@ -90,7 +90,6 @@ $(document).ready(function() {
{include file="$tpl_dir./errors.tpl"}
{assign var='stateExist' value=false}
{assign var="postCodeExist" value=false}
{assign var="dniExist" value=false}
{if !isset($email_create)}
<script type="text/javascript">
{literal}
@@ -316,9 +315,7 @@ $(document).ready(function() {
<input type="text" class="text" name="vat_number" value="{if isset($smarty.post.vat_number)}{$smarty.post.vat_number}{/if}" />
</p>
</div>
{elseif $field_name eq "dni"}
{assign var='dniExist' value=true}
<p class="text">
<p class="required text dni">
<label for="dni">{l s='Identification number'}</label>
<input type="text" class="text" name="dni" id="dni" value="{if isset($smarty.post.dni)}{$smarty.post.dni}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
@@ -362,12 +359,6 @@ $(document).ready(function() {
</p>
{/if}
{/foreach}
{if $postCodeExist eq false}
<p class="required postcode text hidden">
<label for="postcode">{l s='Zip / Postal Code'} <sup>*</sup></label>
<input type="text" class="text" name="postcode" id="postcode" value="{if isset($smarty.post.postcode)}{$smarty.post.postcode}{/if}" onblur="$('#postcode').val($('#postcode').val().toUpperCase());" />
</p>
{/if}
{if $stateExist eq false}
<p class="required id_state select hidden">
<label for="id_state">{l s='State'} <sup>*</sup></label>
@@ -376,12 +367,11 @@ $(document).ready(function() {
</select>
</p>
{/if}
{if $dniExist eq false}
<p class="required text dni">
<label for="dni">{l s='Identification number'} <sup>*</sup></label>
<input type="text" class="text" name="dni" id="dni" value="{if isset($smarty.post.dni)}{$smarty.post.dni}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</p>
{if $postCodeExist eq false}
<p class="required postcode text hidden">
<label for="postcode">{l s='Zip / Postal Code'} <sup>*</sup></label>
<input type="text" class="text" name="postcode" id="postcode" value="{if isset($smarty.post.postcode)}{$smarty.post.postcode}{/if}" onblur="$('#postcode').val($('#postcode').val().toUpperCase());" />
</p>
{/if}
<p class="{if isset($one_phone_at_least) && $one_phone_at_least}required {/if}text">
<label for="phone_mobile">{l s='Mobile phone'}{if isset($one_phone_at_least) && $one_phone_at_least} <sup>*</sup>{/if}</label>
@@ -396,7 +386,6 @@ $(document).ready(function() {
<div id="opc_invoice_address" class="hidden">
{assign var=stateExist value=false}
{assign var=postCodeExist value=false}
{assign var=dniExist value=false}
<h3>{l s='Invoice address'}</h3>
{foreach from=$inv_all_fields item=field_name}
{if $field_name eq "company" && $b2b_enable}
@@ -411,10 +400,8 @@ $(document).ready(function() {
<input type="text" class="text" id="vat_number_invoice" name="vat_number_invoice" value="{if isset($smarty.post.vat_number_invoice)}{$smarty.post.vat_number_invoice}{/if}" />
</p>
</div>
{elseif $field_name eq "dni"}
{assign var=dniExist value=true}
<p class="text">
<label for="dni_invoice">{l s='Identification number'}</label>
<p class="required text dni_invoice">
<label for="dni">{l s='Identification number'}</label>
<input type="text" class="text" name="dni_invoice" id="dni_invoice" value="{if isset($smarty.post.dni_invoice)}{$smarty.post.dni_invoice}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</p>
@@ -478,13 +465,6 @@ $(document).ready(function() {
</select>
</p>
{/if}
{if !$dniExist}
<p class="required text dni_invoice">
<label for="dni_invoice">{l s='Identification number'} <sup>*</sup></label>
<input type="text" class="text" name="dni_invoice" id="dni_invoice" value="{if isset($smarty.post.dni_invoice)}{$smarty.post.dni_invoice}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</p>
{/if}
<p class="{if isset($one_phone_at_least) && $one_phone_at_least}required {/if}text">
<label for="phone_mobile_invoice">{l s='Mobile phone'}{if isset($one_phone_at_least) && $one_phone_at_least} <sup>*</sup>{/if}</label>
<input type="text" class="text" name="phone_mobile_invoice" id="phone_mobile_invoice" value="{if isset($smarty.post.phone_mobile_invoice)}{$smarty.post.phone_mobile_invoice}{/if}" />
+17 -37
View File
@@ -182,27 +182,12 @@
<h3>{l s='Delivery address'}</h3>
{$stateExist = false}
{$postCodeExist = false}
{$dniExist = false}
{foreach from=$dlv_all_fields item=field_name}
{if $field_name eq "company" && $b2b_enable}
<p class="text">
<label for="company">{l s='Company'}</label>
<input type="text" class="text" id="company" name="company" value="{if isset($guestInformations) && $guestInformations.company}{$guestInformations.company}{/if}" />
</p>
{elseif $field_name eq "vat_number"}
<div id="vat_number_block" style="display:none;">
<p class="text">
<label for="vat_number">{l s='VAT number'}</label>
<input type="text" class="text" name="vat_number" id="vat_number" value="{if isset($guestInformations) && $guestInformations.vat_number}{$guestInformations.vat_number}{/if}" />
<label for="company">{l s='Company'}</label>
<input type="text" class="text" id="company" name="company" value="{if isset($guestInformations) && $guestInformations.company}{$guestInformations.company}{/if}" />
</p>
</div>
{elseif $field_name eq "dni"}
{assign var='dniExist' value=true}
<p class="text">
<label for="dni">{l s='Identification number'}</label>
<input type="text" class="text" name="dni" id="dni" value="{if isset($guestInformations) && $guestInformations.dni}{$guestInformations.dni}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</p>
{elseif $field_name eq "firstname"}
<p class="required text">
<label for="firstname">{l s='First name'} <sup>*</sup></label>
@@ -243,6 +228,13 @@
{/foreach}
</select>
</p>
{elseif $field_name eq "vat_number"}
<div id="vat_number_block" style="display:none;">
<p class="text">
<label for="vat_number">{l s='VAT number'}</label>
<input type="text" class="text" name="vat_number" id="vat_number" value="{if isset($guestInformations) && $guestInformations.vat_number}{$guestInformations.vat_number}{/if}" />
</p>
</div>
{elseif $field_name eq "state" || $field_name eq 'State:name'}
{$stateExist = true}
<p class="required id_state select" style="display:none;">
@@ -253,6 +245,11 @@
</p>
{/if}
{/foreach}
<p class="required text dni">
<label for="dni">{l s='Identification number'}</label>
<input type="text" class="text" name="dni" id="dni" value="{if isset($guestInformations) && $guestInformations.dni}{$guestInformations.dni}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</p>
{if !$postCodeExist}
<p class="required postcode text hidden">
<label for="postcode">{l s='Zip / Postal code'} <sup>*</sup></label>
@@ -266,14 +263,7 @@
<option value="">-</option>
</select>
</p>
{/if}
{if !$dniExist}
<p class="required text dni">
<label for="dni">{l s='Identification number'} <sup>*</sup></label>
<input type="text" class="text" name="dni" id="dni" value="{if isset($guestInformations) && $guestInformations.dni}{$guestInformations.dni}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</p>
{/if}
{/if}
<p class="textarea is_customer_param">
<label for="other">{l s='Additional information'}</label>
<textarea name="other" id="other" cols="26" rows="3"></textarea>
@@ -299,7 +289,6 @@
<div id="opc_invoice_address" class="is_customer_param">
{assign var=stateExist value=false}
{assign var=postCodeExist value=false}
{assign var=dniExist value=false}
<h3>{l s='Invoice address'}</h3>
{foreach from=$inv_all_fields item=field_name}
{if $field_name eq "company" && $b2b_enable}
@@ -314,10 +303,8 @@
<input type="text" class="text" id="vat_number_invoice" name="vat_number_invoice" value="" />
</p>
</div>
{elseif $field_name eq "dni"}
{assign var='dniExist' value=true}
<p class="text">
<label for="dni_invoice">{l s='Identification number'}</label>
<p class="required text dni_invoice">
<label for="dni">{l s='Identification number'}</label>
<input type="text" class="text" name="dni_invoice" id="dni_invoice" value="{if isset($guestInformations) && $guestInformations.dni_invoice}{$guestInformations.dni_invoice}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</p>
@@ -386,13 +373,6 @@
</select>
</p>
{/if}
{if !$dniExist}
<p class="required text dni_invoice">
<label for="dni_invoice">{l s='Identification number'} <sup>*</sup></label>
<input type="text" class="text" name="dni_invoice" id="dni_invoice" value="{if isset($guestInformations) && $guestInformations.dni_invoice}{$guestInformations.dni_invoice}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</p>
{/if}
<p class="textarea is_customer_param">
<label for="other_invoice">{l s='Additional information'}</label>
<textarea name="other_invoice" id="other_invoice" cols="26" rows="3"></textarea>