В общих чертах процедура обновления решения Justice с php 7 до php 8.2 выглядит следующим образом:
Необходимо в настройках панели администрирования 1С-Битрикс (Настройки -> Настройки модулей -> Главный модуль) для параметра "Режим вывода ошибок (error_reporting)" выставить значение "Только ошибки" или "Ошибки и предупреждения".
Перейти на сайт и ориентируясь на ошибки последовательно устранять их согласно следующей инструкции.
Изменения производятся в двух файлах:
a. Файл bitrix/templates/justice/header.php
b. Файл bitrix/modules/codekeepers.justice/classes/general/CJusticeMain.php
Обратите внимание, что номера строк приведены в соответствии с оригинальными файлами решения и могу незначительно отличатся от номеров в вашем решении!
Поэтому рекомендуем опираться на код, а не на номер строки!
Файл bitrix/templates/justice/header.php
a. строка 14
$GLOBALS += CJusticeMain::MainProperty($GLOBALS["codekeepers_block_id"]["settings_main_id"], $GLOBALS["codekeepers_block_id"]["settings_main_element_id"]);
заменить на:
CJusticeMain::MainProperty($GLOBALS["codekeepers_block_id"]["settings_main_id"], $GLOBALS["codekeepers_block_id"]["settings_main_element_id"]);
b. строка 66
CModule::IncludeModule("codekeepers.justice"){CJusticeMain::MainHeaderAssets()};
заменить на:
CModule::IncludeModule("codekeepers.justice")[CJusticeMain::MainHeaderAssets()];
Файл bitrix/modules/codekeepers.justice/classes/general/CJusticeMain.php
a. строка 7
function MainProperty($main_settings_id, $main_settings_element_id){
заменить на:
static function MainProperty($main_settings_id, $main_settings_element_id){
b. строка 18
function MainHeaderAssets(){
заменить на:
static function MainHeaderAssets(){
c. строка 13
$GLOBAL["global_info"][$ar_props["CODE"]] = $ar_props["VALUE"];
заменить на:
$GLOBALS["global_info"][$ar_props["CODE"]] = $ar_props["VALUE"];
d. строка 16
удалить: return $GLOBAL;