Example #1
0
if ($_REQUEST['add_comment']) {
    $_REQUEST['commment'] = strip_tags($_REQUEST['commment']);
    if (!$_REQUEST['comment']) {
        ToolTip::AddError('Не введён комментарий');
    } else {
        foreach ($_FILES['attach'] as $code => $values) {
            foreach ($values as $key => $value) {
                if ($_FILES['attach']["tmp_name"][$key]) {
                    $arFiles[$key][$code] = $value;
                }
            }
        }
        $el = new CIBlockElement();
        if ($commentId = $el->Add(array("MODIFIED_BY" => $USER->GetID(), "IBLOCK_SECTION_ID" => false, "IBLOCK_ID" => COMMENTS_IBLOCK_ID, "DATE_ACTIVE_FROM" => ConvertTimeStamp(false, 'FULL'), "PROPERTY_VALUES" => array('TASK' => $arParams['ID'], 'FILES' => $arFiles), "NAME" => TruncateText(strip_tags($_REQUEST['comment']), 100), "ACTIVE" => "Y", "PREVIEW_TEXT" => TruncateText($_REQUEST['comment'], COMMENT_MAX_LENGHT)))) {
            crmEntitiesHelper::recalcCommentsCnt($arParams['ID']);
            $logger->add(array($arResult['TASK']['PROPS']['CUSTOMER']['VALUE'], $arResult['TASK']['PROPS']['PROGRAMMER']['VALUE']), $arParams['ID'], 'comment', $_REQUEST['comment']);
            crmEntitiesHelper::RecalcLastCommentDateTime($arParams['ID']);
            LocalRedirect(TASKS_LIST_URL . $arParams['PROJECT'] . '/' . $arParams['ID'] . '/#comment' . $commentId);
        } else {
            ToolTip::AddError($el->LAST_ERROR);
        }
    }
}
$created_by = array($arResult['TASK']['CREATED_BY']);
$res = CIBlockElement::GetList(array("DATE_ACTIVE_FROM" => "ASC"), array("PROPERTY_TASK" => $arParams['ID'], "IBLOCK_ID" => COMMENTS_IBLOCK_ID, "ACTIVE" => "Y"), false, false, array('DATE_ACTIVE_FROM', 'PREVIEW_TEXT', 'CREATED_BY', 'ID', 'IBLOCK_ID', 'DATE_CREATE', 'PROPERTY_STATUS', 'PROPERTY_CALC'));
while ($obComment = $res->GetNextElement()) {
    $ar_fields = $obComment->GetFields();
    $created_by[] = $ar_fields['CREATED_BY'];
    $ar_fields['STATUS'] = $ar_fields["PROPERTY_STATUS_ENUM_ID"];
    $arComments[$ar_fields['ID']] = $ar_fields['STATUS'];
    $files = $obComment->GetProperty('FILES');
Example #2
0
    $description = trim($_REQUEST['description']);
    foreach ($_FILES['attach'] as $code => $values) {
        foreach ($values as $key => $value) {
            if ($_FILES['attach']["tmp_name"][$key]) {
                $arFiles[$key][$code] = $value;
            }
        }
    }
    $priority = validatePriority($_REQUEST['priority']);
    $programmer = $_REQUEST['PROGRAMMER'];
    $customer = $_REQUEST['CUSTOMER'] ? $_REQUEST['CUSTOMER'] : CUser::GetID();
    $arProjectArray = array("PROPERTY_VALUES" => array('PROGRAMMER' => $programmer, 'PROJECT' => $arParams["PROJECT"], 'FILES' => $arFiles, 'PRIORITY' => $priority, 'CUSTOMER' => $customer), "MODIFIED_BY" => $USER->GetID(), "IBLOCK_SECTION_ID" => false, "IBLOCK_ID" => TASKS_IBLOCK_ID, "NAME" => $name, "DETAIL_TEXT" => $description);
    if ($newTaskId = $el->Add($arProjectArray)) {
        ToolTip::Add('Задача "' . $name . '" добавлена');
        $logger = new CrmLog('task');
        $logger->add(array($programmer, $customer), $newTaskId, 'add', $description);
        LocalRedirect(TASKS_LIST_URL . $arParams["PROJECT"] . '/');
    } else {
        $arResult['ERROR'] = $el->LAST_ERROR;
    }
}
$arSelect = array("ID", "IBLOCK_ID", "NAME", "DETAIL_PAGE_URL", "PROPERTY_*");
$arFilter = array("IBLOCK_ID" => PROJECTS_IBLOCK_ID, 'ID' => $arParams["PROJECT"]);
$userFilter = $USER->GetViewProjectsFilter();
$arFilter = array_merge($userFilter, $arFilter);
$res = CIBlockElement::GetList(array(), $arFilter, false, false, $arSelect);
if ($ob = $res->GetNextElement()) {
    $arFields = $ob->GetFields();
    $arProps = $ob->GetProperties();
    if ($arProps['PROGRAMMER']['VALUE']) {
        $arResult['PROJECT_USERS'] = $arProps['PROGRAMMER']['VALUE'];