} } if (!$arData["CREATED_BY"]) { $arData["CREATED_BY"] = $USER->GetID(); $arData["CREATED_BY_NAME"] = $USER->GetFirstName(); $arData["CREATED_BY_LAST_NAME"] = $USER->GetLastName(); $arData["CREATED_BY_SECOND_NAME"] = $USER->GetSecondName(); $arData["CREATED_BY_LOGIN"] = $USER->GetLogin(); } // HTML-format must be supported in future, because old tasks' data not converted from HTML to BB if ($arData['DESCRIPTION_IN_BBCODE'] !== 'Y') { if (array_key_exists('DESCRIPTION', $arData)) { $arData['DESCRIPTION'] = CTasksTools::SanitizeHtmlDescriptionIfNeed($arData['DESCRIPTION']); } if (array_key_exists('~DESCRIPTION', $arData)) { $arData['~DESCRIPTION'] = CTasksTools::SanitizeHtmlDescriptionIfNeed($arData['~DESCRIPTION']); } } else { $arData['META:DESCRIPTION_FOR_BBCODE'] = $arData['DESCRIPTION']; $parser = new CTextParser(); $arData['~DESCRIPTION'] = $parser->convertText($arData['META:DESCRIPTION_FOR_BBCODE']); $arData['DESCRIPTION'] = $arData['~DESCRIPTION']; } $arResult["DATA"] = $arData; // base template, if any if (intval($arResult["DATA"]['BASE_TEMPLATE_ID'])) { $baseTemplate = CTaskTemplates::GetList(array(), array("ID" => $arResult["DATA"]['BASE_TEMPLATE_ID']), array(), array('USER_ID' => $USER->getId()), array('*'))->GetNext(); if (is_array($baseTemplate)) { $arResult["DATA"]['BASE_TEMPLATE_DATA'] = $baseTemplate; } else { unset($arResult["DATA"]['BASE_TEMPLATE_ID']);
public function getDescription($format = self::DESCR_FORMAT_HTML) { $rc = null; $format = intval($format); CTaskAssert::assert(in_array($format, array(self::DESCR_FORMAT_RAW, self::DESCR_FORMAT_HTML, self::DESCR_FORMAT_PLAIN_TEXT), true)); $arTask = $this->getData($bSpecialChars = false); $description = $arTask['DESCRIPTION']; if ($format === self::DESCR_FORMAT_RAW) { return $description; } // Now, convert description to HTML if ($arTask['DESCRIPTION_IN_BBCODE'] === 'Y') { $parser = new CTextParser(); $description = str_replace("\t", ' ', $parser->convertText($description)); } else { $description = CTasksTools::SanitizeHtmlDescriptionIfNeed($description); } if ($format === self::DESCR_FORMAT_HTML) { $rc = $description; } elseif ($format === self::DESCR_FORMAT_PLAIN_TEXT) { $rc = strip_tags(str_replace(array('<br>', '<br/>', '<br />'), "\n", $description)); } else { CTaskAssert::log('CTaskItem->getTaskDescription(): unexpected format: ' . $format, CTaskAssert::ELL_ERROR); CTaskAssert::assert(false); } return $rc; }
case CTasks::STATE_DECLINED: $task['META::STATUS_FORMATTED_NAME'] = GetMessage('MB_TASKS_TASKS_LIST_STATUS_DECLINED'); break; default: $task['META::STATUS_FORMATTED_NAME'] = $task['REAL_STATUS']; break; } $task['META::STATUS_FORMATTED_NAME'] .= ' ' . GetMessage('MB_TASKS_TASKS_LIST_STATUS_DATE_PREPOSITION') . ' ' . CTasksTools::FormatDatetimeBeauty($task['STATUS_CHANGED_DATE'], array(), $arParams['DATE_TIME_FORMAT']); $task['META:DEADLINE_FORMATTED'] = ''; if (MakeTimeStamp($task['DEADLINE']) > 86400) { $task['META:DEADLINE_FORMATTED'] = CTasksTools::FormatDatetimeBeauty($task['DEADLINE'], array(), $arParams['DATE_TIME_FORMAT']); } // HTML-format must be supported in future, because old tasks' data not converted from HTML to BB if ($task['DESCRIPTION_IN_BBCODE'] === 'N') { // HTML detected, sanitize if need $task['DESCRIPTION'] = CTasksTools::SanitizeHtmlDescriptionIfNeed($task['DESCRIPTION']); } else { $task['DESCRIPTION'] = $parser->convertText($task['DESCRIPTION']); } // files list will be fetched below $task['FILES'] = array(); } $arResult['TASKS'][$task['ID']] = $task; } $arResult['TASKS_IDS_AS_INTEGERS'] = $arTasksIDs; $arTaskOriginatorsAndResponsibles = array_unique($arTaskOriginatorsAndResponsibles); // Get photos for originators and responsibles $rsUser = CUser::GetList($passByReference1 = 'id', $passByReference2 = 'asc', $passByReference3 = array('ID' => implode('|', $arTaskOriginatorsAndResponsibles))); $arUsersPhotos = array(); while ($arUser = $rsUser->Fetch()) { $arUsersPhotos[$arUser['ID']] = false;