bynder-4.0.0-beta1/modules/lightning/bynder_lightning.install
modules/lightning/bynder_lightning.install
<?php /** * @file * Install, uninstall and update hooks for Bynder Lighting module. */ /** * Implements hook_requirements(). */ function bynder_lightning_requirements($phase) { if ($phase == 'install' && !\Drupal::moduleHandler()->moduleExists( 'lightning_media' ) ) { return [ 'bynder_lightning' => [ 'title' => 'Lightning media is disabled', 'description' => t( 'Bynder Lightning integration requires Lightning media module to be enabled.' ), 'severity' => REQUIREMENT_ERROR, ], ]; } } /** * Implements hook_install(). */ function bynder_lightning_install() { // In case the module is being installed from config return early. if (Drupal::isConfigSyncing()) { return; } /** @var \Drupal\entity_browser\Entity\EntityBrowser $browser */ $browser = \Drupal::entityTypeManager()->getStorage('entity_browser')->load( 'media_browser' ); $widget_manager = \Drupal::getContainer()->get( 'plugin.manager.entity_browser.widget' ); $bynder_upload = $widget_manager->getDefinition('bynder_upload'); $bynder_search = $widget_manager->getDefinition('bynder_search'); $browser->addWidget( [ 'id' => $bynder_upload['id'], 'label' => $bynder_upload['label'], 'weight' => -10, 'settings' => [ 'media_type' => 'bynder', ], ] ); $browser->addWidget( [ 'id' => $bynder_search['id'], 'label' => $bynder_search['label'], 'weight' => -20, 'settings' => [ 'media_type' => 'bynder', ], ] ); $browser->save(); }