unset($arRawFile); // <-- Attaching files if (empty($arErrors)) { $arUpdateFields = array('ASSOCIATED_ENTITY_ID' => $postingID); $fromEmail = strtolower(trim(CCrmMailHelper::ExtractEmail($from))); if ($crmEmail !== '' && $fromEmail !== $crmEmail) { $arUpdateFields['SETTINGS'] = array('MESSAGE_HEADERS' => array('Reply-To' => "<{$fromEmail}>, <{$crmEmail}>")); } CCrmActivity::Update($ID, $arUpdateFields, false, false); } } // <-- Creating Email if (!empty($arErrors)) { if ($isNew) { $arErrors[] = GetMessage('CRM_ACTIVITY_EMAIL_CREATION_CANCELED'); CCrmActivity::Delete($ID); } echo CUtil::PhpToJSObject(array('ERROR' => $arErrors)); die; } // Sending Email --> if ($posting->ChangeStatus($postingID, 'P')) { $rsAgents = CAgent::GetList(array('ID' => 'DESC'), array('MODULE_ID' => 'subscribe', 'NAME' => 'CPosting::AutoSend(' . $postingID . ',%')); if (!$rsAgents->Fetch()) { CAgent::AddAgent('CPosting::AutoSend(' . $postingID . ',true);', 'subscribe', 'N', 0); } } // Try add event to entity $CCrmEvent = new CCrmEvent(); $eventText = ''; $eventText .= GetMessage('CRM_TITLE_EMAIL_SUBJECT') . ': ' . $subject . "\n\r";
protected function innerDelete($ID, &$errors) { $currentFields = CCrmActivity::GetByID($ID); if (!is_array($currentFields)) { $errors[] = 'Activity is not found.'; return false; } if (!CCrmActivity::CheckDeletePermission($currentFields['OWNER_TYPE_ID'], $currentFields['OWNER_ID'])) { $errors[] = 'Access denied.'; return false; } $result = CCrmActivity::Delete($ID, false, true, array()); if ($result === false) { $errors[] = CCrmActivity::GetLastErrorMessage(); } return $result; }
} $ID = isset($_REQUEST['ENTITY_ID']) ? intval($_REQUEST['ENTITY_ID']) : 0; if ($ID <= 0) { __CrmMobileActivityEditEndResonse(array('ERROR' => GetMessage('CRM_ENTITY_ID_NOT_FOUND'))); } $item = CCrmActivity::GetByID($ID, false); if (!$item) { __CrmMobileActivityEditEndResonse(array('ERROR' => GetMessage('CRM_ACTIVITY_NOT_FOUND', array('#ID#' => $ID)))); } $ownerTypeID = isset($item['OWNER_TYPE_ID']) ? intval($item['OWNER_TYPE_ID']) : 0; $ownerID = isset($item['OWNER_ID']) ? intval($item['OWNER_ID']) : 0; if (!CCrmActivity::CheckUpdatePermission($ownerTypeID, $ownerID)) { __CrmMobileActivityEditEndResonse(array('ERROR' => GetMessage('CRM_ACCESS_DENIED'))); } //$DB->StartTransaction(); $successed = CCrmActivity::Delete($ID); if ($successed) { //$DB->Commit(); __CrmMobileActivityEditEndResonse(array('DELETED_ENTITY_ID' => $ID)); } else { //$DB->Rollback(); __CrmMobileActivityEditEndResonse(array('ERROR' => GetMessage('CRM_ACTIVITY_COULD_NOT_DELETE'))); } } elseif ($action === 'GET_ENTITY') { __IncludeLang(dirname(__FILE__) . '/lang/' . LANGUAGE_ID . '/' . basename(__FILE__)); $typeName = isset($_REQUEST['ENTITY_TYPE_NAME']) ? $_REQUEST['ENTITY_TYPE_NAME'] : ''; if ($typeName !== 'ACTIVITY') { __CrmMobileActivityEditEndResonse(array('ERROR' => GetMessage('CRM_ENTITY_TYPE_NOT_SUPPORTED', array('#ENTITY_TYPE#' => $typeName)))); } $ID = isset($_REQUEST['ENTITY_ID']) ? intval($_REQUEST['ENTITY_ID']) : 0; if ($ID <= 0) {
} $arResult['GRID_FILTER_INFO'] = $arResult['GRID_CONTEXT']['FILTER_INFO']; if ($_SERVER['REQUEST_METHOD'] == 'POST' && $permissionType === 'WRITE' && check_bitrix_sessid() && isset($_POST[$postAction])) { $actionName = $_POST[$postAction]; $forAll = isset($_POST[$postActionForAll]) && $_POST[$postActionForAll] === 'Y'; if ($actionName === 'delete') { $dbResult = null; if ($forAll) { $dbResult = CCrmActivity::GetList(array(), $arFilter, false, false, array('ID', 'OWNER_TYPE_ID', 'OWNER_ID')); } elseif (!empty($arTargetItemID)) { $dbResult = CCrmActivity::GetList(array(), array('@ID' => $arTargetItemID), false, false, array('ID', 'OWNER_TYPE_ID', 'OWNER_ID')); } if (is_object($dbResult)) { while ($arActivity = $dbResult->Fetch()) { if (CCrmActivity::CheckItemDeletePermission($arActivity, $currentUserPermissions)) { CCrmActivity::Delete($arActivity['ID']); } } } } elseif ($actionName === 'edit') { if (isset($_POST['FIELDS']) && is_array($_POST['FIELDS'])) { global $DB; foreach ($_POST['FIELDS'] as $ID => $arSrcData) { //Modification of emails is not allowed $dbActivity = CCrmActivity::GetList(array(), array('=ID' => $ID), false, false, array('TYPE_ID')); $arActivity = $dbActivity ? $dbActivity->Fetch() : null; if (!(is_array($arActivity) && isset($arActivity['TYPE_ID']) && (int) $arActivity['TYPE_ID'] !== CCrmActivityType::Email)) { continue; } if (!CCrmActivity::CheckItemUpdatePermission($arActivity, $currentUserPermissions)) { continue;