diff --git a/assets/src/js/components/chart.js b/assets/src/js/components/chart.js index edbf34f6..35772f07 100644 --- a/assets/src/js/components/chart.js +++ b/assets/src/js/components/chart.js @@ -120,8 +120,8 @@ export default class Chart extends Component { continue } - map[key].pageviews += parseInt(data[i].pageviews) - map[key].visitors += parseInt(data[i].visitors) + map[key].pageviews += data[i].pageviews + map[key].visitors += data[i].visitors if (map[key].pageviews > yMax) { yMax = map[key].pageviews diff --git a/assets/src/js/components/totals.js b/assets/src/js/components/totals.js index f7f93850..d3822394 100644 --- a/assets/src/js/components/totals.js +++ b/assets/src/js/components/totals.js @@ -74,8 +74,8 @@ export default class Totals extends Component { } }).then(data => { data.forEach(r => { - visitors += parseInt(r.visitors) - pageviews += parseInt(r.pageviews) + visitors += r.visitors + pageviews += r.pageviews }) }), @@ -87,8 +87,8 @@ export default class Totals extends Component { } }).then(data => { data.forEach(r => { - visitorsPrevious += parseInt(r.visitors) - pageviewsPrevious += parseInt(r.pageviews) + visitorsPrevious += r.visitors + pageviewsPrevious += r.pageviews }) }) ]).then(() => { diff --git a/src/class-rest.php b/src/class-rest.php index de9357b7..9ac317d2 100644 --- a/src/class-rest.php +++ b/src/class-rest.php @@ -114,7 +114,11 @@ public function get_stats( \WP_REST_Request $request ) { $end_date = isset( $params['end_date'] ) ? $params['end_date'] : gmdate( 'Y-m-d', time() + get_option( 'gmt_offset', 0 ) * HOUR_IN_SECONDS ); $sql = $wpdb->prepare( "SELECT date, visitors, pageviews FROM {$wpdb->prefix}koko_analytics_site_stats s WHERE s.date >= %s AND s.date <= %s", array( $start_date, $end_date ) ); $result = $wpdb->get_results( $sql ); - return $result; + return is_array( $result ) ? array_map(function ( $row ) { + $row->pageviews = (int) $row->pageviews; + $row->visitors = (int) $row->visitors; + return $row; + }, $result) : $result; } public function get_posts( \WP_REST_Request $request ) { @@ -131,11 +135,12 @@ public function get_posts( \WP_REST_Request $request ) { } // add permalink to each result - foreach ( $results as $i => $row ) { - $results[ $i ]->post_permalink = get_permalink( $row->id ); - } - - return $results; + return array_map( function( $row ) { + $row->post_permalink = get_permalink( $row->id ); + $row->pageviews = (int) $row->pageviews; + $row->visitors = (int) $row->visitors; + return $row; + }, $results); } public function get_referrers( \WP_REST_Request $request ) {