function getDataAndScale(&$dbHandler, $argsObj)
{
    $obj = new stdClass();
    $totals = null;
    $resultsCfg = config_get('results');
    $metricsMgr = new tlTestPlanMetrics($dbHandler);
    $dataSet = $metricsMgr->getRootTestSuites($argsObj->tplan_id, $argsObj->tproject_id);
    $dummy = $metricsMgr->getStatusTotalsByTopLevelTestSuiteForRender($argsObj->tplan_id);
    $obj->canDraw = !is_null($dummy->info);
    if (property_exists($argsObj, 'debug')) {
        new dBug($dummy->info);
    }
    if ($obj->canDraw) {
        //// Process to enable alphabetical order
        $item_descr = array_flip($dataSet);
        ksort($item_descr);
        foreach ($item_descr as $name => $tsuite_id) {
            if (isset($dummy->info[$tsuite_id])) {
                $items[] = htmlspecialchars($name);
                $rmap = $dummy->info[$tsuite_id]['details'];
                foreach ($rmap as $key => $value) {
                    $totals[$key][] = $value['qty'];
                }
            } else {
                // make things work, but create log this is not ok
                tlog(__FILE__ . '::' . __FUNCTION__ . 'Missing item: name/id:' . "{$name}/{$tsuite_id}", 'DEBUG');
            }
        }
    }
    $obj->xAxis = new stdClass();
    $obj->xAxis->values = $items;
    $obj->xAxis->serieName = 'Serie8';
    $obj->series_color = null;
    foreach ($totals as $status => $values) {
        $obj->chart_data[] = $values;
        $obj->series_label[] = lang_get($resultsCfg['status_label'][$status]);
        if (isset($resultsCfg['charts']['status_colour'][$status])) {
            $obj->series_color[] = $resultsCfg['charts']['status_colour'][$status];
        }
    }
    return $obj;
}
 *
 * @internal revisions
 * @since 1.9.6
 * 
 */
require '../../config.inc.php';
require_once 'common.php';
require_once 'displayMgr.php';
$timerOn = microtime(true);
$templateCfg = templateConfiguration();
$args = init_args($db);
$tplan_mgr = new testplan($db);
$gui = initializeGui($db, $args, $tplan_mgr);
$mailCfg = buildMailCfg($gui);
$metricsMgr = new tlTestPlanMetrics($db);
$dummy = $metricsMgr->getStatusTotalsByTopLevelTestSuiteForRender($args->tplan_id);
if (is_null($dummy)) {
    // no test cases -> no report
    $gui->do_report['status_ok'] = 0;
    $gui->do_report['msg'] = lang_get('report_tspec_has_no_tsuites');
    tLog('Overall Metrics page: no test cases defined');
} else {
    // do report
    $gui->statistics->testsuites = $dummy->info;
    $gui->do_report['status_ok'] = 1;
    $gui->do_report['msg'] = '';
    $items2loop = array('testsuites', 'keywords');
    $keywordsMetrics = $metricsMgr->getStatusTotalsByKeywordForRender($args->tplan_id);
    $gui->statistics->keywords = !is_null($keywordsMetrics) ? $keywordsMetrics->info : null;
    if ($gui->showPlatforms) {
        $items2loop[] = 'platform';