Missing Elements

Hello Everyone,
I seem to be coming across some missing elements in the Gibbon system, and I need some help. There is a missing “Enrolment” section on the staff dashboard, that was previously saying it was due to a hook error, but not it’s no longer saying that, but rather just blank. Same thing when I try to make a template in reports. The sections drag and drop elements are not appearing. I will attach screenshots to show you what I mean.


Here are my system specs:

Apache/2.4.52 (Ubuntu)
PHP: 8.1.2
MySQL: 8.0.30-0ubuntu0.22.04.1
MySQL Collation: utf8mb3_general_ci
Gibbon v25.0.00/Line: 23
Error Log Attached

Thank you,
Jack

Hi Jack, I see that you’re running v25, which is a development version. We do aim to keep it as stable as possible, but there can be the odd bug as we’re constantly adding to the dev version.

In the error log I’m seeing there are some errors related to database connection classes, which is odd, given that some pages appear to be loading so the database as a whole must be working. If you’ve updated recently, be sure you have a fresh copy of the src and vendor folders, and that the file permissions for your system are server-accessible.

For the report templates, be sure to go into Template Builder > Manage Assets and run the Scan at least once to populate your assets.

For the enrolment tab, there was a recent change in v25 related to permissions for this tab which could have caused a bug. Can you check that your current user has Admissions > New Students and/or Admissions > Left Students permissions in the User Admin > Manage Permissions page, as these permissions now control who can see the enrolment content.

When I try to run the Asset Scan for the reports template builder, I am getting the Gibbon Error Page.

Additionally, I don’t see Admissions > New Students or Admissions > Left Students permissions in the permissions section of User Admin.

When I run the asset scan, this is the error I get:
Warning: The use statement with non-compound name ‘TCPDF_FONTS’ has no effect in /var/www/..org/modules/Reports/templates_assets_scanProcess.php on line 24

Warning: session_set_save_handler(): Session save handler cannot be changed after headers have already been sent in /var/www/..org/src/Session/SessionFactory.php on line 73

Warning: ini_set(): Session ini settings cannot be changed after headers have already been sent in /var/www/..org/src/Session/SessionFactory.php on line 76

Warning: session_cache_limiter(): Session cache limiter cannot be changed after headers have already been sent in /var/www/..org/src/Session/SessionFactory.php on line 77

Warning: session_start(): Session cannot be started after headers have already been sent in /var/www/..org/src/Session/SessionFactory.php on line 83

Warning: Cannot modify header information - headers already sent by (output started at /var/www/..org/modules/Reports/templates_assets_scanProcess.php:24) in /var/www/..org/src/Session/SessionFactory.php on line 87

Warning: Cannot modify header information - headers already sent by (output started at /var/www/..org/modules/Reports/templates_assets_scanProcess.php:24) in /var/www/..org/src/Session/SessionFactory.php on line 88

Warning: Cannot modify header information - headers already sent by (output started at /var/www/..org/modules/Reports/templates_assets_scanProcess.php:24) in /var/www/..org/modules/Reports/templates_assets_scanProcess.php on line 38

Along with this error message on the “My Reporting” page:

And this on the write reports page:

Along with many messages like this as well ?:
Deprecated: substr(): Passing null to parameter #1 ($string) of type string is deprecated

Hi @ross do you have any update on this? I still can’t get anything to appear on the template builder for reports.

Hi Jack,

Warnings and deprecations aren’t code errors, they’re generally just meant for developers. In this case, displaying the errors on-screen is interrupting the page redirect. If you’re using this in production, be sure to set your error log settings in php.ini so that these messages do not display. If you don’t have access to php.ini, another option is to add the following to the bottom of your config.php file:

`ini_set('display_errors', 0);
ini_set('error_reporting', E_ALL & ~E_DEPRECATED & ~E_WARNING);`
```

I also noticed that in the original question on Oct. 9, he listed his operating parameters that included “MySQL Collation: utf8mb3_general_ci.” On my Gibbon version 24 system Admin->System Check section “System Requirements” the item “MySQL Collation” has a note that “Database collation should be set to utf8_general_ci.” Unless that has changed going to version 25, that could be providing some strange behavior. They look similar, but there are some differences in the collation.