/** * @param \FACTFinder\Data\Campaign $campaign The campaign object to be * filled. * @param mixed[] $campaignData An associative array corresponding to the * JSON for that campaign. */ private function fillCampaignWithAdvisorData(\FACTFinder\Data\Campaign $campaign, array $campaignData) { $activeQuestions = array(); foreach ($campaignData['activeQuestions'] as $questionData) { $activeQuestions[] = $this->createAdvisorQuestion($questionData); } $campaign->addActiveQuestions($activeQuestions); // Fetch advisor tree if it exists $advisorTree = array(); foreach ($campaignData['activeQuestions'] as $questionData) { $activeQuestions[] = $this->createAdvisorQuestion($questionData, true); } $campaign->addToAdvisorTree($advisorTree); }
/** * @param \FACTFinder\Data\Campaign $campaign The campaign object to be * filled. * @param mixed[] $campaignData An associative array corresponding to the * JSON for that campaign. */ private function fillCampaignWithPushedProducts(\FACTFinder\Data\Campaign $campaign, array $campaignData) { if (!empty($campaignData['pushedProductsRecords'])) { $pushedProducts = array(); foreach ($campaignData['pushedProductsRecords'] as $recordData) { $pushedProducts[] = FF::getInstance('Data\\Record', (string) $recordData['id'], $recordData['record']); } $campaign->addPushedProducts($pushedProducts); } }