imagecms/ImageCMS

View on GitHub
application/modules/mod_stats/classes/ChartDataRemap.php

Summary

Maintainability
A
0 mins
Test Coverage
<?php

/**
 * Class ChartDataRemap for mod_stats module
 * @author DevImageCms
 * @copyright (c) 2014, ImageCMS
 * @package ImageCMSModule
 */
class ChartDataRemap
{

    /**
     * Remap data for chart with one Y axiss
     * @param array $data
     * @return array
     */
    public function remapFor2Axises($data) {

        $newStructure1 = [];
        foreach ($data as $row) {
            $date = $row['unix_date'];
            unset($row['unix_date']);
            unset($row['date']);
            foreach ($row as $field => $value) {
                $newStructure1[$field][] = [
                                            (float) ($date * 1000),
                                            (int) $value,
                                           ];
            }
        }
        return $newStructure1;
    }

    /**
     * Remap data for chart with one Y axis
     * @param array $data
     * @return array
     */
    public function remapForOneAxis($data) {

        $newStructure1 = [];
        foreach ($data as $row) {
            $date = $row['unix_date'];
            unset($row['unix_date']);
            unset($row['date']);
            foreach ($row as $field => $value) {
                $newStructure1[$field][] = [
                                            'x' => (float) ($date * 1000),
                                            'y' => (int) $value,
                                           ];
            }
        }

        return $newStructure1;
    }

}