@@ -570,13 +570,25 @@ private function getChartData( $cache_key = '', $chart_id = 0 ) {
570
570
// Get chart by ID.
571
571
$ chart = get_post ( $ chart_id );
572
572
if ( $ chart && Visualizer_Plugin::CPT_VISUALIZER === $ chart ->post_type ) {
573
+ $ settings = get_post_meta ( $ chart ->ID , Visualizer_Plugin::CF_SETTINGS , true );
574
+ $ series = get_post_meta ( $ chart ->ID , Visualizer_Plugin::CF_SERIES , true );
575
+
576
+ if ( isset ( $ settings ['series ' ] ) && ! ( count ( $ settings ['series ' ] ) - count ( $ series ) > 1 ) ) {
577
+ $ diff_total_series = abs ( count ( $ settings ['series ' ] ) - count ( $ series ) );
578
+ if ( $ diff_total_series ) {
579
+ foreach ( range ( 1 , $ diff_total_series ) as $ k => $ diff_series ) {
580
+ $ settings ['series ' ][] = end ( $ settings ['series ' ] );
581
+ }
582
+ }
583
+ }
573
584
$ chart_data = array (
574
585
'chart ' => $ chart ,
575
586
'type ' => get_post_meta ( $ chart ->ID , Visualizer_Plugin::CF_CHART_TYPE , true ),
576
- 'settings ' => get_post_meta ( $ chart -> ID , Visualizer_Plugin:: CF_SETTINGS , true ) ,
577
- 'series ' => get_post_meta ( $ chart -> ID , Visualizer_Plugin:: CF_SERIES , true ) ,
587
+ 'settings ' => $ settings ,
588
+ 'series ' => $ series ,
578
589
'chart_image ' => get_post_meta ( $ chart ->ID , Visualizer_Plugin::CF_CHART_IMAGE , true ),
579
590
);
591
+
580
592
// Put the results in a transient. Expire after 12 hours.
581
593
set_transient ( $ cache_key , $ chart_data , apply_filters ( Visualizer_Plugin::FILTER_HANDLE_CACHE_EXPIRATION_TIME , 12 * HOUR_IN_SECONDS ) );
582
594
return $ chart_data ;
0 commit comments