Start page
Start page

Start page / Template development / Forms / Input components / LIST (new) / INLINE

INLINE typeAvailable from FirstSpirit Version 4.2R4

Contents
for example
to the methods: FormDataList<IdProvidingFormData>
FS_LIST, INLINE type

FS_LIST, INLINE type

The FS_LIST type INLINE can be used to create sections or links, so that editors can directly enter several sections or links within an input element, without having to switch to another input component, another section, etc.

A large number of options are available with which the function and layout or user prompting can be influenced, e.g.

  • which functions are to be made available for creating, editing and removing sections or links in the input component (name parameter within the ACTIONS / ACTION tags)
  • whether a tabular overview of the sections and links is to be shown or not (keyword overview for the component parameter within the LAYOUT / ADD tags) and with what width and sorting the columns of this overview are to be displayed (COLUMNS / COLUMN tags)
  • how tabs and bars are to be labeled (LABELS / LABEL tags)
  • in which position new sections and links are created in the input component (keyword add-index within the ACTIONS / ACTION / PARAM tags)
  • whether sections or section templates and links or link templates are to be selected via a dialog with search options and detailed information or via a simple popup menu (keyword select-ui within the ACTIONS / ACTION / PARAM tags)
  • whether the detail views are to have language tabs or not (keyword show-language-tabs within the LAYOUT / ADD tags)
  • whether sections and links are not to be removed from the input component until after a confirmation prompt has been accepted (keyword show-confirm within the ACTIONS / ACTION / PARAM tags)

Important Important note about the nesting of FS_LIST input components
FS_LIST input components can be used in a FS_LIST input component (“nesting”, see for example this page too). If too many FS-LIST input components are nested this can result in problems concerning the usability for editors and the maintainability in development as well as in loss of performance. Experience has shown that nestings with more than 3 levels should be avoided as far as possible!

Especially it is advised not to use language dependent input components in a language dependent FS_LIST input component with type INLINE / SECTIONTEMPLATES(see also parameter useLanguages). Particularly in combination with rules, this can lead to configurations which make storing impossible!

In the examples below, exemplary configurations for specific applications of FS_LIST, INLINE type, are presented first (1)).

Then it is shown how previously used configurations of CMS_INPUT_CONTENTAREALIST (2)) and CMS_INPUT_LINKLIST (3)) can be replaced with FS_LIST.

Important On changing over from CMS_INPUT_CONTENTAREALIST and CMS_INPUT_LINKLIST to FS_LIST, please note that if data has been saved with FS_LIST, in the event of a possible subsequent return, due to a different data format, it can no longer be read and interpreted by CMS_INPUT_CONTENTAREALIST and CMS_INPUT_LINKLIST.

Access-API example use case
The exemplary implementation FsListEditorValueExample shows some simple examples of use for the reading, writing and creating access to the data object (FsListEditorValue) and its inner data container (FormDataList) of the input component by means of the FirstSpirit Access-API.

name
Designator
Mandatory
allowEmpty
YesNo
Optional parameters
hFill
YesNo
Optional parameters
height
PositiveInteger
Optional parameters
hidden
YesNo
Optional parameters
noBreak
YesNo
Optional parameters
preset
Preset
Optional parameters
rows
PositiveInteger
Optional parameters
width
PositiveInteger
Optional parameters
type
DataSourceType
Mandatory
maxEntries
PositiveInteger
Optional parameters
useLanguages
YesNo
Optional parameters
lang
String
Mandatory
name
String
Mandatory
name
String
Mandatory
resizable
YesNo
Optional parameters
show
YesNo
Optional parameters
sortOrder
SortOrder
Optional parameters
width
PositiveInteger
Optional parameters
component
String
Optional parameters
constraint
LayoutConstraint
Optional parameters
name
String
Mandatory
source
TemplateSource
Mandatory
uid
String
Mandatory
lang
LanguageAbbreviation
Mandatory
description
String
Optional parameters
label
String
Optional parameters

Parameter

The following table gives the parameters of the DATASET input component.

ParameterMandatorySinceTypeDefault value
name*Yes3.1DesignatorNone
allowEmptyNo3.0YesNoYES
hFillNo2.0YesNoNO
heightNo4.2.434PositiveInteger500
hiddenNo4.0.44YesNoNO
noBreakNo2.0YesNoNO
presetNo4.0PresetDEFAULT
rowsNo4.2PositiveInteger10
widthNo4.2PositiveIntegerNone

name

The attribute "name" is the variable name of an input component with which the the result object of the input component can be used in the templates - with the help of $CMS_VALUE()$ - or the content can be output.

ParameterMandatorySinceTypeDefault value
name*Yes3.1DesignatorNone

allowEmpty

The "allowEmpty" parameter is used to specify whether a value has to be entered for an input value or not.

If allowEmpty="YES" input is not mandatory; however, it is if allowEmpty="NO".

Input components with allowEmpty="NO" are also called mandatory input components.

The default value for allowEmpty is YES.

ParameterMandatorySinceTypeDefault value
allowEmptyNo3.0YesNoYES

hFill

An input component is always displayed with a pre-defined width.

However, if the input component is to use the full available display width the parameter hFill must be given with the value YES .

ParameterMandatorySinceTypeDefault value
hFillNo2.0YesNoNO

height

The height parameter is used to determine the display height of the input component in pixel.

The parameter expects an integer value. If the parameter is not defined the height of the input component is set by default to 500 pixel.

According to the layout, the function (for example the expand behaviour) and (when indicated) the parameter rows, the height should not be too low.

If the input component is used within a group (CMS_GROUP), the height will comply with the height of the highest input component of the group.

ParameterMandatorySinceTypeDefault value
heightNo4.2.434PositiveInteger500

hidden

With the "hidden" parameter an input component can be hidden from the editor.

If hidden="YES" the input component is not visible for the editor, if hidden="NO" it is visible.

The default value for hidden is NO.

ParameterMandatorySinceTypeDefault value
hiddenNo4.0.44YesNoNO

noBreak

The noBreak parameter can be used to suppress automatic line break after an input component.

The noBreak parameter must be given with value "YES" (noBreak="YES") to suppress the automatic line break.

ParameterMandatorySinceTypeDefault value
noBreakNo2.0YesNoNO

preset

Using the preset attribute the handling of default values in an input component can defined (see also chapter Default values). If preset="default" is set, the fall-back value defined in the form is used. If this value in the form is changed later on, these changes will be affect all usages of this default value in the input components maintained by the editor, as long as a value will be set manually in the input component. This is the default setting. If preset="copy" is set, the value entered by the editor is copied directly into the input component. Subsequent changes to the default value in the form do not have any effect on the usages of this default value in the input components maintained by the editor.

