Skip to content

Platform UI Content on the Fly feature

Notifications You must be signed in to change notification settings

ezsystems/content-on-the-fly-prototype-bundle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

74 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

content-on-the-fly

Platform UI Content on the Fly feature

Install

  1. From your eZ Platform installation, run composer:
$ composer require ezsystems/content-on-the-fly-prototype
  1. Enable the bundle by adding:
new EzSystems\EzContentOnTheFlyBundle\EzSystemsEzContentOnTheFlyBundle()

to app/AppKernel.php.

  1. Setup routing by adding bundle configuration to app/config/routing.yml:
_contentOnTheFly:
    resource: "@ContentOnTheFlyBundle/Resources/config/routing.yml"
    prefix:   '%ezpublish_rest.path_prefix%'
  1. Clear cache and setup assets with $ composer run-script post-update-cmd

    (if you use prod env make sure that it is set with $ export SYMFONY_ENV=prod first).

Configuration

Example application configuration (app/config/config.yml):

# ...

content_on_the_fly:
    system:
        site:                       # Configuration per SiteAccess
            content:
                article:            # Content identifier
                    location:
                        - 2         # Suggested location(s)
                default:            # Default, in case of unconfigured content identifier
                    location:
                        - 2
                        - 43

Default bundle configuration:

parameters:
    content_on_the_fly.default.content:
        image:
            location:
                - 51    # /Media/Images
        default:
            location:
                - 2     # /Home
                - 43    # /Media

Default location for content type

If suggested locations are provided for a Content Type (or default) the first location in the list will be preselected.

Preselected content type

To set the Content Type you have to provide the 'contentTypeIdentifier' in the config of the 'contentDiscover' event. Example:

/**
* ...
* @param config.visibleMethod {String} which tab should be open. Default: 'browse', possible values: 'browse', 'search', 'create'
* @param config.contentTypeIdentifier {String} content type identifier. Default: none, example values: 'image', 'blog', 'article', 'blog_post'
*                                     this parameter is limited to the Create tab, config that works across all tabs will be added in the future
*/
app.fire('contentDiscover', {
    config: {
        // ...
        visibleMethod: 'create',
        contentTypeIdentifier: 'image'
    }
});