Beispiel #1
0
     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";
Beispiel #2
0
 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;
 }
Beispiel #3
0
    }
    $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) {
Beispiel #4
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;