public static function set_hit_count($fix_count = false) { global $iwp_mmb_core; if ($fix_count || !is_admin() && !IWP_MMB_Stats::is_bot()) { $date = date('Y-m-d'); $iwp_client_user_hit_count = (array) get_option('iwp_client_user_hit_count'); if (!$iwp_client_user_hit_count) { $iwp_client_user_hit_count[$date] = 1; update_option('iwp_client_user_hit_count', $iwp_client_user_hit_count); } else { $dated_keys = array_keys($iwp_client_user_hit_count); $last_visit_date = $dated_keys[count($dated_keys) - 1]; $days = intval((strtotime($date) - strtotime($last_visit_date)) / 60 / 60 / 24); if ($days > 1) { $date_to_add = date('Y-m-d', strtotime($last_visit_date)); for ($i = 1; $i < $days; $i++) { if (count($iwp_client_user_hit_count) > 14) { $shifted = @array_shift($iwp_client_user_hit_count); } $next_key = strtotime('+1 day', strtotime($date_to_add)); if ($next_key == $date) { break; } else { $iwp_client_user_hit_count[$next_key] = 0; } } } if (!isset($iwp_client_user_hit_count[$date])) { $iwp_client_user_hit_count[$date] = 0; } if (!$fix_count) { $iwp_client_user_hit_count[$date] = (int) $iwp_client_user_hit_count[$date] + 1; } if (count($iwp_client_user_hit_count) > 14) { $shifted = @array_shift($iwp_client_user_hit_count); } update_option('iwp_client_user_hit_count', $iwp_client_user_hit_count); } } }