Re: Mega Menu

Permalink Browser Info Environment
Hi, I'm trying to add Mega Menu to a page, but it has thrown up an error and won't work.
Undefined property: Concrete\Package\JbMegamenu\Block\JbMegamenu\Controller::$requestArray

Type: Ticket
Status: Resolved
KarenSloan
View Replies:
jb1 replied on at Permalink Reply
jb1
Thanks for letting me know about it.
I haven't done a test install of 9.1.3 yet although I wasn't aware of any breaking changes.
In the meantime to help isolate the cause of the issue can you please clarify:
1) have you used the addon on any other site that was using an older version of Concrete?
2) did you change any settings in the Menu editor interface? I'm curious if you just leave all the default options of that saves ok.

On another note, I see in your environment settings that block caching is turned on. I'd suggest turning off all caching in the dashboard while you're building the site to ensure everything runs smoothly.

Once you have provided those answers I'll dig in further.

Much appreciated.

JB
KarenSloan replied on at Permalink Reply
KarenSloan
Hi JB,

Thank you for getting back to me.
1. No, I haven’t used it on any other site.
2. No, I didn’t change any settings.
I have turned off all cache.

This is the full error I am getting.

Undefined property: Concrete\Package\JbMegamenu\Block\JbMegamenu\Controller::$requestArray

Details

/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Block/BlockController.php(698): Whoops\Exception\ErrorException->null
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Block/BlockController.php(698): Whoops\Run->handleError
/home/sloandes/public_html/fairbankhouse.com.au/packages/jb_megamenu/blocks/jb_megamenu/controller.php(203): Concrete\Core\Block\BlockController->post
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Entity/Block/BlockType/BlockType.php(675): Concrete\Package\JbMegamenu\Block\JbMegamenu\Controller->save
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Page/Collection/Collection.php(1032): Concrete\Core\Entity\Block\BlockType\BlockType->add
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Page/Page.php(2659): Concrete\Core\Page\Collection\Collection->addBlock
/home/sloandes/public_html/fairbankhouse.com.au/concrete/controllers/dialog/page/add_block.php(100): Concrete\Core\Page\Page->addBlock
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Controller/AbstractController.php(318): Concrete\Controller\Dialog\Page\AddBlock->submit
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Controller/AbstractController.php(318): null->call_user_func_array
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Routing/ControllerRouteAction.php(64): Concrete\Core\Controller\AbstractController->runAction
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/RouteDispatcher.php(37): Concrete\Core\Routing\ControllerRouteAction->execute
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/DispatcherDelegate.php(39): Concrete\Core\Http\RouteDispatcher->dispatch
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/MiddlewareStack.php(86): Concrete\Core\Http\Middleware\DispatcherDelegate->next
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/DefaultDispatcher.php(127): Concrete\Core\Http\Middleware\MiddlewareStack->process
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/DefaultDispatcher.php(60): Concrete\Core\Http\DefaultDispatcher->handleDispatch
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/DispatcherDelegate.php(39): Concrete\Core\Http\DefaultDispatcher->dispatch
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/FrameOptionsMiddleware.php(39): Concrete\Core\Http\Middleware\DispatcherDelegate->next
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\FrameOptionsMiddleware->process
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/StrictTransportSecurityMiddleware.php(36): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\StrictTransportSecurityMiddleware->process
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/ContentSecurityPolicyMiddleware.php(36): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\ContentSecurityPolicyMiddleware->process
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/CookieMiddleware.php(35): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\CookieMiddleware->process
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/ApplicationMiddleware.php(29): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\ApplicationMiddleware->process
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/Middleware/MiddlewareStack.php(86): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Http/DefaultServer.php(85): Concrete\Core\Http\Middleware\MiddlewareStack->process
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Foundation/Runtime/Run/DefaultRunner.php(125): Concrete\Core\Http\DefaultServer->handleRequest
/home/sloandes/public_html/fairbankhouse.com.au/concrete/src/Foundation/Runtime/DefaultRuntime.php(102): Concrete\Core\Foundation\Runtime\Run\DefaultRunner->run
/home/sloandes/public_html/fairbankhouse.com.au/concrete/dispatcher.php(45): Concrete\Core\Foundation\Runtime\DefaultRuntime->run
/home/sloandes/public_html/fairbankhouse.com.au/index.php(3): null->require
cheers
jb1 replied on at Permalink Reply
jb1
Ah, that error looks familiar. I took a closer look at your environment supplied and noticed you're running PHP 8.1.

