I installed ProjeQtOr version 8.2.3 with NGINX HTTP Server, PHP7.0 and MariaDB to our server which runs Ubuntu 16.04.6 LTS as described in official install instructions. Installation went flawless but if I try to open ProjeQtOr, it spew an error: "Impossible to load class id".
And ProjeQtOr's log file contains this lines related to the error:
2019-11-29 08:10:17.448 ** ERROR ** [] EXCEPTION ** 2019-11-29 08:10:17.448 ** ERROR ** [] on file '/var/www/projeqtor/model/persistence/SqlElement.php' at line (3059) 2019-11-29 08:10:17.448 ** ERROR ** [] cause = Class 'id' not found 2019-11-29 08:10:17.448 ** ERROR ** [] => #0 /var/www/projeqtor/model/persistence/SqlElement.php (3029) -> getDependantSqlElement() 2019-11-29 08:10:17.448 ** ERROR ** [] => #1 /var/www/projeqtor/model/persistence/SqlElement.php (674) -> getSqlElement() 2019-11-29 08:10:17.448 ** ERROR ** [] => #2 /var/www/projeqtor/model/UserMain.php (162) -> __construct() 2019-11-29 08:10:17.448 ** ERROR ** [] => #3 /var/www/projeqtor/model/User.php (38) -> __construct() 2019-11-29 08:10:17.448 ** ERROR ** [] => #4 /var/www/projeqtor/tool/projeqtor.php (4149) -> __construct() 2019-11-29 08:10:17.448 ** ERROR ** [] => #5 /var/www/projeqtor/tool/projeqtor.php (172) -> getSessionUser() 2019-11-29 08:10:17.448 ** ERROR ** [] => #6 /var/www/projeqtor/view/main.php (37) -> require_once() 2019-11-29 08:10:18.387 ** ERROR ***** [] Impossible to load class id
=> Not found in ../model/custom/id.php
=> Not found in ../model/id.php
=> Not found in ../model/persistence/id.php
As you can see from logs, it tries to open id.php file and can not find it. Indeed, there is no such a file. If I change operating systems' locale to C.UTF-8 from tr_TR.UTF-8, I can complete the installation. So, ProjeQtOr can not be installed on a system with Turkish locale.
You can read detailed description of the bug from this thread[1] and this[2] unix.stackexchange question.
[1] https://www.projeqtor.org/en/forum/5-ask-questions/10380-error-impossible-to-load-class-id
[2] https://unix.stackexchange.com/questions/554734/running-nginxphp7-0-error-impossible-to-load-class-id-projeqtor
Issue recorded as Ticket #4338
V10.0.0 brings major evolution in UTF8 management.
It may have impact on your issue.
Could you please test your issue on V10.0.0 to check it this version solves it ?
I will try the new version as soon as possible. Thank you @babynus and everyone who contributed to it.