В системном CSV-экспорте (webasystSettingsPrivacyLog.controller.php в wa-system/webasyst/lib/actions/settings/privacy/) жёстко зашит список колонок:
$fields = ['create_datetime', 'app_id', 'contact_id', 'contact_name', 'contact_email',
'contact_phone', 'ip', 'user_agent', 'context', 'document_name',
'accept_method', 'domain', 'form_url'];
мне не хватает колонок. я хотел записать туда какие именно куки выбрал юзер. думал просто дополню таблицу в метаобновлении,а у вас зачем-то захардкожены поля вместо того, чтобы просто показать все, что есть.
прошу убрать это ограничение или добавить столбец для записи произвольных параметров. хотя бы "comment"
1 комментарий
Я бы сделал так: выбор cookies хранить не дополнительной колонкой в wa_agreement_log, а в собственной таблице плагина, связав запись с согласием пользователя. Например хранить agreement_log_id + JSON:
{"necessary":true,"analytics":false,"marketing":false}
И в плагине сделать свой экспорт журнала, объединяющий wa_agreement_log с этой таблицей.
Это лучше, чем дописывать wa_agreement_log: обновления Webasyst не затронут структуру плагина и не придётся патчить системный webasystSettingsPrivacyLog.controller.php.
Если принципиально нужно, чтобы эти данные попадали именно в штатную кнопку CSV-экспорта Webasyst, тогда без изменения ядра или появления соответствующего хука со стороны Webasyst, похоже, не обойтись.
А использовать для cookies существующие context или другие поля я бы не стал — это будет костыль и потом создаст проблемы с обработкой журнала.