Доброе утро.
Уважаемые знатоки, помогите, пожалуйста.
Б24, коробка. Потребовалось кастомизировать карточку лида. Решил сделать врезку через пользовательское поле. Создал класс, поле, зарегистрировал "слушателя" на main -> OnUserTypeBuildList. При выводе - ничего.
class InvBinding extends TypeBase {
const USER_TYPE_ID = 'invbinding';
function GetUserTypeDescription () {
return array(
'USER_TYPE_ID' => static::USER_TYPE_ID,
'CLASS_NAME' => CLASS,
'DESCRIPTION' => 'UF_CRM_1637678080',
'BASE_TYPE' => \CUserTypeManager::BASE_TYPE_INT,
'EDIT_CALLBACK' => array(CLASS, 'GetPublicEdit'),
'VIEW_CALLBACK' => array(CLASS, 'GetPublicView')
);
}
function GetDBColumnType ($arUserField) {
global $DB;
switch(strtolower($DB->type))
{
case "mysql":
return "int(18)";
case "oracle":
return "number(18)";
case "mssql":
return "int";
}
return "int";
}
public static function GetPublicView($arUserField, $arAdditionalParameters = array()) {
return "...";
}
public static function GetPublicEdit($arUserField, $arAdditionalParameters = array()) {
return "...";
}
}
Поставил маячки. GetUserTypeDescription - срабатывает, но callback - нет. Что я сделал не так? Куда копать? Перечитал кучу статей и документацию. Посмотрел разные видео. Явных ошибок не нашел.