ParameterMandatorySinceTypeDefault value
presetNo4.0PresetDEFAULT

rows

If an overview is defined for the input component of the DATASOURCE types DATABASE, INLINE or SERVICE (<ADD component="overview" ... >) you can use the parameter rows to specify the height of this overview in rows. For this purpose, the number of rows must be specified. For the DATASOURCE type PAGE the figure which is specified by rows refers to the height the input component in rows. A horizontal splitter is available to modify the height of the overview and the detailed views.

The parameter expects an integer value.

The default is 10.

ParameterMandatorySinceTypeDefault value
rowsNo4.2PositiveInteger10

width

The width parameter can be used to specify the display width of the input component in pixels.

The parameter expects an integer value.

If the parameter is not given the default width is 480 pixels.

Important The parameter does not have any effect if the hFill parameter is used.

ParameterMandatorySinceTypeDefault value
widthNo4.2PositiveIntegerNone

DATASOURCEAvailable from FirstSpirit Version 4.2

The DATASOURCE tag defines the data type the input component should draw from.

If the tag is given more than once for an input component, the last/lowest definition is always adopted and all other definitions are removed.

ParameterMandatorySinceTypeDefault value
type*Yes4.2.403DataSourceTypeNone
maxEntriesNo4.2PositiveIntegerNone
useLanguagesNo4.2YesNodepends on template type: YES (LINKTEMPLATES) / NO (SECTIONTEMPLATES)

type

The mandatory parameter type defines the data type which the input component should draw from or, rather, the type of data origin.

The following types are supported:

  • DATABASE: With this parameter it is possible to create a list of data sets. The table template on which the content source is based, from which data sets are to be selected or created in the new data sets, must be given with the TABLE tag.
  • INLINE: With this parameter it is possible to create a list of sections and links. The TEMPLATES tag and its source parameter must be used to define whether a section or link list is to be defined.
  • PAGE: With this parameter it is possible to display a list of the sections of the current page.
  • SERVICE: With this parameter it is possible to use a service module to link to external data suppliers which provide data for the input component. Further information on the configuration is provided in the FirstSpirit Developer Manual for Components.

ParameterMandatorySinceTypeDefault value
type*Yes4.2.403DataSourceTypeNone

maxEntries

The parameter "maxEntries" defines how many entries can be selected or added at most. The parameter expects an integer value.

ParameterMandatorySinceTypeDefault value
maxEntriesNo4.2PositiveIntegerNone

useLanguages

The useLanguages parameter is used to specify whether an input component is to store different or deviating values for different languages or not (multilingual input).

If YES (useLanguages="YES") is entered, a value is stored for each language; if NO (useLanguages="NO") is entered, one value is stored for all languages.

If the parameter is not specified,

  • different values are stored by default for the different languages (useLanguages="YES") for the LINKTEMPLATES template type and
  • the same values are stored for all languages (useLanguages="NO") for the SECTIONTEMPLATES

template type.

In projects with multiple project languages, the interior input components that are selected using the underlying section or reference templates (components 1 through 3 in the following image) must also always be taken into account for the multilingual configuration for FS_LIST:

FS_LIST with sections

FS_LIST thus forms the exterior form (external) and the components of the selected templates form the interior forms (internal). "Language-dependent" also means "multilingual" and "language-independent" means "monolingual".

  • Input components in link templates (TEMPLATES source="LINKTEMPLATES") are basically language-independent (useLanguages="NO"). If it should be possible to enter language-dependent content, useLanguages="YES" needs to be defined for the surrounding FS_LIST. Refer also to the Link templates section for more information.
  • Input components in section templates (TEMPLATES source="SECTIONTEMPLATES") can be language-dependent (useLanguages="YES") or language-independent (useLanguages="NO"). Both the FS_LIST (external) and the input components in the section templates (internal) selected can be configured as language-dependent (useLanguages="YES") or language-independent (useLanguages="NO").

    The following configuration combinations are possible:
    • external language-dependent – internal language-independent
      This combination allows for independent input of content ("entries") into the individual languages. This means that lists with a different number of sections or links can be created for each language.
      Multilingual content
    • external language-independent – internal language-dependent
      This combination allows for multilingual input of content. The same entry applies for multiple languages:
      Monolingual content

      This configuration makes it possible to simplify input of multilingual content by displaying language tabs in the FS_LIST component itself (&lt;PARAM name="show-language-tabs"&gt;yes&lt;/PARAM&gt;).
    • external language-independent – internal language-dependent
      This combination only allows for monolingual input of content, which means that the content is identical for all languages.

Important Not all content can be managed in the external and internal language-dependent combination. This combination is therefore not recommended. Especially when using rules this can result in configurations which make storing impossible!

ParameterMandatorySinceTypeDefault value
useLanguagesNo4.2YesNodepends on template type: YES (LINKTEMPLATES) / NO (SECTIONTEMPLATES)

LABELSAvailable from FirstSpirit Version 4.2.403

By default, the following are used for labeling, e.g. the labeling of the overview, tab, bars and tool tips:

  1. the names of all input components, which are contained in the selected section, link or table template (identifiers), in square brackets and
  2. the values (if available), which are saved in the input components, if they are of the data type string (e.g. CMS_INPUT_TEXT, CMS_INPUT_TEXTAREA, CMS_INPUT_DOM)

FS_LIST, inline, no labels

The LABELS tag can be used to influence the labeling.

Important DATASOURCE type PAGE: LABELS / LABEL are not supported for this data source type.

In this case, a LABEL tag must be given for each language.

IMPORTANT: At least the fall-back label ("*") must be defined:

<LABELS>
<LABEL lang="*">...</LABEL>
</LABELS>

LABELAvailable from FirstSpirit Version 4.2

The LABEL tag can be used to define flexible, language-dependent labeling for each language.

To define the labeling for a language, the abbreviation of the project language must be given in the lang parameter:

...
<LABEL lang="DE">...</LABEL>
<LABEL lang="EN">...</LABEL>
...

Fall-back values are given with the special language code * ("for all languages"):

...
<LABEL lang="*">...</LABEL>
...

The lang parameter is a mandatory parameter.

The labeling text is given within an opening and closing <LABEL> tag (see placeholder TEXT).

ParameterMandatorySinceTypeDefault value
lang*Yes4.2StringNone

lang