I've found a number of significant issues a few months back when trying to run ConcreteCMS 9.x with PHP 8.x. At the time I checked it, the core team was saying it was not fully ready for PHP 8. But they've made some progress on it recently and now it's compatible with ConcreteCMS 9.1.1 (https://documentation.concretecms.org/developers/introduction/system-requirements). However, I'm still noticing a few messages in forums from other users running into PHP 8 related bugs in the core. So my advice would be to run PHP 7.4 for the time being (if possible) until these bugs are ironed out. There's less benefit to being on the relative bleeding edge. This workaround should keep things flowing smoothly in the short-term.

I haven't had a chance to test this add-on in a newer version of Concrete, but will get PHP 8 setup on my development environment in the coming weeks and then troubleshoot this situation.

Hope this helps.

JB
KarenSloan replied on at Permalink Reply
KarenSloan
Hi JB,
Thanks for getting back to me.
Unfortunately, my hosting provider has moved to PHP 8.1 and I can no longer access PHP 7.4 as it is no longer supported.
Am I able to request a refund please?
cheers
Karen
jb1 replied on at Permalink Reply
jb1
If you don't have access to PHP7.4 as a short term workaround then I'll look at this issue early this coming week. If it can be fixed quickly then I'll do that. If it turns out to be a more in-depth update that will take more time then I'll provide a refund.

It's a common issue that facing most major CMSs including WordPress... WP is not fully ready for PHP8 yet hosting companies are dropping support for 7.4 already. I've found that with a bit of pressure most hosts will back down and support 7.4 when push comes to shove. They don't want to lose customers.
jb1 replied on at Permalink Reply
jb1
Apologies for the delay. Things haven't been going as planned on this end.
The good news is I've updated the add-on for PHP8 and just completed the testing. It seems to be running smooth now. The updated package has been uploaded to the marketplace (v2.0.1) so if you try downloading that now and overwrite the package on your server, it should run smoothly.

Please let me know how that works for you.

JB
KarenSloan replied on at Permalink Reply
KarenSloan
Formal Refund Request: Please grant me a refund for the license assigned to this support request.

concrete5 Environment Information

# Concrete Version
Core Version - 9.1.3
Version Installed - 9.1.3
Database Version - 20220908074900

# Hostname
dime2000.dizinc.com

# Environment
production

# Database Information
Version: 10.3.36-MariaDB
SQL Mode: NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

# Concrete Packages
Clear Clipboard (1.0.1), Fruitful (1.2), Mega Menu (2.0), Neat (0.9.2), Touch Gallery 3 (3.3.1)

# Concrete Overrides
None

# Concrete Cache Settings
Block Cache - On
Overrides Cache - On
Full Page Caching - Off
Full Page Cache Lifetime - Every 6 hours (default setting).

# Server Software
Apache

# Server API
cgi-fcgi

# PHP Version
8.1.12

# PHP Extensions
bcmath, bz2, calendar, cgi-fcgi, Core, ctype, curl, date, dom, exif, fileinfo, filter, ftp, gd, gettext, hash, iconv, imap, intl, ionCube Loader, json, libxml, mbstring, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_mysql, pdo_sqlite, Phar, posix, pspell, readline, Reflection, session, SimpleXML, soap, sockets, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, xsl, zip, zlib

# PHP Settings
max_execution_time - 30
max_file_uploads - 20
max_input_nesting_level - 64
max_input_time - 60
max_input_vars - 1000
memory_limit - 128M
post_max_size - 74M
upload_max_filesize - 64M
zend.exception_string_param_max_len - 15
mbstring.regex_retry_limit - 1000000
mbstring.regex_stack_limit - 100000
mysqli.max_links - Unlimited
mysqli.max_persistent - Unlimited
pcre.backtrack_limit - 1000000
pcre.recursion_limit - 100000
session.cache_limiter - <i>no value</i>
session.gc_maxlifetime - 7200
soap.wsdl_cache_limit - 5
unserialize_max_depth - 4096

Browser User-Agent String

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.1 Safari/605.1.15

Hide Post Content

This will replace the post content with the message: "Content has been removed by an Administrator"

Hide Content

Request Refund

You may not request a refund that is not currently owned by you.