amazonData; //ifam $authorizeResult=$authorizeResponse->getAuthorizeResult(); $orderReferenceDetails=$authorizeResult->getOrderReferenceDetails(); if($orderReferenceDetails->isSetOrderReferenceStatus()){ $orderReferenceStatus=$orderReferenceDetails->getOrderReferenceStatus(); if(!$orderReferenceStatus->isSetState()){ returnfalse; } $amazonState=$orderReferenceStatus->getState(); if($orderReferenceStatus->isSetReasonCode()){ $reasonCode=$orderReferenceStatus->getReasonCode(); } } //Inasynchronousmode,OrderReferenceResponseisalwaysPending.Orderstatusisnotupdated if($amazonState=='Pending'){ return$amazonState; } //SYNCHRONOUSMODE:amazonreturnsinrealtimethefinalprocessstatus if($amazonState=='Open'){ //itshouldalwaysbethecaseiftheCaptureNow==false $order_history['order_status']=$this->_currentMethod->status_orderreference; $order_history['comments']=vmText::_('VMPAYMENT_AMAZON_COMMENT_STATUS_AUTHORIZATION_OPEN'); $order_history['customer_notified']=1; }elseif($amazonState=='Closed'){ //itshouldalwaysbethecaseiftheCaptureNow==true if(!($orderReferenceDetails->isSetCaptureNow()and$orderReferenceDetails->getCaptureNow())){ $this->debugLog('SYNCHRONOUS,captureNow,andAmazonStateisNOTCLOSED'.__FUNCTION__.var_export($authorizeResponse,true),'error'); return$amazonState; } $order_history['order_status']=$this->_currentMethod->status_capture; $order_history['comments']=vmText::_('VMPAYMENT_AMAZON_COMMENT_STATUS_CAPTURED'); $order_history['customer_notified']=1; }elseif($amazonState=='Declined'){ //handlingDeclinedOrderReferences $order_history['order_status']=$this->_currentMethod->status_cancel; $order_history['comments']=$reasonCode; if($orderReferenceStatus->isSetReasonDescription()){ $order_history['comments'].="".$orderReferenceStatus->getReasonDescription(); } $order_history['customer_notified']=0; } $order_history['amazonState']=$amazonState; $modelOrder=VmModel::getModel('orders'); $modelOrder->updateStatusForOneOrder($order['details']['BT']->virtuemart_order_id,$order_history,TRUE); return$amazonState; */ } public function getStoreInternalData () { $amazonInternalData = newstdClass(); if ($this->amazonData->isSetGetOrderReferenceDetailsResult()) { $getOrderReferenceDetailsResult = $this->amazonData->getGetOrderReferenceDetailsResult(); if ($getOrderReferenceDetailsResult->isSetOrderReferenceDetails()) { $orderReferenceDetails = $getOrderReferenceDetailsResult->getOrderReferenceDetails(); if ($orderReferenceDetails->isSetOrderReferenceStatus()) { $orderReferenceStatus = $orderReferenceDetails->getOrderReferenceStatus(); if ($orderReferenceStatus->isSetState()) { $amazonInternalData->amazon_response_state = $orderReferenceStatus->getState(); } if ($orderReferenceStatus->isSetReasonCode()) { $amazonInternalData->amazon_response_reasonCode = $orderReferenceStatus->getReasonCode(); } if ($orderReferenceStatus->isSetReasonDescription()) { $amazonInternalData->amazon_response_reasonDescription = $orderReferenceStatus->getReasonDescription(); } if ($orderReferenceDetails->isSetAmazonOrderReferenceId()) { $amazonInternalData->amazon_response_amazonOrderReferenceId = $orderReferenceDetails->getAmazonOrderReferenceId(); } } } return $amazonInternalData; } } function getContents () { $contents = $this->tableStart("GetOrderReferenceDetailsResponse"); if ($this->amazonData->isSetGetOrderReferenceDetailsResult()) { $getOrderReferenceDetailsResult = $this->amazonData->getGetOrderReferenceDetailsResult(); if ($getOrderReferenceDetailsResult->isSetOrderReferenceDetails()) { $contents .= $this->getRowFirstCol("GetOrderReferenceDetailsResult"); $orderReferenceDetails = $getOrderReferenceDetailsResult->getOrderReferenceDetails(); $orderReferenceDetails = $orderReferenceDetails->getOrderReferenceDetails(); if ($orderReferenceDetails->isSetAmazonOrderReferenceId()) { $contents .= $this->getRow("AmazonOrderReferenceId:", $orderReferenceDetails->getAmazonOrderReferenceId()); } if ($orderReferenceDetails->isSetOrderReferenceReferenceId()) { $contents .= $this->getRow("OrderReferenceReferenceId:", $orderReferenceDetails->getOrderReferenceReferenceId()); } if ($orderReferenceDetails->isSetBuyer()) { $more = ''; $buyer = $orderReferenceDetails->getBuyer(); if ($buyer->isSetName()) { $more .= "Name:" . $buyer->getName() . "
"; } if ($buyer->isSetEmail()) { $more .= "Email:" . $buyer->getEmail() . "
"; } if ($buyer->isSetPhone()) { $more .= "Phone:" . $buyer->getPhone() . "
"; } $contents .= $this->getRow("Buyer:", $more); } if ($orderReferenceDetails->isSetOrderTotal()) { $more = ""; $orderTotal = $orderReferenceDetails->getOrderTotal(); if ($orderTotal->isSetCurrencyCode()) { $more .= "CurrencyCode:" . $orderTotal->getCurrencyCode() . "
"; } if ($orderTotal->isSetAmount()) { $more .= "Amount:" . $orderTotal->getAmount() . "
"; } $contents .= $this->getRow("OrderTotal:", $more); } if ($orderReferenceDetails->isSetSellerNote()) { $contents .= $this->getRow("SellerNote:", $orderReferenceDetails->getSellerNote()); } if ($orderReferenceDetails->isSetDestination()) { $more = ''; $destination = $orderReferenceDetails->getDestination(); if ($destination->isSetDestinationType()) { $more .= "DestinationType:" . $destination->getDestinationType() . "
"; } if ($destination->isSetPhysicalDestination()) { $contents .= "PhysicalDestination" . "
"; $physicalDestination = $destination->getPhysicalDestination(); if ($physicalDestination->isSetName()) { $more .= "Name:" . $physicalDestination->getName() . "
"; } if ($physicalDestination->isSetAddressLine1()) { $more .= "AddressLine1:" . $physicalDestination->getAddressLine1() . "
"; } if ($physicalDestination->isSetAddressLine2()) { $more .= "AddressLine2:" . $physicalDestination->getAddressLine2() . "
"; } if ($physicalDestination->isSetAddressLine3()) { $more .= "AddressLine3:" . $physicalDestination->getAddressLine3() . "
"; } if ($physicalDestination->isSetCity()) { $more .= "City:" . $physicalDestination->getCity() . "
"; } if ($physicalDestination->isSetCounty()) { $more .= "County:" . $physicalDestination->getCounty() . "
"; } if ($physicalDestination->isSetDistrict()) { $more .= "District:" . $physicalDestination->getDistrict() . "
"; } if ($physicalDestination->isSetStateOrRegion()) { $more .= "StateOrRegion:" . $physicalDestination->getStateOrRegion() . "
"; } if ($physicalDestination->isSetPostalCode()) { $more .= "PostalCode:" . $physicalDestination->getPostalCode() . "
"; } if ($physicalDestination->isSetCountryCode()) { $more .= "CountryCode:" . $physicalDestination->getCountryCode() . "
"; } if ($physicalDestination->isSetPhone()) { $more .= "Phone:" . $physicalDestination->getPhone() . "
"; } $contents .= $this->getRow("PhysicalDestination:", $more); } } if ($orderReferenceDetails->isSetReleaseEnvironment()) { $contents .= $this->getRow("ReleaseEnvironment:", $orderReferenceDetails->getReleaseEnvironment()); } if ($orderReferenceDetails->isSetIdList()) { $more = ''; $idList = $orderReferenceDetails->getIdList(); $memberList = $idList->getmember(); foreach ($memberList as $member) { $more .= "
member:" . $member; } $contents .= $this->getRow("IdList:", $more); } if ($orderReferenceDetails->isSetSellerOrderAttributes()) { $more = ''; $sellerOrderAttributes = $orderReferenceDetails->getSellerOrderAttributes(); if ($sellerOrderAttributes->isSetSellerOrderId()) { $more .= "SellerOrderId:" . $sellerOrderAttributes->getSellerOrderId() . "
"; } if ($sellerOrderAttributes->isSetStoreName()) { $more .= "StoreName:" . $sellerOrderAttributes->getStoreName() . "
"; } if ($sellerOrderAttributes->isSetOrderItemCategories()) { $more .= "OrderItemCategories" . "
"; $orderItemCategories = $sellerOrderAttributes->getOrderItemCategories(); $orderItemCategoryList = $orderItemCategories->getOrderItemCategory(); foreach ($orderItemCategoryList as $orderItemCategory) { $more .= "OrderItemCategory:" . $orderItemCategory; } } if ($sellerOrderAttributes->isSetCustomInformation()) { $more .= "CustomInformation:" . $sellerOrderAttributes->getCustomInformation() . "
"; } $contents .= $this->getRow("SellerOrderAttributes:", $more); } if ($orderReferenceDetails->isSetConstraints()) { $more = ''; $constraints = $orderReferenceDetails->getConstraints(); $constraintList = $constraints->getConstraint(); foreach ($constraintList as $constraint) { $more .= "Constraint" . "
"; if ($constraint->isSetConstraintID()) { $more .= "ConstraintID:" . $constraint->getConstraintID() . "
"; } if ($constraint->isSetDescription()) { $more .= "Description:" . $constraint->getDescription() . "
"; } } $contents .= $this->getRow("Constraints:", $more); } if ($orderReferenceDetails->isSetCreationTimestamp()) { $contents .= $this->getRow("CreationTimestamp:", $orderReferenceDetails->getCreationTimestamp()); } if ($orderReferenceDetails->isSetExpirationTimestamp()) { $contents .= $this->getRow("ExpirationTimestamp:", $orderReferenceDetails->getExpirationTimestamp()); } if ($orderReferenceDetails->isSetOrderReferenceStatus()) { $more = ''; $orderReferenceStatus = $orderReferenceDetails->getOrderReferenceStatus(); if ($orderReferenceStatus->isSetState()) { $more .= "
State:" . $orderReferenceStatus->getState(); } if ($orderReferenceStatus->isSetLastUpdateTimestamp()) { $more .= "
LastUpdateTimestamp:" . $orderReferenceStatus->getLastUpdateTimestamp(); } if ($orderReferenceStatus->isSetReasonCode()) { $more .= "
ReasonCode:" . $orderReferenceStatus->getReasonCode(); } if ($orderReferenceStatus->isSetReasonDescription()) { $more .= "
ReasonDescription:" . $orderReferenceStatus->getReasonDescription(); } $contents .= $this->getRow("OrderReferenceStatus:", $more); } if ($orderReferenceDetails->isSetParentDetails()) { $more = ''; $parentDetails = $orderReferenceDetails->getParentDetails(); if ($parentDetails->isSetId()) { $more .= "Id:" . $parentDetails->getId() . "
"; } if ($parentDetails->isSetType()) { $more .= "Type:" . $parentDetails->getType() . "
"; } $contents .= $this->getRow("ParentDetails:", $more); } } } /* if ($this->amazonData->isSetResponseMetadata()) { $contents .= $this->getRowFirstCol("ResponseMetadata"); $responseMetadata = $this->amazonData->getResponseMetadata(); if ($responseMetadata->isSetRequestId()) { $contents .= $this->getRow("RequestId:", $responseMetadata->getRequestId()); } } $contents .= $this->getRowFirstCol("ResponseHeaderMetadata" . $this->amazonData->getResponseHeaderMetadata()); */ $contents .= $this->tableEnd(); return $contents; } }