The lang parameter is used to give the language abbreviation which is entered in the server properties see View document, Chapter "Language templates") to specify for which project languages the definitions are to apply, e.g. DE for German, EN for English, FR for French etc. The following characters can be used as often as required: -, _, 0-9 and A-Z. Lower case letters are transformed automatically into upper case letters after having saved the template. In addition * can be used for fallback values.

ParameterMandatorySinceTypeDefault value
lang*Yes4.2StringNone

TEXTAvailable from FirstSpirit Version 4.2

Here it is possible to define alternative labeling.

The system object #item is available to access the values stored in the input component.

In the case of the DATASOURCE type DATABASE, the variable of the column (identifier of the input component) is appended, separated by a dot, e.g.

#item.cs_lastname

If the table referenced via FS_LIST is connected to another table via a foreign (external) key, the values of a column in the connected table can be used for the labeling in FS_LIST by using #item with the foreign key identifier and the required column name, e.g.

#item.product_Properties_Type.Name

where product_Properties_Type is the foreign key name, Name is the name of a column in the table defined via product_Properties_Type.

In the case of the DATASOURCE type INLINE, the variable of the respective section or link template (identifier of the input component) is appended, separated by a dot, e.g.

#item.st_headline

In both cases, combinations of the values of several input components are also possible, e.g.

<LABELS>
<LABEL lang="*">#item.cs_firstname + " " + #item.cs_lastname</LABEL>
</LABELS>

In order, for example, to define an alternative value for display, in case the input component concerned is not filled, the if(...) function can be used, e.g.

