Esempio n. 1
0
 /**
  * Sets a service as delivery or payment service for an order.
  *
  * @param \Aimeos\MShop\Order\Item\Base\Service\Iface $service Order service item for the given domain
  * @param string $type Service type
  * @return \Aimeos\MShop\Order\Item\Base\Service\Iface Item that was really added to the basket
  */
 public function setService(\Aimeos\MShop\Order\Item\Base\Service\Iface $service, $type)
 {
     $this->checkPrice($service->getPrice());
     $this->notifyListeners('setService.before', $service);
     $service = clone $service;
     $service->setType($type);
     // enforce that the type is the same as the given one
     $service->setId(null);
     // enforce saving as new item
     $this->services[$type] = $service;
     $this->setModified();
     $this->notifyListeners('setService.after', $service);
     return $this->services[$type];
 }