From e14817b373fe0decf4a90d38c2629b852b3006ea Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Fri, 10 Jan 2025 11:22:26 -0400 Subject: [PATCH 1/2] Fix missing latest entries on dashboard --- .../controllers/FrmDashboardController.php | 4 +++- classes/controllers/FrmEntriesController.php | 15 +------------- classes/helpers/FrmEntriesHelper.php | 20 +++++++++++++++++++ 3 files changed, 24 insertions(+), 15 deletions(-) diff --git a/classes/controllers/FrmDashboardController.php b/classes/controllers/FrmDashboardController.php index b4fa49e6de..6422a8a728 100644 --- a/classes/controllers/FrmDashboardController.php +++ b/classes/controllers/FrmDashboardController.php @@ -44,7 +44,9 @@ public static function load_page() { self::remove_admin_notices_on_dashboard(); self::load_assets(); - add_filter( 'manage_' . sanitize_title( FrmAppHelper::get_menu_name() ) . '_page_formidable-dashboard_columns', 'FrmDashboardController::entries_columns' ); + $unread_count = FrmEntriesHelper::get_visible_unread_inbox_count(); + + add_filter( 'manage_' . sanitize_title( FrmAppHelper::get_menu_name() ) . ( $unread_count ? '-' . $unread_count : '' ) . '_page_formidable-dashboard_columns', 'FrmDashboardController::entries_columns' ); add_filter( 'frm_show_footer_links', '__return_false' ); add_filter( 'screen_options_show_screen', '__return_false' ); } diff --git a/classes/controllers/FrmEntriesController.php b/classes/controllers/FrmEntriesController.php index ef73513803..f0c44a3990 100644 --- a/classes/controllers/FrmEntriesController.php +++ b/classes/controllers/FrmEntriesController.php @@ -333,20 +333,7 @@ private static function base_column_key( $menu_name = '' ) { $menu_name = FrmAppHelper::get_menu_name(); } - if ( FrmAppHelper::pro_is_installed() && is_callable( 'FrmProAppHelper::get_settings' ) ) { - $settings = FrmProAppHelper::get_settings(); - $inbox_badge_off = ! empty( $settings->inbox ) && ! isset( $settings->inbox['badge'] ); - - if ( $inbox_badge_off ) { - // When the badge is disabled, the unread count is not included in the menu name. - $unread_count = 0; - } - } - - if ( ! isset( $unread_count ) ) { - $inbox = new FrmInbox(); - $unread_count = count( $inbox->unread() ); - } + $unread_count = FrmEntriesHelper::get_visible_unread_inbox_count(); return sanitize_title( $menu_name ) . ( $unread_count ? '-' . $unread_count : '' ) . '_page_formidable-entries'; } diff --git a/classes/helpers/FrmEntriesHelper.php b/classes/helpers/FrmEntriesHelper.php index a6afaa3437..0c23e995a1 100644 --- a/classes/helpers/FrmEntriesHelper.php +++ b/classes/helpers/FrmEntriesHelper.php @@ -866,4 +866,24 @@ public static function get_entry_statuses() { return $existing_entry_statuses; } + + /** + * @since x.x + * + * @return int + */ + public static function get_visible_unread_inbox_count() { + if ( FrmAppHelper::pro_is_installed() && is_callable( 'FrmProAppHelper::get_settings' ) ) { + $settings = FrmProAppHelper::get_settings(); + $inbox_badge_off = ! empty( $settings->inbox ) && ! isset( $settings->inbox['badge'] ); + + if ( $inbox_badge_off ) { + // When the badge is disabled, the unread count is not included in the menu name. + return 0; + } + } + + $inbox = new FrmInbox(); + return count( $inbox->unread() ); + } } From 459a93b71303f3e4d196c154a25181b72238c95e Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Fri, 10 Jan 2025 11:23:25 -0400 Subject: [PATCH 2/2] Fix spacing --- classes/helpers/FrmEntriesHelper.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/classes/helpers/FrmEntriesHelper.php b/classes/helpers/FrmEntriesHelper.php index 0c23e995a1..c903a445f9 100644 --- a/classes/helpers/FrmEntriesHelper.php +++ b/classes/helpers/FrmEntriesHelper.php @@ -883,7 +883,7 @@ public static function get_visible_unread_inbox_count() { } } - $inbox = new FrmInbox(); + $inbox = new FrmInbox(); return count( $inbox->unread() ); } }