<LABELS>
<LABEL lang="*">if(#item.st_headline.isEmpty, "No headline", #item.st_headline)</LABEL>
</LABELS>

In this example, the text "No headline" is displayed if the input component is not filled.

In the case of the DATASOURCE type INLINE, the identifier of input components of different section and link templates can also be given. This option suggests itself if the selection is not limited to one template and the identifiers of the input components vary from template to template. If an identifier given by #item is not available in the template selected by the editor, nothing is output.

Example:
FS_LIST enables the selection to be made from two section templates of which one contains a text field with the identifier "st_text" and one contains a text field with the identifier "st_headline".

If the editor now chooses the section template containing the identifier "st_text", the syntax

<LABELS>
<LABEL lang="*">#item.st_text + #item.st_headline</LABEL>
</LABELS>

uses the stored value of the input component "st_text" for the labeling.
If the editor chooses the section template containing the identifier "st_headline", the stored value of the input component "st_headline" is used.

If a template contains both identifiers, both are used for the labeling. A separator should be provided for this case, e.g.

<LABELS>
<LABEL lang="*">#item.st_text + " " + #item.st_headline</LABEL>
</LABELS>
Important Care should be taken to ensure that the variables used (identifiers of the input components) are given correctly, and the variables should also actually be present in the templates available to choose from. Otherwise, the default labeling is used (name and all values of all input components of the selected template). For optimum clarity and user-friendliness of the component, the shortest possible labeling should be chosen.

In the case of the DATASOURCE type INLINE, it is also possible to determine the template of a section or link in the list. The system object #template is available for this purpose.

The reference name of the template used can, e.g., be output for labeling via the following syntax:

<LABELS>
<LABEL lang="*">#template.uid</LABEL>
</LABELS>

Here, too, the if(...) function can be used to implement labeling depending on the template selected.

DATASOURCE type PAGE: LABELS / LABEL are not supported for this data source type.

ACTIONSAvailable from FirstSpirit Version 4.2

ACTIONS tags can be used to define which editing options are to be available in the input component. To this end, appropriate icons are displayed, e.g. for creating, editing or deleting list elements.

An ACTION tag must be given for each editing option.

ACTION

Each editing option is defined by an ACTION tag.

ParameterMandatorySinceTypeDefault value
name*Yes4.2StringNone

name

The name parameter can be used to define different editing options.

The following keywords are available to choose from:

  • ADD icon_new_green
    This icon is used to add a new element (section or link) to the list. The insertion position can be specified using the keyword add-index within the ACTIONS / ACTION / PARAM tags. It is also necessary to include <ACTION name="EDIT"/> to enable further editing. This is automatically added upon saving the template.
  • EDIT icon_edit_green
    Icon for editing an element selected in the list. If <ACTION name="ADD"/> is set, <ACTION name="EDIT"/> is automatically added upon saving the template.
    The icon_view_green icon is displayed in View mode.
  • REMOVE icon_remove_green
    Icon for deleting an element selected in the list from the list. The keyword show-confirm can be used within the ACTIONS / ACTION / PARAM tags to define whether the data set is removed immediately or only after accepting a confirmation prompt.
  • DOWN / UP icon_down_green icon_up_green
    Icons for moving down/up an element selected in the list
  • DETACH icon_detach_green
    Icon for opening the selected list entry in a separate window
  • VIEW icon_view_green
    Icon for showing the selected list entry.
    If overview and detail views are used in the component, when an entry is clicked the corresponding detail view is expanded. If only the overview is used, click an entry in the overview to display the corresponding detail view in a separate window.

Example
If the input component is to have icons with which sections and links can be created, edited and removed, the following syntax must be used:

<ACTIONS>
<ACTION name="ADD"/>
<ACTION name="EDIT"/>
<ACTION name="REMOVE"/>
</ACTIONS>

The order in which the editing options are given within ACTIONS also affects the order of the icons in the input component.

ParameterMandatorySinceTypeDefault value
name*Yes4.2StringNone

PARAM

The PARAM tag can be used to define further settings for the behavior of the FS_LIST input component.

A PARAM tag must be given for each setting.

ParameterMandatorySinceTypeDefault value
name*Yes4.2.404StringNone

name

The name parameter can be used to define different settings. The following keywords are available:

  • add-index (use with &lt;ACTION name="ADD"/&gt;): This keyword can be used to define at which position in the list a new element is to be inserted when the "Add" icon (component="toolbar") is clicked.
  • select-ui (use with &lt;ACTION name="ADD"/&gt;): By default, when the "Add" icon is clicked, a dialog box opens from which the required section or link template can be selected. This keyword can be used to set whether or not a popup menu is opened for the selection, instead of the dialog box.
  • show-confirm (used with &lt;ACTION name="REMOVE"/&gt;): The "show-confirm" value can be used to control whether or not a confirmation prompt (yes/no) is displayed before removing an element from the list. By default, a confirmation prompt is displayed.

ParameterMandatorySinceTypeDefault value
name*Yes4.2.404StringNone

TEXTAvailable from FirstSpirit Version 4.2

The following options are available for add-index:

  • before: When the "Add" icon is clicked, new list entries are added before the current element. If no entry is selected (e.g. selection of the same entry with ), new list entries are inserted in the last / bottom position of the list.
  • last: New list entries are inserted in the last / bottom position of the list regardless of a selection.
  • after: New list entries are inserted after the current element. If no entry is selected (e.g. selection of the same entry with ), new list entries are inserted in the first / top position of the list.
  • first: New list entries are inserted in the first / top position of the list regardless of a selection.
  • default: New list entries are added as the last element regardless of a selection.

The following options are available for select-ui:

  • dialog: By default, when a new section or link is created, a dialog box with the tree structure of the Template Store is opened from which the required section or link template can be selected.
    If only one template is given using the uid parameter within the TEMPLATES / TEMPLATE tags, the new section or new link is created directly with this template without opening the dialog. If the selection of the templates via this tag is limited to certain templates, it is advisable to use the popup or list option to make it easier for the editor to search for and select the required template.
  • popup: When a new section or link is created, a pop-up menu is opened from which the required section or link template can be selected:

    FS_LIST, select-ui: popup
    The folder hierarchy of the Template Store is also shown. This menu can be closed again by clicking the title bar of the window or by pressing .
    If only one template is given via the uid parameter within the TEMPLATES / TEMPLATE tags, the new section or new link is created directly with this template without opening the pop-up menu. If the selection of the templates via these tags is limited to certain templates, the respective template is always displayed as well as the folder structure up to the root.
  • list: When a new section or link is created, a pop-up menu is opened from which the required section or link template can be selected:

    FS_LIST, select-ui: list
    Unlike popup, however, the folder hierarchy of the Template Store is not shown. This menu can be closed again by clicking the title bar of the window or pressing .

The following options are available for show-confirm:

  • yes: Before deleting or removing a list element, a confirmation prompt is displayed. This is the default setting.
  • no: Before deleting or removing a list element, no confirmation prompt is displayed. The element is directly deleted or removed.

Example

...
<ACTIONS>
<ACTION name="ADD">
<PARAM name="add-index">FIRST</PARAM>
</ACTION>
<ACTION name="REMOVE">
<PARAM name="show-confirm">no</PARAM>
</ACTION>
<ACTION name="UP"/>
<ACTION name="DOWN"/>
<ACTION name="EDIT"/>
</ACTIONS>
...
Important In each PARAM tag, a name parameter can only be assigned one value. If several value definitions exist for a name parameter, the top/highest definition is always taken into consideration in the form.

COLUMNSAvailable from FirstSpirit Version 4.2

If the input component contains an overview (LAYOUT tag, <ADD component="overview" ...>), the COLUMNS tag can be used to configure columns, e.g. the column width.

Without further configuration, the column is displayed with a width based on the content (see also LABELS / LABEL tags).

COLUMNS / COLUMN can be used to specify a fixed column width.

In addition to the column containing the content of the entries, COLUMNS / COLUMN can also be used to show a column with consecutive numbering.

COLUMN

The COLUMN tag can be used to define properties for one column.

The name of the column to which the properties are to apply, is given within an opening and closing COLUMN tag (see TEXT placeholder of the COLUMNS tag).

ParameterMandatorySinceTypeDefault value
resizableNo4.2YesNoYES
showNo4.2YesNoYES
sortOrderNo4.2SortOrderNone
widthNo4.2PositiveIntegerNone

resizable

The resizable parameter has no effect on this DATASOURCE type.

ParameterMandatorySinceTypeDefault value
resizableNo4.2YesNoYES

show

The show parameter can be used to define whether a column (see COLUMNS / COLUMN / TEXT) is displayed in the input component or not.

If COLUMNS / COLUMN is not given,

<COLUMNS>
<COLUMN show="no">#identifier</COLUMN>
</COLUMNS>

is automatically added on saving. In this configuration, all columns except the column with the consecutive numbering are displayed.

If COLUMN is given for a column, by default it is displayed (show="YES").

If a column is to be hidden, show="NO" must be set. Other parameters within COLUMN then have no effect on the column concerned.

ParameterMandatorySinceTypeDefault value
showNo4.2YesNoYES

sortOrder

The sortOrder parameter has no effect on this DATASOURCE type.

ParameterMandatorySinceTypeDefault value
sortOrderNo4.2SortOrderNone

width

The width parameter can be used to specify the display width of the column in pixels.

The parameter expects an integer value.

If the parameter is not given the column width corresponds to the content of the columns.

ParameterMandatorySinceTypeDefault value
widthNo4.2PositiveIntegerNone

TEXTAvailable from FirstSpirit Version 4.2

The column to which the properties are to apply is defined here.

The following identifiers are used for this:

  • #identifier: Column with consecutive numbering
  • #text: Column with the content of the list entry

This identifier is enclosed by an opening and closing COLUMN tag.

Example:

<COLUMNS>
<COLUMN show="no">#identifier</COLUMN>
<COLUMN show="yes" width="500">#text</COLUMN>
</COLUMNS>

If COLUMNS / COLUMN is not given, the following configuration is automatically added upon saving:

<COLUMNS>
<COLUMN show="no">#identifier</COLUMN>
</COLUMNS>

LAYOUTAvailable from FirstSpirit Version 4.2R4

This tag can be used to freely define the appearance of the list. Various "components" are available for this (e.g. toolbar, overview, detail view), which can be positioned in different places (e.g. top, bottom, right, left).

ADD

An ADD tag can be given for each "component" of the layout.

ParameterMandatorySinceTypeDefault value
componentNo4.2.404StringNone
constraintNo4.2.404LayoutConstraintNone

component

This parameter is used to select the required layout component.

The following values are allowed:

  • overview: Overview above the entries of the list (see diagram below, constraint parameter, item 2.)
  • toolbar: Toolbar with icons for editing the entries; these are displayed depending on the editing options defined via ACTIONS / ACTION (see diagram below, constraint parameter, item 1.).
  • stackedview: The detail views of all list entries are displayed under each other. Depending on the configuration, the PARAM tag (see below) can be used to minimize or maximize the detail views using the Icons Minimieren Maximieren and icons or by double-clicking the entry in the overview (if available). I.e. potentially, this view simultaneously displays all information on all entries. This view corresponds to the view of FS_LIST up to and including FirstSpirit Version 4.2R2. In addition, above each detail view, icons are displayed for editing the list entries.
  • singleview: This value is used to display the detail view of only the element selected in the overview below the overview. In addition, above each detail view, icons are displayed for editing the list entries.
  • simpleview: This value is used to display the detail view of only the element selected in the overview below the overview. No icons for editing or for navigating through the list elements are displayed above the detail views. It is only possible to navigate through the list elements via a selection in the overview.

The toolbar definable with component="toolbar" and its icons always only relate to the entry currently selected / marked in the overview. If no overview (component="overview") is used, the list entries cannot be uniquely selected. In this case, component="toolbar" should also not be used; the list entries can then only be edited using the icons available in the detail views (see also screenshots on the keyword toolbar-assembly within the LAYOUT / ADD / PARAM tags).

The component parameter must be used with the constraint parameter (see below). Not every combination of component="..." and constraint="..." is meaningful.

In the "stackedview" (component="stackedview"), "singleview" (component="singleview") and "simpleview" (component="simpleview") modes, apart from the position details using the constraint parameter, other configuration options are also available. See PARAM tag within the LAYOUT / ADD tags.

ParameterMandatorySinceTypeDefault value
componentNo4.2.404StringNone

constraint

This parameter can be used to give the position of the layout component:

  • top: The layout component is displayed at the top.
  • center: The layout component is displayed in the middle.
  • bottom: The layout component is displayed at the bottom.
  • left: The layout component is displayed on the left.
  • right: The layout component is displayed on the right.
  • hide: The layout component is hidden.

The values top, bottom, center, left and right may only be used once, hide may be used more than once.

FS_LIST, constraint

This parameter must be used with the component parameter.

Example:

<LAYOUT>
<ADD component="toolbar" constraint="top"/>
<ADD component="overview" constraint="center"/>
<ADD component="stackedview" constraint="bottom"/>
</LAYOUT>

ParameterMandatorySinceTypeDefault value
constraintNo4.2.404LayoutConstraintNone

PARAM

The PARAM tag can be used to define further settings for the behavior of the FS_LIST input component.

A PARAM tag must be given for each setting.

ParameterMandatorySinceTypeDefault value
name*Yes4.2.404StringNone

name

In stackedview mode (<ADD component="stackedview" constraint="...">), the name parameter can be used to define various settings with regard to the detail views. The following keywords are available:

  • expand-behaviour: name="expand-behaviour" can be used to control the expand behavior of the detail views (e.g. by means of the Icons Minimieren Maximieren icons). In this way, for example, lists with many entries or with many input components within the entries can be laid out in a clearer way, making the editors' work easier.
  • toolbar-assembly: Each detail view has its own toolbar with the icons displayed on the basis of the definition of ACTIONS / ACTION. name="toolbar-assembly" can be used to control the display of this toolbar.
  • show-language-tabs: name="show-language-tabs" can be used for section lists (source="SECTIONTEMPLATES") to control whether or not the detail views are to have language tabs.
  • show-selection-box: name="show-selection-box" can be used to control whether or not the drop-down box with the available section and link templates is to be displayed in the detail view.

The following keyword can be used in singleview mode (<ADD component="singleview" constraint="...">):

  • show-language-tabs: name="show-language-tabs" can be used for section lists (source="SECTIONTEMPLATES") to control whether or not the detail views are to have language tabs.

The following keyword can be used in simpleview mode (<ADD component="simpleview" constraint="...">):

  • show-language-tabs: name="show-language-tabs" can be used for section lists (source="SECTIONTEMPLATES") to control whether or not the detail views are to have language tabs.

ParameterMandatorySinceTypeDefault value
name*Yes4.2.404StringNone

TEXTAvailable from FirstSpirit Version 4.2

The following options are available for expand-behaviour (only stackedview mode):

  • collapse_all: Initially (and after updating the view), all detail views are displayed collapsed (closed).
    This is the default setting.
    If the "Maximize"/"Minimize" or arrow icons are clicked or the bar of any element is double-clicked, the detail view of the element opens or closes. All detail views can be simultaneously displayed opened or closed.
  • expand_all: Initially (and after updating the view), all detail views are displayed expanded (folded down).
    They can be simultaneously closed or re-opened, if the "Minimize all" or "Maximize all" icon is clicked on the bar of any element. A single detail view can be closed or opened by clicking the arrow icons or double-clicking the bar.
    Note: If this option is used, it can take quite a while to load all data sets. This should be taken into account in the configuration.
  • expand_follows_mouse: Initially (and after updating the view), all detail views are displayed collapsed (closed).
    The detail view of a list element opens if the mouse cursor is held over the corresponding bar, by clicking the "Maximize" or the corresponding arrow icon, or by double-clicking the entry in the overview. It closes again if the "Minimize" or arrow key is clicked or when another detail view is opened.
  • expand_follows_current: Initially (and after updating the view), only the detail view of the last / bottom list element is displayed expanded.
    If the "Maximize"/"Minimize" or arrow icons are clicked or the bar of any element is double-clicked, the detail view opens or closes.
  • expand_first: Initially (and after updating the view), only the detail view of the first (top) list element is displayed expanded.
    In Edit mode, a detail view can be opened or closed by clicking the "Maximize"/"Minimize" or arrow icons or by double-clicking the bar of any element. All detail views can be simultaneously displayed opened or closed.
  • expand_last: Initially (and after updating the view), only the detail view of the last (bottom) list element is displayed expanded.
    In Edit mode, a detail view can be opened or closed by clicking the "Maximize"/"Minimize" or arrow icons or by double-clicking the bar of any element. All detail views can be simultaneously displayed opened or closed.

In general, the list elements can also be opened by double-clicking the entry in the overview.

The following options are available for toolbar-assembly (stackedview mode only):

  • panel: The toolbar is displayed directly on the bar: FS_LIST panel
  • subform: The toolbar is displayed underneath the bar: FS_LIST subform
    This is the default setting.

The following options are available for show-language-tabs:

  • yes: The detail views are displayed with their own language tabs, through which the editorial content can be entered in the available project languages:
    FS_LIST, show-language-tabs
    This option is not necessary if useLanguages="no" is set for the input components displayed within the list entry.
  • no: The detail views are displayed without language tabs. It is necessary to switch to the content stored for other languages at section, page or data set level using the language tabs. This is the default setting.

    See also parameter useLanguages.

The following options are available for show-selection-box (only stackedview mode):

  • yes: The drop-down box with the section or link templates available is shown in the detail view:
    FS_LIST, inline, selectionbox yes
  • no: The drop-down box with the section or link templates available is not shown in the detail view. This is the default setting.

Example

...
<LAYOUT>
<ADD component="overview" constraint="center"/>
<ADD component="toolbar" constraint="top"/>
<ADD component="stackedview" constraint="bottom">
<PARAM name="expand-behaviour">expand_follows_current</PARAM>
<PARAM name="toolbar-assembly">panel</PARAM>
<PARAM name="show-selection-box">yes</PARAM>
<PARAM name="show-language-tabs">yes</PARAM>
</ADD>
</LAYOUT>
...
Important In each PARAM tag, a name parameter can only be assigned one value. If several value definitions exist for a name parameter, the first (top/highest) definition is always taken into consideration in the form.

TEMPLATESAvailable from FirstSpirit Version 4.2R4

The TEMPLATES tag is used to specify which template type is to be selected.

ParameterMandatorySinceTypeDefault value
source*Yes4.2R4TemplateSourceNone

source

The mandatory parameter source defines the template type which is to be selectable.

The variables LINKTEMPLATES and SECTIONTEMPLATES are available for this: If source="LINKTEMPLATES" is set, the selection can be made from the project's link templates, if source="SECTIONTEMPLATES" is set, the selection can be made from the project's section templates.

Important In the case of source="LINKTEMPLATES", only the selection of links of type "genericLink" is supported! Therefore, before using or migrating to FS_LIST, it is recommended that you convert links of the types "internalLink", "externalLink" and "contentLink". You can use the conversion function to do this (context menu of link templates, "Extras" / "Convert link template").

ParameterMandatorySinceTypeDefault value
source*Yes4.2R4TemplateSourceNone

TEMPLATEAvailable from FirstSpirit Version 4.2R4

A TEMPLATE tag defines precisely one template of the type defined via the source parameter in the TEMPLATES tag, which is to be selectable in the input component.

If no TEMPLATE tag is given, all templates of the type defined via the source parameter in the TEMPLATES tag can be selected.

The tag has the mandatory parameter uid, which must contain the unique designator of the template.

ParameterMandatorySinceTypeDefault value
uid*Yes4.2R4StringNone

uid

A valid reference name of a template must be given for the mandatory parameter uid.

The template type, given by the source parameter in the TEMPLATES tag, must be taken into account: If source="LINKTEMPLATES" is defined, only reference names of templates located in the "Link templates" subfolder of the Template Store can be given for uid. If source="SECTIONTEMPLATES" is defined, only reference names of templates located in the "Section templates" subfolder of the Template Store can be given for uid.

ParameterMandatorySinceTypeDefault value
uid*Yes4.2R4StringNone

LANGINFOSAvailable from FirstSpirit Version 4.0

Using the tag LANGINFOS language-dependent information can be defined for each input component, e.g. which title is to be used for the input component in the different project languages (parameter label), which tooltip is to be displayed (parameter description) etc. For reasons of clarity, definitions which are identical in multiple languages will be merged. For example,

<LANGINFOS> 
<LANGINFO lang="*" label="Datum"/>
<LANGINFO lang="DE" label="Datum"/>
<LANGINFO lang="EN" label="Datum"/>
</LANGINFOS>

will be merged to

 <LANGINFOS> 
<LANGINFO lang="*" label="Datum"/>
</LANGINFOS>

after saving.

Available from FirstSpirit Version 4.2R2 Up to and including FirstSpirit version 4.2R2 language definitions will be deleted only in the case if the values are identical in all languages (as in example above). Furthermore, only the parameters lang, description and label are taken into account when merging.

Available from FirstSpirit Version 4.2R4 Since FirstSpirit version 4.2R4 all parameters are taken into account (e.g. format and length). Furthermore, language definitions are also merged within LANGINFOS tags, if they are identical in at least two languages. For example,

<LANGINFOS> 
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="DE" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>

will become

 <LANGINFOS> 
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>

after saving.

The definition for the fallback value (*) will not be deleted in any case. If there are two or more language definitions with identical values the first one will be maintained, the other will be deleted.

Available from FirstSpirit Version 4.2R2 IMPORTANT: Up to and including FirstSpirit version 4.2R2 at least one definition for the fallback labelling ("*") must be given:

<LANGINFOS>
<LANGINFO lang="*" label="TEXT"/>
</LANGINFOS>

Available from FirstSpirit Version 4.2R4 From FirstSpirit version 4.2R4 the fallback definition can be omitted. In this case, the language which is defined first will be used automatically as fallback value. For example,

<LANGINFOS>
<LANGINFO lang="EN" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>

will become

 <LANGINFOS> 
<LANGINFO lang="*" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>

after saving.

LANGINFOAvailable from FirstSpirit Version 3.1

The LANGINFO tag is used to give values or attributes for a language as well for use as fallback values.

In order to state values or attributes for a language it is necessary to give the abbreviation of the project language in the lang parameter:

...
<LANGINFO lang="DE".../>
...

Fallback values are given with the special language abbreviation * ("for all languages"):

...
<LANGINFO lang="*".../>
...

The lang parameter is a mandatory parameter.

ParameterMandatorySinceTypeDefault value
lang*Yes3.1LanguageAbbreviationNone
descriptionNo3.1StringNone
labelNo3.1StringNone

lang

The lang parameter is used to give the language abbreviation which is entered in the server properties see View document, Chapter "Language templates") to specify for which project languages the definitions are to apply, e.g. DE for German, EN for English, FR for French etc. The following characters can be used as often as required: -, _, 0-9 and A-Z. Lower case letters are transformed automatically into upper case letters after having saved the template. In addition * can be used for fallback values.

