WP Statistics - Version 10.0.4

Version Description

  • Release Date: January 21, 2016
  • Fixed: Recent Visitors widget in the dashboard did not work.
  • Fixed: Top Visitors in Overview page would not reload.
  • Fixed: Links for yesterday and older visitors count went to wrong page.
  • Fixed: Typo in purge code that caused a fatal error.
Download this release

Release Info

Developer GregRoss
Plugin Icon 128x128 WP Statistics
Version 10.0.4
Comparing to
See all releases

Code changes from version 10.0.3 to 10.0.4

ajax.php CHANGED
@@ -266,8 +266,10 @@ function wp_statistics_get_widget_contents_callback() {
266
 
267
  break;
268
  case 'page':
269
- $pageid = (int)$_POST['page-id'];
270
- wp_statistics_generate_page_postbox_content( null, $pageid );
 
 
271
 
272
  break;
273
  case 'pages':
@@ -280,7 +282,13 @@ function wp_statistics_get_widget_contents_callback() {
280
 
281
  break;
282
  case 'top.visitors':
283
- wp_statistics_generate_top_visitors_postbox_content($ISOCountryCode);
 
 
 
 
 
 
284
 
285
  break;
286
  case 'about':
266
 
267
  break;
268
  case 'page':
269
+ if( array_key_exists( 'page-id', $_POST ) ) {
270
+ $pageid = (int)$_POST['page-id'];
271
+ wp_statistics_generate_page_postbox_content( null, $pageid );
272
+ }
273
 
274
  break;
275
  case 'pages':
282
 
283
  break;
284
  case 'top.visitors':
285
+ $format = null;
286
+
287
+ if( array_key_exists( 'format', $_POST ) ) {
288
+ $format = 'compact';
289
+ }
290
+
291
+ wp_statistics_generate_top_visitors_postbox_content($ISOCountryCode, 'today', 10, $format);
292
 
293
  break;
294
  case 'about':
assets/js/dashboard.js CHANGED
@@ -6,6 +6,7 @@ function wp_statistics_get_widget_contents( widget, container_id ) {
6
  var data = {
7
  'action': 'wp_statistics_get_widget_contents',
8
  'widget': widget,
 
9
  };
10
 
11
  container = jQuery("#" + container_id);
@@ -35,6 +36,7 @@ function wp_statistics_refresh_widget() {
35
 
36
  var widget = container_id.replace( 'wp-statistics-', '' );
37
  widget = widget.replace( '-div', '' );
 
38
 
39
  container = jQuery("#" + container_id);
40
  container.html(wp_statistics_loading_image);
@@ -52,6 +54,7 @@ function wp_statistics_refresh_on_toggle_widget() {
52
  var container_id = this.value.replace( '-widget', '-div' );
53
  var widget = container_id.replace( 'wp-statistics-', '' );
54
  widget = widget.replace( '-div', '' );
 
55
 
56
  wp_statistics_get_widget_contents( widget, container_id );
57
  }
6
  var data = {
7
  'action': 'wp_statistics_get_widget_contents',
8
  'widget': widget,
9
+ 'format': 'dashboard'
10
  };
11
 
12
  container = jQuery("#" + container_id);
36
 
37
  var widget = container_id.replace( 'wp-statistics-', '' );
38
  widget = widget.replace( '-div', '' );
39
+ widget = widget.replace( '-', '.' );
40
 
41
  container = jQuery("#" + container_id);
42
  container.html(wp_statistics_loading_image);
54
  var container_id = this.value.replace( '-widget', '-div' );
55
  var widget = container_id.replace( 'wp-statistics-', '' );
56
  widget = widget.replace( '-div', '' );
57
+ widget = widget.replace( '-', '.' );
58
 
59
  wp_statistics_get_widget_contents( widget, container_id );
60
  }
dashboard.php CHANGED
@@ -64,7 +64,7 @@
64
  if( $WP_Statistics->get_option('visitors') ) { wp_add_dashboard_widget( 'wp-statistics-search-widget', __('Search Engine Referrals', 'wp_statistics'), 'wp_statistics_generate_dashboard_postbox_contents', $control_callback = null, array( 'widget' => 'search' ) ); }
65
  wp_add_dashboard_widget( 'wp-statistics-summary-widget', __('Summary', 'wp_statistics'), 'wp_statistics_generate_dashboard_postbox_contents', $control_callback = null, array( 'widget' => 'summary' ) );
66
  if( $WP_Statistics->get_option('visitors') ) { wp_add_dashboard_widget( 'wp-statistics-words-widget', __('Latest Search Words', 'wp_statistics'), 'wp_statistics_generate_dashboard_postbox_contents', $control_callback = null, array( 'widget' => 'words' ) ); }
67
- if( $WP_Statistics->get_option('visitors') ) { wp_add_dashboard_widget( 'wp-statistics-top-visitors-widget', __('Top 10 Visitors Today', 'wp_statistics'), 'wp_statistics_generate_dashboard_postbox_contents', $control_callback = null, array( 'widget' => 'top_visitors' ) ); }
68
  }
69
  }
70
 
@@ -144,7 +144,7 @@
144
  $page_urls['wp-statistics-referring-widget_more_button'] = $admin_url . WP_STATISTICS_REFERRERS_PAGE;
145
  $page_urls['wp-statistics-search-widget_more_button'] = $admin_url . WP_STATISTICS_SEARCHES_PAGE;
146
  $page_urls['wp-statistics-words-widget_more_button'] = $admin_url . WP_STATISTICS_WORDS_PAGE;
147
- $page_urls['wp-statistics-top_visitors-widget_more_button'] = $admin_url . WP_STATISTICS_TOP_VISITORS_PAGE;
148
  $page_urls['wp-statistics-visitors-widget_more_button'] = $admin_url . WP_STATISTICS_VISITORS_PAGE;
149
  $page_urls['wp-statistics-quickstats-widget_more_button'] = $admin_url . WP_STATISTICS_OVERVIEW_PAGE;
150
 
64
  if( $WP_Statistics->get_option('visitors') ) { wp_add_dashboard_widget( 'wp-statistics-search-widget', __('Search Engine Referrals', 'wp_statistics'), 'wp_statistics_generate_dashboard_postbox_contents', $control_callback = null, array( 'widget' => 'search' ) ); }
65
  wp_add_dashboard_widget( 'wp-statistics-summary-widget', __('Summary', 'wp_statistics'), 'wp_statistics_generate_dashboard_postbox_contents', $control_callback = null, array( 'widget' => 'summary' ) );
66
  if( $WP_Statistics->get_option('visitors') ) { wp_add_dashboard_widget( 'wp-statistics-words-widget', __('Latest Search Words', 'wp_statistics'), 'wp_statistics_generate_dashboard_postbox_contents', $control_callback = null, array( 'widget' => 'words' ) ); }
67
+ if( $WP_Statistics->get_option('visitors') ) { wp_add_dashboard_widget( 'wp-statistics-top-visitors-widget', __('Top 10 Visitors Today', 'wp_statistics'), 'wp_statistics_generate_dashboard_postbox_contents', $control_callback = null, array( 'widget' => 'top.visitors' ) ); }
68
  }
