Sync plugins from current page
Signed-off-by: Adrian Nöthlich <git@promasu.tech>
This commit is contained in:
		| @@ -0,0 +1,96 @@ | ||||
| <?php | ||||
| function wp_statistics_generate_search_postbox_content( $search_engines, $size = "300", $days = 20 ) { | ||||
| 	global $wpdb, $WP_Statistics; | ||||
| 	$id          = 'search-stats-' . rand( 111, 999 ); | ||||
| 	$total_stats = $WP_Statistics->get_option( 'chart_totals' ); | ||||
| 	$date        = array(); | ||||
| 	$stats       = array(); | ||||
| 	$total_daily = array(); | ||||
|  | ||||
| 	for ( $i = $days; $i >= 0; $i -- ) { | ||||
| 		$date[] = "'" . $WP_Statistics->Current_Date( 'M j', '-' . $i ) . "'"; | ||||
| 	} | ||||
|  | ||||
| 	foreach ( $search_engines as $se ) { | ||||
| 		for ( $i = $days; $i >= 0; $i -- ) { | ||||
| 			if ( ! array_key_exists( $i, $total_daily ) ) { | ||||
| 				$total_daily[ $i ] = 0; | ||||
| 			} | ||||
|  | ||||
| 			$stat                   = wp_statistics_searchengine( $se['tag'], '-' . $i ); | ||||
| 			$stats[ $se['name'] ][] = $stat; | ||||
| 			$total_daily[ $i ]      += $stat; | ||||
| 		} | ||||
| 	} | ||||
| 	?> | ||||
|     <canvas id="<?php echo $id; ?>" height="<?php echo $size; ?>"></canvas> | ||||
|     <script> | ||||
|         var colors = []; | ||||
|         colors['baidu'] = ['rgba(35, 25, 220, 0.2)', 'rgba(35, 25, 220, 1)']; | ||||
|         colors['bing'] = ['rgba(12, 132, 132, 0.2)', 'rgba(12, 132, 132, 1)']; | ||||
|         colors['duckduckgo'] = ['rgba(222, 88, 51, 0.2)', 'rgba(222, 88, 51, 1)']; | ||||
|         colors['google'] = ['rgba(23, 107, 239, 0.2)', 'rgba(23, 107, 239, 1)']; | ||||
|         colors['yahoo'] = ['rgba(64, 0, 144, 0.2)', 'rgba(64, 0, 144, 1)']; | ||||
|         colors['yandex'] = ['rgba(255, 219, 77, 0.2)', 'rgba(255, 219, 77, 1)']; | ||||
|         colors['ask'] = ['rgba(205, 0, 0, 0.2)', 'rgba(205, 0, 0, 1)']; | ||||
|         colors['clearch'] = ['rgba(13, 0, 76, 0.2)', 'rgba(13, 0, 76, 1)']; | ||||
|         colors['qwant'] = ['rgba(53, 60, 82, 0.2)', 'rgba(53, 60, 82, 1)']; | ||||
|  | ||||
|         var ctx = document.getElementById("<?php echo $id; ?>").getContext('2d'); | ||||
| 		<?php if(is_rtl()) { ?> Chart.defaults.global.defaultFontFamily = "tahoma"; <?php } ?> | ||||
|         var ChartJs = new Chart(ctx, { | ||||
|             type: 'line', | ||||
|             data: { | ||||
|                 labels: [<?php echo implode( ', ', $date ); ?>], | ||||
|                 datasets: [ | ||||
| 					<?php foreach ( $search_engines as $se ): ?> | ||||
|                     { | ||||
|                         label: '<?php echo $se['name']; ?>', | ||||
|                         data: [<?php echo implode( ',', $stats[ $se['name'] ] ); ?>], | ||||
|                         backgroundColor: colors['<?php echo $se['tag']; ?>'][0], | ||||
|                         borderColor: colors['<?php echo $se['tag']; ?>'][1], | ||||
|                         borderWidth: 1, | ||||
|                         fill: true, | ||||
|                     }, | ||||
| 					<?php endforeach; ?> | ||||
| 					<?php if ( $total_stats == 1 ) : ?> | ||||
|                     { | ||||
|                         label: '<?php _e( 'Total', 'wp-statistics' ); ?>', | ||||
|                         data: [<?php echo implode( ',', $total_daily ); ?>], | ||||
|                         backgroundColor: 'rgba(180, 180, 180, 0.2)', | ||||
|                         borderColor: 'rgba(180, 180, 180, 1)', | ||||
|                         borderWidth: 1, | ||||
|                         fill: false, | ||||
|                     }, | ||||
| 					<?php endif;?> | ||||
|                 ] | ||||
|             }, | ||||
|             options: { | ||||
|                 responsive: true, | ||||
|                 legend: { | ||||
|                     position: 'bottom', | ||||
|                 }, | ||||
|                 animation: { | ||||
|                     duration: 0, | ||||
|                 }, | ||||
|                 title: { | ||||
|                     display: true, | ||||
|                     text: '<?php echo sprintf( __( 'Search engine referrals in the last %s days', 'wp-statistics' ), $days ); ?>' | ||||
|                 }, | ||||
|                 tooltips: { | ||||
|                     mode: 'index', | ||||
|                     intersect: false, | ||||
|                 }, | ||||
|                 scales: { | ||||
|                     yAxes: [{ | ||||
|                         ticks: { | ||||
|                             beginAtZero: true | ||||
|                         } | ||||
|                     }] | ||||
|                 } | ||||
|             } | ||||
|         }); | ||||
|     </script> | ||||
| 	<?php | ||||
| } | ||||
|  | ||||
		Reference in New Issue
	
	Block a user