ParameterMandatorySinceTypeDefault value
lang*Yes3.1LanguageAbbreviationNone

description

The description parameter can be used to give a description which is used to display a tool tip (mouse-over).

ParameterMandatorySinceTypeDefault value
descriptionNo3.1StringNone

label

The label parameter is used to give the surface labelling for input and visualisation components.

ParameterMandatorySinceTypeDefault value
labelNo3.1StringNone
Key

LanguageAbbreviation

Language abbreviation, e.g. DE, EN, FR or * for return values

PositiveInteger

Positive integer

YesNo

Switch to apply an attribute or not

NOAvailable from FirstSpirit Version 2.0

Do not apply attribute

YESAvailable from FirstSpirit Version 2.0

Apply attribute

SortOrder

Switch with which to define the sort order of the entries

KEEP_ORDERAvailable from FirstSpirit Version 3.0

Retain the sort order of the entries

ASCENDINGAvailable from FirstSpirit Version 3.0

Sort entries alphabetically in ascending order

DESCENDINGAvailable from FirstSpirit Version 3.0

Sort entries alphabetically in descending order

String

A random character string

Preset

How to deal with default values

CopyAvailable from FirstSpirit Version 4.0

The value entered by the editor is copied directly into the input component, subsequent changes do not have any effect

DefaultAvailable from FirstSpirit Version 4.0

