Compare commits
79 Commits
developmen
...
patch-1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b4c4068e41 | ||
|
|
fd1050b0db | ||
|
|
5b809ec536 | ||
|
|
02fd940124 | ||
|
|
134914dc1a | ||
|
|
d8a1dca660 | ||
|
|
10fa987832 | ||
|
|
58da52b808 | ||
|
|
0585b8d723 | ||
|
|
ccc388fab9 | ||
|
|
dbd5f9d32f | ||
|
|
27397ab839 | ||
|
|
11f530b54f | ||
|
|
6c271e037c | ||
|
|
964a0a4601 | ||
|
|
9737709ee6 | ||
|
|
70144c7cef | ||
|
|
0442da817c | ||
|
|
9d63514220 | ||
|
|
13061bdc04 | ||
|
|
5150a3fc4c | ||
|
|
4ab4e19d20 | ||
|
|
023be78690 | ||
|
|
55c329c16e | ||
|
|
b951c2809c | ||
|
|
2b37db629e | ||
|
|
d064be1587 | ||
|
|
2a1c991612 | ||
|
|
fa059751fc | ||
|
|
6284c55e2a | ||
|
|
81f05b9db3 | ||
|
|
09b5d3a0b8 | ||
|
|
754ba06a39 | ||
|
|
2129aebac0 | ||
|
|
04760c91e5 | ||
|
|
2eb620267c | ||
|
|
a932ba512a | ||
|
|
d14fcf169a | ||
|
|
d6e52bdecb | ||
|
|
3ab28374e6 | ||
|
|
5f47526ed2 | ||
|
|
033bf745cd | ||
|
|
6d0de6e29e | ||
|
|
0ff7163cba | ||
|
|
914f613e7b | ||
|
|
5ef392aaeb | ||
|
|
0410378bd3 | ||
|
|
1508a8a5d7 | ||
|
|
33b8703d24 | ||
|
|
e02b5d5c11 | ||
|
|
6be883217e | ||
|
|
10e0205cb8 | ||
|
|
4cba2623e5 | ||
|
|
618aa24f74 | ||
|
|
0889ab4eec | ||
|
|
6633efd27d | ||
|
|
8d627aa522 | ||
|
|
bcc851c98c | ||
|
|
dbc08d779c | ||
|
|
22a9548f83 | ||
|
|
4771746959 | ||
|
|
bd241a9c48 | ||
|
|
8166bb662c | ||
|
|
113f8d4efb | ||
|
|
11296fe464 | ||
|
|
017ef4860e | ||
|
|
21319ca32c | ||
|
|
cef406aef2 | ||
|
|
7e841c4448 | ||
|
|
1cbc765a8f | ||
| 692643d7d6 | |||
|
|
cd58c0968b | ||
|
|
e5f0bcb916 | ||
|
|
99ad6481e6 | ||
|
|
4b0b5cf4da | ||
|
|
8053604005 | ||
|
|
5abd93e619 | ||
|
|
eff3f6f713 | ||
|
|
dbc5c4301f |
@@ -1,7 +1,7 @@
|
||||
Contributing
|
||||
------------
|
||||
|
||||
PrestaShop is an open-source e-commerce solution - To contribute to our project, you can make pull requests on the development branch.
|
||||
PrestaShop is an open-source e-commerce solution - To contribute to our project, you can make pull requests on the bootstrap branch.
|
||||
If you need some help to make a [pull-request][1]
|
||||
All contributions must respect [the coding norm][2] and [the commit norm][3] in your pull-request.
|
||||
All core files you commit in your pull request must have Open Software License (OSL 3.0)
|
||||
|
||||
345
CONTRIBUTORS.md
345
CONTRIBUTORS.md
@@ -1,161 +1,186 @@
|
||||
- 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
|
||||
- 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
|
||||
- Fran<EFBFBD>ois 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
|
||||
|
||||
|
||||
@@ -23,10 +23,6 @@
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*}
|
||||
|
||||
<div class="width4">
|
||||
{if isset($localization_form)}{$localization_form}{/if}
|
||||
</div>
|
||||
{if isset($localization_form)}{$localization_form}{/if}
|
||||
<br />
|
||||
<div class="width4">
|
||||
{if isset($localization_options)}{$localization_options}{/if}
|
||||
</div>
|
||||
{if isset($localization_options)}{$localization_options}{/if}
|
||||
|
||||
@@ -106,7 +106,6 @@
|
||||
|
||||
$(document).ready(function()
|
||||
{
|
||||
$('#product-tab-content-wait').show();
|
||||
//product_type = $("input[name=type_product]:checked").val();
|
||||
if (product_type == product_type_pack)
|
||||
{
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
<div class="lang_{$language.id_lang}" style="{if !$language.is_default}display:none;{/if}float: left;">
|
||||
<textarea cols="100" rows="10" id="{$input_name}_{$language.id_lang}"
|
||||
name="{$input_name}_{$language.id_lang}"
|
||||
class="autoload_rte" >{if isset($input_value[$language.id_lang])}{$input_value[$language.id_lang]|htmlentitiesUTF8}{/if}</textarea>
|
||||
class="autoload_rte" >{if isset($input_value[$language.id_lang])}{$input_value[$language.id_lang]|htmlentitiesUTF8|replace:'\r\n':''|replace:'\"':'"'}{/if}</textarea>
|
||||
<span class="counter" max="{if isset($max)}{$max}{else}none{/if}"></span>
|
||||
<span class="hint">{$hint|default:''}<span class="hint-pointer"> </span></span>
|
||||
</div>
|
||||
|
||||
@@ -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="selected" {elseif $selected_pagination == NULL && $value == $pagination[1]} selected="selected2"{/if}>{$value|intval}</option>
|
||||
<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>
|
||||
{/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 $option_display == $params.value || $option_value == $params.value} selected="selected"{/if}>{$option_display}</option>
|
||||
<option value="{$option_value}" {if $params.value != '' && ($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 class="toolbar-placeholder">
|
||||
<div id="{$table}_toolbar" 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 = $('span[class~="process-icon-save"]').parent();
|
||||
btn_save = $('#{$table}_toolbar span[class~="process-icon-save"]').parent();
|
||||
|
||||
//get reference on form submit button
|
||||
btn_submit = $('#{$table}_form_submit_btn');
|
||||
@@ -93,6 +93,9 @@
|
||||
//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;
|
||||
|
||||
@@ -99,6 +99,7 @@ class AddressFormatCore extends ObjectModel
|
||||
'outstanding_allow_amount',
|
||||
'call_prefix',
|
||||
'definition',
|
||||
'debug_list'
|
||||
);
|
||||
|
||||
public static $forbiddenClassList = array(
|
||||
|
||||
@@ -132,7 +132,12 @@ class CartRuleCore extends ObjectModel
|
||||
public function update($null_values = false)
|
||||
{
|
||||
Cache::clean('getContextualValue_'.$this->id.'_*');
|
||||
return parent::update($null_values);
|
||||
if (!parent::update($null_values))
|
||||
return false;
|
||||
|
||||
Configuration::updateGlobalValue('PS_CART_RULE_FEATURE_ACTIVE', CartRule::isCurrentlyUsed($this->def['table'], true));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -510,6 +510,7 @@ class LinkCore
|
||||
|
||||
public function goPage($url, $p)
|
||||
{
|
||||
$url = rtrim(str_replace('?&', '?', $url), '?');
|
||||
return $url.($p == 1 ? '' : (!strstr($url, '?') ? '?' : '&').'p='.(int)$p);
|
||||
}
|
||||
|
||||
|
||||
@@ -372,11 +372,11 @@ class MailCore
|
||||
|
||||
$file_core = _PS_ROOT_DIR_.'/mails/'.$iso_code.'/lang.php';
|
||||
if (Tools::file_exists_cache($file_core) && empty($_LANGMAIL))
|
||||
include_once($file_core);
|
||||
include($file_core);
|
||||
|
||||
$file_theme = _PS_THEME_DIR_.'mails/'.$iso_code.'/lang.php';
|
||||
if (Tools::file_exists_cache($file_theme))
|
||||
include_once($file_theme);
|
||||
include($file_theme);
|
||||
|
||||
if (!is_array($_LANGMAIL))
|
||||
return (str_replace('"', '"', $string));
|
||||
|
||||
@@ -37,9 +37,10 @@ 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'), 'theme' => true),
|
||||
'ui.autocomplete' => array('fileName' => 'jquery.ui.autocomplete.min.js', 'dependencies' => array('ui.core', 'ui.widget', 'ui.position', 'ui.menu'), '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),
|
||||
|
||||
@@ -369,7 +369,8 @@ abstract class PaymentModuleCore extends Module
|
||||
$customization_text .= sprintf(Tools::displayError('%d image(s)'), count($customization['datas'][Product::CUSTOMIZE_FILE])).'<br />';
|
||||
$customization_text .= '---<br />';
|
||||
}
|
||||
$customization_text = rtrim($customization_text, '---<br />');
|
||||
|
||||
$customization_text = Tools::rtrimString($customization_text, '---<br />');
|
||||
|
||||
$customization_quantity = (int)$product['customization_quantity'];
|
||||
$products_list .=
|
||||
|
||||
@@ -5278,7 +5278,10 @@ class ProductCore extends ObjectModel
|
||||
WHERE id_product='.(int)$this->id.Shop::addSqlRestriction()
|
||||
);
|
||||
else
|
||||
{
|
||||
$this->setFieldsToUpdate(array('advanced_stock_management' => true));
|
||||
$this->save();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -85,6 +85,7 @@ class ProductSaleCore
|
||||
foreach ($products as $product)
|
||||
$ids[$product['id_product']] = 1;
|
||||
$ids = array_keys($ids);
|
||||
$ids = array_filter($ids);
|
||||
sort($ids);
|
||||
$ids = count($ids) > 0 ? implode(',', $ids) : 'NULL';
|
||||
|
||||
@@ -157,6 +158,7 @@ class ProductSaleCore
|
||||
$ids[$product['id_product']] = 1;
|
||||
$ids = array_keys($ids);
|
||||
sort($ids);
|
||||
$ids = array_filter($ids);
|
||||
$ids = count($ids) > 0 ? implode(',', $ids) : 'NULL';
|
||||
|
||||
//Main query
|
||||
|
||||
@@ -245,9 +245,10 @@ class RequestSqlCore extends ObjectModel
|
||||
*/
|
||||
public function cutAttribute($attr, $from)
|
||||
{
|
||||
if (preg_match('#^((`(\()?([a-z0-9_])+`(\))?)|((\()?([a-z0-9_])+(\))?))\.((`(\()?([a-z0-9_])+`(\))?)|((\()?([a-z0-9_])+(\))?))$#i', $attr))
|
||||
$matches = array();
|
||||
if (preg_match('/((`(\()?([a-z0-9_])+`(\))?)|((\()?([a-z0-9_])+(\))?))\.((`(\()?([a-z0-9_])+`(\))?)|((\()?([a-z0-9_])+(\))?))$/i', $attr, $matches, PREG_OFFSET_CAPTURE))
|
||||
{
|
||||
$tab = explode('.', str_replace(array('`', '(', ')'), '', $attr));
|
||||
$tab = explode('.', str_replace(array('`', '(', ')'), '', $matches[0][0]));
|
||||
if (!$table = $this->returnNameTable($tab[0], $from))
|
||||
return false;
|
||||
else
|
||||
@@ -256,9 +257,9 @@ class RequestSqlCore extends ObjectModel
|
||||
'attribut' => $tab[1],
|
||||
'string' => $attr);
|
||||
}
|
||||
elseif (preg_match('#^((`(\()?([a-z0-9_])+`(\))?)|((\()?([a-z0-9_])+(\))?))$#i', $attr))
|
||||
elseif (preg_match('/((`(\()?([a-z0-9_])+`(\))?)|((\()?([a-z0-9_])+(\))?))$/i', $attr, $matches, PREG_OFFSET_CAPTURE))
|
||||
{
|
||||
$attribut = str_replace(array('`', '(', ')'), '', $attr);
|
||||
$attribut = str_replace(array('`', '(', ')'), '', $matches[0][0]);
|
||||
if (!$table = $this->returnNameTable(false, $from))
|
||||
return false;
|
||||
else
|
||||
|
||||
@@ -344,7 +344,7 @@ class ToolsCore
|
||||
}
|
||||
|
||||
/* Automatically detect language if not already defined, detect_language is set in Cookie::update */
|
||||
if ((!$cookie->id_lang || isset($cookie->detect_language)) && isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
|
||||
if ((!$cookie->id_lang && (isset($cookie->detect_language)) && isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])))
|
||||
{
|
||||
$array = explode(',', Tools::strtolower($_SERVER['HTTP_ACCEPT_LANGUAGE']));
|
||||
$string = $array[0];
|
||||
@@ -397,6 +397,7 @@ class ToolsCore
|
||||
|| (($id_lang == $configuration_id_lang) && Validate::isUnsignedId($id_lang) && $id_lang != $cookie_id_lang))
|
||||
{
|
||||
$context->cookie->id_lang = $id_lang;
|
||||
|
||||
$language = new Language($id_lang);
|
||||
if (Validate::isLoadedObject($language) && $language->active)
|
||||
$context->language = $language;
|
||||
@@ -675,10 +676,8 @@ class ToolsCore
|
||||
public static function htmlentitiesDecodeUTF8($string)
|
||||
{
|
||||
if (is_array($string))
|
||||
{
|
||||
$string = array_map(array('Tools', 'htmlentitiesDecodeUTF8'), $string);
|
||||
return (string)array_shift($string);
|
||||
}
|
||||
return array_map(array('Tools', 'htmlentitiesDecodeUTF8'), $string);
|
||||
|
||||
return html_entity_decode((string)$string, ENT_QUOTES, 'utf-8');
|
||||
}
|
||||
|
||||
@@ -1222,11 +1221,6 @@ 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);
|
||||
|
||||
@@ -2744,6 +2738,20 @@ exit;
|
||||
}
|
||||
return $fileAttachment;
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete a substring from another one starting from the right
|
||||
* @param string $str
|
||||
* @param string $str_search
|
||||
* @return string
|
||||
*/
|
||||
public static function rtrimString($str, $str_search)
|
||||
{
|
||||
$length_str = strlen($str_search);
|
||||
if (strlen($str) >= $length_str && substr($str, -$length_str) == $str_search)
|
||||
$str = substr($str, 0, -$length_str);
|
||||
return $str;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -2770,4 +2778,4 @@ function cmpPriceDesc($a, $b)
|
||||
elseif ((float)$a['price_tmp'] > (float)$b['price_tmp'])
|
||||
return -1;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
@@ -1547,7 +1547,7 @@ class AdminControllerCore extends Controller
|
||||
if (!empty($country_module_list) && is_string($country_module_list) && $country_module_list_xml = simplexml_load_string($country_module_list))
|
||||
{
|
||||
$country_module_list_array = array();
|
||||
if (is_array($country_module_list_xml->module))
|
||||
if (isset($country_module_list_xml->module))
|
||||
foreach ($country_module_list_xml->module as $k => $m)
|
||||
$country_module_list_array[] = (string)$m->name;
|
||||
$this->tab_modules_list['slider_list'] = array_intersect($this->tab_modules_list['slider_list'], $country_module_list_array);
|
||||
|
||||
@@ -86,9 +86,9 @@ class HelperCore
|
||||
$override_tpl_path = _PS_MODULE_DIR_.$this->module->name.'/views/templates/admin/_configure/'.$this->override_folder.$this->base_folder.$tpl_name;
|
||||
else
|
||||
{
|
||||
if (file_exists($this->context->smarty->getTemplateDir(1).DIRECTORY_SEPARATOR.$this->override_folder.$this->base_folder.$tpl_name))
|
||||
$override_tpl_path = $this->context->smarty->getTemplateDir(1).DIRECTORY_SEPARATOR.$this->override_folder.$this->base_folder.$tpl_name;
|
||||
else if (file_exists($this->context->smarty->getTemplateDir(0).DIRECTORY_SEPARATOR.'controllers'.DIRECTORY_SEPARATOR.$this->override_folder.$this->base_folder.$tpl_name))
|
||||
if (file_exists($this->context->smarty->getTemplateDir(1).$this->override_folder.$this->base_folder.$tpl_name))
|
||||
$override_tpl_path = $this->context->smarty->getTemplateDir(1).$this->override_folder.$this->base_folder.$tpl_name;
|
||||
else if (file_exists($this->context->smarty->getTemplateDir(0).'controllers'.DIRECTORY_SEPARATOR.$this->override_folder.$this->base_folder.$tpl_name))
|
||||
$override_tpl_path = $this->context->smarty->getTemplateDir(0).'controllers'.DIRECTORY_SEPARATOR.$this->override_folder.$this->base_folder.$tpl_name;
|
||||
|
||||
}
|
||||
|
||||
@@ -1258,7 +1258,9 @@ abstract class ModuleCore
|
||||
$modules = scandir(_PS_MODULE_DIR_);
|
||||
foreach ($modules as $name)
|
||||
{
|
||||
if (is_dir(_PS_MODULE_DIR_.$name.DIRECTORY_SEPARATOR) && Tools::file_exists_cache(_PS_MODULE_DIR_.$name.'/'.$name.'.php'))
|
||||
if (is_file(_PS_MODULE_DIR_.$name))
|
||||
continue;
|
||||
elseif (is_dir(_PS_MODULE_DIR_.$name.DIRECTORY_SEPARATOR) && Tools::file_exists_cache(_PS_MODULE_DIR_.$name.'/'.$name.'.php'))
|
||||
{
|
||||
if (!Validate::isModuleName($name))
|
||||
throw new PrestaShopException(sprintf('Module %s is not a valid module name', $name));
|
||||
|
||||
@@ -105,7 +105,7 @@ class AdminCategoriesControllerCore extends AdminController
|
||||
$this->_category = new Category($id_category);
|
||||
else
|
||||
{
|
||||
if (Shop::isFeatureActive() && Shop::getContext() == Shop::CONTEXT_SHOP)
|
||||
if (Shop::getContext() == Shop::CONTEXT_SHOP)
|
||||
$this->_category = new Category($this->context->shop->id_category);
|
||||
elseif (count(Category::getCategoriesWithoutParent()) > 1 && Configuration::get('PS_MULTISHOP_FEATURE_ACTIVE') && count(Shop::getShops(true, null, true)) != 1)
|
||||
$this->_category = Category::getTopCategory();
|
||||
|
||||
@@ -71,6 +71,7 @@ class AdminCmsCategoriesControllerCore extends AdminController
|
||||
{
|
||||
$this->initToolbar();
|
||||
$this->toolbar_btn['new']['href'] .= '&id_parent='.(int)Tools::getValue('id_cms_category');
|
||||
$this->initTabModuleList();
|
||||
return parent::renderList();
|
||||
}
|
||||
|
||||
|
||||
@@ -120,6 +120,7 @@ class AdminDeliverySlipControllerCore extends AdminController
|
||||
|
||||
public function initContent()
|
||||
{
|
||||
$this->initTabModuleList();
|
||||
$this->content .= $this->renderForm().'<br />';
|
||||
$this->show_toolbar = false;
|
||||
$this->content .= $this->renderOptions();
|
||||
|
||||
@@ -347,15 +347,15 @@ class AdminEmployeesControllerCore extends AdminController
|
||||
|
||||
public function postProcess()
|
||||
{
|
||||
if (Tools::isSubmit('deleteemployee') || Tools::isSubmit('status') || Tools::isSubmit('statusemployee'))
|
||||
/* PrestaShop demo mode */
|
||||
if ((Tools::isSubmit('deleteemployee') || Tools::isSubmit('status') || Tools::isSubmit('statusemployee') || Tools::isSubmit('submitAddemployee')) && _PS_MODE_DEMO_)
|
||||
{
|
||||
/* PrestaShop demo mode */
|
||||
if (_PS_MODE_DEMO_ && $id_employee = Tools::getValue('id_employee') && (int)$id_employee == _PS_DEMO_MAIN_BO_ACCOUNT_)
|
||||
{
|
||||
$this->errors[] = Tools::displayError('This functionality has been disabled.');
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (Tools::isSubmit('deleteemployee') || Tools::isSubmit('status') || Tools::isSubmit('statusemployee'))
|
||||
{
|
||||
if ($this->context->employee->id == Tools::getValue('id_employee'))
|
||||
{
|
||||
$this->errors[] = Tools::displayError('You cannot disable or delete your own account.');
|
||||
|
||||
@@ -195,6 +195,22 @@ 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,8 +145,10 @@ class AdminLocalizationControllerCore extends AdminController
|
||||
|
||||
if (Validate::isFileName(Tools::getValue('iso_localization_pack')))
|
||||
{
|
||||
|
||||
$pack = @Tools::file_get_contents('http://api.prestashop.com/localization/'.$version.'/'.Tools::getValue('iso_localization_pack').'.xml');
|
||||
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;
|
||||
|
||||
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.');
|
||||
@@ -264,6 +266,26 @@ 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(
|
||||
@@ -278,10 +300,11 @@ class AdminLocalizationControllerCore extends AdminController
|
||||
'selection[]_taxes' => true,
|
||||
'selection[]_currencies' => true,
|
||||
'selection[]_languages' => true,
|
||||
'selection[]_units' => true
|
||||
'selection[]_units' => true,
|
||||
'download_updated_pack' => 1
|
||||
);
|
||||
|
||||
$this->show_toolbar = false;
|
||||
$this->show_toolbar = true;
|
||||
return parent::renderForm();
|
||||
}
|
||||
|
||||
@@ -292,7 +315,6 @@ class AdminLocalizationControllerCore extends AdminController
|
||||
|
||||
// toolbar (save, cancel, new, ..)
|
||||
$this->initToolbar();
|
||||
|
||||
$this->context->smarty->assign(array(
|
||||
'localization_form' => $this->renderForm(),
|
||||
'localization_options' => $this->renderOptions(),
|
||||
@@ -300,9 +322,15 @@ class AdminLocalizationControllerCore extends AdminController
|
||||
));
|
||||
}
|
||||
|
||||
public function initToolbar()
|
||||
{
|
||||
$this->toolbar_btn = array();
|
||||
$this->initTabModuleList();
|
||||
}
|
||||
|
||||
public function display()
|
||||
{
|
||||
$this->initContent();
|
||||
$this->initContent();
|
||||
parent::display();
|
||||
}
|
||||
|
||||
|
||||
@@ -638,6 +638,7 @@ class AdminManufacturersControllerCore extends AdminController
|
||||
{
|
||||
// toolbar (save, cancel, new, ..)
|
||||
$this->initToolbar();
|
||||
$this->initTabModuleList();
|
||||
if ($this->display == 'editaddresses' || $this->display == 'addaddress')
|
||||
$this->content .= $this->renderFormAddress();
|
||||
else if ($this->display == 'edit' || $this->display == 'add')
|
||||
|
||||
@@ -276,7 +276,7 @@ class GetFileControllerCore extends FrontController
|
||||
/* Set headers for download */
|
||||
header('Content-Transfer-Encoding: binary');
|
||||
header('Content-Type: '.$mimeType);
|
||||
header('Content-Length: '.filesize($file));
|
||||
header('Content-Length: '.sprintf('%u', filesize($file)));
|
||||
header('Content-Disposition: attachment; filename="'.$filename.'"');
|
||||
$fp = fopen($file, 'rb');
|
||||
while (!feof($fp))
|
||||
|
||||
@@ -58,7 +58,7 @@ class GuestTrackingControllerCore extends FrontController
|
||||
{
|
||||
$order = new Order((int)$id_order);
|
||||
if (Validate::isLoadedObject($order))
|
||||
$order_collection[] = $order;
|
||||
$order_collection = Order::getByReference($order->reference);
|
||||
}
|
||||
else
|
||||
$order_collection = Order::getByReference($id_order);
|
||||
|
||||
@@ -23,6 +23,225 @@ 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) #
|
||||
####################################
|
||||
|
||||
@@ -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.0
|
||||
VERSION: 1.5.6.0
|
||||
NAME: Prestashop 1.5.6.1
|
||||
VERSION: 1.5.6.1
|
||||
|
||||
VORBEREITUNG
|
||||
===========
|
||||
|
||||
@@ -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.0
|
||||
VERSION: 1.5.6.0
|
||||
NAME: Prestashop 1.5.6.1
|
||||
VERSION: 1.5.6.1
|
||||
|
||||
PREPARATION
|
||||
===========
|
||||
|
||||
@@ -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.0
|
||||
VERSION: 1.5.6.0
|
||||
NAME: Prestashop 1.5.6.1
|
||||
VERSION: 1.5.6.1
|
||||
|
||||
PREPARACI<EFBFBD>N
|
||||
===========
|
||||
|
||||
@@ -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.0
|
||||
VERSION: 1.5.6.0
|
||||
NAME: Prestashop 1.5.6.1
|
||||
VERSION: 1.5.6.1
|
||||
|
||||
PREPARATION
|
||||
===========
|
||||
|
||||
@@ -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.0
|
||||
VERSION: 1.5.6.0
|
||||
NAME: Prestashop 1.5.6.1
|
||||
VERSION: 1.5.6.1
|
||||
|
||||
PREPARAZIONE
|
||||
===========
|
||||
|
||||
@@ -24,4 +24,4 @@
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
define('_PS_INSTALL_VERSION_', '1.5.6.0');
|
||||
define('_PS_INSTALL_VERSION_', '1.5.6.1');
|
||||
|
||||
@@ -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 store’s 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,22 +38,25 @@ 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)
|
||||
{
|
||||
$res &= Db::getInstance()->execute('
|
||||
if (!Db::getInstance()->execute('
|
||||
INSERT IGNORE INTO `'._DB_PREFIX_.'hook` (`name`, `title`)
|
||||
VALUES ("'.pSQL($hook_name).'", "'.pSQL($hook_name).'")');
|
||||
$id_hook = Db::getInstance()->Insert_ID();
|
||||
VALUES ("'.pSQL($hook_name).'", "'.pSQL($hook_name).'")'))
|
||||
$res = false;
|
||||
else
|
||||
$id_hook = Db::getInstance()->Insert_ID();
|
||||
}
|
||||
|
||||
if ((int)$id_hook > 0)
|
||||
{
|
||||
$res &= Db::getInstance()->execute('
|
||||
if (!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;
|
||||
|
||||
@@ -86,11 +86,9 @@ function migrate_orders()
|
||||
SELECT od.*
|
||||
FROM `'._DB_PREFIX_.'order_detail` od
|
||||
WHERE od.`id_order` = '.(int)$order['id_order']);
|
||||
|
||||
while ($order_details = Db::getInstance()->nextRow($order_details_list))
|
||||
{
|
||||
$values_order_detail = array();
|
||||
$values_order = array();
|
||||
$col_order_detail = array();
|
||||
// we don't want to erase order_details data in order to create the insert query
|
||||
$products = mo_setProductPrices($order_details, $price_display_method);
|
||||
$tax_rate = 1 + ((float)$products['tax_rate'] / 100);
|
||||
@@ -107,6 +105,7 @@ function migrate_orders()
|
||||
$order_details['total_price_tax_excl'] = (float)$products['total_price'];
|
||||
$order_details['unit_price_tax_incl'] = (float)$products['product_price_wt'];
|
||||
$order_details['unit_price_tax_excl'] = (float)$products['product_price'];
|
||||
|
||||
foreach (array_keys($order_details) as $k)
|
||||
if (!in_array($k, $col_order_detail))
|
||||
unset($order_details[$k]);
|
||||
@@ -121,7 +120,7 @@ function migrate_orders()
|
||||
$values_order_detail[] = '(\''.implode('\', \'', $order_details).'\')';
|
||||
unset($order_details);
|
||||
}
|
||||
|
||||
|
||||
$average_tax_used = 1;
|
||||
if ($sum_total_products > 0)
|
||||
$average_tax_used += $sum_tax_amount / $sum_total_products;
|
||||
@@ -187,6 +186,10 @@ function migrate_orders()
|
||||
$res = false;
|
||||
$array_errors[] = '[insert order 4] - '.Db::getInstance()->getMsgError();
|
||||
}
|
||||
if (isset($values_order))
|
||||
unset($values_order);
|
||||
if (isset($values_order_detail))
|
||||
unset($values_order_detail);
|
||||
if (!mo_renameTables())
|
||||
{
|
||||
$res = false;
|
||||
|
||||
@@ -1072,7 +1072,8 @@ qq.extend(qq.UploadHandlerXhr.prototype, {
|
||||
var queryString = qq.obj2url(params, this._options.action);
|
||||
|
||||
xhr.open("POST", queryString, true);
|
||||
xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
|
||||
xhr.setRequestHeader("Content-Type", "application/octet-stream");
|
||||
xhr.setRequestHeader("processData", false);
|
||||
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
|
||||
xhr.setRequestHeader("X-File-Name", encodeURIComponent(name));
|
||||
xhr.send(file);
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
<language iso_code="it" />
|
||||
</languages>
|
||||
<taxes>
|
||||
<tax id="1" name="IVA IT 21%" rate="21" />
|
||||
<tax id="1" name="IVA IT 22%" rate="22" />
|
||||
<tax id="2" name="IVA IT 10%" rate="10" />
|
||||
<tax id="3" name="IVA IT 4%" rate="4" />
|
||||
|
||||
<taxRulesGroup name="IT Standard Rate (21%)">
|
||||
<taxRulesGroup name="IT Standard Rate (22%)">
|
||||
<taxRule iso_code_country="be" id_tax="1" />
|
||||
<taxRule iso_code_country="bg" id_tax="1" />
|
||||
<taxRule iso_code_country="cz" id_tax="1" />
|
||||
|
||||
@@ -8,9 +8,9 @@
|
||||
<language iso_code="en" />
|
||||
</languages>
|
||||
<taxes>
|
||||
<tax id="1" name="GST JE 3%" rate="3" />
|
||||
<tax id="1" name="GST JE 5%" rate="5" />
|
||||
|
||||
<taxRulesGroup name="JE Standard Rate (3%)">
|
||||
<taxRulesGroup name="JE Standard Rate (5%)">
|
||||
<taxRule iso_code_country="je" id_tax="1" />
|
||||
</taxRulesGroup>
|
||||
</taxes>
|
||||
|
||||
@@ -10,14 +10,10 @@
|
||||
<taxRulesGroup name="Kenya VAT 16%">
|
||||
<taxRule iso_code_country="ke" behavior="0" id_tax="76"/>
|
||||
</taxRulesGroup>
|
||||
<taxRulesGroup name="Kenya VAT 12%">
|
||||
<taxRule iso_code_country="ke" behavior="0" id_tax="77"/>
|
||||
</taxRulesGroup>
|
||||
<taxRulesGroup name="Kenya VAT 0%">
|
||||
<taxRule iso_code_country="ke" behavior="0" id_tax="78"/>
|
||||
</taxRulesGroup>
|
||||
<tax id="76" name="Kenya VAT 16%" rate="16.000"/>
|
||||
<tax id="77" name="Kenya VAT 12%" rate="12.000"/>
|
||||
<tax id="78" name="Kenya VAT 0%" rate="0.000"/>
|
||||
</taxes>
|
||||
<units>
|
||||
|
||||
@@ -7,19 +7,19 @@
|
||||
<language iso_code="de" />
|
||||
</languages>
|
||||
<taxes>
|
||||
<tax id="1" name="TVA CH 7.6%" rate="7.6" />
|
||||
<tax id="2" name="TVA CH 3.6%" rate="3.6" />
|
||||
<tax id="3" name="TVA CH 2.4%" rate="2.4" />
|
||||
<tax id="1" name="TVA CH 8%" rate="8" />
|
||||
<tax id="2" name="TVA CH 3.8%" rate="3.8" />
|
||||
<tax id="3" name="TVA CH 2.5%" rate="2.5" />
|
||||
|
||||
<taxRulesGroup name="CH Standard Rate (7.6%)">
|
||||
<taxRulesGroup name="CH Standard Rate (8%)">
|
||||
<taxRule iso_code_country="li" id_tax="1" />
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="CH Reduced Rate (3.6%)">
|
||||
<taxRulesGroup name="CH Reduced Rate (3.8%)">
|
||||
<taxRule iso_code_country="li" id_tax="2" />
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="CH Super Reduced Rate (2.4%)">
|
||||
<taxRulesGroup name="CH Super Reduced Rate (2.5%)">
|
||||
<taxRule iso_code_country="li" id_tax="3" />
|
||||
</taxRulesGroup>
|
||||
</taxes>
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
</languages>
|
||||
<taxes>
|
||||
<tax id="1" name="PVN LV 21%" rate="21" />
|
||||
<tax id="2" name="PVN LV 10%" rate="10" />
|
||||
<tax id="2" name="PVN LV 12%" rate="12" />
|
||||
|
||||
<taxRulesGroup name="LV Standard Rate (21%)">
|
||||
<taxRule iso_code_country="be" id_tax="1" />
|
||||
@@ -40,7 +40,7 @@
|
||||
<taxRule iso_code_country="uk" id_tax="1" />
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="LV Reduced Rate (10%)">
|
||||
<taxRulesGroup name="LV Reduced Rate (12%)">
|
||||
<taxRule iso_code_country="be" id_tax="2" />
|
||||
<taxRule iso_code_country="bg" id_tax="2" />
|
||||
<taxRule iso_code_country="cz" id_tax="2" />
|
||||
@@ -100,7 +100,7 @@
|
||||
<taxRule iso_code_country="uk" id_tax="1" />
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="LV Books Rate (10%)">
|
||||
<taxRulesGroup name="LV Books Rate (12%)">
|
||||
<taxRule iso_code_country="be" id_tax="2" />
|
||||
<taxRule iso_code_country="bg" id_tax="2" />
|
||||
<taxRule iso_code_country="cz" id_tax="2" />
|
||||
|
||||
@@ -8,14 +8,14 @@
|
||||
</languages>
|
||||
<taxes>
|
||||
<tax id="1" name="MVA NO 25%" rate="25" />
|
||||
<tax id="2" name="MVA NO 14%" rate="14" />
|
||||
<tax id="2" name="MVA NO 15%" rate="15" />
|
||||
<tax id="3" name="MVA NO 8%" rate="8" />
|
||||
|
||||
<taxRulesGroup name="NO Standard Rate (25%)">
|
||||
<taxRule iso_code_country="no" id_tax="1" />
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="NO Reduced Rate (14%)">
|
||||
<taxRulesGroup name="NO Reduced Rate (15%)">
|
||||
<taxRule iso_code_country="no" id_tax="2" />
|
||||
</taxRulesGroup>
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0"?>
|
||||
<localizationPack name="PA">
|
||||
<localizationPack name="Panama">
|
||||
<currencies>
|
||||
<currency name="Dollar" iso_code="USD" iso_code_num="840" sign="$" blank="0" conversion_rate="1.000000" format="1" decimals="1"/>
|
||||
</currencies>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0"?>
|
||||
<localizationPack name="PE">
|
||||
<localizationPack name="Peru">
|
||||
<currencies>
|
||||
<currency name="Nuevo Sol" iso_code="PEN" iso_code_num="604" sign="S/." blank="1" conversion_rate="2.784499" format="1" decimals="0"/>
|
||||
</currencies>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0"?>
|
||||
<localizationPack name="PH">
|
||||
<localizationPack name="Philippines">
|
||||
<currencies>
|
||||
<currency name="Philippine Peso" iso_code="PHP" iso_code_num="608" sign="PHP" blank="1" conversion_rate="1.000000" format="1" decimals="1"/>
|
||||
</currencies>
|
||||
|
||||
@@ -1,18 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<localizationPack name="Poland" version="1.0">
|
||||
<currencies>
|
||||
<currency name="Zloty" iso_code="PLN" iso_code_num="985" sign="zł" blank="1" conversion_rate="3.84510" format="2" decimals="1" />
|
||||
<currency name="Złoty" iso_code="PLN" iso_code_num="985" sign="zł" blank="1" conversion_rate="3.84510" format="2" decimals="1" />
|
||||
</currencies>
|
||||
<languages>
|
||||
<language iso_code="pl" />
|
||||
</languages>
|
||||
<taxes>
|
||||
<tax id="1" name="PTU PL 23%" rate="23" />
|
||||
|
||||
<tax id="2" name="PTU PL 8%" rate="8" />
|
||||
<tax id="3" name="PTU PL 7%" rate="7" />
|
||||
<tax id="4" name="PTU PL 5%" rate="5" />
|
||||
<tax id="5" name="PTU PL 4%" rate="4" />
|
||||
<tax id="6" name="PTU PL 0" rate="0" />
|
||||
|
||||
<taxRulesGroup name="PL Standard Rate (23%)">
|
||||
@@ -82,39 +79,6 @@
|
||||
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="PL Reduced Rate (7%)">
|
||||
<taxRule iso_code_country="be" id_tax="3" />
|
||||
<taxRule iso_code_country="bg" id_tax="3" />
|
||||
<taxRule iso_code_country="cz" id_tax="3" />
|
||||
<taxRule iso_code_country="dk" id_tax="3" />
|
||||
<taxRule iso_code_country="de" id_tax="3" />
|
||||
<taxRule iso_code_country="ee" id_tax="3" />
|
||||
|
||||
<taxRule iso_code_country="gr" id_tax="3" />
|
||||
<taxRule iso_code_country="es" id_tax="3" />
|
||||
<taxRule iso_code_country="fr" id_tax="3" />
|
||||
<taxRule iso_code_country="ie" id_tax="3" />
|
||||
<taxRule iso_code_country="it" id_tax="3" />
|
||||
<taxRule iso_code_country="cy" id_tax="3" />
|
||||
<taxRule iso_code_country="lv" id_tax="3" />
|
||||
<taxRule iso_code_country="lt" id_tax="3" />
|
||||
<taxRule iso_code_country="lu" id_tax="3" />
|
||||
|
||||
<taxRule iso_code_country="hu" id_tax="3" />
|
||||
<taxRule iso_code_country="mt" id_tax="3" />
|
||||
<taxRule iso_code_country="nl" id_tax="3" />
|
||||
<taxRule iso_code_country="at" id_tax="3" />
|
||||
<taxRule iso_code_country="pl" id_tax="3" />
|
||||
<taxRule iso_code_country="pt" id_tax="3" />
|
||||
<taxRule iso_code_country="ro" id_tax="3" />
|
||||
<taxRule iso_code_country="si" id_tax="3" />
|
||||
<taxRule iso_code_country="sk" id_tax="3" />
|
||||
|
||||
<taxRule iso_code_country="fi" id_tax="3" />
|
||||
<taxRule iso_code_country="se" id_tax="3" />
|
||||
<taxRule iso_code_country="uk" id_tax="3" />
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="PL Reduced Rate (5%)">
|
||||
<taxRule iso_code_country="be" id_tax="4" />
|
||||
<taxRule iso_code_country="bg" id_tax="4" />
|
||||
@@ -147,38 +111,6 @@
|
||||
<taxRule iso_code_country="uk" id_tax="4" />
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="PL Reduced Rate (4%)">
|
||||
<taxRule iso_code_country="be" id_tax="5" />
|
||||
<taxRule iso_code_country="bg" id_tax="5" />
|
||||
|
||||
<taxRule iso_code_country="cz" id_tax="5" />
|
||||
<taxRule iso_code_country="dk" id_tax="5" />
|
||||
<taxRule iso_code_country="de" id_tax="5" />
|
||||
<taxRule iso_code_country="ee" id_tax="5" />
|
||||
<taxRule iso_code_country="gr" id_tax="5" />
|
||||
<taxRule iso_code_country="es" id_tax="5" />
|
||||
<taxRule iso_code_country="fr" id_tax="5" />
|
||||
<taxRule iso_code_country="it" id_tax="5" />
|
||||
<taxRule iso_code_country="cy" id_tax="5" />
|
||||
|
||||
<taxRule iso_code_country="lv" id_tax="5" />
|
||||
<taxRule iso_code_country="lt" id_tax="5" />
|
||||
<taxRule iso_code_country="lu" id_tax="5" />
|
||||
<taxRule iso_code_country="hu" id_tax="5" />
|
||||
<taxRule iso_code_country="mt" id_tax="5" />
|
||||
<taxRule iso_code_country="nl" id_tax="5" />
|
||||
<taxRule iso_code_country="at" id_tax="5" />
|
||||
<taxRule iso_code_country="pl" id_tax="5" />
|
||||
<taxRule iso_code_country="pt" id_tax="5" />
|
||||
|
||||
<taxRule iso_code_country="ro" id_tax="5" />
|
||||
<taxRule iso_code_country="si" id_tax="5" />
|
||||
<taxRule iso_code_country="sk" id_tax="5" />
|
||||
<taxRule iso_code_country="fi" id_tax="5" />
|
||||
<taxRule iso_code_country="se" id_tax="5" />
|
||||
<taxRule iso_code_country="uk" id_tax="5" />
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="PL Exempted Rate (0%)">
|
||||
<taxRule iso_code_country="be" id_tax="6" />
|
||||
|
||||
@@ -210,7 +142,6 @@
|
||||
<taxRule iso_code_country="se" id_tax="6" />
|
||||
<taxRule iso_code_country="uk" id_tax="6" />
|
||||
</taxRulesGroup>
|
||||
|
||||
</taxes>
|
||||
|
||||
<units>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<localizationPack name="Saoudi Arabie" version="1.0">
|
||||
<localizationPack name="Saudi Arabia" version="1.0">
|
||||
<currencies>
|
||||
<currency name="Riyal" iso_code="SAR" iso_code_num="682" sign="﷼" blank="1" conversion_rate="5.10682" format="2" decimals="1" />
|
||||
</currencies>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
</currencies>
|
||||
<languages>
|
||||
<language iso_code="en" />
|
||||
<language iso_code="tw" />
|
||||
<language iso_code="ms" />
|
||||
<language iso_code="zh" />
|
||||
</languages>
|
||||
<taxes>
|
||||
@@ -16,10 +16,10 @@
|
||||
</taxRulesGroup>
|
||||
</taxes>
|
||||
<units>
|
||||
<unit type="weight" value="市制" />
|
||||
<unit type="volume" value="市升" />
|
||||
<unit type="short_distance" value="市厘" />
|
||||
<unit type="base_distance" value="里" />
|
||||
<unit type="long_distance" value="市里" />
|
||||
<unit type="weight" value="kg"/>
|
||||
<unit type="volume" value="L"/>
|
||||
<unit type="short_distance" value="cm"/>
|
||||
<unit type="base_distance" value="m"/>
|
||||
<unit type="long_distance" value="km"/>
|
||||
</units>
|
||||
</localizationPack>
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
<language iso_code="si" />
|
||||
</languages>
|
||||
<taxes>
|
||||
<tax id="1" name="DDV SI 20%" rate="20" />
|
||||
<tax id="2" name="DDV SI 8.5%" rate="8.5" />
|
||||
<tax id="1" name="DDV SI 22%" rate="22" />
|
||||
<tax id="2" name="DDV SI 9.5%" rate="9.5" />
|
||||
|
||||
<taxRulesGroup name="SI Standard Rate (20%)">
|
||||
<taxRulesGroup name="SI Standard Rate (22%)">
|
||||
<taxRule iso_code_country="be" id_tax="1" />
|
||||
<taxRule iso_code_country="bg" id_tax="1" />
|
||||
<taxRule iso_code_country="cz" id_tax="1" />
|
||||
@@ -40,7 +40,7 @@
|
||||
<taxRule iso_code_country="uk" id_tax="1" />
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="SI Reduced Rate (8.5%)">
|
||||
<taxRulesGroup name="SI Reduced Rate (9.5%)">
|
||||
<taxRule iso_code_country="be" id_tax="2" />
|
||||
<taxRule iso_code_country="bg" id_tax="2" />
|
||||
<taxRule iso_code_country="cz" id_tax="2" />
|
||||
@@ -70,7 +70,7 @@
|
||||
<taxRule iso_code_country="uk" id_tax="2" />
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="SI Foodstuff Rate (8.5%)">
|
||||
<taxRulesGroup name="SI Foodstuff Rate (9.5%)">
|
||||
<taxRule iso_code_country="be" id_tax="2" />
|
||||
<taxRule iso_code_country="bg" id_tax="2" />
|
||||
<taxRule iso_code_country="cz" id_tax="2" />
|
||||
@@ -100,7 +100,7 @@
|
||||
<taxRule iso_code_country="uk" id_tax="2" />
|
||||
</taxRulesGroup>
|
||||
|
||||
<taxRulesGroup name="SI Books Rate (8.5%)">
|
||||
<taxRulesGroup name="SI Books Rate (9.5%)">
|
||||
<taxRule iso_code_country="be" id_tax="2" />
|
||||
<taxRule iso_code_country="bg" id_tax="2" />
|
||||
<taxRule iso_code_country="cz" id_tax="2" />
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0"?>
|
||||
<localizationPack name="TN">
|
||||
<localizationPack name="Tunisia">
|
||||
<currencies>
|
||||
<currency name="Tunisian Dinar" iso_code="TND" iso_code_num="788" sign="DT" blank="0" conversion_rate="1.000000" format="2" decimals="1"/>
|
||||
</currencies>
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="background-color: {color}; color: #fff; font-size: 12px; font-weight: bold; padding: 0.5em 1em;" align="left">A new command has been generated to you.</td>
|
||||
<td style="background-color: {color}; color: #fff; font-size: 12px; font-weight: bold; padding: 0.5em 1em;" align="left">A new order has been generated to you.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
Hi {firstname} {lastname},
|
||||
|
||||
A new command has been generated to you.
|
||||
A new order has been generated to you.
|
||||
|
||||
Go on {order_link} to finalize the payment.
|
||||
|
||||
|
||||
@@ -53,6 +53,7 @@ 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);
|
||||
}
|
||||
|
||||
@@ -80,7 +81,6 @@ public function hookDisplayMobileHeader($params)
|
||||
|
||||
public function hookRightColumn($params)
|
||||
{
|
||||
|
||||
if (Tools::getValue('search_query') || !$this->isCached('blocksearch.tpl', $this->getCacheId()))
|
||||
{
|
||||
$this->calculHookCommon($params);
|
||||
@@ -95,7 +95,8 @@ public function hookDisplayMobileHeader($params)
|
||||
|
||||
public function hookTop($params)
|
||||
{
|
||||
if (Tools::getValue('search_query') || !$this->isCached('blocksearch-top.tpl', $this->getCacheId('blocksearch-top')))
|
||||
$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))
|
||||
{
|
||||
$this->calculHookCommon($params);
|
||||
$this->smarty->assign(array(
|
||||
@@ -105,8 +106,7 @@ public function hookDisplayMobileHeader($params)
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
return $this->display(__FILE__, 'blocksearch-top.tpl', Tools::getValue('search_query') ? null : $this->getCacheId('blocksearch-top'));
|
||||
return $this->display(__FILE__, 'blocksearch-top.tpl', Tools::getValue('search_query') ? null : $key);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -120,7 +120,7 @@ class HomeFeatured extends Module
|
||||
{
|
||||
$category = new Category(Context::getContext()->shop->getCategory(), (int)Context::getContext()->language->id);
|
||||
$nb = (int)Configuration::get('HOME_FEATURED_NBR');
|
||||
$products = $category->getProducts((int)Context::getContext()->language->id, 1, ($nb ? $nb : 8));
|
||||
$products = $category->getProducts((int)Context::getContext()->language->id, 1, ($nb ? $nb : 8), "position");
|
||||
|
||||
$this->smarty->assign(array(
|
||||
'products' => $products,
|
||||
|
||||
@@ -318,7 +318,7 @@ class MailAlerts extends Module
|
||||
$customization_text .= '---<br />';
|
||||
}
|
||||
|
||||
$customization_text = rtrim($customization_text, '---<br />');
|
||||
$customization_text = Tools::rtrimString($customization_text, '---<br />');
|
||||
}
|
||||
|
||||
$items_table .=
|
||||
|
||||
@@ -680,11 +680,14 @@ 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'))))
|
||||
));
|
||||
|
||||
|
||||
@@ -474,6 +474,7 @@ class PSCleaner extends Module
|
||||
'stock',
|
||||
'stock_available',
|
||||
'stock_mvt',
|
||||
'tag',
|
||||
);
|
||||
foreach ($tables as $table)
|
||||
$db->execute('TRUNCATE TABLE `'._DB_PREFIX_.bqSQL($table).'`');
|
||||
|
||||
@@ -93,6 +93,8 @@ 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;
|
||||
|
||||
|
||||
@@ -89,14 +89,18 @@ $(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>
|
||||
<p class="required text dni">
|
||||
<label for="dni">{l s='Identification number'} <sup>*</sup></label>
|
||||
{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>
|
||||
<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>
|
||||
{assign var="stateExist" value=false}
|
||||
{assign var="postCodeExist" value=false}
|
||||
{foreach from=$ordered_adr_fields item=field_name}
|
||||
{/if}
|
||||
{if $field_name eq 'company'}
|
||||
<p class="text">
|
||||
<label for="company">{l s='Company'}</label>
|
||||
@@ -210,6 +214,13 @@ $(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>
|
||||
|
||||
@@ -90,6 +90,7 @@ $(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}
|
||||
@@ -315,7 +316,9 @@ $(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>
|
||||
<p class="required text dni">
|
||||
{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($smarty.post.dni)}{$smarty.post.dni}{/if}" />
|
||||
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
|
||||
@@ -359,6 +362,12 @@ $(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>
|
||||
@@ -367,11 +376,12 @@ $(document).ready(function() {
|
||||
</select>
|
||||
</p>
|
||||
{/if}
|
||||
{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 $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}
|
||||
<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>
|
||||
@@ -386,6 +396,7 @@ $(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}
|
||||
@@ -400,8 +411,10 @@ $(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>
|
||||
<p class="required text dni_invoice">
|
||||
<label for="dni">{l s='Identification number'}</label>
|
||||
{elseif $field_name eq "dni"}
|
||||
{assign var=dniExist value=true}
|
||||
<p class="text">
|
||||
<label for="dni_invoice">{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>
|
||||
@@ -465,6 +478,13 @@ $(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}" />
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
* { direction: rtl !important; }
|
||||
body { direction: rtl !important; }
|
||||
#page { text-align: right !important; }
|
||||
@@ -1,61 +0,0 @@
|
||||
{*
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*}
|
||||
|
||||
<!-- MODULE Block specials -->
|
||||
<div id="special_block_right" class="block products_block exclusive blockspecials">
|
||||
<p class="title_block"><a href="{$link->getPageLink('prices-drop')|escape:'html'}" title="{l s='Specials' mod='blockspecials'}">{l s='Specials' mod='blockspecials'}</a></p>
|
||||
<div class="block_content">
|
||||
|
||||
{if $special}
|
||||
<ul class="products clearfix">
|
||||
<li class="product_image">
|
||||
<a href="{$special.link|escape:'html'}"><img src="{$link->getImageLink($special.link_rewrite, $special.id_image, 'medium_default')|escape:'html'}" alt="{$special.legend|escape:html:'UTF-8'}" height="{$mediumSize.height}" width="{$mediumSize.width}" title="{$special.name|escape:html:'UTF-8'}" /></a>
|
||||
</li>
|
||||
<li>
|
||||
{if !$PS_CATALOG_MODE}
|
||||
{if $special.specific_prices}
|
||||
{assign var='specific_prices' value=$special.specific_prices}
|
||||
{if $specific_prices.reduction_type == 'percentage' && ($specific_prices.from == $specific_prices.to OR ($smarty.now|date_format:'%Y-%m-%d %H:%M:%S' <= $specific_prices.to && $smarty.now|date_format:'%Y-%m-%d %H:%M:%S' >= $specific_prices.from))}
|
||||
<span class="reduction"><span>-{$specific_prices.reduction*100|floatval}%</span></span>
|
||||
{/if}
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
<p class="s_title_block"><a href="{$special.link|escape:'html'}" title="{$special.name|escape:html:'UTF-8'}">{$special.name|escape:html:'UTF-8'}</a></p>
|
||||
{if !$PS_CATALOG_MODE}
|
||||
<span class="price-discount">{if !$priceDisplay}{displayWtPrice p=$special.price_without_reduction}{else}{displayWtPrice p=$priceWithoutReduction_tax_excl}{/if}</span>
|
||||
<span class="price">{if !$priceDisplay}{displayWtPrice p=$special.price}{else}{displayWtPrice p=$special.price_tax_exc}{/if}</span>
|
||||
{/if}
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
<a href="{$link->getPageLink('prices-drop')|escape:'html'}" title="{l s='All specials' mod='blockspecials'}">» {l s='All specials' mod='blockspecials'}</a>
|
||||
</p>
|
||||
{else}
|
||||
<p>{l s='No specials at this time' mod='blockspecials'}</p>
|
||||
{/if}
|
||||
</div>
|
||||
</div>
|
||||
<!-- /MODULE Block specials -->
|
||||
@@ -171,13 +171,14 @@
|
||||
<td>
|
||||
<div class="delivery_option_price">
|
||||
{if $option.total_price_with_tax && (!isset($free_shipping) || (isset($free_shipping) && !$free_shipping))}
|
||||
|
||||
{if $use_taxes == 1}
|
||||
{if $priceDisplay == 1}
|
||||
{convertPrice price=$option.total_price_without_tax} {l s='(tax excl.)'}
|
||||
{else}
|
||||
{convertPrice price=$option.total_price_with_tax} {l s='(tax incl.)'}
|
||||
{/if}
|
||||
{else}
|
||||
{convertPrice price=$option.total_price_without_tax}
|
||||
{/if}
|
||||
{else}
|
||||
{l s='Free'}
|
||||
|
||||
@@ -182,12 +182,27 @@
|
||||
<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="company">{l s='Company'}</label>
|
||||
<input type="text" class="text" id="company" name="company" value="{if isset($guestInformations) && $guestInformations.company}{$guestInformations.company}{/if}" />
|
||||
<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 "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>
|
||||
@@ -228,13 +243,6 @@
|
||||
{/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;">
|
||||
@@ -245,11 +253,6 @@
|
||||
</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>
|
||||
@@ -263,7 +266,14 @@
|
||||
<option value="">-</option>
|
||||
</select>
|
||||
</p>
|
||||
{/if}
|
||||
{/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}
|
||||
<p class="textarea is_customer_param">
|
||||
<label for="other">{l s='Additional information'}</label>
|
||||
<textarea name="other" id="other" cols="26" rows="3"></textarea>
|
||||
@@ -289,6 +299,7 @@
|
||||
<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}
|
||||
@@ -303,8 +314,10 @@
|
||||
<input type="text" class="text" id="vat_number_invoice" name="vat_number_invoice" value="" />
|
||||
</p>
|
||||
</div>
|
||||
<p class="required text dni_invoice">
|
||||
<label for="dni">{l s='Identification number'}</label>
|
||||
{elseif $field_name eq "dni"}
|
||||
{assign var='dniExist' value=true}
|
||||
<p class="text">
|
||||
<label for="dni_invoice">{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>
|
||||
@@ -373,6 +386,13 @@
|
||||
</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>
|
||||
|
||||
Reference in New Issue
Block a user