protected function getApplicationData(SubmissionEntity $submission)
 {
     $applicationData = new ApplicationData();
     $AppReferrer = $submission->getLead()->getReferrer();
     $DisplayFields = $this->getDisplayFields($submission);
     $applicationData->setAppReferrer($AppReferrer);
     $applicationData->setDisplayFields($DisplayFields);
     return $applicationData;
 }
예제 #2
0
 public function getFields(SubmissionEntity $submission, $structure = 'flat')
 {
     $result = array();
     $lead = $submission->getLead()->getArrayCopy();
     $form = $submission->getForm()->getArrayCopy();
     $detail = $submission->getDetail()->getArrayCopy();
     unset($lead['array_copy']);
     unset($form['array_copy']);
     unset($detail['array_copy']);
     if ($structure == 'flat') {
         foreach ($lead as $name => $value) {
             $result[] = "lead[" . $name . "]";
         }
         foreach ($form as $name => $value) {
             $result[] = "form[" . $name . "]";
         }
         foreach ($detail as $name => $value) {
             $result[] = "detail[" . $name . "]";
         }
     } else {
         $result['lead'] = array_keys($lead);
         $result['form'] = array_keys($form);
         $result['detail'] = array_keys($detail);
     }
     return $result;
 }
예제 #3
0
 private function update(SubmissionEntity $submission, $where = null)
 {
     $lead = $submission->getLead();
     $leadid = $lead->getId();
     $formData = $this->hydrators['form']->extractFromSubmission($submission);
     $formEntity = $this->findForm($submission->getLead(), 'object');
     // Form Entity
     if ($formEntity) {
         // Form already exists for this lead
         // No need to create one... but set Form ID
         $formid = $formEntity->getId();
         $lead = $lead->setFormid($formid);
     } else {
         // Insert new Form
         $submission->setForm($submission->getForm()->setId(null));
         $submission->setForm($submission->getForm()->setForm($lead->getFormname()));
         $submission->setForm($submission->getForm()->setCompanyid($lead->getCompanyid()));
         $submission->setForm($submission->getForm()->setCompany($lead->getCompany()));
         $formData = $this->hydrators['form']->extractFromSubmission($submission);
         $this->tableGateways['form']->insert($formData);
         // getting last inserted id
         $formid = $this->tableGateways['form']->lastinsertvalue;
         // set last inserted id as lead.formid
         $lead = $lead->setFormid($formid);
     }
     // Lead Entity
     $leadData = $this->hydrators['lead']->extract($lead);
     $this->tableGateways['lead']->update($leadData, $where);
     return $leadid;
 }