protected function getContactData(SubmissionEntity $submission)
 {
     $contactData = new ContactData();
     /*
      * $attributes = array(
      * "PreferredMethod" => "PrimaryPhone",
      * "PreferredTime" => "Any"
      * );
      */
     $InternetEmailAddress = $submission->getDetail()->getEmail();
     $PrimaryPhone = $submission->getDetail()->getPhone();
     // $contactData->setAttributes($attributes);
     $contactData->setInternetEmailAddress($InternetEmailAddress);
     $contactData->setPrimaryPhone($PrimaryPhone);
     return $contactData;
 }
 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;
 }
Esempio n. 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;
 }