Seditio Source
Root |
./othercms/croogo-4.0.7/vendor/croogo/croogo/FileManager/config/bootstrap.php
<?php

use Cake\Core\Configure;
use
Croogo\Core\Croogo;
use
Croogo\FileManager\Utility\StorageManager;
use
Croogo\Wysiwyg\Wysiwyg;

Configure::write('Wysiwyg.attachmentBrowseUrl', [
   
'prefix' => 'admin',
   
'plugin' => 'Croogo/FileManager',
   
'controller' => 'Attachments',
   
'action' => 'browse',
]);

Wysiwyg::setActions([
   
'Croogo/FileManager.Admin/Attachments/browse' => [],
]);

Configure::write('FileManager', [
   
'editablePaths' => [
       
WWW_ROOT . 'assets',
    ],
   
'deletablePaths' => [
       
WWW_ROOT . 'assets',
    ],
]);

StorageManager::config('LocalAttachment', [
   
'description' => 'Local Attachment',
   
'adapterOptions' => [WWW_ROOT . 'assets', true],
   
'adapterClass' => '\League\Flysystem\Adapter\Local',
   
'class' => '\League\Flysystem\Filesystem',
]);
StorageManager::config('LegacyLocalAttachment', [
   
'description' => 'Local Attachment (Legacy)',
   
'adapterOptions' => [WWW_ROOT . 'uploads', true],
   
'adapterClass' => '\League\Flysystem\Adapter\Local',
   
'class' => '\League\Flysystem\Filesystem',
]);

// TODO: make this configurable via backend
$actions = [
   
'Admin/Blocks/edit',
   
'Admin/Contacts/edit',
   
'Admin/Links/edit',
   
'Admin/Nodes/edit',
   
'Admin/Terms/edit',
   
'Admin/Types/edit',
   
'Admin/Vocabularies/edit',
];
$tabTitle = __d('croogo', 'Media');
foreach (
$actions as $action) :
    list(
$controller, ) = explode('/', $action);
   
Croogo::hookAdminTab($action, $tabTitle, 'Croogo/FileManager.admin/asset_list');
   
Croogo::hookHelper($controller, 'Croogo/FileManager.AssetsAdmin');
endforeach;

// TODO: make this configurable via backend
$models = [
   
'Croogo/Blocks.Blocks',
   
'Croogo/Contacts.Contacts',
   
'Croogo/Menus.Links',
   
'Croogo/Nodes.Nodes',
   
'Croogo/Taxonomy.Terms',
   
'Croogo/Taxonomy.Types',
   
'Croogo/Taxonomy.Vocabularies',
];
foreach (
$models as $model) {
   
Croogo::hookBehavior($model, 'Croogo/FileManager.LinkedAssets', ['priority' => 9]);
}

Croogo::hookHelper('*', 'Croogo/FileManager.AssetsFilter');