private function getJson($task, $arPaths, $nameTemplate) { ob_start(); tasksRenderJSON($task, 0, $arPaths, false, true, false, $nameTemplate, array()); $jsonString = ob_get_clean(); return $jsonString; }
$columnsOrder = null; if (isset($_POST['columnsOrder'])) { $columnsOrder = array_map('intval', $_POST['columnsOrder']); } if ($columnsOrder !== null) { $params['COLUMNS_IDS'] = $columnsOrder; } $APPLICATION->IncludeComponent('bitrix:tasks.list.items', '.default', $params, null, array("HIDE_ICONS" => "Y")); $html = ob_get_clean(); if (isset($_POST['type']) && ($_POST['type'] === 'json_with_html' || $_POST['type'] === 'json')) { header('Content-Type: text/html; charset=' . LANG_CHARSET); $arAdditionalFields = array(); if ($_POST['type'] === 'json_with_html') { $arAdditionalFields = array('html' => "'" . CUtil::JSEscape($html) . "'"); } tasksRenderJSON($task, 0, $arPaths, true, true, false, $nameTemplate, $arAdditionalFields); } else { header('Content-Type: text/html; charset=' . LANG_CHARSET); echo $html; } } } CMain::FinalActions(); // to make events work on bitrix24 exit; } elseif (isset($_POST['mode'])) { if ($_POST['mode'] === 'resizeColumn') { CTaskAssert::assert(isset($_POST['columnId'], $_POST['columnWidth'], $_POST['columnContextId'])); $loggedInUserId = $USER->getId(); $columnId = (int) $_POST['columnId']; $columnWidth = (int) $_POST['columnWidth'];
$arTaskEscaped[$key][$key2] = htmlspecialcharsbx($value2); } } else { $arTaskEscaped[$key] = htmlspecialcharsbx($value); } } ob_start(); $params = array("PATHS" => $arPathes, "PLAIN" => false, "DEFER" => true, "SITE_ID" => $SITE_ID, "TASK_ADDED" => true, 'IFRAME' => 'N', 'NAME_TEMPLATE' => $nameTemplate, 'DATA_COLLECTION' => array(array("CHILDREN_COUNT" => $childrenCount, "DEPTH" => 0, "UPDATES_COUNT" => 0, "PROJECT_EXPANDED" => true, 'ALLOWED_ACTIONS' => null, "TASK" => $arTaskEscaped))); if ($columnsIds !== null) { $params['COLUMNS_IDS'] = $columnsIds; } $APPLICATION->IncludeComponent('bitrix:tasks.list.items', '.default', $params, null, array("HIDE_ICONS" => "Y")); $html = ob_get_clean(); ob_start(); $arAdditionalFields = array(); tasksRenderJSON($arTask, $childrenCount, $arPathes, $bParent = true, $bGant = false, false, $nameTemplate, $arAdditionalFields); $json = ob_get_clean(); $returnValue = array('tasksRenderListItem' => $html, 'tasksRenderJSON' => $json); $arCurOperationResult = array('returnValue' => $returnValue, 'requestedTaskId' => $taskId); break; case 'CSocNetGroup::GetByID()': CTaskAssert::assert(isset($arAction['groupData'], $arAction['groupData']['ID'])); $groupId = $arAction['groupData']['ID']; CTaskAssert::assertLaxIntegers($groupId); $arGroupData = array('ID' => (int) $groupId, '~ID' => (int) $groupId, 'NAME' => '', '~NAME' => '', 'SUBJECT_NAME' => '', '~SUBJECT_NAME' => '', 'NAME_FORMATTED' => ''); $arGroup = CSocNetGroup::GetByID($groupId, $bCheckPermissions = false); if (is_array($arGroup) && !empty($arGroup)) { $arGroupData = $arGroup; } $arCurOperationResult = array('returnValue' => $arGroupData, 'requestedGroupId' => $groupId); break;
} else { if (is_array($arResult["SUBTASKS"]) && count($arResult["SUBTASKS"])) { ?> iframePopup.onTaskAdded( taskData, null, { multipleTasksAdded : true, firstTask : true, callbackOnAfterAdd : function () { var subTaskData = null; <?php foreach ($arResult["SUBTASKS"] as $subTaskData) { ?> subTaskData = <?php tasksRenderJSON($subTaskData, 0, $arPaths, true, true, true, $arParams["NAME_TEMPLATE"]); ?> iframePopup.onTaskAdded( subTaskData, null, { multipleTasksAdded : true, firstTask : false } ); <?php } ?> } }, null,
$arPaths = array("PATH_TO_TASKS_TASK" => $arParams["PATH_TO_TASKS_TASK"], "PATH_TO_USER_PROFILE" => $arParams["PATH_TO_USER_PROFILE"]); ?> var iframePopup = window.top.BX.TasksIFrameInst; if (iframePopup) { window.top.BX.TasksIFrameInst.onTaskChanged(<?php $bSkipJsMenu = false; $bIsIe = false; $userAgent = strtolower($_SERVER["HTTP_USER_AGENT"]); if (strpos($userAgent, "opera") === false && strpos($userAgent, "msie") !== false) { $bIsIe = true; } if (isset($arResult["IS_IFRAME"]) && $arResult["IS_IFRAME"] === true && $bIsIe) { $bSkipJsMenu = true; } tasksRenderJSON($arResult["TASK"], $arResult["TASK"]["CHILDREN_COUNT"], $arPaths, true, true, true, $arParams["NAME_TEMPLATE"], $arAdditionalFields = array(), $bSkipJsMenu); ?> ); } <?php } ?> }); </script> <div class="sidebar-block task-detail-info"> <b class="r2"></b><b class="r1"></b><b class="r0"></b> <div class="sidebar-block-inner"> <?php if (is_array($arParams['DISPLAY_DATA']) && in_array('CREATOR', $arParams['DISPLAY_DATA'])) {
ganttChart.treeMode = <?php if ($arResult['VIEW_STATE']['SUBMODES']['VIEW_SUBMODE_WITH_SUBTASKS']['SELECTED'] === 'Y') { echo 'true'; } else { echo 'false'; } ?> ; var tasks = [ <?php $i = 0; foreach ($arResult["TASKS"] as $arTask) { $i++; tasksRenderJSON($arTask, $arResult["CHILDREN_COUNT"]["PARENT_" . $arTask["ID"]], $arPaths, false, true, false, $arParams["NAME_TEMPLATE"]); if ($i != sizeof($arResult["TASKS"])) { ?> ,<?php } } ?> ]; for(var i = 0, count = tasks.length; i < count; i++) { __RenewMenuItems(tasks[i]); } ganttChart.addTasksFromJSON(tasks);
if ($task["GROUP_ID"]) { if ( ! isset($arGroups[$task["GROUP_ID"]]) ) { $arGroups[$task["GROUP_ID"]] = CSocNetGroup::GetByID($task["GROUP_ID"]); } $arGroup = $arGroups[$task["GROUP_ID"]]; if ($arGroup) { $task["GROUP_NAME"] = $arGroup["NAME"]; } } */ if ($bIsJSON) { tasksRenderJSON($template, $template['TEMPLATE_CHILDREN_COUNT'], $arPaths, true, false, false, $nameTemplate); if ($i < $iMax) { echo ", "; } } else { $template['ALLOWED_ACTIONS'] = $template['META:ALLOWED_ACTIONS'] = array(); $template['STATUS'] = CTasks::STATE_PENDING; $params = array("PATHS" => $arPaths, "PLAIN" => false, "DEFER" => true, "SITE_ID" => $SITE_ID, "TASK_ADDED" => false, 'IFRAME' => 'N', "NAME_TEMPLATE" => $nameTemplate, "COLUMNS_IDS" => array(CTaskColumnList::COLUMN_TITLE, CTaskColumnList::COLUMN_RESPONSIBLE, CTaskColumnList::COLUMN_ORIGINATOR, CTaskColumnList::SYS_COLUMN_EMPTY), 'DATA_COLLECTION' => array(array("CHILDREN_COUNT" => $template["TEMPLATE_CHILDREN_COUNT"], "DEPTH" => $depth, "UPDATES_COUNT" => 0, "PROJECT_EXPANDED" => true, 'ALLOWED_ACTIONS' => null, "TASK" => $template)), "SYSTEM_COLUMN_IDS" => array(CTaskColumnList::SYS_COLUMN_CHECKBOX), "SHOW_QUICK_INFORMERS" => false, "OPEN_TASK_IN_POPUP" => false, "CUSTOM_ACTIONS_CALLBACK" => 'templatesGetListItemActions'); if ($columnsOrder !== null) { $params['COLUMNS_IDS'] = $columnsOrder; } $APPLICATION->IncludeComponent('bitrix:tasks.list.items', '.default', $params, null, array("HIDE_ICONS" => "Y")); } } if ($bIsJSON) { echo "]";
<script type="text/javascript"<?php echo $defer ? " defer=\"defer\"" : ""; ?> > tasksMenuPopup[<?php echo $task["ID"]; ?> ] = [<?php tasksGetItemMenu($task, $arPaths, $site_id); ?> ]; quickInfoData[<?php echo $task["ID"]; ?> ] = <?php tasksRenderJSON($task, $childrenCount, $arPaths, false, false, false, $nameFormat); ?> ; <?php if ($taskAdded) { ?> BX.onCustomEvent("onTaskListTaskAdd", [quickInfoData[<?php echo $task["ID"]; ?> ]]); <?php } ?> BX.tooltip(<?php echo $task["CREATED_BY"]; ?>
if ((string) $arParams['CUSTOM_ACTIONS_CALLBACK'] != '' && is_callable($arParams['CUSTOM_ACTIONS_CALLBACK'])) { call_user_func_array($arParams['CUSTOM_ACTIONS_CALLBACK'], array($task, $arParams["PATHS"])); } else { tasksGetItemMenu($task, $arParams["PATHS"], $arParams["SITE_ID"]); } ?> ]; <?php if ($arParams['SHOW_QUICK_INFORMERS'] !== false) { ?> quickInfoData[<?php echo $task["ID"]; ?> ] = <?php tasksRenderJSON($task, $childrenCount, $arParams["PATHS"], false, false, false, $arParams["NAME_TEMPLATE"]); ?> ; <?php } ?> <?php if ($arParams["TASK_ADDED"]) { ?> BX.onCustomEvent("onTaskListTaskAdd", [quickInfoData[<?php echo $task["ID"]; ?> ]]); <?php } ?>