You are here

class elFinder in elFinder file manager 8.2

Same name in this branch
  1. 8.2 src/Plugin/BUEditorPlugin/elFinder.php \Drupal\elfinder\Plugin\BUEditorPlugin\elFinder
  2. 8.2 src/Plugin/CKEditorPlugin/elFinder.php \Drupal\elfinder\Plugin\CKEditorPlugin\elFinder

Defines elFinder as a BUEditor plugin.

Plugin annotation


@BUEditorPlugin(
  id = "elfinder",
  label = "elFinder File Manager"
)

Hierarchy

  • class \Drupal\elfinder\Plugin\BUEditorPlugin\elFinder extends \Drupal\bueditor\BUEditorPluginBase

Expanded class hierarchy of elFinder

12 string references to 'elFinder'
elfinder.info.yml in ./elfinder.info.yml
elfinder.info.yml
elfinder.links.menu.yml in ./elfinder.links.menu.yml
elfinder.links.menu.yml
elFinder::alterEditorForm in src/Plugin/BUEditorPlugin/elFinder.php
elfinder_bueditor_elfinder_editor_plugin in editors/bueditor/bueditor.inc
Pseudo-hook for elfinder hook_wysiwyg_plugin implementation
elfinder_ckeditor_elfinder_editor_plugin in editors/ckeditor/ckeditor.inc
Pseudo-hook for elfinder hook_wysiwyg_plugin implementation

... See full list

File

src/Plugin/BUEditorPlugin/elFinder.php, line 24
Contains \Drupal\elfinder\Plugin\BUEditorPlugin\elFinder.

Namespace

Drupal\elfinder\Plugin\BUEditorPlugin
View source
class elFinder extends BUEditorPluginBase {

  /**
   * {@inheritdoc}
   */
  public function alterEditorJS(array &$js, BUEditorEditor $bueditor_editor, Editor $editor = NULL) {
    if (isset($js['settings']['fileBrowser']) && $js['settings']['fileBrowser'] === 'elfinder') {
      $js['libraries'][] = 'elfinder/drupal.elfinder';
      $js['libraries'][] = 'elfinder/drupal.elfinder.bueditor';
      $browserpage = elFinderPageController::buildBrowserPage(TRUE);
      $js['settings']['elfinder'] = $browserpage['#attached']['drupalSettings']['elfinder'];
    }
  }

  /**
   * {@inheritdoc}
   */
  public function alterEditorForm(array &$form, FormStateInterface $form_state, BUEditorEditor $bueditor_editor) {

    // Add elFinder option to file browser field.
    $fb =& $form['settings']['fileBrowser'];
    $fb['#options']['elfinder'] = $this
      ->t('elFinder');

    // Add configuration link
    $form['settings']['elfinder'] = array(
      '#type' => 'container',
      '#states' => array(
        'visible' => array(
          ':input[name="settings[fileBrowser]"]' => array(
            'value' => 'elfinder',
          ),
        ),
      ),
      '#attributes' => array(
        'class' => array(
          'description',
        ),
      ),
      'content' => array(
        '#markup' => $this
          ->t('Configure <a href="!url">elFinder File Manager</a>.', array(
          '!url' => \Drupal::url('elfinder.admin'),
        )),
      ),
    );

    // Set weight
    if (isset($fb['#weight'])) {
      $form['settings']['elfinder']['#weight'] = $fb['#weight'] + 0.1;
    }

    //$browserpage = elFinderPageController::buildBrowserPage(FALSE);
    drupal_set_message('99');

    //  $form['#attached']['drupalSettings']['elfinder'] = $browserpage['#attached']['drupalSettings']['elfinder'];
  }

}

Members