public function bootstrap(Container $container)
{
$this->on_activation(function () use($container) {
$repository = $container['multilingualpress.post_type_repository'];
$settings_box = $container['multilingualpress.post_type_support_settings_box'];
add_action('mlp_modules_add_fields', function () use($settings_box, $repository) {
if ($repository->get_custom_post_types()) {
(new SettingsBoxView($settings_box))->render();
}
});
$updater = $container['multilingualpress.post_type_support_settings_updater'];
add_action('mlp_modules_save_fields', [$updater, 'update_settings']);
add_filter('mlp_allowed_post_types', function (array $post_types) use($repository) {
return array_merge($post_types, $repository->get_supported_post_types());
});
$url_filter = $container['multilingualpress.post_type_link_url_filter'];
add_action('mlp_before_link', [$url_filter, 'enable']);
add_action('mlp_after_link', [$url_filter, 'disable']);
});
}