Beispiel #1
0
 /**
  * Create the lead record and optionally perform post-save actions for Convert Target & Lead from Email cases
  */
 public function createRecord($api, $args)
 {
     //create the lead using the ModuleApi
     $data = parent::createRecord($api, $args);
     $leadId = null;
     if (isset($data['id']) && !empty($data['id'])) {
         $leadId = $data['id'];
     } else {
         //lead not created, can't do post-processes - bail out
         return $data;
     }
     // Handle Lead-Prospect post processing
     if (!empty($args['relate_to']) && $args['relate_to'] === 'Prospects' && !empty($args['relate_id'])) {
         // Save lead_id for display purposes
         $prospectId = $args['relate_id'];
         $prospect = BeanFactory::getBean('Prospects', $prospectId);
         $prospect->lead_id = $leadId;
         $prospect->save();
         // Handle Campaign Log entry creation
         if (!empty($data['campaign_id'])) {
             $lead = BeanFactory::getBean('Leads', $leadId);
             campaign_log_lead_or_contact_entry($data['campaign_id'], $prospect, $lead, 'lead');
         }
     }
     //handle Create Lead from Email use case
     if (isset($args['inbound_email_id']) && !empty($args['inbound_email_id'])) {
         $this->linkLeadToEmail($args['inbound_email_id'], $leadId);
     }
     return $data;
 }
Beispiel #2
0
 /**
  * Create the bug record and optionally perform post-save actions for Portal
  */
 public function createRecord($api, $args)
 {
     //create the bug using the ModuleApi
     $contact = null;
     if (isset($_SESSION['type']) && $_SESSION['type'] == 'support_portal') {
         $contact = BeanFactory::getBean('Contacts', $_SESSION['contact_id'], array('strict_retrieve' => true));
         if (!empty($contact)) {
             $args['assigned_user_id'] = $contact->assigned_user_id;
             $args['team_id'] = $contact->fetched_row['team_id'];
             $args['team_set_id'] = $contact->fetched_row['team_set_id'];
         }
     }
     $data = parent::createRecord($api, $args);
     $bugId = null;
     if (isset($data['id']) && !empty($data['id'])) {
         $bugId = $data['id'];
     } else {
         //bug not created, can't do post-processes - bail out
         return $data;
     }
     if (!empty($bugId) && !empty($contact)) {
         $bug = BeanFactory::getBean('Bugs', $bugId);
         $bug->load_relationship('contacts');
         $bug->contacts->add($contact->id);
         $bug->load_relationship('accounts');
         $bug->accounts->add($contact->account_id);
     }
     return $data;
 }