Photos of contacts not working in SuiteCRM 8.4

I have upgraded from version 7.x to version 8.4 and most things are working. However, in version 7.x I have been successfully using photos of contacts but I can not get it working in version 8.4. I have used Studio to add the photo field to the Edit View and Detail View layouts. However, when I open the Edit View the Photo entry is only a text field without a means to select a picture. In the Detail View there is also only a text field with the name of previously (in version 7.x) selected files, but not picture is displayed.

Any help is highly appreciated!

Thanks
Erhard

Hi @Erhard could you check the logs suitecrm log, prod.log, php log maybe tail with follow and see what errors pop up while checking out those options to see if anything stands out?

I found two logs: prod.deprecations.log and prod.log. Both contain an enormous amount of depreciation messages like (prod.log):

[2023-12-05 03:45:11] php.INFO: User Deprecated: Since api-platform/core 2.7: Use "ApiPlatform\Metadata\Resource\Factory\ResourceMetadataCollectionFactoryInterface" instead of "ApiPlatform\Core\Metadata\Resource\Factory\ResourceMetadataFactoryInterface". {"exception":"[object] (ErrorException(code: 0): User Deprecated: Since api-platform/core 2.7: Use \"ApiPlatform\\Metadata\\Resource\\Factory\\ResourceMetadataCollectionFactoryInterface\" instead of \"ApiPlatform\\Core\\Metadata\\Resource\\Factory\\ResourceMetadataFactoryInterface\". at /var/www/html/suitecrm/vendor/api-platform/core/src/Serializer/SerializerContextBuilder.php:41)"} []

and ( prod.deprecations.log)

[2023-12-05 05:11:39] php.INFO: Deprecated: Return type of GraphQL\Executor\ExecutionResult::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice {"exception":"[object] (ErrorException(code: 0): Deprecated: Return type of GraphQL\\Executor\\ExecutionResult::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice at /var/www/html/suitecrm/vendor/webonyx/graphql-php/src/Executor/ExecutionResult.php:116)"} []

How can I get rid of them? What should I specifically look for?

Thanks!

Deprecation warnings are non-blocking, so that’s not likely the cause for your issue.

Do you have any actual errors on the php log itself?

I am not sure if I am looking in the right place (the logs of the Apache webserver) but there I did not find any error messages related to the V8 installation.

I have tried to provoke an error by opening the page for editing a contact, but it didn’t generate any error message. Here is a screenshot of the page.

I thought of trying the online demo for V8, but unfortunately photos for contacts are not enabled there.

@Erhard

Ok so I don’t think you mentioned what distro you’re using, but hoping it’s one in the EL family
And assuming you’re using php-fpm like I believe it’s the default nowadays

check on

/var/log/php-fpm/www-error.log

(because the default pool for php-fpm is www)

Thanks for the reply. Unfortunately I could not find /var/log/php-fpm/www-error.log on my server (Debian Linux 11).

In the meantime I have updated to Version 8.6.1 in the hope that this solves my issue. However unfortunately the problem is still the same: When I open the “Edit View” the Photo entry is only a text field without a means to select a picture. In the Detail View there is also only a text field with the name of previously (in version 7.x) selected files, but not picture is displayed.

I have now realized that I edit my profile and select a photo: There everything seems to be working.

Any help is still highly appreciated.

Thanks,
Erhard

Are you using any add-on to add picture field in the contacts module? Share some screenshorts, it will help us to understand your problem.

Hello Erhard,

It seems like, some image fields are not implemented in the new UI, yet.
Image field is one of them - in the new UI it just renders as a text field.
If you switch to the legacy view mode, it’s working just as it used to in 7.
(at least that’s what I assume - if you add an image to the documents e. g. for testing, it works).

You can try and switch your contacts to the compatibility mode: