You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

Workbench is a view that displays content items in a workspace. It is part of the content app framework, typically defined in the browser subapp. The workbench contains a list of content views. Common view types are tree, list and thumbnail.

Here is an example workbench definition from the Contacts app. This workbench operates on the contacts workspace and displays contacts and folders.

Example workbench definition

workbench:
  contentViews:
    - name: tree
      dropConstraint:
        $type: jcrDropConstraint
        primaryNodeType: mgnl:contact
      $type: treeView
      columns: &columns
        - name: jcrName
          label: name
          $type: jcrNameColumn
          editable: true
          nodeTypeToIcon:
            mgnl:contact: icon-people
            mgnl:content: icon-folder
          editor:
            availability:
              nodes: true
              properties: true
        - name: value
          label: value
          editable: true
          editor:
            availability:
              nodes: false
              properties: true
        - name: jcrPath
          label: path
          $type: jcrPathColumn
        - name: status
          label: status
          $type: jcrStatusColumn
        - name: mgnl:created
          $type: dateColumn
          label: date
          editable: false
          editor:
            availability: *onlyContacts
            field:
              $type: textField
              converterClass: com.vaadin.data.converter.StringToDateConverter
    - name: list
      columns: *columns
      $type: listView
    - $type: thumbnailView

Workbench properties

contentViews

required

Defines how users can view content in the workbench. The parent node for the specific content view definitions. It must contain at least one content view (see Content view definition).

dragAndDrop

optional, default is true

Set to false to disable drag and drop operations in the workbench.

dropConstraintClass

optional, default is AlwaysTrueDropConstraint

A drag-and-drop constraint class. By restricting the nodes that a user can move you can enforce a certain node hierarchy. For example, you might want to allow content to be moved under folders but not folders under content. If the class is not defined, the AlwaysTrueDropConstraint is set as default. When you write your own class, implement the 

$webResourceManager.requireResource("info.magnolia.sys.confluence.artifact-info-plugin:javadoc-resource-macro-resources") DropConstraint
 interface.

editable

optional

Defines whether the workbench is editable inline. You can double-click a cell to edit its value. Works only for columns that are also configured as editable.

(warning) You cannot define a default action and use inline editing at the same time.

contentTools

optional

A list of configured content tools. A content tool must be configured with

$webResourceManager.requireResource("info.magnolia.sys.confluence.artifact-info-plugin:javadoc-resource-macro-resources") ContentToolDefinition
$webResourceManager.requireResource("info.magnolia.sys.confluence.artifact-info-plugin:javadoc-resource-macro-resources") WorkbenchPresenter
is implemented in a way that it automatically configures a "search box" if you have both list and search view defined. 

#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))
  • No labels