Esempio n. 1
0
 public function hookUpdateCarrier($params)
 {
     $id_reference = (int) DpdPolandCarrier::getReferenceByIdCarrier((int) $params['id_carrier']);
     $id_carrier = (int) $params['carrier']->id;
     $dpdpoland_carrier = new DpdPolandCarrier();
     $dpdpoland_carrier->id_carrier = (int) $id_carrier;
     $dpdpoland_carrier->id_reference = (int) $id_reference;
     $dpdpoland_carrier->save();
 }
Esempio n. 2
0
 public static function getCarrierByReference($reference)
 {
     if (version_compare(_PS_VERSION_, '1.5', '<')) {
         $id_carrier = (int) DpdPolandCarrier::getIdCarrierByReference($reference);
         $carrier = new Carrier((int) $id_carrier);
     } else {
         $carrier = Carrier::getCarrierByReference((int) $reference);
     }
     return $carrier;
 }
 public static function install()
 {
     $id_carrier = (int) Configuration::get(DpdPolandConfiguration::CARRIER_STANDARD_ID);
     $carrier = self::getCarrierByReference((int) $id_carrier);
     if ($id_carrier && Validate::isLoadedObject($carrier)) {
         if (!$carrier->deleted) {
             return true;
         } else {
             $carrier->deleted = 0;
             return (bool) $carrier->save();
         }
     }
     $carrier_standard = new DpdPolandCarrierStandardService();
     $carrier = new Carrier();
     $carrier->name = $carrier_standard->module_instance->l('DPD domestic shipment - Standard', self::FILENAME);
     $carrier->active = 1;
     $carrier->is_free = 0;
     $carrier->shipping_handling = 1;
     $carrier->shipping_external = 1;
     $carrier->shipping_method = 1;
     $carrier->max_width = 0;
     $carrier->max_height = 0;
     $carrier->max_depth = 0;
     $carrier->max_weight = 0;
     $carrier->grade = 0;
     $carrier->is_module = 1;
     $carrier->need_range = 1;
     $carrier->range_behavior = 1;
     $carrier->external_module_name = $carrier_standard->module_instance->name;
     $carrier->url = _DPDPOLAND_TRACKING_URL_;
     $delay = array();
     foreach (Language::getLanguages(false) as $language) {
         $delay[$language['id_lang']] = $carrier_standard->module_instance->l('DPD domestic shipment - Standard', self::FILENAME);
     }
     $carrier->delay = $delay;
     if (!$carrier->save()) {
         return false;
     }
     $dpdpoland_carrier = new DpdPolandCarrier();
     $dpdpoland_carrier->id_carrier = (int) $carrier->id;
     $dpdpoland_carrier->id_reference = (int) $carrier->id;
     if (!$dpdpoland_carrier->save()) {
         return false;
     }
     if (!copy(_DPDPOLAND_IMG_DIR_ . DpdPolandCarrierStandardService::IMG_DIR . '/' . _DPDPOLAND_STANDARD_ID_ . '.' . DpdPolandCarrierStandardService::IMG_EXTENTION, _PS_SHIP_IMG_DIR_ . '/' . (int) $carrier->id . '.jpg')) {
         return false;
     }
     $range_obj = $carrier->getRangeObject();
     $range_obj->id_carrier = (int) $carrier->id;
     $range_obj->delimiter1 = 0;
     $range_obj->delimiter2 = 1;
     if (!$range_obj->save()) {
         return false;
     }
     if (!self::assignCustomerGroupsForCarrier($carrier)) {
         return false;
     }
     if (!Configuration::updateValue(DpdPolandConfiguration::CARRIER_STANDARD_ID, (int) $carrier->id)) {
         return false;
     }
     return true;
 }