/** * @return BusinessCatalyst_Tracker */ public function getInstance() { $tracker = new BusinessCatalyst_Tracker(); $tracker->setTrackerName("BusinessCatalyst"); return $tracker; }
private function processOrder($xmlOrder) { $entityId = (int)$xmlOrder->entityId; $lastDateUpdate = (string)$xmlOrder->lastUpdateDate; if (strtotime($lastDateUpdate) <= strtotime($this->lastDateUpdate)) { Pap_Contexts_Action::getContextInstance()->debug('Processing old entity ID '.$entityId.' skipped.'); return; } Pap_Contexts_Action::getContextInstance()->debug('Processing order; getting visitorid from actual xml: '.$xmlOrder->asXML()); $visitorId = $this->parseVisitorId($xmlOrder->asXML(), Gpf_Settings::get(BusinessCatalyst_Config::PAP_CUSTOM_FIELD_NAME)); if ($visitorId == null || $visitorId == '') { $retrieveCase = new BusinessCatalyst_RetrieveCase(); $visitorId = $retrieveCase->retrieveVisitorId($entityId); Pap_Contexts_Action::getContextInstance()->debug('Processing order; processing visitorid - after laoad entity request: '.$visitorId); } if ($visitorId == null || $visitorId == '') { Pap_Contexts_Action::getContextInstance()->debug('No visitorId found'); return; } Pap_Contexts_Action::getContextInstance()->debug('Processing order; cookie:'. $visitorId.'; entityId:'.(string)$xmlOrder->entityId.' orderId:'.(string)$xmlOrder->orderId.'; totalCost:'.(string)$xmlOrder->totalOrderAmount); Pap_Contexts_Action::getContextInstance()->debug('Processing order; datetime-lastupdate:'.$lastDateUpdate); $tracker = new BusinessCatalyst_Tracker(); $tracker->setTransactionID((string)$xmlOrder->orderId); $tracker->setTotalCost((string)$xmlOrder->totalOrderAmount); $tracker->setCookie($visitorId); $tracker->setDateTime(BusinessCatalyst_Config::getPapDateFormat($lastDateUpdate)); $tracker->process(); $this->lastDateUpdate = $lastDateUpdate; $this->lastProcessedEntityId = $entityId; Pap_Contexts_Action::getContextInstance()->debug('BusinessCatalyst save last update time: '.$this->lastDateUpdate.' and entity id: '.$this->lastProcessedEntityId); Gpf_Settings::set(BusinessCatalyst_Config::BC_LAST_CHECK, $this->lastDateUpdate); Gpf_Settings::set(BusinessCatalyst_Config::BC_LAST_ENTITY_ID, $this->lastProcessedEntityId); }