示例#1
0
 /**
  * @see parent::save()
  *
  * @param bool $check_notify
  *
  * @return string
  */
 public function save($check_notify = false)
 {
     if (!empty($GLOBALS['resavingRelatedBeans'])) {
         return parent::save($check_notify);
     }
     $this->add_address_streets('billing_address_street');
     $this->add_address_streets('shipping_address_street');
     $ori_in_workflow = empty($this->in_workflow) ? false : true;
     $this->emailAddress->handleLegacySave($this, $this->module_dir);
     $record_id = parent::save($check_notify);
     $override_email = [];
     if (!empty($this->email1_set_in_workflow)) {
         $override_email['emailAddress0'] = $this->email1_set_in_workflow;
     }
     if (!empty($this->email2_set_in_workflow)) {
         $override_email['emailAddress1'] = $this->email2_set_in_workflow;
     }
     if (!isset($this->in_workflow)) {
         $this->in_workflow = false;
     }
     if ($ori_in_workflow === false || !empty($override_email)) {
         $this->emailAddress->saveForBean($this->id, $this->module_dir, $override_email, '', '', '', '', $this->in_workflow);
     }
     return $record_id;
 }
示例#2
0
 /**
  * @see parent::save()
  *
  * @param bool $check_notify
  *
  * @return string
  */
 public function save($check_notify = false)
 {
     //If we are saving due to relationship changes, don't bother trying to update the emails
     if (!empty($GLOBALS['resavingRelatedBeans'])) {
         parent::save($check_notify);
         return $this->id;
     }
     $this->add_address_streets('primary_address_street');
     $this->add_address_streets('alt_address_street');
     $ori_in_workflow = empty($this->in_workflow) ? false : true;
     $this->emailAddress->handleLegacySave($this, $this->module_dir);
     // bug #39188 - store emails state before workflow make any changes
     $this->emailAddress->stash($this->id, $this->module_dir);
     parent::save($check_notify);
     // $this->emailAddress->evaluateWorkflowChanges($this->id, $this->module_dir);
     $override_email = [];
     if (!empty($this->email1_set_in_workflow)) {
         $override_email['emailAddress0'] = $this->email1_set_in_workflow;
     }
     if (!empty($this->email2_set_in_workflow)) {
         $override_email['emailAddress1'] = $this->email2_set_in_workflow;
     }
     if (!isset($this->in_workflow)) {
         $this->in_workflow = false;
     }
     if ($ori_in_workflow === false || !empty($override_email)) {
         $this->emailAddress->saveForBean($this->id, $this->module_dir, $override_email, '', '', '', '', $this->in_workflow);
     }
     return $this->id;
 }