Example #1
0
 /**
  * @param Task[] $tasks
  * @return array
  */
 public function getTasksElement(array $tasks)
 {
     Task::fixArray($tasks);
     $leadsId = [];
     $contactsId = [];
     foreach ($tasks as $task) {
         if ($task->isContact()) {
             $contactsId[] = $task->element_id;
         } else {
             $leadsId[] = $task->element_id;
         }
     }
     $contacts = $this->getApi()->getContacts()->get(['id' => $contactsId]);
     $leads = $this->getApi()->getLeads()->get(['id' => $leadsId]);
     foreach ($tasks as $task) {
         if ($task->isContact()) {
             $task->placeElement($contacts[$task->element_id]);
         } else {
             $task->placeElement($leads[$task->element_id]);
         }
     }
     Contact::fixArray($contacts);
     Lead::fixArray($leads);
     foreach ($contacts as $key => $contact) {
         $leads[$key] = $contact;
     }
     return $leads;
 }