function _0_created_Email($user_id, $mail_detail, $folder, $return) { $folder_group = OSSMailScanner_Record_Model::getConfigFolderList($folder); $adb = PearDatabase::getInstance(); $result_user_id = $adb->pquery("SELECT crm_user_id FROM roundcube_users where user_id = ? ", [$user_id]); $assigned_user_id = $adb->query_result($result_user_id, 0, 'crm_user_id'); $result = $adb->pquery("SELECT ossmailviewid FROM vtiger_ossmailview where uid = ? AND rc_user = ? ", [$mail_detail['message_id'], $user_id]); if ($adb->num_rows($result) == 0 && $mail_detail['message_id'] != '') { $OSSMailViewInstance = CRMEntity::getInstance('OSSMailView'); $OSSMailViewInstance->column_fields['assigned_user_id'] = $assigned_user_id; $OSSMailViewInstance->column_fields['subject'] = $mail_detail['subject']; $OSSMailViewInstance->column_fields['to_email'] = $mail_detail['toaddress']; $OSSMailViewInstance->column_fields['from_email'] = $mail_detail['fromaddress']; $OSSMailViewInstance->column_fields['reply_to_email'] = $mail_detail['reply_toaddress']; $OSSMailViewInstance->column_fields['ossmailview_sendtype'] = OSSMailScanner_Record_Model::getTypeEmail($mail_detail, true); $OSSMailViewInstance->column_fields['content'] = $mail_detail['body']; $OSSMailViewInstance->column_fields['orginal_mail'] = $mail_detail['clean']; $OSSMailViewInstance->column_fields['cc_email'] = $mail_detail['ccaddress']; $OSSMailViewInstance->column_fields['bcc_email'] = $mail_detail['bccaddress']; $OSSMailViewInstance->column_fields['fromaddress'] = $mail_detail['from']; $OSSMailViewInstance->column_fields['uid'] = $mail_detail['message_id']; $OSSMailViewInstance->column_fields['id'] = $mail_detail['id']; $OSSMailViewInstance->column_fields['mbox'] = $folder; $OSSMailViewInstance->column_fields['type'] = OSSMailScanner_Record_Model::getTypeEmail($mail_detail); $OSSMailViewInstance->column_fields['rc_user'] = $user_id; $OSSMailViewInstance->column_fields['from_id'] = OSSMailScanner_Record_Model::findEmail($mail_detail['fromaddress'], false, false); if ($mail_detail['toaddress']) { $adress = $mail_detail['toaddress']; } if ($mail_detail['ccaddress']) { if ($adress != '') { $adress .= ','; } $adress .= $mail_detail['ccaddress']; } if ($mail_detail['bccaddress']) { if ($adress != '') { $adress .= ','; } $adress .= $mail_detail['bccaddress']; } $OSSMailViewInstance->column_fields['to_id'] = OSSMailScanner_Record_Model::findEmail($adress, false, false); if (count($mail_detail['attachments']) > 0) { $OSSMailViewInstance->column_fields['attachments_exist'] = 1; } $OSSMailViewInstance->save('OSSMailView'); $id = $OSSMailViewInstance->id; $DocumentsIDs = OSSMail_Record_Model::_SaveAttachements($mail_detail['attachments'], $assigned_user_id, $mail_detail['udate_formated'], $id); $adb->pquery('UPDATE vtiger_crmentity SET smcreatorid = ?,modifiedby = ? WHERE crmid = ? ', array($assigned_user_id, $assigned_user_id, $id)); $adb->pquery('UPDATE vtiger_ossmailview SET date = ? WHERE ossmailviewid = ?;', array($mail_detail['udate_formated'], $id)); } return ['created_Email' => $id]; }
function _0_created_Email($user_id, $mailDetail, $folder, $return) { $type = OSSMailScanner_Record_Model::getTypeEmail($mailDetail); $folder_group = OSSMailScanner_Record_Model::getConfigFolderList($folder); $exceptionsAll = OSSMailScanner_Record_Model::getConfig('exceptions'); $adb = PearDatabase::getInstance(); $result_user_id = $adb->pquery('SELECT crm_user_id FROM roundcube_users where user_id = ? ', [$user_id]); $assigned_user_id = $adb->query_result($result_user_id, 0, 'crm_user_id'); $result = $adb->pquery('SELECT ossmailviewid FROM vtiger_ossmailview where uid = ? AND rc_user = ? ', [$mailDetail['message_id'], $user_id]); if ($type == 0) { $mailForExceptions = $mailDetail['toaddress']; } else { $mailForExceptions = $mailDetail['fromaddress']; } if (!empty($exceptionsAll['crating_mails'])) { $exceptions = explode(',', $exceptionsAll['crating_mails']); foreach ($exceptions as $exception) { if (strpos($mailForExceptions, $exception) !== FALSE) { return ['created_Email' => '']; } } } if ($adb->num_rows($result) == 0 && $mailDetail['message_id'] != '') { $OSSMailViewInstance = CRMEntity::getInstance('OSSMailView'); $OSSMailViewInstance->column_fields['assigned_user_id'] = $assigned_user_id; $OSSMailViewInstance->column_fields['subject'] = $mailDetail['subject']; $OSSMailViewInstance->column_fields['to_email'] = $mailDetail['toaddress']; $OSSMailViewInstance->column_fields['from_email'] = $mailDetail['fromaddress']; $OSSMailViewInstance->column_fields['reply_to_email'] = $mailDetail['reply_toaddress']; $OSSMailViewInstance->column_fields['ossmailview_sendtype'] = OSSMailScanner_Record_Model::getTypeEmail($mailDetail, true); $OSSMailViewInstance->column_fields['content'] = $mailDetail['body']; $OSSMailViewInstance->column_fields['orginal_mail'] = $mailDetail['clean']; $OSSMailViewInstance->column_fields['cc_email'] = $mailDetail['ccaddress']; $OSSMailViewInstance->column_fields['bcc_email'] = $mailDetail['bccaddress']; $OSSMailViewInstance->column_fields['fromaddress'] = $mailDetail['from']; $OSSMailViewInstance->column_fields['uid'] = $mailDetail['message_id']; $OSSMailViewInstance->column_fields['id'] = $mailDetail['id']; $OSSMailViewInstance->column_fields['mbox'] = $folder; $OSSMailViewInstance->column_fields['type'] = $type; $OSSMailViewInstance->column_fields['rc_user'] = $user_id; $adress = []; if ($mailDetail['fromaddress']) { $adress[] = $mailDetail['fromaddress']; } if ($mailDetail['reply_toaddress']) { $adress[] = $mailDetail['reply_toaddress']; } $OSSMailViewInstance->column_fields['from_id'] = OSSMailScanner_Record_Model::findEmail(implode(',', $adress), false, false); $adress = []; if ($mailDetail['toaddress']) { $adress[] = $mailDetail['toaddress']; } if ($mailDetail['ccaddress']) { $adress[] = $mailDetail['ccaddress']; } if ($mailDetail['bccaddress']) { $adress[] = $mailDetail['bccaddress']; } $OSSMailViewInstance->column_fields['to_id'] = OSSMailScanner_Record_Model::findEmail(implode(',', $adress), false, false); if (count($mailDetail['attachments']) > 0) { $OSSMailViewInstance->column_fields['attachments_exist'] = 1; } $OSSMailViewInstance->save('OSSMailView'); $id = $OSSMailViewInstance->id; $DocumentsIDs = OSSMail_Record_Model::_SaveAttachements($mailDetail['attachments'], $assigned_user_id, $mailDetail['udate_formated'], $id); $adb->pquery('UPDATE vtiger_crmentity SET smcreatorid = ?,modifiedby = ? WHERE crmid = ? ', [$assigned_user_id, $assigned_user_id, $id]); $adb->pquery('UPDATE vtiger_ossmailview SET date = ? WHERE ossmailviewid = ?;', [$mailDetail['udate_formated'], $id]); } return ['created_Email' => $id]; }