Profile dropdown not working after 3.10.4 upgrade

Profile dropdown not working after 3.10.4 upgrade

by Christe McMenomy -
Number of replies: 7

SERVER configuration: LINUX 5.10.27-gentoo PHP 7.4.19 DB MariaDB 10.5.9 

I upgraded my test system from Moodle Version 3.10.3 to 3.10.4 on this server, and it worked without issue.

Then I upgraded the production system. Not everything is working. I have purged all caches several times and have killed my browser and cleared its caches. Neither action has helped.

The website log lists no errors.

Issues:

1. Top line menu options (Course menu, alarms, messages, user dropdown menu) do  not work. The icons exist and display properly, but nothing happens when they are clicked, other than a blue box appears. Clicking on the username creates a link "https://SITE-URL/moodle/?redirect=0#" but no dropdown occurs.

2. As administrator logged into the home page, the navigation menu is not expanding dropdown for Site Pages, but works to expand Site administration in the Administration box. However, submenus under site administration do not work.

3. The Site Administration page lists all tabs, but clicking on a tab has no effect.  Using Search works to navigate to a particular page (i.e., purge cache), at which point the dropdown menu displays in the navigation bar.

4. Putting the system in full debug mode with html display turned produces no error messages when clicking on the user name and encountering the drop-down failure.

5.  We are using the Boost theme as default for desktop.  Changing to Classic did not solve the issue.  Changing back to Boost did not solve the issue.

6. Editor icons to edit text entry fields are not working (there are blank boxes).  Clicking on the boxes executes the code (e.g., I can toggle to HTML mode and back) but the icons are not showing up.

As far as I can tell, there are no differences in code between the test site (working) and the production site (broken), other than the configuration file. They are using different databases in the same database instance.

Any suggestions are welcome, as we are pretty much stuck right now.




Average of ratings: -
In reply to Christe McMenomy

Re: Profile dropdown not working after 3.10.4 upgrade

by Leon Stringer -
Picture of Core developers Picture of Particularly helpful Moodlers

If I've determined your Moodle site correctly then there are errors when the page loads in the browser console (for example: Web Console in Firefox), the first error being in the file first.js. Clicking on this file in the console shows it in the browser. It should contain just source code text but the file contains binary including lines like:

...Mac OS X ... ATTR ... com.apple.quarantine ... q/0081;60a00559;Chrome;91AD64F3-5B0E-4829-98E0-82BBD8D7A8A3

So maybe macOS has modified – and broken – some of the Moodle source code files?

If this is the case, try uploading the Moodle source code to the production site again, either from the working test site or from Moodle.org. Keep a copy of the current source code on the production site so you can copy config.php across.

Average of ratings: Useful (1)
In reply to Leon Stringer

Re: Profile dropdown not working after 3.10.4 upgrade

by Christe McMenomy -
I thought I had checked for the odd characters, since I have seen Mac OS copies create problems before. Apparently I didn't check well enough, because when I completely rebuilt the moodle directory, including my additional modules, from raw Moodle zip files, everything worked.
Thank you very much for your help!
In reply to Christe McMenomy

Re: Profile dropdown not working after 3.10.4 upgrade

by Christe McMenomy -
Well...now I am really stuck.
I cannot log into either the test or the production Moodle instances as the administrator or as a normal user.

Everything appeared to be okay after we reloaded the moodle subdirectory with a clean copy of the code. I logged out and back in several times both as administrator and my teacher identity.

About two hours later, I started seeing invalid token errors in the webserver log. I can get to the Moodle login page, but when I enter my userid and password, the system simply hangs. Since I can no longer ​log in as the administrator, I can't review any log information as I normally would. In the last hour, I have tried numerous times to log in as my teacher account and as administrator, but I am not even generating error messages now. The login simply hangs: it never generates any error or any other response.

I do have access to the database through PHPmyAdmin. Any ideas what I might check now?
In reply to Christe McMenomy

Re: Profile dropdown not working after 3.10.4 upgrade

by Christe McMenomy -
Note: I am seeing a "TLS handshake" message, which appears to be new.
I have verified the configuration files,

The system is working correctly on my Mac.
In reply to Christe McMenomy

Re: Profile dropdown not working after 3.10.4 upgrade

by Ken Task -
Picture of Particularly helpful Moodlers

Pardon intrusion ...

your reporting TLS handshake errors

Might check config of SSL/certificates for your server with
SSLLabs.   While cert if valid via LetsEncrypt and a bot to renew, that doesn't config protocols and ciphers.

There are protocols which should no longer be supported.
Example: TLS 1.0 and 1.1 should be dropped, leaving only TLS 1.2 and 1.3.
TLS 1.3 should be first.
and ciphers should also be checked.

Various Browser clients have provided approximate deadlines for disabling TLS 1.0 and TLS 1.1 protocol:
Browser Name         Date
Microsoft IE and Edge         First half of 2020
Mozilla Firefox         March 2020
Safari/Webkit         March 2020
Google Chrome         January 2020

Also, you have other php applications at the same level as your moodle code in /moodle/ of your site and above.   Any using .htaccess rules above /moodle/?

'SoS', Ken

In reply to Ken Task

Re: Profile dropdown not working after 3.10.4 upgrade

by Christe McMenomy -
You were right about the system slowing down. I had set theme designer on when I was trying to debug the failure of icons for text field editing to display. (It didn't help, since that issue was bad Mac upload end-of-line characters, but I forgot to turn it off). However, I apparently managed to work during an assault on the server, which overloaded the database. The token errors where caused by queries timing out; a few minutes after I sent the message, the Moodle started reporting that the database was either overloaded or down. About two hours later, everything cleared out without any other intervention, and now it all works.

So: initial issue caused by bad Mac upload; fixed by using the Moodle site zip file and manually updating all modules.
Secondary issue (some login failures) was due to using the wrong config.php file specifying the wrong DB; that was fixed by putting the right one in place.
Third issue (DB failure) caused by overtaxing the DB; that fixed itself. I must say I'm impressed by mariadb's hardyhood.

Thank you for your help. We've had no problems since Sat night (our time)..so nearly 40 hours working. I'd say we're good.
In reply to Christe McMenomy

Re: Profile dropdown not working after 3.10.4 upgrade

by Leon Stringer -
Picture of Core developers Picture of Particularly helpful Moodlers

Can you share these invalid token errors as they appear in the logs? If these errors contain any information that you don't want to share on the Internet then remove or obscure that part.

I don't think the TLS handshake message is part of a problem, you may be seeing this because your site is slow which is probably because you have Theme Designer Mode on.

The system is working correctly on my Mac – Which system does this refer to? Do you mean Moodle logins are working from a specific computer?

Are the users you're trying to log in as authenticated by Moodle – "manual" authentication in Moodle's terminology – as opposed to using an external service like LDAP or OAuth 2.