static function getRowData($entityTypeId, $isSupervisor = false)
{
$entityPrefix = \CCrmOwnerType::ResolveName($entityTypeId);
$rowData = array(
array(
'height' => 380,
'cells' => array(
array(
'controls' => array(
array(
'title' => Loc::getMessage('CRM_COMM_WGT_GROWTH'),
'typeName' => 'graph',
'group' => 'DATE',
'configs' => array(
array(
'name' => 'total_qty',
'title' => Loc::getMessage('CRM_COMM_WGT_'.$entityPrefix.'_GROWTH_COUNT'),
'dataPreset' => $entityPrefix.'_GROWTH_STATS::TOTAL_COUNT',
'dataSource' => $entityPrefix.'_GROWTH_STATS',
'select' => array('name' => 'TOTAL_COUNT')
)
),
'filter' => array(
'periodType' => FilterPeriodType::YEAR,
'year' => date('Y')
)
)
)
),
array(
'controls' => array(
array(
'title' => Loc::getMessage('CRM_COMM_WGT_COMMUNICATIONS'),
'typeName' => 'pie',
'group' => 'PROVIDER_ID',
'configs' => array(
array(
'name' => 'source_qty',
'dataPreset' => $entityPrefix.'_ACTIVITY_STATS::TOTAL_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM')
)
)
)
)
)
)
)
);
if (Provider\OpenLine::isActive())
{
$openLines = self::getProviderTypes(Provider\OpenLine::className());
foreach ($openLines as $line)
{
$rowData[] = array(
'height' => 180,
'cells' => array(
array(
'controls' => array(
array(
'typeName' => 'number',
'configs' => array(
array(
'name' => 'total_qty',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array(
'#PROVIDER_NAME#' => $line['NAME']
)),
'dataPreset' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':TOTAL_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM')
)
)
)
)
)
)
);
$rowData[] = array(
'height' => 380,
'cells' => array(
array(
'controls' => array(
array(
'title' => Loc::getMessage('CRM_COMM_WGT_STATUSES'),
'typeName' => 'pie',
'group' => 'STATUS',
'configs' => array(
array(
'name' => 'status_qty',
'dataPreset' => $entityPrefix.'_ACTIVITY_STATUS_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':TOTAL',
'dataSource' => $entityPrefix.'_ACTIVITY_STATUS_STATS',
'select' => array('name' => 'TOTAL')
)
)
)
)
)/*,
array(
'controls' => array(
array(
'title' => Loc::getMessage('CRM_COMM_WGT_MARKS'),
'typeName' => 'pie',
'group' => 'MARK',
'configs' => array(
array(
'name' => 'marks_qty',
'dataPreset' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':TOTAL',
'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
'select' => array('name' => 'TOTAL')
)
)
)
)
)*/
)
);
$rowData[] = array(
'height' => 380,
'cells' => array(
array(
'controls' => array(
array(
'title' => Loc::getMessage('CRM_COMM_WGT_SOURCES'),
'typeName' => 'bar',
'group' => 'SOURCE',
'context' => 'E',
'combineData' => 'Y',
'enableStack' => 'N',
'integersOnly' => 'Y',
'configs' => array(
array(
'name' => 'qty_total',
'title' => Loc::getMessage('CRM_COMM_WGT_MARK_ALL'),
'dataPreset' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':TOTAL',
'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
'select' => array('name' => 'TOTAL', 'aggregate' => 'SUM')
)/*,
array(
'name' => 'qty_positive',
'title' => Loc::getMessage('CRM_COMM_WGT_MARK_POSITIVE'),
'dataPreset' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':POSITIVE_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
'select' => array('name' => 'POSITIVE_QTY', 'aggregate' => 'SUM')
),
array(
'name' => 'qty_negative',
'title' => Loc::getMessage('CRM_COMM_WGT_MARK_NEGATIVE'),
'dataPreset' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':NEGATIVE_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
'select' => array('name' => 'NEGATIVE_QTY', 'aggregate' => 'SUM')
),
array(
'name' => 'qty_nomark',
'title' => Loc::getMessage('CRM_COMM_WGT_MARK_NONE'),
'dataPreset' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':NONE_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
'select' => array('name' => 'NONE_QTY', 'aggregate' => 'SUM')
)*/
)
)
)
)
)
);
}
}
else
{
$rowData[] = array(
'height' => 180,
'cells' => array(
array(
'controls' => array(
array(
'typeName' => 'custom',
'configs' => array(
array(
'name' => 'provider_status',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_STATUS', array(
'#PROVIDER_NAME#' => Provider\OpenLine::getName()
)),
'dataPreset' => 'ACTIVITY_PROVIDER_STATUS::'.Provider\OpenLine::getId(),
'dataSource' => 'ACTIVITY_PROVIDER_STATUS',
'select' => array('name' => Provider\OpenLine::getId()),
'display' => array('colorScheme' => 'yellow')
)
)
)
)
)
)
);
}
$rowData[] = array(
'height' => 180,
'cells' => array(
array(
'controls' => array(
array(
'typeName' => 'number',
'configs' => array(
array(
'name' => 'call_qty',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array(
'#PROVIDER_NAME#' => Provider\Call::getName()
)),
'dataPreset' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\Call::getId().':CALL:TOTAL_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM')
)
)
)
)
)
)
);
if (Provider\Call::isActive())
{
$rowData[] = array(
'height' => 380,
'cells' => array(
array(
'controls' => array(
array(
'title' => Loc::getMessage('CRM_COMM_WGT_STREAMS'),
'typeName' => 'pie',
'group' => 'STREAM',
'configs' => array(
array(
'name' => 'source_qty',
'dataPreset' => $entityPrefix.'_ACTIVITY_STREAM_STATS::'.Provider\Call::getId().':CALL:TOTAL',
'dataSource' => $entityPrefix.'_ACTIVITY_STREAM_STATS',
'select' => array('name' => 'TOTAL')
)
)
)
)
),
array(
'controls' => array(
array(
'title' => Loc::getMessage('CRM_COMM_WGT_MARKS'),
'typeName' => 'pie',
'group' => 'MARK',
'configs' => array(
array(
'name' => 'source_qty',
'dataPreset' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\Call::getId().':CALL:TOTAL',
'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
'select' => array('name' => 'TOTAL')
)
)
)
)
)
)
);
}
else
{
$rowData[] = array(
'height' => 180,
'cells' => array(
array(
'controls' => array(
array(
'typeName' => 'custom',
'configs' => array(
array(
'name' => 'provider_status',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_STATUS', array(
'#PROVIDER_NAME#' => Provider\Call::getName()
)),
'dataPreset' => 'ACTIVITY_PROVIDER_STATUS::'.Provider\Call::getId(),
'dataSource' => 'ACTIVITY_PROVIDER_STATUS',
'select' => array('name' => Provider\Call::getId()),
'display' => array('colorScheme' => 'yellow')
)
)
)
)
)
)
);
}
$rowData[] = array(
'height' => 180,
'cells' => array(
array(
'controls' => array(
array(
'typeName' => 'number',
'configs' => array(
array(
'name' => 'meeting_qty',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array(
'#PROVIDER_NAME#' => Provider\Meeting::getName()
)),
'dataPreset' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\Meeting::getId().':*:TOTAL_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM')
)
)
)
)
)
)
);
$rowData[] = array(
'height' => 180,
'cells' => array(
array(
'controls' => array(
array(
'typeName' => 'number',
'configs' => array(
array(
'name' => 'email_qty',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array(
'#PROVIDER_NAME#' => Provider\Email::getName()
)),
'dataPreset' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\Email::getId().':*:TOTAL_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM'),
'display' => array('colorScheme' => 'green')
)
)
)
)
),
array(
'controls' => array(
array(
'typeName' => 'number',
'configs' => array(
array(
'name' => 'lf_qty',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array(
'#PROVIDER_NAME#' => Provider\Livefeed::getName()
)),
'dataPreset' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\Livefeed::getId().':*:TOTAL_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM'),
'display' => array('colorScheme' => 'yellow')
)
)
)
)
)
)
);
if (Provider\ExternalChannel::isActive())
{
$cells = array(array(
'controls' => array(
array(
'typeName' => 'number',
'configs' => array(
array(
'name' => 'total_qty',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array(
'#PROVIDER_NAME#' => Provider\ExternalChannel::getName()
)),
'dataPreset' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\ExternalChannel::getId().':*:TOTAL_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM'),
'display' => array('colorScheme' => 'blue')
)
)
)
)
));
if ($entityTypeId === \CCrmOwnerType::Company)
{
$cells[] = array(
'controls' => array(
array(
'typeName' => 'number',
'configs' => array(
array(
'name' => 'total_sum',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_SUM', array(
'#PROVIDER_NAME#' => Provider\ExternalChannel::getName()
)),
'dataPreset' => $entityPrefix.'_ACTIVITY_SUM_STATS::'.Provider\ExternalChannel::getId().':*:SUM_TOTAL',
'dataSource' => $entityPrefix.'_ACTIVITY_SUM_STATS',
'select' => array('name' => 'SUM_TOTAL', 'aggregate' => 'SUM'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
'display' => array('colorScheme' => 'red')
)
)
)
)
);
}
$rowData[] = array(
'height' => 180,
'cells' => $cells
);
}
else
{
$rowData[] = array(
'height' => 180,
'cells' => array(
array(
'controls' => array(
array(
'typeName' => 'custom',
'configs' => array(
array(
'name' => 'provider_status',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_STATUS', array(
'#PROVIDER_NAME#' => Provider\ExternalChannel::getName()
)),
'dataPreset' => 'ACTIVITY_PROVIDER_STATUS::'.Provider\ExternalChannel::getId(),
'dataSource' => 'ACTIVITY_PROVIDER_STATUS',
'select' => array('name' => Provider\ExternalChannel::getId()),
'display' => array('colorScheme' => 'yellow')
)
)
)
)
)
)
);
}
if (Provider\WebForm::isActive())
{
$rowData[] = array(
'height' => 180,
'cells' => array(
array(
'controls' => array(
array(
'typeName' => 'number',
'configs' => array(
array(
'name' => 'total_qty',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array(
'#PROVIDER_NAME#' => Provider\WebForm::getName()
)),
'dataPreset' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\WebForm::getId().':*:TOTAL_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM')
)
)
)
)
),
array(
'controls' => array(
array(
'typeName' => 'number',
'configs' => array(
array(
'name' => 'total_sum',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_SUM', array(
'#PROVIDER_NAME#' => Provider\WebForm::getName()
)),
'dataPreset' => $entityPrefix.'_ACTIVITY_SUM_STATS::'.Provider\WebForm::getId().':*:SUM_TOTAL',
'dataSource' => $entityPrefix.'_ACTIVITY_SUM_STATS',
'select' => array('name' => 'SUM_TOTAL', 'aggregate' => 'SUM'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N')
)
)
)
)
)
)
);
}
else
{
$rowData[] = array(
'height' => 180,
'cells' => array(
array(
'controls' => array(
array(
'typeName' => 'custom',
'configs' => array(
array(
'name' => 'provider_status',
'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_STATUS', array(
'#PROVIDER_NAME#' => Provider\WebForm::getName()
)),
'dataPreset' => 'ACTIVITY_PROVIDER_STATUS::'.Provider\WebForm::getId(),
'dataSource' => 'ACTIVITY_PROVIDER_STATUS',
'select' => array('name' => Provider\WebForm::getId()),
'display' => array('colorScheme' => 'yellow')
)
)
)
)
)
)
);
}
return $rowData;
}