69
  }
70
 
144
  $page_urls['wp-statistics-referring-widget_more_button'] = $admin_url . WP_STATISTICS_REFERRERS_PAGE;
145
  $page_urls['wp-statistics-search-widget_more_button'] = $admin_url . WP_STATISTICS_SEARCHES_PAGE;
146
  $page_urls['wp-statistics-words-widget_more_button'] = $admin_url . WP_STATISTICS_WORDS_PAGE;
147
+ $page_urls['wp-statistics-top-visitors-widget_more_button'] = $admin_url . WP_STATISTICS_TOP_VISITORS_PAGE;
148
  $page_urls['wp-statistics-visitors-widget_more_button'] = $admin_url . WP_STATISTICS_VISITORS_PAGE;
149
  $page_urls['wp-statistics-quickstats-widget_more_button'] = $admin_url . WP_STATISTICS_OVERVIEW_PAGE;
150
 
includes/functions/purge.php CHANGED
@@ -55,7 +55,7 @@
55
  // Purge the search data.
56
  $table_name = $wpdb->prefix . 'statistics_search';
57
 
58
- $result = $wpdb->query( $wpdb->preapre( "DELETE FROM {$table_name} WHERE `last_counter` < %s", $date_string ) );
59
 
60
  if($result) {
61
  $result_string .= '<br>' . sprintf(__('%s data older than %s days purged successfully.', 'wp_statistics'), '<code>' . $table_name . '</code>', '<code>' . $purge_days . '</code>');
55
  // Purge the search data.
56
  $table_name = $wpdb->prefix . 'statistics_search';
57
 
58
+ $result = $wpdb->query( $wpdb->prepare( "DELETE FROM {$table_name} WHERE `last_counter` < %s", $date_string ) );
59
 
60
  if($result) {
61
  $result_string .= '<br>' . sprintf(__('%s data older than %s days purged successfully.', 'wp_statistics'), '<code>' . $table_name . '</code>', '<code>' . $purge_days . '</code>');
includes/log/log.php CHANGED
@@ -60,7 +60,7 @@
60
  $page_urls['wps_search_more_button'] = $admin_url . WP_STATISTICS_SEARCHES_PAGE;
61
  $page_urls['wps_words_more_button'] = $admin_url . WP_STATISTICS_WORDS_PAGE;
62
  $page_urls['wps_top_visitors_more_button'] = $admin_url . WP_STATISTICS_TOP_VISITORS_PAGE;
63
- $page_urls['wps_visitors_more_button'] = $admin_url . WP_STATISTICS_VISITORS_PAGE;
64
 
65
  ?>
66
  <script type="text/javascript">
60
  $page_urls['wps_search_more_button'] = $admin_url . WP_STATISTICS_SEARCHES_PAGE;
61
  $page_urls['wps_words_more_button'] = $admin_url . WP_STATISTICS_WORDS_PAGE;
62
  $page_urls['wps_top_visitors_more_button'] = $admin_url . WP_STATISTICS_TOP_VISITORS_PAGE;
63
+ $page_urls['wps_recent_more_button'] = $admin_url . WP_STATISTICS_VISITORS_PAGE;
64
 
65
  ?>
66
  <script type="text/javascript">
includes/log/widgets/summary.php CHANGED
@@ -32,31 +32,31 @@ if( $WP_Statistics->get_option('visitors') || $WP_Statistics->get_option('visits
32
 
33
  <tr>
34
  <th><?php _e('Yesterday', 'wp_statistics'); ?>:</th>
35
- <th class="th-center"><?php if( $WP_Statistics->get_option('visitors') ) { echo '<a href="admin.php?page=wps_visitors_menu&hitdays=1"><span>' . number_format_i18n(wp_statistics_visitor('yesterday',null,true)) . '</span></a>'; } else { echo ''; }?></th>
36
  <th class="th-center"><?php if( $WP_Statistics->get_option('visits') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_HITS_PAGE . '&hitdays=1"><span>' . number_format_i18n(wp_statistics_visit('yesterday')) . '</span></a>'; } else { echo ''; }?></th>
37
  </tr>
38
 
39
  <tr>
40
  <th><?php _e('Last 7 Days (Week)', 'wp_statistics'); ?>:</th>
41
- <th class="th-center"><?php if( $WP_Statistics->get_option('visitors') ) { echo '<a href="admin.php?page=wps_visitors_menu&hitdays=7"><span>' . number_format_i18n(wp_statistics_visitor('week',null,true)) . '</span></a>'; } else { echo ''; }?></th>
42
  <th class="th-center"><?php if( $WP_Statistics->get_option('visits') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_HITS_PAGE .'&hitdays=7"><span>' . number_format_i18n(wp_statistics_visit('week')) . '</span></a>'; } else { echo ''; }?></th>
43
  </tr>
44
 
45
  <tr>
46
  <th><?php _e('Last 30 Days (Month)', 'wp_statistics'); ?>:</th>
47
- <th class="th-center"><?php if( $WP_Statistics->get_option('visitors') ) { echo '<a href="admin.php?page=wps_visitors_menu&hitdays=30"><span>' . number_format_i18n(wp_statistics_visitor('month',null,true)) . '</span></a>'; } else { echo ''; }?></th>
48
  <th class="th-center"><?php if( $WP_Statistics->get_option('visits') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_HITS_PAGE . '&hitdays=30"><span>' . number_format_i18n(wp_statistics_visit('month')) . '</span></a>'; } else { echo ''; }?></th>
49
  </tr>
50
 
51
  <tr>
52
  <th><?php _e('Last 365 Days (Year)', 'wp_statistics'); ?>:</th>
53
- <th class="th-center"><?php if( $WP_Statistics->get_option('visitors') ) { echo '<a href="admin.php?page=wps_visitors_menu&hitdays=365"><span>' . number_format_i18n(wp_statistics_visitor('year',null,true)) . '</span></a>'; } else { echo ''; }?></th>
54
  <th class="th-center"><?php if( $WP_Statistics->get_option('visits') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_HITS_PAGE . '&hitdays=365"><span>' . number_format_i18n(wp_statistics_visit('year')) . '</span></a>'; } else { echo ''; }?></th>
55
  </tr>
56
 
57
  <tr>
58
  <th><?php _e('Total', 'wp_statistics'); ?>:</th>
59
- <th class="th-center"><?php if( $WP_Statistics->get_option('visitors') ) { echo '<a href="admin.php?page=wps_visitors_menu&hitdays=365"><span>' . number_format_i18n(wp_statistics_visitor('total',null,true)) . '</span></a>'; } else { echo ''; }?></th>
60
  <th class="th-center"><?php if( $WP_Statistics->get_option('visits') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_HITS_PAGE . '&hitdays=365"><span>' . number_format_i18n(wp_statistics_visit('total')) . '</span></a>'; } else { echo ''; }?></th>
61
  </tr>
62
 
32
 
33
  <tr>
34
  <th><?php _e('Yesterday', 'wp_statistics'); ?>:</th>
35
+ <th class="th-center"><?php if( $WP_Statistics->get_option('visitors') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_VISITORS_PAGE . '&hitdays=1"><span>' . number_format_i18n(wp_statistics_visitor('yesterday',null,true)) . '</span></a>'; } else { echo ''; }?></th>
36
  <th class="th-center"><?php if( $WP_Statistics->get_option('visits') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_HITS_PAGE . '&hitdays=1"><span>' . number_format_i18n(wp_statistics_visit('yesterday')) . '</span></a>'; } else { echo ''; }?></th>
37
  </tr>
38
 
39
  <tr>
40
  <th><?php _e('Last 7 Days (Week)', 'wp_statistics'); ?>:</th>
41
+ <th class="th-center"><?php if( $WP_Statistics->get_option('visitors') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_VISITORS_PAGE . '&hitdays=7"><span>' . number_format_i18n(wp_statistics_visitor('week',null,true)) . '</span></a>'; } else { echo ''; }?></th>
42
  <th class="th-center"><?php if( $WP_Statistics->get_option('visits') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_HITS_PAGE .'&hitdays=7"><span>' . number_format_i18n(wp_statistics_visit('week')) . '</span></a>'; } else { echo ''; }?></th>
43
  </tr>
44
 
45
  <tr>
46
  <th><?php _e('Last 30 Days (Month)', 'wp_statistics'); ?>:</th>
47
+ <th class="th-center"><?php if( $WP_Statistics->get_option('visitors') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_VISITORS_PAGE . '&hitdays=30"><span>' . number_format_i18n(wp_statistics_visitor('month',null,true)) . '</span></a>'; } else { echo ''; }?></th>
48
  <th class="th-center"><?php if( $WP_Statistics->get_option('visits') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_HITS_PAGE . '&hitdays=30"><span>' . number_format_i18n(wp_statistics_visit('month')) . '</span></a>'; } else { echo ''; }?></th>
49
  </tr>
50
 
51
  <tr>
52
  <th><?php _e('Last 365 Days (Year)', 'wp_statistics'); ?>:</th>
53
+ <th class="th-center"><?php if( $WP_Statistics->get_option('visitors') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_VISITORS_PAGE . '&hitdays=365"><span>' . number_format_i18n(wp_statistics_visitor('year',null,true)) . '</span></a>'; } else { echo ''; }?></th>
54
  <th class="th-center"><?php if( $WP_Statistics->get_option('visits') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_HITS_PAGE . '&hitdays=365"><span>' . number_format_i18n(wp_statistics_visit('year')) . '</span></a>'; } else { echo ''; }?></th>
55
  </tr>
56
 
57
  <tr>
58
  <th><?php _e('Total', 'wp_statistics'); ?>:</th>
59
+ <th class="th-center"><?php if( $WP_Statistics->get_option('visitors') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_VISITORS_PAGE . '&hitdays=365"><span>' . number_format_i18n(wp_statistics_visitor('total',null,true)) . '</span></a>'; } else { echo ''; }?></th>
60
  <th class="th-center"><?php if( $WP_Statistics->get_option('visits') ) { echo '<a href="admin.php?page=' . WP_STATISTICS_HITS_PAGE . '&hitdays=365"><span>' . number_format_i18n(wp_statistics_visit('total')) . '</span></a>'; } else { echo ''; }?></th>
61
  </tr>
62
 
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: http://wp-statistics.com/donate/
4
  Tags: statistics, stats, visit, visitors, chart, browser, blog, today, yesterday, week, month, year, total, post, page, sidebar, summary, feedburner, hits, pagerank, google, alexa, live visit
5
  Requires at least: 3.0
6
  Tested up to: 4.4
7
- Stable tag: 10.0.3
8
  License: GPL3
9
 
10
  Complete statistics for your WordPress site.
@@ -238,6 +238,13 @@ If you still have issues open a new thread on the support forum and we'll try an
238
  The overview page has been completely rewritten! If you had set custom values for what widgets to display and in what order on your overview page you will have to re-select them using the "Screen Options" tab on the overview page and by dragging and dropping the widgets in to place.
239
 
240
  == Changelog ==
 
 
 
 
 
 
 
241
  = 10.0.3 =
242
  * Release Date: January 19, 2016
243
  * Updated: Google map API now always uses https.
4
  Tags: statistics, stats, visit, visitors, chart, browser, blog, today, yesterday, week, month, year, total, post, page, sidebar, summary, feedburner, hits, pagerank, google, alexa, live visit
5
  Requires at least: 3.0
6
  Tested up to: 4.4
7
+ Stable tag: 10.0.4
8
  License: GPL3
9
 
10
  Complete statistics for your WordPress site.
238
  The overview page has been completely rewritten! If you had set custom values for what widgets to display and in what order on your overview page you will have to re-select them using the "Screen Options" tab on the overview page and by dragging and dropping the widgets in to place.
239
 
240
  == Changelog ==
241
+ = 10.0.4 =
242
+ * Release Date: January 21, 2016
243
+ * Fixed: Recent Visitors widget in the dashboard did not work.
244
+ * Fixed: Top Visitors in Overview page would not reload.
245
+ * Fixed: Links for yesterday and older visitors count went to wrong page.
246
+ * Fixed: Typo in purge code that caused a fatal error.
247
+
248
  = 10.0.3 =
249
  * Release Date: January 19, 2016
250
  * Updated: Google map API now always uses https.
wp-statistics.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: WP Statistics
4
  Plugin URI: http://wp-statistics.com/
5
  Description: Complete statistics for your WordPress site.
6
- Version: 10.0.3
7
  Author: Mostafa Soufi & Greg Ross
8
  Author URI: http://wp-statistics.com/
9
  Text Domain: wp_statistics
@@ -12,7 +12,7 @@ License: GPL2
12
  */
13
 
14
  // These defines are used later for various reasons.
15
- define('WP_STATISTICS_VERSION', '10.0.3');
16
  define('WP_STATISTICS_MANUAL', 'manual/WP Statistics Admin Manual.');
17
  define('WP_STATISTICS_REQUIRED_PHP_VERSION', '5.3.0');
18
  define('WP_STATISTICS_REQUIRED_GEOIP_PHP_VERSION', WP_STATISTICS_REQUIRED_PHP_VERSION);
@@ -448,7 +448,7 @@ License: GPL2
448
  add_meta_box( 'wps_search_postbox', __( 'Search Engine Referrals', 'wp_statistics' ), 'wp_statistics_generate_overview_postbox_contents', $WP_Statistics->menu_slugs['overview'], 'normal', null, array( 'widget' => 'search' ) );
449
  add_meta_box( 'wps_words_postbox', __( 'Latest Search Words', 'wp_statistics' ), 'wp_statistics_generate_overview_postbox_contents', $WP_Statistics->menu_slugs['overview'], 'normal', null, array( 'widget' => 'words' ) );
450
  add_meta_box( 'wps_pages_postbox', __( 'Top 10 Pages', 'wp_statistics' ), 'wp_statistics_generate_overview_postbox_contents', $WP_Statistics->menu_slugs['overview'], 'normal', null, array( 'widget' => 'pages' ) );
451
- add_meta_box( 'wps_visitors_postbox', __( 'Recent Visitors', 'wp_statistics' ), 'wp_statistics_generate_overview_postbox_contents', $WP_Statistics->menu_slugs['overview'], 'normal', null, array( 'widget' => 'recent' ) );
452
 
453
  // Left side "thin" widgets.
454
  add_meta_box( 'wps_summary_postbox', __( 'Summary', 'wp_statistics'), 'wp_statistics_generate_overview_postbox_contents', $WP_Statistics->menu_slugs['overview'], 'side', null, array( 'widget' => 'summary' ) );
3
  Plugin Name: WP Statistics
4
  Plugin URI: http://wp-statistics.com/
5
  Description: Complete statistics for your WordPress site.
6
+ Version: 10.0.4
7
  Author: Mostafa Soufi & Greg Ross
8
  Author URI: http://wp-statistics.com/
9
  Text Domain: wp_statistics
12
  */
13
 
14
  // These defines are used later for various reasons.
15
+ define('WP_STATISTICS_VERSION', '10.0.4');
16
  define('WP_STATISTICS_MANUAL', 'manual/WP Statistics Admin Manual.');
17
  define('WP_STATISTICS_REQUIRED_PHP_VERSION', '5.3.0');
18
  define('WP_STATISTICS_REQUIRED_GEOIP_PHP_VERSION', WP_STATISTICS_REQUIRED_PHP_VERSION);
448
  add_meta_box( 'wps_search_postbox', __( 'Search Engine Referrals', 'wp_statistics' ), 'wp_statistics_generate_overview_postbox_contents', $WP_Statistics->menu_slugs['overview'], 'normal', null, array( 'widget' => 'search' ) );
449
  add_meta_box( 'wps_words_postbox', __( 'Latest Search Words', 'wp_statistics' ), 'wp_statistics_generate_overview_postbox_contents', $WP_Statistics->menu_slugs['overview'], 'normal', null, array( 'widget' => 'words' ) );
450
  add_meta_box( 'wps_pages_postbox', __( 'Top 10 Pages', 'wp_statistics' ), 'wp_statistics_generate_overview_postbox_contents', $WP_Statistics->menu_slugs['overview'], 'normal', null, array( 'widget' => 'pages' ) );
451
+ add_meta_box( 'wps_recent_postbox', __( 'Recent Visitors', 'wp_statistics' ), 'wp_statistics_generate_overview_postbox_contents', $WP_Statistics->menu_slugs['overview'], 'normal', null, array( 'widget' => 'recent' ) );
452
 
453
  // Left side "thin" widgets.
454
  add_meta_box( 'wps_summary_postbox', __( 'Summary', 'wp_statistics'), 'wp_statistics_generate_overview_postbox_contents', $WP_Statistics->menu_slugs['overview'], 'side', null, array( 'widget' => 'summary' ) );