- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/classes/general/tasks_report_helper.php
- Класс: CTasksReportHelper
- Вызов: CTasksReportHelper::formatResultsTotal
static function formatResultsTotal(&$total, &$columnInfo, &$customChartTotal = null)
{
parent::formatResultsTotal($total, $columnInfo);
foreach ($total as $k => $v)
{
// remove prefix TOTAL_
$original_k = mb_substr($k, 6);
$cInfo = $columnInfo[$original_k];
if (mb_strpos($k, 'DURATION_PLAN_HOURS') !== false && !mb_strlen($cInfo['prcnt']))
{
if (!empty($v))
{
$days = floor($v/24);
$hours = $v - $days*24;
$v = '';
if (!empty($days)) $v .= $days.GetMessage('TASKS_REPORT_DURATION_DAYS');
if (!empty($hours))
{
if (!empty($days)) $v .= ' ';
$v .= $hours.GetMessage('TASKS_REPORT_DURATION_HOURS');
}
$total[$k] = $v;
}
}
elseif (mb_strpos($k, 'DURATION') !== false && !mb_strlen($cInfo['prcnt']))
{
$hours = floor($v/60);
$minutes = date('i', ($v % 60)*60);
$total[$k] = $hours.':'.$minutes;
}
elseif (
(
(mb_strpos($k, 'TIME_ESTIMATE') !== false)
||
(mb_strpos($k, 'TIME_SPENT_IN_LOGS') !== false)
) && !mb_strlen($cInfo['prcnt']))
{
$hours = floor($v/3600);
$minutes = date('i', $v % 3600);
$total[$k] = $hours.':'.$minutes;
}
elseif (mb_strpos($k, 'IS_EFFECTIVE_PRCNT') !== false && $cInfo['prcnt'] === '')
{
if (self::$nRows > 0 && mb_substr($v, 0, 2) !== '--')
$total[$k] = round(doubleval($v) / self::$nRows, 2).'%';
}
}
}