Jump to content

Calcul de frais de port quand le produit dépasse le millier


Recommended Posts

Bonjour,

Lors du calcul du frais de port, dans la classe Carrier.php, on utilise les fonctions getDeliveryPriceByWeight et checkDeliveryPriceByWeight. En attribut de ces fonctions, nous avons $totalWeight, qui est écrit sous sa forme formatée. Ainsi, si le poids dépasse le millier (par exemple 1500 g), $totalWeight est la chaine de caractère 1,500.00. Elle sera formatée en entier 1 dans les calculs.

Aussi, on peut rajouter au début de ces fonctions la ligne suivante :

$totalWeight = str_replace(',','',$totalWeight);


qui supprimera la virgule.

Au passage, un autre bug : l'unité de poids rentrée dans l'administration dans Préférences > Localisation n'est pas repris par le générateur de déclinaison, qui affiche kg. Il faut donc modifier la ligne 191 de la page administration/tabs/AdminAttributeGenerator.php de :

'.$this->l('Weight impact').' (kg)'.'

en :

'.$this->l('Weight impact').' ('.Configuration::get('PS_WEIGHT_UNIT').')'.'



Ces bugs sont valables pour 1.1 et 1.2

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...