...
Code Block |
---|
/*
** Hook update carrier
**
*/
public function hookupdateCarrier($params)
{
// On actualise l'id du carrier 1
if ((int)($params['id_carrier']) == (int)(Configuration::get<br />('MYCARRIER1_CARRIER_ID')))
Configuration::updateValue('MYCARRIER1_CARRIER_ID', (int)
($params['carrier']->id));
// On actualise l'id du carrier 2
if ((int)($params['id_carrier']) == (int)(Configuration::get<br />('MYCARRIER2_CARRIER_ID')))
Configuration::updateValue('MYCARRIER2_CARRIER_ID', (int)
($params['carrier']->id));
}
3) |
Les
...
méthodes
...
front
...
office
Code Block |
---|
/* ** Front Methods ** ** Si vous avez configuré la variable need_range à true lorsque vous avez créé votre ** transporteur dans la méthode install(), la méthode appelée par la classe Cart sera ** getOrderShippingCost() ** Sinon, la méthode appelée sera getOrderShippingCostExternal ** ** La variable $params contient le panier, le client et ses addresses ** La variable $shipping_cost contient les frais calculé par les tranches de prix ** configurés pour le transporteur dans le back-office ** */ public function getOrderShippingCost($params, $shipping_cost) { // Cet exemple retourne les frais de port avec le coût supplémentaire // mais vous pouvez appeler un webservice ou faire le calcul que vous voulez // avant de retourner le frais de port final if ($this->id_carrier == (int)(Configuration::get('MYCARRIER1_CARRIER_ID')) && Configuration::get('MYCARRIER1_OVERCOST') > 1) return (float)(Configuration::get('MYCARRIER1_OVERCOST')); if ($this->id_carrier == (int)(Configuration::get('MYCARRIER2_CARRIER_ID')) && Configuration::get('MYCARRIER2_OVERCOST') > 1) return (float)(Configuration::get('MYCARRIER2_OVERCOST')); // Si le transporteur n'est pas renconnu, il suffit de retourner false // le transporteur n'apparaitra alors pas dans la liste des transporteurs return false; } public function getOrderShippingCostExternal($params) { // Cet exemple retourne le coût supplémentaire // mais vous pouvez appeler un webservice ou faire le calcul que vous voulez // avant de retourner le frais de port final if ($this->id_carrier == (int)(Configuration::get('MYCARRIER1_CARRIER_ID')) && Configuration::get('MYCARRIER1_OVERCOST') > 1) return (float)(Configuration::get('MYCARRIER1_OVERCOST')); if ($this->id_carrier == (int)(Configuration::get('MYCARRIER2_CARRIER_ID')) && Configuration::get('MYCARRIER2_OVERCOST') > 1) return (float)(Configuration::get('MYCARRIER2_OVERCOST')); // Si le transporteur n'est pas renconnu, il suffit de retourner false // le transporteur n'apparaitra alors pas dans la liste des transporteurs return false; } |
...