public function testCreatingObject() { $field = EavField::getNewInstance('Manufacturer'); $field->save(); $manufacturer = Manufacturer::getNewInstance('Dummy Manufacturer'); $manufacturer->save(); $object = EavObject::getInstance($manufacturer); $object->save(); $this->assertEqual($object->manufacturer->get(), $manufacturer); $this->assertEqual($object, EavObject::getInstance($manufacturer)); }
/** * @role login */ public function payOffline() { ActiveRecordModel::beginTransaction(); $method = $this->request->get('id'); if (!OfflineTransactionHandler::isMethodEnabled($method) || !$this->getOfflinePaymentValidator($method)->isValid()) { return new ActionRedirectResponse('checkout', 'pay'); } $order = $this->order; $this->order->setPaymentMethod($method); $response = $this->finalizeOrder(); $transaction = Transaction::getNewOfflineTransactionInstance($order, 0); $transaction->setOfflineHandler($method); $transaction->save(); $eavObject = EavObject::getInstance($transaction); $eavObject->setStringIdentifier($method); $eavObject->save(); $transaction->getSpecification()->loadRequestData($this->request); $transaction->save(); ActiveRecordModel::commit(); return $response; }
/** * Assign an entirely new specification (custom field) container. Usually necessary after cloning, etc. */ public function setSpecification(EavSpecificationManager $specificationInstance) { $this->eavObject->set(null); $this->specificationInstance = $specificationInstance; $this->specificationInstance->setOwner(EavObject::getInstance($this)); }