Example #1
0
 public function loadRequestData(Request $request, $removeMissingPrices = true)
 {
     // basic data
     parent::loadRequestData($request);
     if (!$this->isExistingRecord()) {
         $this->save();
     }
     // set manufacturer
     if ($man = $request->get('Manufacturer')) {
         $this->manufacturer->set(!empty($man['name']) ? Manufacturer::getInstanceByName($man['name']) : null);
     }
     $this->getSpecification()->loadRequestData($request);
     // set prices
     $this->loadPricingFromRequest($request, false, $removeMissingPrices);
     $this->loadPricingFromRequest($request, true, $removeMissingPrices);
     if ($quantities = $request->get('quantityPrice')) {
         foreach ($this->getRelatedRecordSet('ProductPrice', new ARSelectFilter()) as $price) {
             $id = $price->currency->get()->getID();
             if (!empty($quantities[$id]['serializedRules'])) {
                 $prices = $quantities[$id]['serializedRules'];
                 ksort($prices);
                 $price->serializedRules->set(serialize($prices));
                 $price->save();
             }
         }
     }
 }
Example #2
0
 public function loadRequestData(Request $request)
 {
     // basic data
     parent::loadRequestData($request);
     if (!$this->isExistingRecord()) {
         $this->save();
     }
     // set manufacturer
     if ($request->isValueSet('manufacturer')) {
         $this->manufacturer->set(Manufacturer::getInstanceByName($request->get('manufacturer')));
     }
     $this->getSpecification()->loadRequestData($request);
     // set prices
     $this->loadPricingFromRequest($request);
     $this->loadPricingFromRequest($request, true);
 }