- Модуль: report
- Путь к файлу: ~/bitrix/modules/report/lib/visualconstructor/controller/configuration.php
- Класс: BitrixReportVisualConstructorControllerConfiguration
- Вызов: Configuration::buildPseudoReportConfigurationAction
public function buildPseudoReportConfigurationAction($params)
{
if (!isset($params['widgetId']))
{
$this->addError(new Error('widgetId not exist'));
return false;
}
if (!isset($params['viewKey']))
{
$this->addError(new Error('view key not exist'));
return false;
}
$existReportCount = !empty($params['existReportCount']) ? $params['existReportCount'] : 0;
$componentName = 'bitrix:report.visualconstructor.widget.pseudoconfig';
$templateName = '';
$widgetParams = array(
'widgetGId' => $params['widgetId'],
'viewKey' => $params['viewKey'],
);
$reportHandlerClassName = !empty($params['reportHandlerClassName']) ? $params['reportHandlerClassName'] : '__';
$widget = BitrixReportVisualConstructorEntityWidget::buildPseudoWidget($widgetParams);
if ($widget)
{
$componentParams = array(
'WIDGET_ID' => $widget->getGId()
);
if ($reportHandlerClassName == '__')
{
$reportHandlerClassName = EmptyReport::getClassName();
}
$reportHandler = Report::buildReportHandlerForWidget($reportHandlerClassName, $widget, true);
$colorFieldValue = !empty($params['colorFieldValue']) ? $params['colorFieldValue'] : $reportHandler->getView()->getReportDefaultColor($existReportCount + 1);
$reportHandler->getFormElement('color')->setValue($colorFieldValue);
$reportHandler->getFormElement('head_container_start')->addInlineStyle('background-color', $colorFieldValue);
$reportHandler->getFormElement('main_container_start')->addInlineStyle('background-color', $colorFieldValue . '5f');
$componentParams['REPORT_HANDLER'] = $reportHandler;
return new Component($componentName, $templateName, $componentParams);
}
$this->addError(new Error('No widget with this id'));
return false;
}