The fall-back value defined in the form is used, as long as a value will be set manually

TemplateSource

The template type that is available for selection

LINKTEMPLATESAvailable from FirstSpirit Version 4.2R4

Selection from link templates

SECTIONTEMPLATESAvailable from FirstSpirit Version 4.2R4

Selection from section templates

LayoutConstraint

Position of the layout component

LEFTAvailable from FirstSpirit Version 4.2.404

Layout component is shown on the left

RIGHTAvailable from FirstSpirit Version 4.2.404

Layout component is shown on the right

TOPAvailable from FirstSpirit Version 4.2.404

Layout component is shown at the top

BOTTOMAvailable from FirstSpirit Version 4.2.404

Layout component is shown at the bottom

CENTERAvailable from FirstSpirit Version 4.2.404

Layout component is shown in the middle.

HIDEAvailable from FirstSpirit Version 4.2.404

Layout component is hidden

DataSourceType

Data origin types

DATABASEAvailable from FirstSpirit Version 4.2.403

Access to the data of a table

INLINEAvailable from FirstSpirit Version 4.2.403

Access to data via section or link templates

PAGEAvailable from FirstSpirit Version 4.2.403

Access to sections on the current page

SERVICEAvailable from FirstSpirit Version 4.2.403

Access to data from external components or modules

