diff --git a/modules/video_embed_wysiwyg/src/Access/FilterInUse.php b/modules/video_embed_wysiwyg/src/Access/FilterInUse.php new file mode 100644 index 0000000..d02360a --- /dev/null +++ b/modules/video_embed_wysiwyg/src/Access/FilterInUse.php @@ -0,0 +1,34 @@ +getParameter('filter_format'); + if (!$filter || empty($filter->filters()->get('video_embed_wysiwyg')->getConfiguration()['status'])) { + return AccessResult::forbidden(); + } + return AccessResult::allowed(); + } + +} diff --git a/modules/video_embed_wysiwyg/video_embed_wysiwyg.routing.yml b/modules/video_embed_wysiwyg/video_embed_wysiwyg.routing.yml index 3fb54c9..cb6df0d 100644 --- a/modules/video_embed_wysiwyg/video_embed_wysiwyg.routing.yml +++ b/modules/video_embed_wysiwyg/video_embed_wysiwyg.routing.yml @@ -7,3 +7,4 @@ video_embed_wysiwyg.video_dialog: _theme: ajax_base_page requirements: _entity_access: 'filter_format.use' + _access_video_embed_wysiwyg_filter_in_use: 'TRUE' diff --git a/modules/video_embed_wysiwyg/video_embed_wysiwyg.services.yml b/modules/video_embed_wysiwyg/video_embed_wysiwyg.services.yml new file mode 100644 index 0000000..9272961 --- /dev/null +++ b/modules/video_embed_wysiwyg/video_embed_wysiwyg.services.yml @@ -0,0 +1,5 @@ +services: + access_check.filter_in_use: + class: Drupal\video_embed_wysiwyg\Access\FilterInUse + tags: + - { name: access_check, applies_to: _access_video_embed_wysiwyg_filter_in_use }