Seditio Source
Root |
./othercms/croogo-4.0.7/vendor/croogo/croogo/Example/config/bootstrap.php
<?php
/**
 * Routes
 *
 * example_routes.php will be loaded in main app/config/routes.php file.
 */
namespace Croogo\Example\Config;

use
Cake\Core\Configure;
use
Croogo\Core\Croogo;
use
Croogo\Core\Nav as CroogoNav;
use
Croogo\Wysiwyg\Wysiwyg;

/**
 * Behavior
 *
 * This plugin's Example behavior will be attached whenever Node model is loaded.
 */
Croogo::hookBehavior('Croogo/Nodes.Nodes', 'Croogo/Example.Example', []);

/**
 * Component
 *
 * This plugin's Example component will be loaded in ALL controllers.
 */
Croogo::hookComponent('*', 'Croogo/Example.Example');

/**
 * Helper
 *
 * This plugin's Example helper will be loaded via NodesController.
 */
Croogo::hookHelper('Nodes', 'Example.Example');

/**
 * Admin menu (navigation)
 */
CroogoNav::add('sidebar', 'extensions.children.example', [
   
'title' => 'Example',
   
'url' => '#',
   
'children' => [
       
'example1' => [
           
'title' => 'Example 1',
           
'url' => [
               
'prefix' => 'admin',
               
'plugin' => 'Croogo/Example',
               
'controller' => 'Example',
               
'action' => 'index',
            ],
        ],
       
'example2' => [
           
'title' => 'Example 2 with a title that won\'t fit in the sidebar',
           
'url' => '#',
           
'children' => [
               
'example-2-1' => [
                   
'title' => 'Example 2-1',
                   
'url' => '#',
                   
'children' => [
                       
'example-2-1-1' => [
                           
'title' => 'Example 2-1-1',
                           
'url' => '#',
                           
'children' => [
                               
'example-2-1-1-1' => [
                                   
'title' => 'Example 2-1-1-1',
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
       
'example3' => [
           
'title' => 'Chooser Example',
           
'url' => [
               
'prefix' => 'admin',
               
'plugin' => 'Croogo/Example',
               
'controller' => 'Example',
               
'action' => 'chooser',
            ],
        ],
       
'example4' => [
           
'title' => 'RTE Example',
           
'url' => [
               
'prefix' => 'admin',
               
'plugin' => 'Croogo/Example',
               
'controller' => 'Example',
               
'action' => 'rte_example',
            ],
        ],
    ],
]);

Wysiwyg::setActions([
   
'Croogo/Example.Admin/Example/rteExample' => [
        [
           
'elements' => '#ExampleBasic',
           
'preset' => 'basic',
        ],
        [
           
'elements' => '#ExampleStandard',
           
'preset' => 'standard',
           
'language' => 'ja',
        ],
        [
           
'elements' => '#ExampleFull',
           
'preset' => 'full',
           
'language' => Configure::read('Site.locale'),
        ],
        [
           
'elements' => '#ExampleCustom',
           
'toolbar' => [
                [
'Format', 'Bold', 'Italic'],
                [
'Copy', 'Paste'],
            ],
           
'uiColor' => '#ffe79a',
           
'language' => 'fr',
        ],
    ],
]);

/**
 * Admin row action
 *
 * When browsing the content list in admin panel (Content > List),
 * an extra link called 'Example' will be placed under 'Actions' column.
 */
Croogo::hookAdminRowAction('Croogo/Nodes.Admin/Nodes/index', 'Example', 'prefix:admin/plugin:Croogo%2fExample/controller:Example/action:index/:id');

/* Row action with link options */
Croogo::hookAdminRowAction('Croogo/Nodes.Admin/Nodes/index', 'Button with Icon', [
   
'prefix:admin/plugin:Croogo%2fExample/controller:Example/action:index/:id' => [
       
'options' => [
           
'icon' => 'key',
           
'button' => 'success',
        ],
    ],
]);

/* Row action with icon */
Croogo::hookAdminRowAction('Croogo/Nodes.Admin/Nodes/index', 'Icon Only', [
   
'prefix:admin/plugin:Croogo%2fExample/controller:Example/action:index/:id' => [
       
'title' => false,
       
'options' => [
           
'icon' => 'image',
           
'tooltip' => [
               
'data-title' => 'A nice and simple action with tooltip',
               
'data-placement' => 'left',
            ],
        ],
    ],
]);

/* Row action with confirm message */
Croogo::hookAdminRowAction('Croogo/Nodes.Admin/Nodes/index', 'Reload Page', [
   
'prefix:admin/plugin:Croogo%2fNodes/controller:Nodes/action:index' => [
       
'title' => false,
       
'options' => [
           
'icon' => 'refresh',
           
'tooltip' => 'Reload page',
        ],
       
'confirmMessage' => 'Reload this page?',
    ],
]);

/**
 * Admin tab
 *
 * When adding/editing Content (Nodes),
 * an extra tab with title 'Example' will be shown with markup generated from the plugin's admin_tab_node element.
 *
 * Useful for adding form extra form fields if necessary.
 */
Croogo::hookAdminTab('Admin/Nodes/add', 'Example', 'Croogo/Example.admin_tab_node');
Croogo::hookAdminTab('Admin/Nodes/edit', 'Example', 'Croogo/Example.admin_tab_node');