Troubleshooting EngageBox

Published in EngageBox
Updated 11 May, 2019

Here's a troubleshooting guide to help you identify and fix issues with the EngageBox extension.

Detecting Javascript Errors

View your site using Chrome or Firefox and press F12 to open up the Developer Tools. Then click on the "Console" tab which shows any Javascript errors that your site may be experiencing. If there is an error, it will include a filename and line number. If the filename is within a plugin, try deactivating that plugin and reload the page. This first step is critical, so don’t overlook it.

Look for multiple instances of jQuery

Right click on your page and select "view source." With the source opened, use the search feature of your browser (often CTRL + F) to search for ‘jQuery’ without the single quotes. Paging through the results, look for multiple instances of jQuery.js, jQuery.1.4.0.js, jQuery.1.8.3.min.js, or something similar. If you locate numerous inclusions of jQuery, you have probably uncovered the cause of your issues. Try to find which extensions are making the calls and deactivating them one by one. Once you find the culprit, feel free to email their support team asking them to fix their poor coding choices.

Other Things to Check

Here's a list of things to check when a box is not showing up.

  • Be sure it is published
  • Be sure you assigned it to the correct pages
  • Be sure you've set the correct "Access Level"
    • If set to "Registered" you need to login
    • If set to "Guest" you need to log out
  • If the Trigger Point is set to "on Scroll - % of Page Height", make sure you've scrolled the page down enough
  • If the Trigger Point is set to "on Scroll - Element", make sure the Trigger Element exists on the page
  • Be sure you are logged-in as a Super User if "Test Mode" is enabled.
  • Be sure you've set an appropriate Trigger Delay in milliseconds
  • The onPageLeave trigger point doesn't support mobile devices. Read more
  • Be sure the System - EngageBox Plugin is installed and enabled.
  • Clear your cache if caching is enabled
  • If you're using a cache plugin that caches the whole page output such as Page Cache, Page Cache Extended or jSGCache try disabling it
  • If your site is on Offline Mode, make sure the Enable on Offline Mode option is enabled
  • If you are using JCH Optimize System Plugin try to disable the "Combine Javascript Files" or the "Minify Javascript" option.
  • In case you're experiencing a Javascript Error try enabling the "Load media files manually" option found in the extension configuration page.
  • Check the Developer Releases section if there's a release candidate available that fixes your issue.

Known Behavior Issues

Here's a list of known issues that you may experience.

Plugin shortcodes remain unparsed

If you have plugins installed that use special code (shortcodes) such as Sourcerer or Google Maps and you want to use them within your box, make sure the Content Prepare option found in the extension's configuration page is enabled. In case the shortcode remains still unparsed, you'll probably need to re-order the EngageBox System Plugin before the plugin the parses the shortcode via the Plugins Manager.

Popup suddenly stopped showing up

If you accidentally clicked on the popup's close button, then a cookie stored on your browser is preventing the appearance of the box. Clear Your Browser's Cookies

The popup shows up even if a cookie is set

This behavior is most likely to be caused when the Test Mode is enabled. When Test Mode is enabled, no cookies are stored in the browser to help you test the box faster. Otherwise, you should clean your browser cookies every time you close it to be able to see it again.

The popup shows up even if I have enabled the Limit Impressions option

This is likely to happen for the reasons below:

  • Test Mode is enabled. When a popup is on Test Mode, the Limit Impressions option is disabled.
  • The Statistics option is disabled either in the extension's configuration page or in the popup's settings in the advanced tab.
  • A Javascript error is preventing the AJAX request responsible to track the popup impressions from being executed.

I am getting random device-detection results

This problem is probably caused by a Cache plugin such as Page Cache or JotCache. Enabling any of these plugins on your website you are more likely to get random inaccurate Device-Detection results because of the page cache. Try to disable these plugins from the Joomla! Plugin Manager.

The JavaScript Events API calls don't work

Make sure your code is wrapped with the jQuery self-enclosure like in the example below:

jQuery(function($) {
	// your code goes here

Find more details about the JavaScript Events API

PHP Fatal error: Cannot redeclare class Mobile_Detect

EngageBox is using Mobile_Detect, a lightweight PHP library for detecting visitor's device type. To avoid conflicts and PHP errors, the Mobile_Detect library is only loaded if it's not loaded by another extension already. However, there are many Joomla extensions out there which don't make this check, as a result, the following PHP fatal error.

Fatal error: Cannot redeclare class Mobile_Detect in /home/../Mobile_Detect.php on line X

Possible solution: Go to Joomla Plugins Manager and find the EngageBox System Plugin. Then try to re-order it at the end. If the problem persists, please contact the extension's support team and ask them to fix their poor coding.

I see no options in the Content tab

Joomla v3.7 introduced a bug on a mechanism (showOn) which was being used by EngageBox to display vital components like the form fields in the Content tab.

This issue affects only EngageBox v3.2.3 and below versions and the solution to this problem is to update to a most recent version of EngageBox. 

Contact Support

If you have progressed through the previous steps but have not been able to resolve your issue, then you are ready to reach out for support. Here’s how to help our support team provide the best possible assistance:

  • Please be specific as to both the problem and your desired functionality for EngageBox, and provide any URL(s) being discussed.
  • Please be concise. If you have multiple questions or a longer message, consider using bullets or numbers to help keep your questions clear and distinct.

Log into your account first and then submit a support ticket through this form.

SUMMER 2019 SALE 30% off any extension. Coupon code SUMMER2019