• Resolved dooza

    (@dooza)


    I am getting this fatal error whilst logging in to the site:

    2485664#2485664: *542239 FastCGI sent in stderr: “PHP message: PHP Fatal error: Uncaught Error: Call to undefined method FooEvents_POS_Integration::fooeventspos_get_app_slug() in /home/1463228.cloudwaysapps.com/vwuwrmqqvk/public_html/wp-content/plugins/breeze/inc/cache/config-cache.php:429

    I am using FooEvents POS 1.12.9, and Breeze 2.5.13.

    When I get the fatal error during login, I can go back to the home page and see I am in fact logged in, and can now access the backend without errors.

    The page I need help with: [log in to see the link]

Viewing 3 replies - 1 through 3 (of 3 total)
  • Thread Starter dooza

    (@dooza)

    I think I have found the issue. The method fooeventspos_get_app_slug isn’t part of the FooEvents_POS_Integration class, it’s part of FooEventsPOS_Appearance_Settings.

    Plugin Author owaisalam

    (@owaisalam)

    Thanks for the detailed report and for digging into the cause — that’s really helpful.

    This happens because of a class/method mismatch in how the FooEvents POS integration is referenced: fooeventspos_get_app_slug() is called against FooEvents_POS_Integration, while it actually exists on FooEventsPOS_Appearance_Settings. Since there was no method_exists() check in place, the mismatch surfaces as an uncaught fatal error rather than failing silently.

    Here’s a fix for config-cache.php, replacing lines 428–437: if ( class_exists( 'FooEventsPOS' ) ) { $pos_page_slug = ''; if ( method_exists( 'FooEventsPOS_Appearance_Settings', 'fooeventspos_get_app_slug' ) ) { $pos_page_slug = FooEventsPOS_Appearance_Settings::fooeventspos_get_app_slug(); } $exclude_foo_events_give_pages = Breeze_Ecommerce_Cache::factory()->exclude_fooevents_pos_pages(); if ( ! empty( $exclude_foo_events_give_pages ) ) { $ecommerce_exclude_urls = array_merge( $exclude_foo_events_give_pages, $ecommerce_exclude_urls ); if ( is_string( $pos_page_slug ) && '' !== $pos_page_slug ) { $ecommerce_exclude_urls[] = '/' . $pos_page_slug . '/*'; } } }

    This references the correct class and adds a method_exists() guard, so if FooEvents POS changes its class structure again in the future, the integration will simply skip that step instead of throwing a fatal error.

    We’ll include this in an upcoming release. In the meantime, you’re welcome to apply the change directly to wp-content/plugins/breeze/inc/cache/config-cache.php as a workaround.

    Thanks again for taking the time to report this with a clear writeup.

    • This reply was modified 4 days, 7 hours ago by owaisalam.
    Thread Starter dooza

    (@dooza)

    Hi @owaisalam, thank you for confirming my suspicions. I had already tried to edit the file vis SFTP, but due to being hosted on Cloudways it wouldn’t upload the changes. Hopefully the changes make it into an update asap.

Viewing 3 replies - 1 through 3 (of 3 total)

You must be logged in to reply to this topic.