Missing dashboard dropdown intermittently after upgrade

Permalink
I upgraded my personal site to 5.5.2.1 awhile ago and since then it's had intermittent times when the dashboard dropdown doesn't display anything other than the "News" and "Extend" entries, everything else is missing. It kind of comes and goes, it was just working for a month or so and now it's back to not displaying anything again.

Has anyone else seen this or have any ideas what could cause it?

hereNT
 
JohntheFish replied on at Permalink Reply
JohntheFish
Because a lot of the script loading is moved to the footer, I find 5.5+ is more sensitive to the timing vagaries of scripts that are not wrapped in proper ready handlers and scripts with errors - though I have yet to see the symptoms you describe.

Maybe the symptoms coincide with script errors or other load errors reported in the developer console?
hereNT replied on at Permalink Reply
hereNT
I don't even see an ajax request when the dropdown comes down, I'm not sure if maybe it happens on page load? I thought it was probably generated by PHP, not javascript.
ConcreteOwl replied on at Permalink Reply
ConcreteOwl
Check your site.php file is referencing the correct update folder,
From your source it appears to be referencing /updates/concrete5.4.1.1/
hereNT replied on at Permalink Reply
hereNT
It's the correct folder, I tried doing an automatic update once and had it break stuff so since then I've manually downloaded the core, then put it into the 5.4.1.1 folder in the updates folder, then manually hit the url to do the upgrade.
JohntheFish replied on at Permalink Reply
JohntheFish
Its generated by php, but includes a lot of generated JavaScript that is loaded in the footer then the script executes to position it over the head of the page. Hence its vulnerability to any php glitch that would prevent it from being completely or accurately rendered, or any JavaScript glitch that would prevent it from being positioned and shown. Hence my suggestion of looking at the console for script errors. Php errors could also be behind it, so looking at the php error log would also be relevant.

Nevertheless, Weyboat's suggestion is the simplest to check first.
hereNT replied on at Permalink Reply
hereNT
Do you know where the PHP is generated? I could throw some breakpoints into the debugger and see if I can figure out anything that way if I knew where this code lived...
JohntheFish replied on at Permalink Reply
JohntheFish
Not off hand. I would have to go searching through the code to find out. My usual search trick is to find some html class or id in the developer console, then do a text search for that in the concrete php files. I doubt if is relevant unless there are errors in the php error log, in which case they will tell you where to look.

Have you already ruled out any JavaScript errors reported in the developer console coinciding with your incomplete menu?
hereNT replied on at Permalink Reply
hereNT
Yeah, there are no javascript errors in the console at all. Now after logging out and back in again it has the full menu again, not sure how long it will last for this time so I can't even really try to debug it at the moment :(