Ojs\AnalyticsBundle\Utils\GraphDataGenerator::generateApplicationBarChartData PHP Method

generateApplicationBarChartData() public method

    public function generateApplicationBarChartData()
    {
        $connectionParams = $this->manager->getConnection()->getParams();
        if ($connectionParams['driver'] == 'pdo_sqlite') {
            $sql = 'SELECT count(id) as result_count , strftime("%m-%Y", created) as month  FROM journal GROUP BY month';
        } else {
            $sql = 'SELECT count(id) as result_count , date_trunc(\'month\', created) as month FROM journal WHERE created > (CURRENT_DATE - INTERVAL \'3\' month) GROUP BY month ORDER BY month DESC';
        }
        $rsm = new ResultSetMapping();
        $rsm->addScalarResult('result_count', 'result_count');
        $rsm->addScalarResult('month', 'month');
        $query = $this->manager->createNativeQuery($sql, $rsm);
        $results = $query->getResult();
        $applicationDataX = ['x'];
        $applicationDataCount = ['Application'];
        foreach ($results as $result) {
            $applicationDataX[] = substr($result['month'], 0, 10);
            $applicationDataCount[] = $result['result_count'];
        }
        return [$applicationDataX, $applicationDataCount];
    }