Designator

Unique identifier of variable length; must start with a letter or underscore and may only contain the characters "A-Z", "a-z", "0-9" and "_", e.g. "fr_st_varName"

Examples

1) Configuration examples of FS_LIST, INLINE type

 

The following example form can be used to configure FS_LIST so that editors can create a list of sections on the basis of the section templates available in the project:

<FS_LIST name="pt_sections" hFill="yes" rows="10">
<DATASOURCE type="inline" useLanguages="no">
<ACTIONS>
<ACTION name="ADD"/>
<ACTION name="REMOVE"/>
<ACTION name="UP"/>
<ACTION name="DOWN"/>
<ACTION name="EDIT"/>
</ACTIONS>
<COLUMNS>
<COLUMN show="no">#identifier</COLUMN>
</COLUMNS>
<LAYOUT>
<ADD component="toolbar" constraint="top"/>
<ADD component="overview" constraint="center"/>
<ADD component="singleview" constraint="bottom"/>
</LAYOUT>
<TEMPLATES source="sectiontemplates"/>
</DATASOURCE>
<LANGINFOS>
<LANGINFO lang="*" label="Edit sections"/>
</LANGINFOS>
</FS_LIST>

The following example form can be used to configure FS_LIST so that editors can create a list of links on the basis of the link templates available in the project:

<FS_LIST name="pt_links">
<DATASOURCE type="inline" useLanguages="no">
<ACTIONS>
<ACTION name="ADD"/>
<ACTION name="REMOVE"/>
<ACTION name="UP"/>
<ACTION name="DOWN"/>
<ACTION name="EDIT"/>
</ACTIONS>
<COLUMNS>
<COLUMN show="no">#identifier</COLUMN>
</COLUMNS>
<LAYOUT>
<ADD component="toolbar" constraint="top"/>
<ADD component="overview" constraint="center"/>
<ADD component="singleview" constraint="bottom"/>
</LAYOUT>
<TEMPLATES source="linktemplates"/>
</DATASOURCE>
<LANGINFOS>
<LANGINFO lang="*" label="Edit links"/>
</LANGINFOS>
</FS_LIST>
Important For the DATASOURCE type INLINE with source="LINKTEMPLATES", FS_LIST only supports the selection of links of the type "genericLink" (see also Link templates section)! Therefore, before using FS_LIST or migrating to FS_LIST, it is recommended that you convert links of the type "internalLink", "externalLink" and "contentLink". You can use the conversion function to do this (context menu of link templates, "Extras" / "Convert link template").

In the given example forms, the editor is able to select all section or link templates. To limit the selection, the following definition must be given in the TEMPLATES tag for each section or link template that is to be selectable:

<TEMPLATE uid="IDENTIFIER"/>

To make the labeling of the sections and links in the overview more flexible, #item can be used within the LABELS / LABEL tag to access the value saved in an input component. This is done by attaching the variable (identifier) of the input component concerned, separated by a dot, e.g.:

<LABELS>
<LABEL lang="*">#item.IDENTIFIER</LABEL>
</LABELS>

FS_LIST – stackedview

Optionally, e.g. component="stackedview" can be selected for constraint="bottom". In this way, the detail view of all sections or references created by the editor can be shown stacked (one after the other) below the overview.

2) Displaying the input component CMS_INPUT_CONTENTAREALIST

The input component FS_LIST can be used to display the functions of the input component CMS_INPUT_CONTENTAREALIST.

Important On changing over from CMS_INPUT_CONTENTAREALIST to FS_LIST, please note that if data has been saved with FS_LIST, in the event of a possible subsequent return, due to a different data format, it can no longer be read and interpreted by CMS_INPUT_CONTENTAREALIST.

Example form CMS_INPUT_CONTENTAREALIST:

<CMS_INPUT_CONTENTAREALIST name="IDENTIFIER">
<LANGINFOS>
<LANGINFO lang="*" label="Edit sections"/>
</LANGINFOS>
<SOURCES>
<TEMPLATE name="IDENTIFIER"/>
</SOURCES>
</CMS_INPUT_CONTENTAREALIST>

Display using FS_LIST:

<FS_LIST name="IDENTIFIER">
<DATASOURCE type="inline" useLanguages="no">
<LABELS>
<LABEL lang="*">#item.IDENTIFIER</LABEL>
</LABELS>
<ACTIONS>
<ACTION name="ADD"/>
<ACTION name="REMOVE"/>
<ACTION name="UP"/>
<ACTION name="DOWN"/>
<ACTION name="EDIT"/>
</ACTIONS>
<COLUMNS>
<COLUMN show="no">#identifier</COLUMN>
</COLUMNS>
<LAYOUT>
<ADD component="toolbar" constraint="top"/>
<ADD component="overview" constraint="center"/>
<ADD component="stackedview" constraint="hide"/>
</LAYOUT>
<TEMPLATES source="sectiontemplates">
<TEMPLATE uid="IDENTIFIER"/>
</TEMPLATES>
</DATASOURCE>
<LANGINFOS>
<LANGINFO lang="*" label="Edit sections"/>
</LANGINFOS>
</FS_LIST>

The #item.IDENTIFIER within the LABELS / LABEL tag is used to flexibly label the sections in the overview. To access the value saved in an input component of the section, the variable (identifier) of the input component concerned is attached to #item separated by a dot. In CMS_INPUT_CONTENTAREALIST this was previously implemented using the VARIABLES / VARIABLE tags.

