public function getRecipientEmails() { $recipientsInfo = $this->get('recipients'); if (!empty($recipientsInfo)) { $recipients = array(); $recipientsInfo = Zend_Json::decode($recipientsInfo); foreach ($recipientsInfo as $key => $recipient) { if (strpos($recipient, 'USER') !== false) { $id = explode('::', $recipient); $recipients['Users'][] = $id[1]; } else { if (strpos($recipient, 'GROUP') !== false) { $id = explode('::', $recipient); $recipients['Groups'][] = $id[1]; } else { if (strpos($recipient, 'ROLE') !== false) { $id = explode('::', $recipient); $recipients['Roles'][] = $id[1]; } } } } } $recipientsList = array(); if (!empty($recipients)) { if (!empty($recipients['Users'])) { $recipientsList = array_merge($recipientsList, $recipients['Users']); } if (!empty($recipients['Roles'])) { foreach ($recipients['Roles'] as $roleId) { $roleUsers = getRoleUsers($roleId); foreach ($roleUsers as $userId => $userName) { array_push($recipientsList, $userId); } } } if (!empty($recipients['Groups'])) { require_once 'include/utils/GetGroupUsers.php'; foreach ($recipients['Groups'] as $groupId) { $userGroups = new GetGroupUsers(); $userGroups->getAllUsersInGroup($groupId); $recipientsList = array_merge($recipientsList, $userGroups->group_users); } } } $recipientsList = array_unique($recipientsList); $recipientsEmails = array(); if (!empty($recipientsList) && count($recipientsList) > 0) { foreach ($recipientsList as $userId) { if (!Vtiger_Util_Helper::isUserDeleted($userId)) { $userName = getUserFullName($userId); $userEmail = getUserEmail($userId); if (!in_array($userEmail, $recipientsEmails)) { $recipientsEmails[$userName] = $userEmail; } } } } //Added for specific email address. $specificemails = explode(',', Zend_Json::decode($this->get('specificemails'))); if (!empty($specificemails)) { $recipientsEmails = array_merge($recipientsEmails, $specificemails); } return $recipientsEmails; }