ezsystems/content-on-the-fly-prototype

Platform UI Content on the Fly feature

Installs: 133 858

Dependents: 8

Suggesters: 0

Stars: 5

Watchers: 16

Forks: 12

Language:JavaScript

Type:ezplatform-bundle

v0.1.12 2018-02-14 10:12 UTC

README

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'
    }
});