Whereas the template variable, with which the reference name of the template used was output, was defined with the VARIABLES / VARIABLE tags in CMS_INPUT_CONTENTAREALIST, in FS_LIST the system object #template is now used within the LABELS / LABEL tags:
the definition

<VARIABLES>
<VARIABLE name="template"/>
</VARIABLES>

in FS_LIST would then be

<LABELS>
<LABEL lang="*">#template.uid</LABEL>
</LABELS>

Whereas in CMS_INPUT_CONTENTAREALIST, the SOURCES / TEMPLATE tags were used to define section templates from which the editor could make a selection, in FS_LIST this is now defined using

<TEMPLATE uid="IDENTIFIER"/>

Such a definition must be available for each section template that is to be available for selection. uid is used to give the reference name of a section template.

Important There is no corresponding function in FS_LIST for the function in CMS_INPUT_CONTENTAREALIST with which sections are manually assigned a name or renamed (e.g. Icon Icon rename (Contentarealist)), which is then displayed in the overview. For the list overview and on the bar, if the selected section only contains "empty" input components (e.g. when a new component is created, if no values have been entered yet), as a default the display name of the section template is displayed, if the input components are "filled" the labeling and the content of the input components are displayed.
Important In order for section names already assigned manually to be retained and saved in FS_LIST, an input component with the variable (identifier) displayName (note case sensitivity!) must also be defined in the section template/s concerned (which was/were selected using the CMS_INPUT_CONTENTAREALIST), in which this section name is to be saved. The input component must be of the type CMS_INPUT_TEXT or CMS_INPUT_TEXTAREA.

In this case, a corresponding FS_LIST form would look like this:

<FS_LIST name="st_cal">
<DATASOURCE type="inline" useLanguages="no">
<LABELS>
<LABEL lang="*">#item.displayName</LABEL>
</LABELS>
<ACTIONS>
<ACTION name="ADD">
<PARAM name="select-ui">popup</PARAM>
</ACTION>
<ACTION name="REMOVE"/>
<ACTION name="UP"/>
<ACTION name="DOWN"/>
<ACTION name="EDIT"/>
</ACTIONS>
<COLUMNS>
<COLUMN show="no">#identifier</COLUMN>
</COLUMNS>
<LAYOUT>
<ADD component="toolbar" constraint="top"/>
<ADD component="overview" constraint="center"/>
<ADD component="stackedview" constraint="hide">
<PARAM name="show-language-tabs">yes</PARAM>
</ADD>
</LAYOUT>
<TEMPLATES source="sectiontemplates"/>
</DATASOURCE>
<LANGINFOS>
<LANGINFO lang="*" label="Sections/>
</LANGINFOS>
</FS_LIST>

If CMS_INPUT_CONTENTAREALIST was used, the following syntax could be used to create a list of the sections, e.g. for a kind of list of contents at the start of a page:

$CMS_FOR(entry, st_cal)$
<a href="#$CMS_VALUE(entry.name)$">Section $CMS_VALUE(#for.index + 1)$</a>
$CMS_END_FOR$

This should be adjusted as follows for use with FS_LIST:

$CMS_FOR(entry, st_cal)$
<a href="#$CMS_VALUE(if(entry.displayName.isEmpty, "st_cal_" + #for.index, entry.displayName))$">Section $CMS_VALUE(#for.index + 1)$</a>
$CMS_END_FOR$

In der Absatzvorlage, die vom Redakteur ausgewählt wird, sollte folgende Syntax als Verweisziel (Anker) ergänzt werden:

$CMS_SET(anchorName, if(displayName.isEmpty, "st_cal_" + #index, displayName))$
<a id="$CMS_VALUE(anchorName)$" name="$CMS_VALUE(anchorName)$"></a>

3) Displaying the input component CMS_INPUT_LINKLIST

The input component FS_LIST can be used to display the functions of the input component CMS_INPUT_LINKLIST.

Important On changing over from CMS_INPUT_LINKLIST to FS_LIST, please note that if data has been saved with FS_LIST, in the event of a possible subsequent return, due to a different data format, it can no longer be read and interpreted by CMS_INPUT_LINKLIST.

Example form CMS_INPUT_LINKLIST:

<CMS_INPUT_LINKLIST name="IDENTIFIER">
<LANGINFOS>
<LANGINFO lang="*" label="List of links"/>
</LANGINFOS>
<LINKEDITORS>
<LINKEDITOR name="IDENTIFIER"/>
</LINKEDITORS>
</CMS_INPUT_LINKLIST>

Display using FS_LIST:

<FS_LIST name="IDENTIFIER">
<DATASOURCE type="inline">
<LABELS>
<LABEL lang="*">#item.IDENTIFIER</LABEL>
</LABELS>
<ACTIONS>
<ACTION name="ADD"/>
<ACTION name="REMOVE"/>
<ACTION name="UP"/>
<ACTION name="DOWN"/>
<ACTION name="EDIT"/>
</ACTIONS>
<COLUMNS>
<COLUMN show="no">#identifier</COLUMN>
</COLUMNS>
<LAYOUT>
<ADD component="toolbar" constraint="top"/>
<ADD component="overview" constraint="center"/>
<ADD component="stackedview" constraint="hide"/>
</LAYOUT>
<TEMPLATES source="linktemplates">
<TEMPLATE uid="IDENTIFIER"/>
</TEMPLATES>
</DATASOURCE>
<LANGINFOS>
<LANGINFO lang="*" label="List of links"/>
</LANGINFOS>
</FS_LIST>
Important For the DATASOURCE type INLINE with source="LINKTEMPLATES", FS_LIST only supports the selection of links of the type "genericLink" (see also Link templates section)! Therefore, before using FS_LIST or migrating to FS_LIST, it is recommended that you convert links of the type "internalLink", "externalLink" and "contentLink". You can use the conversion function to do this (context menu of link templates, "Extras" / "Convert link template").

#item.IDENTIFIER within the LABELS / LABEL tag is used to use the value, entered as a link text, in the list overview and on the bar, as with CMS_INPUT_LINKLIST. To access the value saved in an input component of the link template, the variable (identifier) of the input component concerned is attached to #item separated by a dot.

Whereas in CMS_INPUT_LINKLIST the LINKEDITORS / LINKEDITOR tags were used to define link templates, from which the editor could make a selection, in FS_LIST this is now defined using

<TEMPLATE uid="IDENTIFIER"/>

Such a definition must be available for each link template that is to be available for selection. uid is used to give the reference name of a link template.

© 2005 - 2015 e-Spirit AG | All rights reserved. | Last change: 2013-12-09