Posts does not use nonce for filters either // phpcs:ignore WordPress.Security.NonceVerification.Recommended $current_page = isset($_GET['page']) ? sanitize_text_field($_GET['page']) : false; // phpcs:ignore WordPress.Security.NonceVerification.Recommended $user_id = isset( $_GET['user_id'] ) ? intval($_GET['user_id']) : false; // phpcs:ignore WordPress.Security.NonceVerification.Recommended $player_id = isset( $_GET['player_id'] ) ? intval($_GET['player_id']) : false; // phpcs:ignore WordPress.Security.NonceVerification.Recommended $date_range = isset($_REQUEST['stats_range']) ? sanitize_text_field($_REQUEST['stats_range']) : 'this_week'; // Validate the interval $interval = FV_Player_Stats::get_interval_from_range($date_range); if ( ! $interval || empty( $interval[0] ) || empty( $interval[1] ) ) { $date_range = 'this_week'; } if( $player_id ) { // specific player stats $fv_single_player_stats_data = $FV_Player_Stats->get_player_stats( $player_id, $date_range ); } else { // aggregated top stats if( ( strcmp($current_page, 'fv_player_stats') === 0 ) || ( strcmp($current_page, 'fv_player_stats_users') === 0 && is_int($user_id) ) ) { // aggegated top stats for videos, posts and watch time, show for both but for fv_player_stats_users only if user_id is set $fv_video_stats_data = $FV_Player_Stats->get_top_video_post_stats( 'video', $date_range, $user_id); $fv_post_stats_data = $FV_Player_Stats->get_top_video_post_stats( 'post', $date_range, $user_id); $fv_video_watch_time_stats_data = $FV_Player_Stats->get_top_video_watch_time_stats( $date_range, $user_id ); if($user_id) $fv_player_interval_valid = $FV_Player_Stats->get_valid_interval($user_id); } if( ! $user_id && strcmp($current_page, 'fv_player_stats_users') === 0 ) { // aggregated top 10 stats for all users, only show on fv_player_stats_users when no user is selected $fv_user_play_stats_data = $FV_Player_Stats->get_top_user_stats( 'play', $date_range); $fv_user_watch_time_stats_data = $FV_Player_Stats->get_top_user_stats( 'seconds', $date_range); } } // select2 wp_enqueue_script( 'fv-select2-js', flowplayer::get_plugin_url().'/js/select2/select2.full.min.js' , array('jquery'), $fv_wp_flowplayer_ver ); wp_enqueue_style( 'fv-select2-css', flowplayer::get_plugin_url().'/css/select2.min.css', array(), $fv_wp_flowplayer_ver ); // chartjs wp_enqueue_script( 'fv-chartjs', flowplayer::get_plugin_url().'/js/chartjs/chart.min.js', array('jquery'), $fv_wp_flowplayer_ver ); wp_enqueue_script( 'fv-chartjs-html-legend', flowplayer::get_plugin_url().'/js/chartjs/html-legend.js', array('fv-chartjs'), $fv_wp_flowplayer_ver ); ?>