| | 849 | * Admin menu bubble for data export or removal requests. |
| | 850 | * |
| | 851 | * @since 4.9.6 |
| | 852 | */ |
| | 853 | |
| | 854 | add_filter( 'add_menu_classes', '_wp_export_removal_request_bubble' ); |
| | 855 | function _wp_export_removal_request_bubble( $menu ){ |
| | 856 | // Start with a count of 0 |
| | 857 | $request_count = 0; |
| | 858 | |
| | 859 | // Get number of export requests that have been confirmed, and add to $request_count |
| | 860 | $export_requests = new WP_Privacy_Data_Export_Requests_Table( array( |
| | 861 | 'plural' => 'privacy_requests', |
| | 862 | 'singular' => 'privacy_request', |
| | 863 | ) ); |
| | 864 | |
| | 865 | $export_requests->process_bulk_action(); |
| | 866 | $export_requests->prepare_items(); |
| | 867 | |
| | 868 | foreach( $export_requests as $request ){ |
| | 869 | $status = $request[0]->status; |
| | 870 | if( 'request-confirmed' == $status ){ |
| | 871 | $request_count++; |
| | 872 | } |
| | 873 | } |
| | 874 | |
| | 875 | // Get number of removal requests that have been confirmed, and add to $request_count |
| | 876 | $removal_requests = new WP_Privacy_Data_Removal_Requests_Table( array( |
| | 877 | 'plural' => 'privacy_requests', |
| | 878 | 'singular' => 'privacy_request', |
| | 879 | ) ); |
| | 880 | |
| | 881 | $removal_requests->process_bulk_action(); |
| | 882 | $removal_requests->prepare_items(); |
| | 883 | |
| | 884 | foreach( $removal_requests as $request ){ |
| | 885 | $status = $request[0]->status; |
| | 886 | if( 'request-confirmed' == $status ){ |
| | 887 | $request_count++; |
| | 888 | } |
| | 889 | } |
| | 890 | |
| | 891 | // Loop through menu items |
| | 892 | foreach( $menu as $menu_key => $menu_data ){ |
| | 893 | // If not the Tools menu, continue |
| | 894 | if( 'tools.php' != $menu_data[2] ) |
| | 895 | continue; |
| | 896 | // On Tools menu add the bubble with the $request_count calculated above. |
| | 897 | $menu[$menu_key][0] .= " <span class='update-plugins count-$request_count'><span class='plugin-count'>" . number_format_i18n( $request_count ) . '</span></span>'; |
| | 898 | } |
| | 899 | return $menu; |
| | 900 | } |
| | 901 | |
| | 902 | /** |