XML configuration tags

XML tag hierarchy

  •  kamra-site
    • entity - defining  object types, different facets,default queries, columns for table views, permissions
      • facet - definition for a single view of an object (editor/detail/summary)
        • See layout elements
      • filter - default queries associated with the object
      • column - default columns when viewed in a table
      • capability - permissions for viewing/publishing/removing etc
      • fb - facebook publishing workflow configuration
    • layout - defining page or reusable layouts, independent of content objects
      • See layout elements
    • menu - defines menus. Most menuitems can have menuitems as children tags
      • menuItem - simple menu item that display a wicket link or opens a wicket component in the main view when clicked 
      • componentMenuItem - renders a component into the menu, not a link
      • filterMenuItem - runs a query against the DB and creates a menuitem dynamically for each returned row
      • taxonomyMenuItem - display child menu items for each member of a taxonomy
      • urlMenuItem - display menu that opens an url
      • layoutMenuItem - opens a layout in the main view when clicked
      • pageMenuItem - renders link to a wicket page with optional pageparameters
      • divider - shows a menu divider
    • style - defines LESS scripts used on the site
    • job - defines cron like background execution jobs
      • filter - a db query to run the background job against
    • facettype - defines settings for object facets
    • enumeration - list definitions, usable in forms 
    • property - global settings and properties
    • feed - RSS feeds defined in the system
    • task  - defining user tasks and workflows
      • filter - returns possible task for a user

Layout elements

All layout elements have the following attributes: class, id, tooltip, if.

All form elements have in addition the following attributes: name, translated, property, required, hideHelp, regexpMatch, compact

  • box - display children elements in a "box" with a header (bootstrap panel component by default)
  • checkbox - form element displaying a checkbox
  • contentSelect - renders a select field that display content selections based on a db query
  • contentlinkSelect - renders a select field that display contentlink selections based on a db query
  • datefield - date editor form element
  • div - acts like an html div tag 
  • enum - shows a selector html control with a list that references an enumeration or a java enum.
  • f - display another facet for the current object or one that's traversable through a property
  • head - adds any string to the html <head> 
  • html - adds anything as raw html 
  • img - displays an image tag
  • link - display one or more links as a button group
  • list - runs a query against the database and display the results as specified, optionally adding paging/headers/table/grid view, infinite scrolling, etc.
    • filter - a query 
    • empty - layout elements to display in case no rows are returned
    • before - layout elements to display in front of the rows returned
    • column - list of columns to display if the list's type is set to table (overrides columns defined on entity)
  • main - used only in the Site layout - this is the entry point in the outer layout where each page adds it's own content
  • map - form element that display a google map where the user can select a point or a line or a polygon
  • embed - embeds a menu or a layout 
  • message - displays a localized message
  • numbertextfield - form element that allows selection of a number
  • pagelink - shows a link referencing another cms page
  • panel - displays any cms component
    • ReCaptchaRow - Displays a ReCaptcha field. Usable on any forms.
  • password - form element with a password field
  • richtexteditor - form element showing a wysiwyg editor (tinymce)
  • script - adds a script reference and/or actual javascript content to the page
  • staticfield - form element, that display a non-modifiable field in a form structure
  • tab - display it's children as separate tabs
  • taxonomyDisplay - display the object's taxonomies
  • taxonomyFilter - form element to select any taxonomy using checkboxes, displaying a hierarchy of taxonomies
  • taxonomyIcon - display the configured icon for the taxonomy
  • taxonomyParent - displays the taxonomy's parent 
  • taxonomySelect - display a select component to select taxonomy, can be multiselect
  • taxonomyTree - display a tree (or subtree) of taxonomies, each linking to a display page of it's own
  • textarea - form element displaying a normal text area
  • text - renders any text into the page
  • textfield - form element displaying a text field
  • upload - displays an upload control
  • wiki - display the latest contents of a wiki page

How filters work

  • filter - defines a single db (jpa) query, which object it is against, etc
    • capability - it is possible to define subset of users who can run this query
    • parameter - parameters (required or optional) that filter the query
    • filterSort - one or more ways to filter the result set