1. We suggest you do NOT update to Joomla 3.8.10 until we can resolve an issue it causes with caching in Fabrik. If you do install it, you'll need to disable Joomla's "System Cache" in the global System settings.
  2. Apologies for the recent server outage, a planned migration by our host provider to a new location turned into a bit of a nightmare.

Fabrik Back-End Form Fields A-F

Feb 24, 2018
Fabrik Back-End Form Fields A-F
  • This page is to document Fabrik's Form fields which are used to create Fabrik's setting screens in the Joomla back-end. They are not the same as Fabrik Elements which are the means of creating Fabrik Lists and Forms. This page has been created for the benefit of people contributing to the maintenance and development of Fabrik itself, and will not be of any relevance to people using Fabrik to develop web solutions with Joomla.

    These can be used in combination with Joomla's own Form Fields.

    This documentation has been split across 2 WIki entries due to size limitations of the Wiki software. The second half is available here.


    Ascending/Descending(top)

    Provides a dropdown list containing "ASC" and "DESC" describing the sorting order of data retrieved from SQL tables.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be ascendingdescending.
    • label (mandatory) (translatable) is the descriptive title of the field.
    • description (optional) (translatable) description text for the form field.
    • class (optional, default inputbox) is a CSS class name for the HTML form field.
    • labelclass (optional) adds a CSS class for form field's label.
    • default (optional) default value for new objects.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g.
      showon="name1:value1[OR]name2:value2" or showon="name!:value"

    Implemented by: /administrator/components/com_fabrik/models/fields/ascendingdescending.php
    Extends: Joomla's List form field type

    Example XML Definition from (list.xml):
    Code (Text):
    <field name="group_by_order_dir"
        type="ascendingdescending"
        label="COM_FABRIK_FIELD_ORDER_DIRECTION_LABEL"
        description="COM_FABRIK_FIELD_ORDER_DIRECTION_DESC"
    />

    Autocreate Group(top)

    Provides a radio button defining whether a new group should be created for a form .
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be autocreategroup.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • class (optional) if set to class="btn-group btn-group-yesno" will display as a Bootstrap button group
    • labelclass (optional) adds a CSS class for form field's label.
    • option (mandatory, repeatable, translatable) buttons to be displayed (typically 0/No, 1/Yes)
    • default (optional) default value for new objects.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g. showon="name1:value1[OR]name2:value2" or showon="name!:value"

    Implemented by: /administrator/components/com_fabrik/models/fields/autocreategroup.php
    Extends: Joomla's Radio form field type

    Example XML Definition (from form.xml):
    Code (Text):
    <field name="_createGroup"
        type="autocreategroup"
        class="btn-group"
        label="COM_FABRIK_CREATE_GROUP_WITH_SAME_NAME">
            <option value="0">JNO</option>
            <option value="1">JYES</option>
    </field>

    Bootstrap Field Class(top)

    Provides a dropdown list of bootstrap input control width classes.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be bootstrapfieldclass.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • default (optional) default value for new objects.
    • class (optional, default inputbox) is a CSS class name for the HTML form field.
    • labelclass (optional) adds a CSS class for form field's label.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g. showon="name1:value1[OR]name2:value2" or showon="name!:value"

    Implemented by: /administrator/components/com_fabrik/models/fields/bootstrapfieldclass.php
    Extends: Joomla's List form field type

    Example XML Definition (from element.xml):
    Code (Text):
    <field name="filter_class"
        type="bootstrapfieldclass"
        default="input-medium"
        label="COM_FABRIK_FIELD_FILTER_CLASS_LABEL"
        description="COM_FABRIK_FIELD_FILTER_CLASS_DESC"
    />

    Collation(top)

    Provides a dropdown list of MySQL collation types for the List / Advanced / Collation field.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be collation.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • default (optional) default value for new objects.
    • class (optional, default inputbox) is a CSS class name for the HTML form field.
    • labelclass (optional) adds a CSS class for form field's label.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g. showon="name1:value1[OR]name2:value2" or showon="name!:value"
    • required (optional) if set to true, the first field option should be empty, see last example.
    • default_to_table (optional) set to false if you want this to be false
    • show_none (optional) set to true if you want the dropdown list to include "None" at the top.

    Implemented by: /administrator/components/com_fabrik/models/fields/collation.php
    Extends: Joomla's List form field type

    Example XML Definition (from list.xml):
    Code (Text):
    <field name="force_collate"
        type="collation"
        show_none="true"
        default_to_table="false"
        label="COM_FABRIK_FIELD_FORCE_COLLATION_LABEL"
        description="COM_FABRIK_FIELD_FORCE_COLLATION_DESC"
    />

    Connections(top)

    Provides a dropdown list of Fabrik Connections.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be connections.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • class (optional, default inputbox) is a CSS class name for the HTML form field.
    • labelclass (optional) adds a CSS class for form field's label.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g. showon="name1:value1[OR]name2:value2" or showon="name!:value"
    • required (optional) set to true if you want this to be a mandatory field
    • readonlyonedit (optional) show this field read-write when creating a new object, and read-only when editing an existing object.

    Implemented by: /administrator/components/com_fabrik/models/fields/connections.php
    Extends: Joomla's List form field type

    Example XML Definition (from list.xml):
    Code (Text):
    <field name="connection_id"
        type="connections"
        required="true"
        readonlyonedit="true"
        label="COM_FABRIK_FIELD_CONNECTION_LABEL"
        description="COM_FABRIK_FIELD_CONNECTION_DESC"
    />

    Element(top)

    Provides a dropdown list of elements for the Cascading Dropdown List plugin.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be element.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • class (optional, default inputbox) is a CSS class name for the HTML form field.
    • labelclass (optional) adds a CSS class for form field's label.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g. showon="name1:value1[OR]name2:value2" or showon="name!:value"
    • required (optional) set to true if you want this to be a mandatory field
    • connection (optional) examine HTML to get the id of the connection field and omit the leading "jform_". If the connection is in the repeat (see next field) then omit the trailing "-0" for Fabrik repeating groups, and use "X" for Joomla repeating subforms. As of Fabrik 3.8.2+ you can use just the connection field name. If the connection attribnute is omitted the site-database is assumed.
    • connection_in_repeat (optional, default true) set to "false" if the connection field is not part of the repeatgroup or Joomla subform.
    • excludejoined (mandatory)
    • highlightpk (optional, default false)
    • include_calculations (optional, default 0 = No)
    • mode (optional)
    • showintable (optional)
    • table (optional, defaults to this element's List base table) examine HTML to get the id of the fabrik list / tables field and omit the leading "jform_".
    Implemented by: /administrator/components/com_fabrik/models/fields/element.php
    Extends: Joomla's List form field type

    Example XML Definition (from cascadingdropdown.xml):
    Code (Text):
    <field name="cascadingdropdown_id"
        type="element"
        connection="params_cascadingdropdown_connection"
        connection_in_repeat="false"
        label="PLG_ELEMENT_CDD_ID_LABEL"
        description="PLG_ELEMENT_CDD_ID_DESC"
        excludejoined="1"
        highlightpk="true"
        showintable="true"
        table="params_cascadingdropdown_table"
    />

    Fabrik Content Type List(top)

    Lists the content types that you can base a list on (i.e. which defines the lists starting elements) when you are creating a new list.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be fabrikcontenttypelist.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • default (optional) defines the default value for this dropdown
    • class (optional, default inputbox) is a CSS class name for the HTML form field.
    • labelclass (optional) adds a CSS class for form field's label.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g. showon="name1:value1[OR]name2:value2" or showon="name!:value"
    • required (optional) set to true if you want this to be a mandatory field

    Implemented by: /administrator/components/com_fabrik/models/fields/fabrikcontenttypelist.php
    Extends: Joomla's List form field type

    Example XML Definition (from content-type.xml):
    Code (Text):
    <field name="contenttype"
        type="fabrikcontenttypelist"
        label="COM_FABRIK_FIELD_CONTENT_TYPE_LABEL"
        description="COM_FABRIK_FIELD_CONTENT_TYPE_DESC"
        default="default.xml"
    />

    Fabrik Editor(top)

    Provides an instance of the Ace editor, a browser based editor that provides syntax highlighting and error-checking of php or javascript code.
    • type (mandatory) must be fabrikeditor.
    • name (mandatory) is the unique name of the field.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) is text that will be shown as a tooltip when the user moves the mouse over the drop-down box.
    • rows (mandatory) is the height of the visible text area in lines if Javascript is disabled in the browser. If omitted the height is determined by the browser. The value of rows does not limit the number of lines that may be entered.
    • cols (mandatory) is the width of the visible text area in characters if Javascript is disabled in the browser. If omitted the width is determined by the browser. The value of cols does not limit the number of characters that may be entered.
    • default (optional, not translatable) is the default value.
    • class (optional, default text_area) is a CSS class name for the HTML form field.
    • labelclass (optional) adds a CSS class for form field's label.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g. showon="name1:value1[OR]name2:value2" or showon="name!:value"
    • filter (optional) allow the system to save certain html tags or raw data.
    • hint (optional) The text displayed in the html placeholder element, usually a lighter coloured hint displayed inside a blank field.
    • onchange (optional) specifies javascript to run when the field is changed by the user
    • mode (optional, default html) the type of code you are editing e.g. php or javascript
    • theme (optional, default github) the colour scheme for the editor box
    • height (optional, default 142px = 10 lines) the minimum height for the code editor
    • width (optional, default 100%) the width of the code editing box
    • encoded (optional, default false) prevent double HTML encoding of special characters i.e. "&" to "&amp;" to "&amp;amp;".

    Implemented by: /administrator/components/com_fabrik/models/fields/fabrikeditor.php
    Extends: Joomla's Textarea form field type

    Example XML Definition (from elementjavascript-plugin.xml):
    Code (Text):
    <field name="code"
        type="fabrikeditor"
        label="COM_FABRIK_JS_CODE"
        description="COM_FABRIK_JS_CODE_DESC"
        mode="javascript"
        encoded="true"
        repeat="true"
    />

    Fabrik Folder List(top)

    Provides a dropdown list of folder names e.g. for Fabrik templates. Unlike the Joomla Folderlist form field that it is based upon, this field removes the path to the directory to give a simplified list.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be fabrikfolderlist.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • class (optional, default text_area) is a CSS class name for the HTML form field.
    • labelclass (optional) adds a CSS class for form field's label.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g. showon="name1:value1[OR]name2:value2" or showon="name!:value"
    • directory (mandatory) is the filesystem path to the directory containing the folders to be listed.
    • default (optional) is the default folder name.
    • filter (optional) is a regular expression string which is used to filter the list of folders selected for inclusion in the drop-down list. If omitted, all folders in the directory are included. The filter argument expression is applied before the exclude argument expression. For information on constructing regular expressions see Regular expressions in parameter arguments.
    • exclude (optional) is a regular expression string which is used to exclude folders from the list. The exclude argument expression is applied after the filter argument expression. For information on constructing regular expressions see Regular expressions in parameter arguments.
    • hide_none (optional) is a Boolean argument. If true, the '- Do not use -' item is omitted from the drop-down list.
    • hide_default (optional) is a Boolean argument. If true, the '- Use default -' item is omitted from the drop-down list.
    Implemented by: /administrator/components/com_fabrik/models/fields/fabrikfolderlist.php
    Extends: Joomla's Folderlist form field type

    Example XML Definition (from default.xml):
    Code (Text):
    <field name="fabriklayout"
        type="fabrikfolderlist"
        directory="/components/com_fabrik/views/details/tmpl/"
        label="COM_FABRIK_FIELD_FORM_TEMPLATE_LABEL"
        description="COM_FABRIK_FIELD_FORM_TEMPLATE_DESC"
    />

    Fabrik Modal Repeat(top)

    Creates a "Select" button which, when clicked, opens a modal popup window where you can add one or more elements.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be fabrikmodalrepeat.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • class (optional, default inputbox) is a CSS class name for the HTML form field.
    • labelclass (optional) adds a CSS class for form field's label.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g. showon="name1:value1[OR]name2:value2" or showon="name!:value"
    • required (optional) set to true if you want this to be a mandatory field

    Implemented by: /administrator/components/com_fabrik/models/fields/fabrikmodalrepeat.php
    Extends: Fabrik specific element based on Joomla's basic form field class

    Note: The fieldset name must be the field name with "_modal" appended for the modal to work.

    Example XML Definition (from .xml):
    Code (Text):
    <field name="open_archive_elements"
           type="fabrikmodalrepeat"
           icon="list"
           label="COM_FABRIK_FIELD_OAI_FIELDS_LABEL"
           description="COM_FABRIK_FIELD_OAI_FIELDS_DESC"
    >
      <fields name="params">
        <fieldset modal="true"
                  name="open_archive_elements_modal"
                  repeat="true">
          <field name="dublin_core_element"
                 label="COM_FABRIK_ELEMENT"
                 type="listfields"
          />
          <field name="dublin_core_type"
                 label="COM_FABRIK_DUBLIN_CORE_TYPE_LABEL"
                 type="list">
            <option value="dc:description.abstract">abstract</option>
            <option value="dc:contributor">contributor</option>
    ...
          </field>
          <field name="raw"
                 label="COM_FABRIK_FIELD_RAW_LABEL"
                 type="radio"
                 default="0">
            <option value="1">JYES</option>
            <option value="0">JNO</option>
          </field>
        </fieldset>
      </fields>
    </field>

    Fabrik Lists(top)

    Provides a dropdown list of Fabrik Lists for a specific or default connection.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be fabriktables.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • class (optional, default inputbox) is a CSS class name for the HTML form field.
    • required (optional) set to true if you want this to be a mandatory field
    • observe / connection (optional) examine HTML to get the id of the connection field and omit the leading "jform_". If the connection is in the repeat (see next field) then omit the trailing "-0" for Fabrik repeating groups, and use "X" for Joomla repeating subforms.
    • connection_in_repeat (optional, default true) set to true iff the field referred to by observe/connection has repeat="true" or is part of a Joomla repeating sub-form.

    Implemented by: /administrator/components/com_fabrik/models/fields/element.php
    Extends: Joomla's List form field type

    Example XML Definition (from mod_fabrik_list.xml):
    Code (Text):
    <field name="list_id"
        type="fabriktables"
        label="MOD_FABRIK_LIST_LIST_LABEL"
        description="MOD_FABRIK_LIST_LIST_DESC"
    />

    Fabrik Template(top)

    Provides a dropdown list of Fabrik template types for List, Form or Details views.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be fabriktemplate.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • class (optional, default text_area) is a CSS class name for the HTML form field.
    • labelclass (optional) adds a CSS class for form field's label.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g. showon="name1:value1[OR]name2:value2" or showon="name!:value"
    • view (optional, default list) define the directory to look for templates in as '/components/com_fabrik/views/this-value/tmpl/'. Fabrik includes the following types of template: article / csv / details / form / import / list / package / visualization
    • default (optional) is the default folder name.
    • filter (optional) is a regular expression string which is used to filter the list of folders selected for inclusion in the drop-down list. If omitted, all folders in the directory are included. The filter argument expression is applied before the exclude argument expression. For information on constructing regular expressions see Regular expressions in parameter arguments.
    • exclude (optional) is a regular expression string which is used to exclude folders from the list. The exclude argument expression is applied after the filter argument expression. For information on constructing regular expressions see Regular expressions in parameter arguments.
    • hide_none (optional) is a Boolean argument. If true, the '- Do not use -' item is omitted from the drop-down list.
    • hide_default (optional) is a Boolean argument. If true, the '- Use default -' item is omitted from the drop-down list.

    Implemented by: /administrator/components/com_fabrik/models/fields/fabriktemplate.php
    Extends: Joomla's List form field type

    Example XML Definition (from .xml):
    Code (Text):
    <field name="fabriklayout"
        type="fabriktemplate"
        view="form"
        hide_default="0"
        hide_none="1"
        label="COM_FABRIK_FIELD_FORM_TEMPLATE_LABEL"
        description="COM_FABRIK_FIELD_FORM_TEMPLATE_DESC"
    />

    Faceted Links(top)

    Provides rendering of the faceted fields list in List / Data / Related Data.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be facetedlinks.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • class (optional) is a CSS class name for the HTML form field. If omitted this will default to 'inputbox'.
    • required (optional) set to true if you want this to be a mandatory field

    Implemented by: /administrator/components/com_fabrik/models/fields/facetedlinks.php
    Extends: Joomla's List form field type

    Example XML Definition (from list.xml):
    Code (Text):
    <field name="facetedlinks"
        type="facetedlinks"
        label="COM_FABRIK_MY_RELATED_DATA_LABEL"
        description="COM_FABRIK_MY_RELATED_DATA_DESC"
    />

    Form Database Name(top)

    According to the code, appears to render the database name for a specific form. But apparently not currently used in Fabrik, so no easy way to determine what it does.
    • name (mandatory) is the unique name of the field.
    • type (mandatory) must be formdatabasename.
    • label (mandatory) (translatable) is the descriptive title of the field.
    • description (optional) (translatable) is text that will be shown as a tooltip when the user moves the mouse over the drop-down box.
    • size (optional) is the width of the text box in characters. If omitted the width is determined by the browser. The value of size does not limit the number of characters that may be entered.
    • maxlength (optional) limits the number of characters that may be entered.
    • default (optional) (not translatable) is the default value.
    • class (optional) is a CSS class name for the HTML form field. If omitted this will default to 'text_area'.
    • readonly (optional) The field cannot be changed and will automatically inherit the default value
    • disabled (optional) The field cannot be changed and will automatically inherit the default value - it will also not submit
    • required (optional) The field must be filled before submitting the form.
    • filter (optional) allow the system to save certain html tags or raw data.
    • message (optional) The error message that will be displayed instead of the default message.
    • hint (optional) The text displayed in the html placeholder element, usually a lighter coloured hint displayed inside an blank field.

    Implemented by: /administrator/components/com_fabrik/models/fields/formdatabasename.php
    Extends: Joomla's Text form field type

    Example XML Definition (from .xml):
    No example found in Fabrik

    Form List(top)

    Provides a dropdown list of forms.
    • name (mandatory) is the unique name of the parameter.
    • type (mandatory) must be formlist.
    • label (mandatory, translatable) is the descriptive title of the field.
    • description (optional, translatable) description text for the form field.
    • class (optional, default inputbox) is a CSS class name for the HTML form field.
    • labelclass (optional) adds a CSS class for form field's label.
    • showon (optional) allows to hide the field based on the value(s) of another field e.g. showon="name1:value1[OR]name2:value2" or showon="name!:value"
    • required (optional) set to true if you want this to be a mandatory field
    • showtrashed (optional, default false) show trashed forms (as well as published and unpublished forms).
    • package (optional) show forms from a specific package.
    • readonlyonedit (optional, default false) show this field as read-only if the value already exists, otherwise read-write

    Implemented by: /administrator/components/com_fabrik/models/fields/formlist.php
    Extends: Joomla's List form field type

    Example XML Definition (from group.xml):
    Code (Text):
    <field name="form"
         type="formlist"
         description="COM_FABRIK_FIELD_GROUP_FORM_DESC"
         label="COM_FABRIK_FIELD_GROUP_FORM_LABEL"
         showtrashed="true"
         readonlyonedit="true"
    />